Makes movement delay calculation not round to the tick (#1711)

This commit is contained in:
CitadelStationBot
2017-06-30 23:20:26 -05:00
committed by kevinz000
parent f670e932b6
commit 471380aa2c
+8 -2
View File
@@ -109,10 +109,12 @@
mob.control_object.loc = get_step(mob.control_object,direct)
return
#define MOVEMENT_DELAY_BUFFER 0.75
#define MOVEMENT_DELAY_BUFFER_DELTA 1.25
/client/Move(n, direct)
if(world.time < move_delay)
return 0
var/old_move_delay = move_delay
move_delay = world.time+world.tick_lag //this is here because Move() can now be called mutiple times per tick
if(!mob || !mob.loc)
return 0
@@ -159,7 +161,11 @@
//We are now going to move
moving = 1
move_delay = mob.movement_delay() + world.time
var/delay = mob.movement_delay()
if (old_move_delay + (delay*MOVEMENT_DELAY_BUFFER_DELTA) + MOVEMENT_DELAY_BUFFER > world.time)
move_delay = old_move_delay + delay
else
move_delay = delay + world.time
if(mob.confused)
if(mob.confused > 40)