anchor.diff:  	var/obj/item/stock_parts/capacitor/part_cap = null
   	var/obj/item/stock_parts/micro_laser/part_laser = null
   	var/obj/item/stock_parts/matter_bin/part_bin = null
  -	var/obj/item/stock_parts/cell/cell = null //Wew lad. about damn time now
   
   	var/crashing = FALSE	//Are we currently getting wrecked?
   
  
positive.code: 					part_cap.forceMove(get_turf(src))
  				part_cap = I
  				changed = TRUE
  		if(istype(S, /obj/item/stock_parts/cell))
  			var/obj/item/stock_parts/cell/CELL = S
  			if(CELL.maxcharge > cell.maxcharge)
  				usermessage("<span class='notice'>Higher maximum capacity detected.\nUpgrading...</span>", mob_override = user)
  				if (do_after(user,s_delay, target = src))
  					user.transferItemToLoc(CELL, src)
  					CELL.charge = min(CELL.charge+cell.charge, CELL.maxcharge)
  					var/obj/item/stock_parts/cell/old_cell = cell
  					old_cell.charge = 0
  					user.put_in_hands(old_cell)
  					old_cell.add_fingerprint(user)
  					old_cell.update_icon()
  					cell = CELL
  					usermessage("<span class='notice'>Upgrade complete. Maximum capacity: <b>[round(cell.maxcharge/100)]</b>%</span>", mob_override = user)
  				else
  					usermessage("<span class='danger'>Procedure interrupted. Protocol terminated.</span>", mob_override = user)
  	if(changed)
  		update_parts()
  	..()
  
negative.code: 	var/emp_heal_amount = 0.06		//How much emp damage to heal per process.
  	var/emp_disable_threshold = 3	//3 weak ion, 2 strong ion hits.
  	var/emp_disabled = FALSE
  
  	var/requires_suit = TRUE
  
  	var/datum/effect_system/trail_follow/ion/flight/ion_trail
  