|
@@ -1463,8 +1463,9 @@ int mob_unlocktarget(struct mob_data *md, unsigned int tick)
|
|
md->ud.target_to = 0;
|
|
md->ud.target_to = 0;
|
|
unit_set_target(&md->ud, 0);
|
|
unit_set_target(&md->ud, 0);
|
|
}
|
|
}
|
|
- if(battle_config.official_cell_stack_limit > 0
|
|
|
|
- && map_count_oncell(md->bl.m, md->bl.x, md->bl.y, BL_CHAR|BL_NPC, 1) > battle_config.official_cell_stack_limit) {
|
|
|
|
|
|
+ if (battle_config.official_cell_stack_limit > 0
|
|
|
|
+ && (md->min_chase == md->db->range3 || battle_config.mob_ai & 0x8)
|
|
|
|
+ && map_count_oncell(md->bl.m, md->bl.x, md->bl.y, BL_CHAR | BL_NPC, 1) > battle_config.official_cell_stack_limit) {
|
|
unit_walktoxy(&md->bl, md->bl.x, md->bl.y, 8);
|
|
unit_walktoxy(&md->bl, md->bl.x, md->bl.y, 8);
|
|
}
|
|
}
|
|
|
|
|