Removed MD_NOCAST and MD_NORANDOMWALK from default clone mode

Added MD_NORANDOMWALK for slaveclone
This commit is contained in:
Atemo 2023-04-22 23:21:31 +02:00
parent 9051fc644d
commit 56d63d7eda
2 changed files with 3 additions and 1 deletions

View File

@ -4055,6 +4055,8 @@ int mob_clone_spawn(map_session_data *sd, int16 m, int16 x, int16 y, const char
status->mode = mode; status->mode = mode;
else if (flag&1) //Friendly Character, remove looting. else if (flag&1) //Friendly Character, remove looting.
status->mode = static_cast<enum e_mode>(status->mode&(~MD_LOOTER)); status->mode = static_cast<enum e_mode>(status->mode&(~MD_LOOTER));
else if (flag&2) // Clone follows the creator, add MD_NORANDOMWALK
status->mode = static_cast<enum e_mode>(status->mode&MD_NORANDOMWALK);
status->hp = status->max_hp; status->hp = status->max_hp;
status->sp = status->max_sp; status->sp = status->max_sp;
memcpy(&db->vd, &sd->vd, sizeof(struct view_data)); memcpy(&db->vd, &sd->vd, sizeof(struct view_data));

View File

@ -3667,7 +3667,7 @@ int status_calc_pc_sub(map_session_data* sd, uint8 opt)
// !FIXME: Most of these stuff should be calculated once, but how do I fix the memset above to do that? [Skotlex] // !FIXME: Most of these stuff should be calculated once, but how do I fix the memset above to do that? [Skotlex]
// Give them all modes except these (useful for clones) // Give them all modes except these (useful for clones)
base_status->mode = static_cast<e_mode>(MD_MASK&~(MD_STATUSIMMUNE|MD_IGNOREMELEE|MD_IGNOREMAGIC|MD_IGNORERANGED|MD_IGNOREMISC|MD_DETECTOR|MD_ANGRY|MD_TARGETWEAK)); base_status->mode = static_cast<e_mode>(MD_MASK&~(MD_STATUSIMMUNE|MD_IGNOREMELEE|MD_IGNOREMAGIC|MD_IGNORERANGED|MD_IGNOREMISC|MD_DETECTOR|MD_ANGRY|MD_TARGETWEAK|MD_NOCAST|MD_NORANDOMWALK));
base_status->size = (sd->class_&JOBL_BABY) ? SZ_SMALL : (((sd->class_&MAPID_BASEMASK) == MAPID_SUMMONER) ? battle_config.summoner_size : SZ_MEDIUM); base_status->size = (sd->class_&JOBL_BABY) ? SZ_SMALL : (((sd->class_&MAPID_BASEMASK) == MAPID_SUMMONER) ? battle_config.summoner_size : SZ_MEDIUM);
if (battle_config.character_size && pc_isriding(sd)) { // [Lupus] if (battle_config.character_size && pc_isriding(sd)) { // [Lupus]