mirror of
https://github.com/yogstation13/Yogstation.git
synced 2025-02-26 09:04:50 +00:00
Cryo can only heal burn wounds (#19418)
* Update cryo.dm * only burns * does stuff
This commit is contained in:
@@ -116,6 +116,8 @@ GLOBAL_LIST_INIT(global_all_wound_types, list(/datum/wound/blunt/critical, /datu
|
|||||||
#define MANGLES_BONE (1<<3)
|
#define MANGLES_BONE (1<<3)
|
||||||
/// If this wound marks the limb as being allowed to have gauze applied
|
/// If this wound marks the limb as being allowed to have gauze applied
|
||||||
#define ACCEPTS_GAUZE (1<<4)
|
#define ACCEPTS_GAUZE (1<<4)
|
||||||
|
/// If this wound can be healed by cryoxadone
|
||||||
|
#define ACCEPTS_CRYO (1<<5)
|
||||||
|
|
||||||
// ~scar persistence defines
|
// ~scar persistence defines
|
||||||
// The following are the order placements for persistent scar save formats
|
// The following are the order placements for persistent scar save formats
|
||||||
|
|||||||
@@ -324,6 +324,8 @@
|
|||||||
|
|
||||||
/// Called from cryoxadone and pyroxadone when they're proc'ing. Wounds will slowly be fixed separately from other methods when these are in effect. crappy name but eh
|
/// Called from cryoxadone and pyroxadone when they're proc'ing. Wounds will slowly be fixed separately from other methods when these are in effect. crappy name but eh
|
||||||
/datum/wound/proc/on_xadone(power)
|
/datum/wound/proc/on_xadone(power)
|
||||||
|
if(!(wound_flags & ACCEPTS_CRYO))
|
||||||
|
return
|
||||||
cryo_progress += power
|
cryo_progress += power
|
||||||
if(cryo_progress > 66 * severity)
|
if(cryo_progress > 66 * severity)
|
||||||
qdel(src)
|
qdel(src)
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
wound_type = WOUND_BURN
|
wound_type = WOUND_BURN
|
||||||
processes = TRUE
|
processes = TRUE
|
||||||
sound_effect = 'sound/effects/wounds/sizzle1.ogg'
|
sound_effect = 'sound/effects/wounds/sizzle1.ogg'
|
||||||
wound_flags = (FLESH_WOUND | ACCEPTS_GAUZE)
|
wound_flags = (FLESH_WOUND | ACCEPTS_GAUZE | ACCEPTS_CRYO)
|
||||||
|
|
||||||
treatable_by = list(/obj/item/stack/medical/ointment, /obj/item/stack/medical/mesh) // sterilizer and alcohol will require reagent treatments, coming soon
|
treatable_by = list(/obj/item/stack/medical/ointment, /obj/item/stack/medical/mesh) // sterilizer and alcohol will require reagent treatments, coming soon
|
||||||
|
|
||||||
|
|||||||
@@ -209,16 +209,18 @@
|
|||||||
robotic_limb_damage += limb.get_damage(stamina=FALSE)
|
robotic_limb_damage += limb.get_damage(stamina=FALSE)
|
||||||
|
|
||||||
if(mob_occupant.health >= mob_occupant.getMaxHealth() - robotic_limb_damage) // Don't bother with fully healed people. Now takes robotic limbs into account.
|
if(mob_occupant.health >= mob_occupant.getMaxHealth() - robotic_limb_damage) // Don't bother with fully healed people. Now takes robotic limbs into account.
|
||||||
if(C)
|
var/has_cryo_wound = FALSE
|
||||||
if(C.all_wounds)
|
if(C && C.all_wounds)
|
||||||
|
for(var/datum/wound/wound as anything in C.all_wounds)
|
||||||
|
if(wound.wound_flags & ACCEPTS_CRYO)
|
||||||
if(!treating_wounds) // if we have wounds and haven't already alerted the doctors we're only dealing with the wounds, let them know
|
if(!treating_wounds) // if we have wounds and haven't already alerted the doctors we're only dealing with the wounds, let them know
|
||||||
treating_wounds = TRUE
|
|
||||||
playsound(src, 'sound/machines/cryo_warning.ogg', volume) // Bug the doctors.
|
playsound(src, 'sound/machines/cryo_warning.ogg', volume) // Bug the doctors.
|
||||||
var/msg = "Patient vitals fully recovered, continuing automated wound treatment."
|
var/msg = "Patient vitals fully recovered, continuing automated burn treatment."
|
||||||
radio.talk_into(src, msg, radio_channel)
|
radio.talk_into(src, msg, radio_channel)
|
||||||
else // otherwise if we were only treating wounds and now we don't have any, turn off treating_wounds so we can boot 'em out
|
has_cryo_wound = TRUE
|
||||||
treating_wounds = FALSE
|
break
|
||||||
|
|
||||||
|
treating_wounds = has_cryo_wound
|
||||||
if(!treating_wounds)
|
if(!treating_wounds)
|
||||||
on = FALSE
|
on = FALSE
|
||||||
update_icon()
|
update_icon()
|
||||||
|
|||||||
Reference in New Issue
Block a user