From ab63b08785ad64bcbf0ac0845a39eb33fed56da5 Mon Sep 17 00:00:00 2001 From: Aryn Date: Wed, 19 Mar 2014 21:02:23 -0600 Subject: [PATCH] Fixed issues with cyborgs deactivating flashlights, cleaned up some module code in the process. Conflicts: code/modules/mob/living/silicon/robot/inventory.dm code/modules/mob/living/silicon/robot/robot.dm --- .../mob/living/silicon/robot/inventory.dm | 2 ++ code/modules/mob/living/silicon/robot/robot.dm | 18 ++++++++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/living/silicon/robot/inventory.dm b/code/modules/mob/living/silicon/robot/inventory.dm index d22976509b1..6eb7b7ac384 100644 --- a/code/modules/mob/living/silicon/robot/inventory.dm +++ b/code/modules/mob/living/silicon/robot/inventory.dm @@ -12,6 +12,7 @@ if(!O) return 0 + if(istype(O,/obj/item/borg/sight)) var/obj/item/borg/sight/S = O sight_mode &= ~S.sight_mode @@ -77,6 +78,7 @@ uneq_module(module_state_2) uneq_module(module_state_3) + /mob/living/silicon/robot/proc/activated(obj/item/O) if(module_state_1 == O) return 1 diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 98173429f06..a9207280470 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -142,7 +142,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") @@ -151,9 +151,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) @@ -1153,20 +1153,26 @@ if (href_list["deact"]) var/obj/item/O = locate(href_list["deact"]) + if(activated(O)) if(module_state_1 == O) module_state_1 = null - contents -= O else if(module_state_2 == O) module_state_2 = null - contents -= O else if(module_state_3 == O) module_state_3 = null - contents -= O else src << "Module isn't activated." + return else src << "Module isn't activated" + return + + O.dropped(src) + contents -= O + + src << "[O.name] deactivated." + installed_modules() return