From 00bffba7ea1cf6855eb3a905dec1581f2cbcbe0d Mon Sep 17 00:00:00 2001 From: Thalpy <48600475+ThalpySci@users.noreply.github.com> Date: Thu, 21 Nov 2019 15:57:21 +0000 Subject: [PATCH] Why do surgeries always end up with jank --- code/game/objects/items/defib.dm | 2 - .../kitchen_machinery/smartfridge.dm | 6 +- .../emergency_cardioversion_recovery.dm | 52 ++++++++++-------- code/modules/surgery/organs/heart.dm | 2 +- code/modules/surgery/organs/organ_internal.dm | 6 +- icons/mob/hud.dmi | Bin 16277 -> 16325 bytes tgstation.dme | 1 + 7 files changed, 37 insertions(+), 32 deletions(-) diff --git a/code/game/objects/items/defib.dm b/code/game/objects/items/defib.dm index f5799e1a22..ee85005c61 100644 --- a/code/game/objects/items/defib.dm +++ b/code/game/objects/items/defib.dm @@ -762,5 +762,3 @@ desc = "An upgrade to the defibrillator capacitors, which let it charge faster" icon_state = "fast_disk" materials = list(MAT_METAL=16000, MAT_GLASS = 8000, MAT_GOLD = 26000, MAT_SILVER = 26000) - -#undef HALFWAYCRITDEATH diff --git a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm index 9af7235815..893a53ede7 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm @@ -406,8 +406,8 @@ . = ..() if(!.) //if the item loads, clear can_decompose return - var/obj/item/organ/organ = O - if(organ) + if(istype(O, /obj/item/organ)) + var/obj/item/organ/organ = O organ.organ_flags |= ORGAN_FROZEN /obj/machinery/smartfridge/organ/RefreshParts() @@ -436,7 +436,7 @@ ..() var/list = list(/obj/item/organ/tongue, /obj/item/organ/brain, /obj/item/organ/heart, /obj/item/organ/liver, /obj/item/organ/ears, /obj/item/organ/eyes, /obj/item/organ/tail, /obj/item/organ/stomach) var/newtype = pick(list) - load(new newtype) + load(new newtype(src.loc)) // ----------------------------- // Chemistry Medical Smartfridge diff --git a/code/modules/surgery/emergency_cardioversion_recovery.dm b/code/modules/surgery/emergency_cardioversion_recovery.dm index fd14c2ea8f..f0540e78c0 100644 --- a/code/modules/surgery/emergency_cardioversion_recovery.dm +++ b/code/modules/surgery/emergency_cardioversion_recovery.dm @@ -10,14 +10,14 @@ time = 50 repeatable = TRUE //So you can retry -/datum/surgery_step/incise_heart/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - display_results(user, target, "You begin apply an electrical charge directly to the heart and across the body...", +/datum/surgery_step/ventricular_electrotherapy/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) + display_results(user, target, "You begin to apply an electrical charge directly to the heart body...", "[user] begins to make an incision in [target]'s heart.", "[user] begins to make an incision in [target]'s heart.") - target.notify_ghost_cloning("Your heart is undergoing Emergency Cardioversion Induction!") + target.notify_ghost_cloning("Your heart is undergoing Emergency Cardioversion Induction Surgery!") playsound(src, 'sound/machines/defib_charge.ogg', 75, 0) -/datum/surgery_step/incise_heart/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) +/datum/surgery_step/ventricular_electrotherapy/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) var/mob/living/carbon/human/H = target playsound(src, 'sound/machines/defib_zap.ogg', 75, 1, -1) playsound(src, "bodyfall", 50, 1) @@ -25,51 +25,56 @@ display_results(user, target, "You can't use this procedure on the living! [H]'s body flops madly like a wild fish on the table from the current, and your crazed surgical methods.", "[user] screws up, causing [H] to flop around violently as they're zapped!", "[user] screws up, causing [H] to flop around violently as they're zapped!") - M.emote("scream") - H.electrocute_act(25, (get_turf(C)), 1, FALSE, FALSE, FALSE, TRUE) + H.emote("scream") + H.electrocute_act(25, (get_turf(H)), 1, FALSE, FALSE, FALSE, TRUE) + H.adjustFireLoss(10) H.emote("flip") H.Jitter(100) return FALSE - display_results(user, target, "induces a stable rythum in [H]'s heart.", - "[H]'s heart is shocked, attemping to bring them back to a stable rythum!.", + display_results(user, target, "You induce a stable cardio in [H]'s heart.", + "[H]'s heart is shocked, attemping to bring them back to a stable rhythm!", "") - if (!(NOBLOOD in H.dna.species.species_traits)) - H.bleed_rate += 10 H.adjustBruteLoss(10) - H.adjustOrganLoss(ORGAN_SLOT_HEART, -10) + H.adjustOrganLoss(ORGAN_SLOT_HEART, -15) H.adjustOrganLoss(ORGAN_SLOT_BRAIN, -5) - H.electrocute_act(0, (get_turf(C)), 1, FALSE, FALSE, FALSE, TRUE) + H.electrocute_act(0, (get_turf(H)), 1, FALSE, FALSE, FALSE, TRUE) + if(istype(tool, /obj/item/twohanded/shockpaddles)) + display_results(user, target, "You move the paddles to the restart position.", + "[user] moves the paddles to the restart position...", + "") + return TRUE if(!do_they_live(H)) playsound(src, 'sound/machines/defib_failed.ogg', 50, 0) + log_combat(user, H, "revived", "Emergency Cardioversion Induction") return TRUE -/datum/surgery_step/incise_heart/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) +/datum/surgery_step/ventricular_electrotherapy/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) playsound(src, 'sound/machines/defib_zap.ogg', 75, 1, -1) playsound(src, "bodyfall", 50, 1) var/mob/living/carbon/human/H = target - display_results(user, target, "You screw up, sending current racing though their body!", + display_results(user, target, "You screw up, sending a current through their body!", "[user] screws up, causing [H] to flop around violently as they're zapped!", "[user] screws up, causing [H] to flop around violently as they're zapped!") - H.electrocute_act(25, (get_turf(C)), 1, FALSE, FALSE, FALSE, TRUE) + H.electrocute_act(25, (get_turf(H)), 1, FALSE, FALSE, FALSE, TRUE) + H.adjustFireLoss(5) H.emote("flip") H.adjustOrganLoss(ORGAN_SLOT_HEART, 10) -/datum/surgery_step/incise_heart/do_they_live(mob/living/carbon/human/H) +/datum/surgery_step/ventricular_electrotherapy/proc/do_they_live(mob/living/carbon/human/H) var/obj/item/organ/heart = H.getorgan(/obj/item/organ/heart) H.visible_message("[H]'s body convulses a bit.") - total_brute = H.getBruteLoss() - total_burn = H.getFireLoss() - shock_touching(30, H) + var/total_brute = H.getBruteLoss() + var/total_burn = H.getFireLoss() var/failed - var/tdelta = round(world.time - timeofdeath) + var/tdelta = round(world.time - H.timeofdeath) if (H.suiciding || (HAS_TRAIT(H, TRAIT_NOCLONE))) failed = "The [src] equipment buzzes: Resuscitation failed - Recovery of patient impossible. Further attempts futile." else if (H.hellbound) failed = "The [src] equipment buzzes: Resuscitation failed - Patient's soul appears to be on another plane of existence. Further attempts futile." - else if(tdelta < (DEFIB_TIME_LIMIT * 10)) + else if(world.time < (DEFIB_TIME_LIMIT * 10)) failed = "The [src] equipment buzzes: Resuscitation failed - Body has decayed for too long. Further attempts futile." else if (!heart) failed = "The [src] equipment buzzes: Resuscitation failed - Patient's heart is missing." @@ -93,7 +98,7 @@ if(failed) - user.visible_message(failed) + H.visible_message(failed) playsound(src, 'sound/machines/defib_failed.ogg', 50, 0) else //If the body has been fixed so that they would not be in crit when defibbed, give them oxyloss to put them back into crit @@ -107,11 +112,10 @@ H.adjustFireLoss((mobhealth - HALFWAYCRITDEATH) * (total_burn / overall_damage), 0) H.adjustBruteLoss((mobhealth - HALFWAYCRITDEATH) * (total_brute / overall_damage), 0) H.updatehealth() // Previous "adjust" procs don't update health, so we do it manually. - user.visible_message("The [src] equipment pings: Resuscitation successful.") + H.visible_message("The [src] equipment pings: Resuscitation successful.") playsound(src, 'sound/machines/defib_success.ogg', 50, 0) H.set_heartattack(FALSE) H.revive() H.emote("gasp") H.Jitter(100) SEND_SIGNAL(H, COMSIG_LIVING_MINOR_SHOCK) - log_combat(user, H, "revived", "Emergency Cardioversion Induction") diff --git a/code/modules/surgery/organs/heart.dm b/code/modules/surgery/organs/heart.dm index a9830f36df..963c7ac6f9 100644 --- a/code/modules/surgery/organs/heart.dm +++ b/code/modules/surgery/organs/heart.dm @@ -6,7 +6,7 @@ slot = ORGAN_SLOT_HEART healing_factor = STANDARD_ORGAN_HEALING - decay_factor = 3 * STANDARD_ORGAN_DECAY //designed to fail about 5 minutes after death + decay_factor = 2.5 * STANDARD_ORGAN_DECAY //designed to fail about 5 minutes after death low_threshold_passed = "Prickles of pain appear then die out from within your chest..." high_threshold_passed = "Something inside your chest hurts, and the pain isn't subsiding. You notice yourself breathing far faster than before." diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index 55f81504d9..45cbda9898 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -238,7 +238,8 @@ if(delta > 0) if(damage >= maxHealth) organ_flags |= ORGAN_FAILING - owner.med_hud_set_status() + if(owner) + owner.med_hud_set_status() return now_failing if(damage > high_threshold && prev_damage <= high_threshold) return high_threshold_passed @@ -246,7 +247,8 @@ return low_threshold_passed else organ_flags &= ~ORGAN_FAILING - owner.med_hud_set_status() + if(owner) + owner.med_hud_set_status() if(!owner)//Processing is stopped when the organ is dead and outside of someone. This hopefully should restart it if a removed organ is repaired outside of a body. START_PROCESSING(SSobj, src) if(prev_damage > low_threshold && damage <= low_threshold) diff --git a/icons/mob/hud.dmi b/icons/mob/hud.dmi index 5659e0208ff342e29e63face7571a4c5c543c7d2..d2b67f4314665ff948ad26bf0e63bb961c405788 100644 GIT binary patch delta 14206 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 delta 14166 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