anchor.diff:  					else if(onMoveEvents(d))
   						glide_size = GLIDE / (move_delay + slow)
   						step(src, d)
  +
  +					if(client.movements.len == 0)
  +						client.movements = null
  +
   				else
   					if(onMoveEvents(moveDir))
   						diag = moveDir & moveDir-1
  
positive.code: 				if(client.movements)
  					var/d = client.movements[1]
  					client.movements.Cut(1,2)
  
  					if(client.movements.len == 0) client.movements = null
  
  					if(d >= 16)
  						switch(d)
  
negative.code: 			else if(!moveKeys && onMoveEvents(firstStep))
  				glide_size = GLIDE / (move_delay + slow)
  				step(src, firstStep)
  
  				if(move_delay + slow > 1)
  					sleep(move_delay + slow - 1)
  
  			var/diag
  			while((moveKeys || client.movements) && client.moveStart == time)
  