anchor.diff:  		return
   	if(href_list["shock"])
   		var/obj/item/mecha_parts/mecha_tracking/MT = locate(href_list["shock"])
  -		if (istype(MT))
  +		if (istype(MT) && MT.chassis)
   			MT.shock()
  +			log_game("[key_name(usr)] has activated remote EMP on exosuit [MT.chassis], located at [loc_name(MT.chassis)], which is currently [MT.chassis.occupant? "being piloted by [key_name(MT.chassis.occupant)]." : "without a pilot."] ")
  +			message_admins("[key_name_admin(usr)][ADMIN_FLW(usr)] has activated remote EMP on exosuit [MT.chassis][ADMIN_JMP(MT.chassis)], which is currently [MT.chassis.occupant? "being piloted by [key_name_admin(MT.chassis.occupant)][ADMIN_FLW(MT.chassis.occupant)]." : "without a pilot."] ")
   
   	updateUsrDialog()
   	return
  
positive.code: 	w_class = WEIGHT_CLASS_SMALL
  	var/ai_beacon = FALSE //If this beacon allows for AI control. Exists to avoid using istype() on checking.
  	var/recharging = 0
  
  /obj/item/mecha_parts/mecha_tracking/proc/get_mecha_info()
  	if(!in_mecha())
  
negative.code: 		return
  	M.trackers += src
  	M.diag_hud_set_mechtracking()
  	chassis = M
  
  /obj/item/mecha_parts/mecha_tracking/proc/in_mecha()
  	if(ismecha(loc))
  