anchor.diff:  		C.dust()
   	return
   
  -/proc/get_closest_atom(type, list, source)
  +/proc/get_closest_atom(list, source)
   	var/closest_atom
   	var/closest_distance
   	for(var/A in list)
  -		if(!istype(A, type))
  -			continue
   		var/distance = get_dist(source, A)
  -		if(!closest_distance)
  +		if(!closest_atom || closest_distance > distance)
   			closest_distance = distance
   			closest_atom = A
  -		else
  -			if(closest_distance > distance)
  -				closest_distance = distance
  -				closest_atom = A
   	return closest_atom
   
   /proc/tesla_zap(var/atom/source, zap_range = 3, power)
  
positive.code: 		closest_atom = get_closest_atom(/obj/structure, potential_structure_zaps, source)
  		if(closest_atom)
  			var/obj/structure/S = closest_atom
  			source.Beam(S,icon_state="lightning[rand(1,12)]",icon='icons/effects/effects.dmi',time=5)
  			S.tesla_act(power)
  			
  	if(closest_atom)
  		var/zapdir = get_dir(source,closest_atom)
  		if (zapdir)
  			. = zapdir
  
negative.code: 		playsound(src.loc, 'sound/magic/lightning_chargeup.ogg', 100, 1, extrarange = 15)
  		spawn(100)
  			var/obj/singularity/energy_ball/EB = new(loc)
  			
  			EB.transform *= pick(0.3, 0.4, 0.5, 0.6, 0.7)
  			var/icon/I = icon(icon,icon_state,dir)
  			
  			var/orbitsize = (I.Width() + I.Height()) * pick(0.5, 0.6, 0.7)
  			orbitsize -= (orbitsize / world.icon_size) * (world.icon_size * 0.25)
  			
  			EB.orbit(src, orbitsize, pick(FALSE, TRUE), rand(10, 25), pick(3, 4, 5, 6, 36))
  			
  	else if(energy < energy_to_lower && orbiting_balls.len)
  		energy_to_raise = energy_to_raise * 0.5
  		energy_to_lower = (energy_to_raise * 0.5) - 10
  		
  		var/Orchiectomy_target = pick(orbiting_balls)
  		qdel(Orchiectomy_target)
  		
  	else if(orbiting_balls.len)
  		energy -= orbiting_balls.len
  
  /obj/singularity/energy_ball/Bump(atom/A)
  	dust_mobs(A)
  
  /obj/singularity/energy_ball/Bumped(atom/A)
  	dust_mobs(A)
  
  /obj/singularity/energy_ball/orbit(obj/singularity/energy_ball/target)
  	if (istype(target))
  		target.orbiting_balls += src
  		poi_list -= src
  	
  	. = ..()
  	
  	if (istype(target))
  		target.orbiting_balls -= src
  
  /obj/singularity/energy_ball/proc/dust_mobs(atom/A)
  	if(istype(A, /mob/living/carbon))
  