From ffeb9a958ab00b978a79fccd32d110a35ede7874 Mon Sep 17 00:00:00 2001 From: Erthilo Date: Wed, 9 May 2012 23:29:06 +0100 Subject: [PATCH] TG: Fixes some mix-up with what hand was lost Regenerate admin verb now restores limbs/lost blood Fixes power_loss proc to actually respect the electrical channel something is on. Revision: r3539 Author: VivianFoxfoot --- code/modules/mob/living/living.dm | 7 +++---- code/modules/mob/mob.dm | 13 +++++++++++++ code/modules/power/power.dm | 2 +- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index bbcbfcbf577..3e1ea272e47 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -217,12 +217,11 @@ SetParalysis(0) SetStunned(0) SetWeakened(0) + src.radiation = 0 + src.nutrition = 400 + src.bodytemperature = initial(src.bodytemperature) //src.health = 100 if(ishuman(src)) - src.radiation = 0 - //M.health = 100 - src.nutrition = 400 - src.bodytemperature = initial(src.bodytemperature) src.heal_overall_damage(1000, 1000) //M.updatehealth() src.buckled = initial(src.buckled) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 9bce3bbbf27..6b463db453d 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -713,6 +713,19 @@ if ( !usr || usr==src || !istype(src.loc,/turf) ) //if there's no person pulling OR the person is pulling themself OR the object being pulled is inside something: abort! return + + if(ishuman(usr)) + if(usr.hand) // if he's using his left hand. + var/datum/organ/external/temp = usr:get_organ("l_hand") + if(temp.destroyed) + usr << "\blue You look at your stump." + return + else + var/datum/organ/external/temp = usr:get_organ("r_hand") + if(temp.destroyed) + usr << "\blue You look at your stump." + return + if (!( anchored )) usr.pulling = src if(ismob(src)) diff --git a/code/modules/power/power.dm b/code/modules/power/power.dm index c78517f3870..41074362513 100644 --- a/code/modules/power/power.dm +++ b/code/modules/power/power.dm @@ -31,7 +31,7 @@ if(!A || !isarea(A) || !A.master) return 0 // if not, then not powered - return A.master.powered(chan) // return power status of the area + return A.master.powered(power_channel) // return power status of the area // increment the power usage stats for an area