From f10c08253f2a2aa33b0be1a9768dfa583018125d Mon Sep 17 00:00:00 2001 From: cib Date: Fri, 5 Jul 2013 13:43:11 +0200 Subject: [PATCH] Fixed two bugs with robot components. 1. They could be broken but still powered. 2. Melee damage didn't work at all. --- code/modules/mob/living/silicon/robot/component.dm | 2 +- code/modules/mob/living/silicon/robot/robot_damage.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/silicon/robot/component.dm b/code/modules/mob/living/silicon/robot/component.dm index 1d10956582e..223a1c547eb 100644 --- a/code/modules/mob/living/silicon/robot/component.dm +++ b/code/modules/mob/living/silicon/robot/component.dm @@ -50,7 +50,7 @@ electronics_damage = max(0, electronics_damage - electronics) /datum/robot_component/proc/is_powered() - return installed == 1 && (!energy_consumption || powered) + return (installed == 1) && (brute_damage + electronics_damage < max_damage) && (!energy_consumption || powered) /datum/robot_component/proc/consume_power() diff --git a/code/modules/mob/living/silicon/robot/robot_damage.dm b/code/modules/mob/living/silicon/robot/robot_damage.dm index e5783877afd..710a2598c9c 100644 --- a/code/modules/mob/living/silicon/robot/robot_damage.dm +++ b/code/modules/mob/living/silicon/robot/robot_damage.dm @@ -56,7 +56,7 @@ /mob/living/silicon/robot/take_organ_damage(var/brute = 0, var/burn = 0, var/sharp = 0) var/list/components = get_damageable_components() - if(components.len) + if(!components.len) return //Combat shielding absorbs a percentage of damage directly into the cell.