diff options
author | Michieru <Michieru@users.noreply.github.com> | 2014-11-03 11:46:22 +0100 |
---|---|---|
committer | Michieru <Michieru@users.noreply.github.com> | 2014-11-03 11:46:22 +0100 |
commit | b8abf962fd079bc3cad4498aa968f2318d1f5fde (patch) | |
tree | 941b9d312ded4e3b75360febb73922a79637c10c /src/map/battle.c | |
parent | 1c76a4249ea878bd133c16a7e8b799d51b7e8594 (diff) | |
download | hercules-b8abf962fd079bc3cad4498aa968f2318d1f5fde.tar.gz hercules-b8abf962fd079bc3cad4498aa968f2318d1f5fde.tar.bz2 hercules-b8abf962fd079bc3cad4498aa968f2318d1f5fde.tar.xz hercules-b8abf962fd079bc3cad4498aa968f2318d1f5fde.zip |
* No cell stacking implemented (official version)
- Split config cell_stack_limit into custom_cell_stack_limit (previous feature) and official_cell_stack_limit (see below)
- Expanded map_count_oncell by a flag parameter, currently only one flag is supported: only count standing units (needed for official cell stack feature)
- Added a new function map_closest_freecell that will return the closest free cell using the same order that official servers use
- Monsters will now actively search for a free cell when starting to walk randomly and when unlocking target
- When any unit finishes walking (regularly) and is not on a free cell, it will now actively search for a free cell
- Step actions will be delayed until a suitable cell was found, they will even be executed when the player walked slightly out of attack range
- Monsters will now stop instantly if their target is completely non-existent
* This is mainly for looters that had their loot taken
* Hide and most other situations still use the configuration setting monster_chase_refresh
Mega Thanks to Playtester
Diffstat (limited to 'src/map/battle.c')
-rw-r--r-- | src/map/battle.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/map/battle.c b/src/map/battle.c index 903414f90..66926e037 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -6639,7 +6639,8 @@ static const struct battle_data { { "bone_drop", &battle_config.bone_drop, 0, 0, 2, }, { "buyer_name", &battle_config.buyer_name, 1, 0, 1, }, { "skill_wall_check", &battle_config.skill_wall_check, 1, 0, 1, }, - { "cell_stack_limit", &battle_config.cell_stack_limit, 1, 1, 255, }, + { "official_cell_stack_limit", &battle_config.official_cell_stack_limit, 1, 1, 255, },
+ { "custom_cell_stack_limit", &battle_config.custom_cell_stack_limit, 1, 1, 255, },
{ "dancing_weaponswitch_fix", &battle_config.dancing_weaponswitch_fix, 1, 0, 1, }, // eAthena additions @@ -7108,9 +7109,9 @@ void battle_adjust_conf(void) { #endif -#ifndef CELL_NOSTACK - if (battle_config.cell_stack_limit != 1) - ShowWarning("Battle setting 'cell_stack_limit' takes no effect as this server was compiled without Cell Stack Limit support (CELL_NOSTACK).\n"); +#ifndef CELL_NOSTACK
+ if (battle_config.custom_cell_stack_limit != 1)
+ ShowWarning("Battle setting 'custom_cell_stack_limit' takes no effect as this server was compiled without Cell Stack Limit support.\n");
#endif } |