Fixes advanced trauma kits claiming to disinfect but not doing so

This commit is contained in:
mwerezak
2014-07-08 18:49:51 -04:00
parent dcfbeb0924
commit 910ce676b0
2 changed files with 15 additions and 2 deletions

View File

@@ -157,7 +157,10 @@
var/datum/organ/external/affecting = H.get_organ(user.zone_sel.selecting) var/datum/organ/external/affecting = H.get_organ(user.zone_sel.selecting)
if(affecting.open == 0) if(affecting.open == 0)
if(!affecting.bandage()) var/bandaged = affecting.bandage()
var/disinfected = affecting.disinfect()
if(!(bandaged || disinfected))
user << "\red The wounds on [M]'s [affecting.display_name] have already been treated." user << "\red The wounds on [M]'s [affecting.display_name] have already been treated."
return 1 return 1
else else
@@ -174,6 +177,7 @@
else else
user.visible_message( "\blue [user] smears some bioglue over [W.desc] on [M]'s [affecting.display_name].", \ user.visible_message( "\blue [user] smears some bioglue over [W.desc] on [M]'s [affecting.display_name].", \
"\blue You smear some bioglue over [W.desc] on [M]'s [affecting.display_name]." ) "\blue You smear some bioglue over [W.desc] on [M]'s [affecting.display_name]." )
if (bandaged)
affecting.heal_damage(heal_brute,0) affecting.heal_damage(heal_brute,0)
use(1) use(1)
else else

View File

@@ -694,6 +694,15 @@ Note that amputating the affected organ does in fact remove the infection from t
W.bandaged = 1 W.bandaged = 1
return rval return rval
/datum/organ/external/proc/disinfect()
var/rval = 0
for(var/datum/wound/W in wounds)
if(W.internal) continue
rval |= !W.disinfected
W.disinfected = 1
W.germ_level = 0
return rval
/datum/organ/external/proc/clamp() /datum/organ/external/proc/clamp()
var/rval = 0 var/rval = 0
src.status &= ~ORGAN_BLEEDING src.status &= ~ORGAN_BLEEDING