anchor.diff:  		if(!user || user.stat || user.weakened || user.stunned  || !(user.loc == Uloc) || (user.last_move != null))
   			continue_looping = 0
   
  -		if(continue_looping && Tloc && (!target || Tloc != target.loc)) //Tloc not set when we don't want to track target
  +		if(continue_looping && Tloc && (!target || Tloc != target.loc || (AMtarget && AMtarget.last_move != null))) //Tloc not set when we don't want to track target
   			continue_looping = 0
   
   		if(continue_looping && needhand)
  
positive.code: 	var/atom/Tloc = null
  	if(target)
  		Tloc = target.loc
  
  	var/delayfraction = round(delay/numticks)
  
  	var/atom/Uloc = user.loc
  
negative.code: 	var/user_loc = user.loc
  	user.last_move = null
  	var/target_loc = target.loc
  	target.last_move = null
  	var/holding = user.get_active_hand()
  	var/timefraction = round(time/numticks)
  	var/image/progbar
  