diff options
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/clif.c | 5 | ||||
-rw-r--r-- | src/map/unit.c | 11 |
2 files changed, 9 insertions, 7 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index 075f0fbfc..5f17946a9 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -3837,10 +3837,7 @@ static int clif_calc_walkdelay(struct block_list *bl,int delay, int type, int da if (div_ > 1) //Multi-hit skills mean higher delays.
delay += battle_config.multihit_delay*(div_-1);
- if (delay <= 0)
- return 0;
-
- return delay>0?delay:0;
+ return delay>0?delay:1; //Return 1 to specify there should be no noticeable delay, but you should stop walking.
}
/*==========================================
diff --git a/src/map/unit.c b/src/map/unit.c index d7613cc02..bbb73ecdd 100644 --- a/src/map/unit.c +++ b/src/map/unit.c @@ -674,9 +674,14 @@ int unit_set_walkdelay(struct block_list *bl, unsigned int tick, int delay, int ud->canmove_tick = tick + delay;
if (ud->walktimer != -1)
{ //Stop walking, if chasing, readjust timers.
- unit_stop_walking(bl,3);
- if(ud->target)
- add_timer(ud->canmove_tick+1, unit_walktobl_sub, bl->id, ud->target);
+ if (delay == 1)
+ { //Minimal delay (walk-delay) disabled. Just stop walking.
+ unit_stop_walking(bl,1);
+ } else {
+ unit_stop_walking(bl,3);
+ if(ud->target)
+ add_timer(ud->canmove_tick+1, unit_walktobl_sub, bl->id, ud->target);
+ }
}
return 1;
}
|