anchor.diff:  	var/last_failed_movement = 0//Will not move in the same dir if it couldnt before, will help with the getting stuck on fields thing
   	var/last_warning
   	var/consumedSupermatter = 0 //If the singularity has eaten a supermatter shard and can go to stage six
  +	var/drifting_dir = 0 // Chosen direction to drift in
   	resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
   	obj_flags = CAN_BE_HIT | DANGEROUS_POSSESSION
   
  
positive.code: 	return ..()
  
  /obj/singularity/Move(atom/newloc, direct)
  	if(current_size >= STAGE_FIVE || check_turfs_in(direct))
  		last_failed_movement = 0//Reset this because we moved
  		return ..()
  
negative.code: 
  /obj/singularity/Bump(atom/A)
  	consume(A)
  	if(QDELETED(A)) // don't keep moving into objects that weren't destroyed infinitely
  		step(src, drifting_dir)
  	return
  
  /obj/singularity/Crossed(atom/A)
  	..()
  	consume(A)
  
  /obj/singularity/Bumped(atom/movable/AM)
  	consume(AM)
  