diff options
-rw-r--r-- | Changelog-Trunk.txt | 4 | ||||
-rw-r--r-- | src/map/unit.c | 10 |
2 files changed, 8 insertions, 6 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 5af964c7d..8d74b1ce9 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,10 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/11/27
+ * Now when a player's "attack once" request fails due to range, the client
+ is told to move to the target to attack it. This sort of fixes the problem
+ of the client SPAMMING the server with attack requests from afar without
+ even approaching the icewall. [Skotlex]
* Updated the status change field "option" to an int rather than short.
This fixes the option values for xmas/sightblaster not getting set, which
could explain why some people crash when equipping weapons while in xmas
diff --git a/src/map/unit.c b/src/map/unit.c index 0d5fb5b71..9ee07430a 100644 --- a/src/map/unit.c +++ b/src/map/unit.c @@ -1323,12 +1323,10 @@ static int unit_attack_timer_sub(struct block_list* src, int tid, unsigned int t if(!check_distance_bl(src,target,range) ) { //Chase if required. - if(ud->state.attack_continue) { - if(sd) - clif_movetoattack(sd,target); - else - unit_walktobl(src,target,ud->chaserange,ud->state.walk_easy|2); - } + if(sd) + clif_movetoattack(sd,target); + else if(ud->state.attack_continue) + unit_walktobl(src,target,ud->chaserange,ud->state.walk_easy|2); return 1; } if(!battle_check_range(src,target,range)) { |