anchor.diff:  		),
   	)
   
  -/datum/component/construction/mecha/ripley/custom_action(obj/item/I, mob/living/user, diff)
  -	if(!..())
  -		return FALSE
  -
  -	switch(index)
  -		if(1)
  -			user.visible_message(span_notice("[user] connects [parent] hydraulic systems."), span_notice("You connect [parent] hydraulic systems."))
  -		if(2)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] activates [parent] hydraulic systems."), span_notice("You activate [parent] hydraulic systems."))
  -			else
  -				user.visible_message(span_notice("[user] disconnects [parent] hydraulic systems."), span_notice("You disconnect [parent] hydraulic systems."))
  -		if(3)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] adds the wiring to [parent]."), span_notice("You add the wiring to [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] deactivates [parent] hydraulic systems."), span_notice("You deactivate [parent] hydraulic systems."))
  -		if(4)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] adjusts the wiring of [parent]."), span_notice("You adjust the wiring of [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] removes the wiring from [parent]."), span_notice("You remove the wiring from [parent]."))
  -		if(5)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] installs [I] into [parent]."), span_notice("You install [I] into [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] disconnects the wiring of [parent]."), span_notice("You disconnect the wiring of [parent]."))
  -		if(6)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] secures the mainboard."), span_notice("You secure the mainboard."))
  -			else
  -				user.visible_message(span_notice("[user] removes the central control module from [parent]."), span_notice("You remove the central computer mainboard from [parent]."))
  -		if(7)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] installs [I] into [parent]."), span_notice("You install [I] into [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] unfastens the mainboard."), span_notice("You unfasten the mainboard."))
  -		if(8)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] secures the peripherals control module."), span_notice("You secure the peripherals control module."))
  -			else
  -				user.visible_message(span_notice("[user] removes the peripherals control module from [parent]."), span_notice("You remove the peripherals control module from [parent]."))
  -		if(9)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] installs [I] into [parent]."), span_notice("You install [I] into [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] unfastens the peripherals control module."), span_notice("You unfasten the peripherals control module."))
  -		if(10)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] secures the scanner module."), span_notice("You secure the scanner module."))
  -			else
  -				user.visible_message(span_notice("[user] removes the scanner module from [parent]."), span_notice("You remove the scanner module from [parent]."))
  -		if(11)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] installs [I] to [parent]."), span_notice("You install [I] to [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] unfastens the scanner module."), span_notice("You unfasten the scanner module."))
  -		if(12)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] secures the capacitor."), span_notice("You secure the capacitor."))
  -			else
  -				user.visible_message(span_notice("[user] removes the capacitor from [parent]."), span_notice("You remove the capacitor from [parent]."))
  -		if(13)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] installs [I]."), span_notice("You install [I]."))
  -			else
  -				user.visible_message(span_notice("[user] unsecures the capacitor from [parent]."), span_notice("You unsecure the capacitor from [parent]."))
  -		if(14)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] secures the power cell."), span_notice("You secure the power cell."))
  -			else
  -				user.visible_message(span_notice("[user] pries the power cell from [parent]."), span_notice("You pry the power cell from [parent]."))
  -		if(15)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] installs the internal armor layer to [parent]."), span_notice("You install the internal armor layer to [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] unfastens the power cell."), span_notice("You unfasten the power cell."))
  -		if(16)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] secures the internal armor layer."), span_notice("You secure the internal armor layer."))
  -			else
  -				user.visible_message(span_notice("[user] pries internal armor layer from [parent]."), span_notice("You pry internal armor layer from [parent]."))
  -		if(17)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] welds the internal armor layer to [parent]."), span_notice("You weld the internal armor layer to [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] unfastens the internal armor layer."), span_notice("You unfasten the internal armor layer."))
  -		if(18)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] installs the external reinforced armor layer to [parent]."), span_notice("You install the external reinforced armor layer to [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] cuts the internal armor layer from [parent]."), span_notice("You cut the internal armor layer from [parent]."))
  -		if(19)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] secures the external armor layer."), span_notice("You secure the external reinforced armor layer."))
  -			else
  -				user.visible_message(span_notice("[user] pries external armor layer from [parent]."), span_notice("You pry external armor layer from [parent]."))
  -		if(20)
  -			if(diff==FORWARD)
  -				user.visible_message(span_notice("[user] welds the external armor layer to [parent]."), span_notice("You weld the external armor layer to [parent]."))
  -			else
  -				user.visible_message(span_notice("[user] unfastens the external armor layer."), span_notice("You unfasten the external armor layer."))
  -	return TRUE
  -
  +//GYGAX
   /datum/component/construction/unordered/mecha_chassis/gygax
   	result = /datum/component/construction/mecha/gygax
   	steps = list(
  
positive.code: 	outer_plating = /obj/item/mecha_parts/part/savannah_ivanov_armor
  	outer_plating_amount = 1
  
  /datum/component/construction/mecha/savannah_ivanov/custom_action(obj/item/I, mob/living/user, diff)
  	. = ..()
  	if(!.)
  		return FALSE
  
  	switch(index)
  		if(1)
  			user.visible_message(span_notice("[user] connects [parent] hydraulic systems."), span_notice("You connect [parent] hydraulic systems."))
  		if(2)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] activates [parent] hydraulic systems."), span_notice("You activate [parent] hydraulic systems."))
  			else
  				user.visible_message(span_notice("[user] disconnects [parent] hydraulic systems."), span_notice("You disconnect [parent] hydraulic systems."))
  		if(3)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] adds the wiring to [parent]."), span_notice("You add the wiring to [parent]."))
  			else
  				user.visible_message(span_notice("[user] deactivates [parent] hydraulic systems."), span_notice("You deactivate [parent] hydraulic systems."))
  		if(4)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] adjusts the wiring of [parent]."), span_notice("You adjust the wiring of [parent]."))
  			else
  				user.visible_message(span_notice("[user] removes the wiring from [parent]."), span_notice("You remove the wiring from [parent]."))
  		if(5)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] installs [I] into [parent]."), span_notice("You install [I] into [parent]."))
  			else
  				user.visible_message(span_notice("[user] disconnects the wiring of [parent]."), span_notice("You disconnect the wiring of [parent]."))
  		if(6)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] secures the mainboard."), span_notice("You secure the mainboard."))
  			else
  				user.visible_message(span_notice("[user] removes the central control module from [parent]."), span_notice("You remove the central computer mainboard from [parent]."))
  		if(7)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] installs [I] into [parent]."), span_notice("You install [I] into [parent]."))
  			else
  				user.visible_message(span_notice("[user] unfastens the mainboard."), span_notice("You unfasten the mainboard."))
  		if(8)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] secures the Savannah peripherals control module."), span_notice("You secure the Savannah peripherals control module."))
  			else
  				user.visible_message(span_notice("[user] removes the Savannah peripherals control module from [parent]."), span_notice("You remove the Savannah peripherals control module from [parent]."))
  		if(9)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] installs [I] into [parent]."), span_notice("You install [I] into [parent]."))
  			else
  				user.visible_message(span_notice("[user] unfastens the Savannah peripherals control module."), span_notice("You unfasten the Savannah peripherals control module."))
  		if(10)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] secures the Ivanov weapon control module."), span_notice("You secure the Ivanov weapon control module."))
  			else
  				user.visible_message(span_notice("[user] removes the Ivanov weapon control module from [parent]."), span_notice("You remove the Ivanov weapon control module from [parent]."))
  		if(11)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] installs [I] to [parent]."), span_notice("You install [I] to [parent]."))
  			else
  				user.visible_message(span_notice("[user] unfastens the Ivanov weapon control module."), span_notice("You unfasten the Ivanov weapon control module."))
  		if(12)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] secures the scanner module."), span_notice("You secure the scanner module."))
  			else
  				user.visible_message(span_notice("[user] removes the scanner module from [parent]."), span_notice("You remove the scanner module from [parent]."))
  		if(13)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] installs [I] to [parent]."), span_notice("You install [I] to [parent]."))
  			else
  				user.visible_message(span_notice("[user] unfastens the scanner module."), span_notice("You unfasten the scanner module."))
  		if(14)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] secures the capacitor."), span_notice("You secure the capacitor."))
  			else
  				user.visible_message(span_notice("[user] removes the capacitor from [parent]."), span_notice("You remove the capacitor from [parent]."))
  		if(15)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] installs [I] into [parent]."), span_notice("You install [I] into [parent]."))
  			else
  				user.visible_message(span_notice("[user] unfastens the capacitor."), span_notice("You unfasten the capacitor."))
  		if(16)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] secures the power cell."), span_notice("You secure the power cell."))
  			else
  				user.visible_message(span_notice("[user] pries the power cell from [parent]."), span_notice("You pry the power cell from [parent]."))
  		if(17)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] installs the internal armor layer to [parent]."), span_notice("You install the internal armor layer to [parent]."))
  			else
  				user.visible_message(span_notice("[user] unfastens the power cell."), span_notice("You unfasten the power cell."))
  		if(18)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] secures the internal armor layer."), span_notice("You secure the internal armor layer."))
  			else
  				user.visible_message(span_notice("[user] pries internal armor layer from [parent]."), span_notice("You pry internal armor layer from [parent]."))
  		if(19)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] welds the internal armor layer to [parent]."), span_notice("You weld the internal armor layer to [parent]."))
  			else
  				user.visible_message(span_notice("[user] unfastens the internal armor layer."), span_notice("You unfasten the internal armor layer."))
  		if(20)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] installs [I] to [parent]."), span_notice("You install [I] to [parent]."))
  			else
  				user.visible_message(span_notice("[user] cuts the internal armor layer from [parent]."), span_notice("You cut the internal armor layer from [parent]."))
  		if(21)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] secures Savannah-Ivanov Armor Plates."), span_notice("You secure Savannah-Ivanov Armor Plates."))
  			else
  				user.visible_message(span_notice("[user] pries Savannah-Ivanov Armor Plates from [parent]."), span_notice("You pry Savannah-Ivanov Armor Plates from [parent]."))
  		if(22)
  			if(diff==FORWARD)
  				user.visible_message(span_notice("[user] welds Savannah-Ivanov Armor Plates to [parent]."), span_notice("You weld Savannah-Ivanov Armor Plates to [parent]."))
  			else
  				user.visible_message(span_notice("[user] unfastens Savannah-Ivanov Armor Plates."), span_notice("You unfasten Savannah-Ivanov Armor Plates."))
  	return TRUE
  
  //ODYSSEUS
  
  /datum/component/construction/unordered/mecha_chassis/odysseus
  	result = /datum/component/construction/mecha/odysseus
  	steps = list(
  
negative.code: 	..()
  
  /datum/component/construction/mecha/honker/custom_action(obj/item/I, mob/living/user, diff)
  	if(istype(I, /obj/item/bikehorn))
  		playsound(parent, 'sound/items/bikehorn.ogg', 50, TRUE)
  		user.balloon_alert_to_viewers("HONK!")
  
  	//TODO: better messages.
  	switch(index)
  		if(2, 4, 6, 8, 10, 12)
  			user.balloon_alert_to_viewers("installed [I]")
  		if(14, 16)
  			user.balloon_alert_to_viewers("added [I]")
  	return TRUE
  
  //DURAND
  /datum/component/construction/unordered/mecha_chassis/durand
  	result = /datum/component/construction/mecha/durand
  	steps = list(
  