diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index ab376e4825d..e7b70432668 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -104,7 +104,8 @@ /obj/item/device/radio/headset/heads/ai_integrated //No need to care about icons, it should be hidden inside the AI anyway. name = "AI Subspace Transceiver" desc = "Integrated AI radio transceiver." - icon_state = "ai_radio" + icon = 'icons/obj/robot_component.dmi' + icon_state = "radio" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/heads/ai_integrated var/myAi = null // Atlantis: Reference back to the AI which has this radio. diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index a15356e9c9b..3a064ee552d 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -703,6 +703,8 @@ var/GLOBAL_RADIO_TYPE = 1 // radio type to use /obj/item/device/radio/borg var/obj/item/device/encryptionkey/keyslot = null//Borg radios can handle a single encryption key + icon = 'icons/obj/robot_component.dmi' // Cyborgs radio icons should look like the component. + icon_state = "radio" /obj/item/device/radio/borg/attackby(obj/item/weapon/W as obj, mob/user as mob) // ..() diff --git a/code/modules/mob/living/silicon/robot/component.dm b/code/modules/mob/living/silicon/robot/component.dm index d97d2a5391c..774f5dc4209 100644 --- a/code/modules/mob/living/silicon/robot/component.dm +++ b/code/modules/mob/living/silicon/robot/component.dm @@ -23,11 +23,16 @@ /datum/robot_component/proc/uninstall() /datum/robot_component/proc/destroy() + var/brokenstate = "broken" // Generic icon + if (istype(wrapped, /obj/item/robot_parts/robot_component)) + var/obj/item/robot_parts/robot_component/comp = wrapped + brokenstate = comp.icon_state_broken if(wrapped) del wrapped wrapped = new/obj/item/broken_device + wrapped.icon_state = brokenstate // Module-specific broken icons! Yay! // The thing itself isn't there anymore, but some fried remains are. installed = -1 @@ -137,25 +142,38 @@ construction_cost = list("metal"=5000) var/brute = 0 var/burn = 0 + var/icon_state_broken = "broken" // TODO: actual icons ;) /obj/item/robot_parts/robot_component/binary_communication_device name = "binary communication device" + icon_state = "binradio" + icon_state_broken = "binradio_broken" /obj/item/robot_parts/robot_component/actuator name = "actuator" + icon_state = "motor" + icon_state_broken = "motor_broken" /obj/item/robot_parts/robot_component/armour name = "armour plating" + icon_state = "armor" + icon_state_broken = "armor_broken" /obj/item/robot_parts/robot_component/camera name = "camera" + icon_state = "camera" + icon_state_broken = "camera_broken" /obj/item/robot_parts/robot_component/diagnosis_unit name = "diagnosis unit" + icon_state = "analyser" + icon_state_broken = "analyser_broken" /obj/item/robot_parts/robot_component/radio name = "radio" + icon_state = "radio" + icon_state_broken = "radio_broken" // //Robotic Component Analyser, basically a health analyser for robots diff --git a/icons/obj/radio.dmi b/icons/obj/radio.dmi index b0b250a18b8..9c4830d273c 100644 Binary files a/icons/obj/radio.dmi and b/icons/obj/radio.dmi differ diff --git a/icons/obj/robot_component.dmi b/icons/obj/robot_component.dmi index 7647b09b44f..1129f25ab1c 100644 Binary files a/icons/obj/robot_component.dmi and b/icons/obj/robot_component.dmi differ