summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/map/status.c b/src/map/status.c
index 47d2617b6..4db508cb2 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -6305,12 +6305,15 @@ int status_change_end(struct block_list* bl, enum sc_type type, int tid)
case SC_RUN:
{
struct unit_data *ud = unit_bl2ud(bl);
+ bool begin_spurt = true;
if (ud) {
+ if(!ud->state.running)
+ begin_spurt = false;
ud->state.running = 0;
if (ud->walktimer != -1)
unit_stop_walking(bl,1);
}
- if (sce->val1 >= 7 &&
+ if (begin_spurt && sce->val1 >= 7 &&
DIFF_TICK(gettick(), sce->val4) <= 1000 &&
(!sd || (sd->weapontype1 == 0 && sd->weapontype2 == 0))
)