diff --git a/code/modules/mob/living/silicon/robot/component.dm b/code/modules/mob/living/silicon/robot/component.dm index a82ad655009..fba4477b1d4 100644 --- a/code/modules/mob/living/silicon/robot/component.dm +++ b/code/modules/mob/living/silicon/robot/component.dm @@ -135,7 +135,8 @@ icon_state = "working" construction_time = 200 construction_cost = list("metal"=5000) - + var/brute = 0 + var/burn = 0 // TODO: actual icons ;) /obj/item/robot_parts/robot_component/binary_communication_device diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 13db34f58c1..35341f111d8 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -127,7 +127,7 @@ var/datum/robot_component/cell_component = components["power cell"] cell_component.wrapped = cell cell_component.installed = 1 - + hud_list[HEALTH_HUD] = image('icons/mob/hud.dmi', src, "hudblank") hud_list[STATUS_HUD] = image('icons/mob/hud.dmi', src, "hudhealth100") hud_list[ID_HUD] = image('icons/mob/hud.dmi', src, "hudblank") @@ -136,9 +136,9 @@ hud_list[IMPCHEM_HUD] = image('icons/mob/hud.dmi', src, "hudblank") hud_list[IMPTRACK_HUD] = image('icons/mob/hud.dmi', src, "hudblank") hud_list[SPECIALROLE_HUD] = image('icons/mob/hud.dmi', src, "hudblank") - - + + playsound(loc, 'sound/voice/liveagain.ogg', 75, 1) @@ -579,6 +579,14 @@ user.drop_item() W.loc = null + var/obj/item/robot_parts/robot_component/WC = W + if(istype(WC)) + C.brute_damage = WC.brute + C.electronics_damage = WC.burn + else //This will nominally mean that removing and replacing a power cell will repair the mount, but I don't care at this point. ~Z + C.brute_damage = 0 + C.electronics_damage = 0 + usr << "\blue You install the [W.name]." return @@ -641,8 +649,12 @@ if(!remove) return var/datum/robot_component/C = components[remove] - var/obj/item/I = C.wrapped + var/obj/item/robot_parts/robot_component/I = C.wrapped user << "You remove \the [I]." + if(istype(I)) + I.brute = C.brute_damage + I.burn = C.electronics_damage + I.loc = src.loc if(C.installed == 1)