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/path.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/path.c')
-rw-r--r-- | src/map/path.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/src/map/path.c b/src/map/path.c index d8096ad43..9aeb108fa 100644 --- a/src/map/path.c +++ b/src/map/path.c @@ -248,12 +248,8 @@ bool path_search(struct walkpath_data *wpd, int16 m, int16 x0, int16 y0, int16 x return false; md = &map->list[m]; -#ifdef CELL_NOSTACK //Do not check starting cell as that would get you stuck. - if (x0 < 0 || x0 >= md->xs || y0 < 0 || y0 >= md->ys) -#else if (x0 < 0 || x0 >= md->xs || y0 < 0 || y0 >= md->ys /*|| md->getcellp(md,x0,y0,cell)*/) -#endif return false; // Check destination cell |