Balloon Alerts (#7877)

This commit is contained in:
Guti
2024-03-15 07:40:14 +01:00
committed by GitHub
parent 691c394394
commit 172e1c7c12
40 changed files with 705 additions and 239 deletions

View File

@@ -34,6 +34,7 @@
if (affected.stage == 0)
user.visible_message("<span class='notice'>[user] starts applying medication to the damaged bones in [target]'s [affected.name] with \the [tool].</span>" , \
"<span class='notice'>You start applying medication to the damaged bones in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Applies medication to the damaged bones.", "Applying medication to the damaged bones.") // CHOMPEdit
target.custom_pain("Something in your [affected.name] is causing you a lot of pain!", 50)
..()
@@ -41,12 +42,14 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] applies some [tool] to [target]'s bone in [affected.name]</span>", \
"<span class='notice'>You apply some [tool] to [target]'s bone in [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Applies [tool] to [target]'s bone.", "Applying [tool] to [target]'s bone.") // CHOMPEdit
affected.stage = 1
/datum/surgery_step/glue_bone/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>" , \
"<span class='danger'>Your hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>")
user.balloon_alert_visible("Slips, damaging [target]'s [affected.name]", "Your hand slips.") // CHOMPEdit
///////////////////////////////////////////////////////////////
// Bone Setting Surgery
@@ -75,6 +78,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] is beginning to set the bone in [target]'s [affected.name] in place with \the [tool].</span>" , \
"<span class='notice'>You are beginning to set the bone in [target]'s [affected.name] in place with \the [tool].</span>")
user.balloon_alert_visible("Begins to set the bone in place.", "Setting the bone in place.") // CHOMPEdit - Balloon alert
target.custom_pain("The pain in your [affected.name] is going to make you pass out!", 50)
..()
@@ -83,16 +87,19 @@
if (affected.status & ORGAN_BROKEN)
user.visible_message("<span class='notice'>[user] sets the bone in [target]'s [affected.name] in place with \the [tool].</span>", \
"<span class='notice'>You set the bone in [target]'s [affected.name] in place with \the [tool].</span>")
user.balloon_alert_visible("Sets the bone in place.", "Bone set in place.") // CHOMPEdit - Balloon alert
affected.stage = 2
else
user.visible_message("[user] sets the bone in [target]'s [affected.name]<span class='danger'> in the WRONG place with \the [tool].</span>", \
"You set the bone in [target]'s [affected.name]<span class='danger'> in the WRONG place with \the [tool].</span>")
user.balloon_alert_visible("Sets the bone in the WRONG place.", "Bone set in the WRONG place.") // CHOMPEdit - Balloon alert
affected.fracture()
/datum/surgery_step/set_bone/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, damaging the bone in [target]'s [affected.name] with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, damaging the bone in [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, damaging the bone.", "Your hand slips, damaging the bone") // CHOMPEdit - Balloon alert
affected.createwound(BRUISE, 5)
///////////////////////////////////////////////////////////////
@@ -121,18 +128,21 @@
/datum/surgery_step/mend_skull/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] is beginning to piece together [target]'s skull with \the [tool].</span>" , \
"<span class='notice'>You are beginning to piece together [target]'s skull with \the [tool].</span>")
user.balloon_alert_visible("Pieces the skull together", "Piecing skull together.") // CHOMPEdit
..()
/datum/surgery_step/mend_skull/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] sets [target]'s skull with \the [tool].</span>" , \
"<span class='notice'>You set [target]'s skull with \the [tool].</span>")
user.balloon_alert_visible("Sets the skull back.", "Skull set back.") // CHOMPEdit
affected.stage = 2
/datum/surgery_step/mend_skull/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, damaging [target]'s face with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, damaging [target]'s face with \the [tool]!</span>")
user.balloon_alert_visible("Slips, damaging [target]'s face", "Your hand slips, damaging [target]'s face") // CHOMPEdit
var/obj/item/organ/external/head/h = affected
h.createwound(BRUISE, 10)
h.disfigured = 1
@@ -167,12 +177,14 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] starts to finish mending the damaged bones in [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You start to finish mending the damaged bones in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Begins mending damaged bones.", "Mending damaged bones.") // CHOMPEdit
..()
/datum/surgery_step/finish_bone/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has mended the damaged bones in [target]'s [affected.name] with \the [tool].</span>" , \
"<span class='notice'>You have mended the damaged bones in [target]'s [affected.name] with \the [tool].</span>" )
user.balloon_alert_visible("Mends damaged bones.", "Mended damaged bones.") // CHOMPEdit
affected.status &= ~ORGAN_BROKEN
affected.stage = 0
@@ -180,6 +192,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>" , \
"<span class='danger'>Your hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>")
user.balloon_alert_visible("Slips, smearing [tool] in the incision.", "Your hand slips, smearing [tool].") // CHOMPEdit
///////////////////////////////////////////////////////////////
// Bone Clamp Surgery
@@ -210,6 +223,7 @@
if (affected.stage == 0)
user.visible_message("<span class='notice'>[user] starts repairing the damaged bones in [target]'s [affected.name] with \the [tool].</span>" , \
"<span class='notice'>You starts repairing the damaged bones in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Begins repairing damaged bones.", "Repairing damaged bones.") // CHOMPEdit
target.custom_pain("Something in your [affected.name] is causing you a lot of pain!", 50)
..()
@@ -217,10 +231,12 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] sets the bone in [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You sets [target]'s bone in [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Sets the bone back in.", "Bone set in.") // CHOMPEdit
affected.status &= ~ORGAN_BROKEN
/datum/surgery_step/clamp_bone/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, damaging the bone in [target]'s [affected.name] with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, damaging the bone in [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, damaging [target]'s [affected.name]", "Your hand slips, damaging the bone.") // CHOMPEdit
affected.createwound(BRUISE, 5)

View File

@@ -44,6 +44,7 @@
user.visible_message("<span class='filter_notice'>[user] begins to cut through [target]'s [affected.encased] with \the [tool].</span>", \
"<span class='filter_notice'>You begin to cut through [target]'s [affected.encased] with \the [tool].</span>")
user.balloon_alert_visible("Begins to cut", "Cutting through the [affected.encased]'s ") // CHOMPEdit
target.custom_pain("Something hurts horribly in your [affected.name]!", 60)
..()
@@ -54,6 +55,7 @@
user.visible_message("<span class='notice'>[user] has cut [target]'s [affected.encased] open with \the [tool].</span>", \
"<span class='notice'>You have cut [target]'s [affected.encased] open with \the [tool].</span>")
user.balloon_alert_visible("Cuts [target]'s [affected.encased] open.", "[affected.encased] cut open.") // CHOMPEdit
affected.open = 2.5
/datum/surgery_step/open_encased/saw/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
@@ -63,6 +65,7 @@
user.visible_message("<span class='danger'>[user]'s hand slips, cracking [target]'s [affected.encased] with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, cracking [target]'s [affected.encased] with \the [tool]!</span>" )
user.balloon_alert_visible("Slips, crackng [target]'s [affected.encased]","Your hand slips.") // CHOMPEdit
affected.createwound(CUT, 20)
affected.fracture()
@@ -96,6 +99,7 @@
var/msg = "<span class='filter_notice'>[user] starts to force open the [affected.encased] in [target]'s [affected.name] with \the [tool].</span>"
var/self_msg = "<span class='filter_notice'>You start to force open the [affected.encased] in [target]'s [affected.name] with \the [tool].</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Starts to force open [target]'s [affected.encased]", "Forcing open \the [affected.encased]") // CHOMPEdit
target.custom_pain("Something hurts horribly in your [affected.name]!", 40)
..()
@@ -106,6 +110,7 @@
var/msg = "<span class='notice'>[user] forces open [target]'s [affected.encased] with \the [tool].</span>"
var/self_msg = "<span class='notice'>You force open [target]'s [affected.encased] with \the [tool].</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Forces open the [affected.encased]", "Forced open the [affected.encased]") // CHOMPEdit
affected.open = 3
@@ -117,6 +122,7 @@
var/msg = "<span class='danger'>[user]'s hand slips, cracking [target]'s [affected.encased]!</span>"
var/self_msg = "<span class='danger'>Your hand slips, cracking [target]'s [affected.encased]!</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Slips, cracking [affected.encased]", "You hand slips, cracking [affected.encased]") // CHOMPEdit
affected.createwound(BRUISE, 20)
affected.fracture()
@@ -150,6 +156,7 @@
var/msg = "<span class='filter_notice'>[user] starts bending [target]'s [affected.encased] back into place with \the [tool].</span>"
var/self_msg = "<span class='filter_notice'>You start bending [target]'s [affected.encased] back into place with \the [tool].</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Starts bending [affected.encased] into place.", "Bending [affected.encased] into place") // CHOMPEdit
target.custom_pain("Something hurts horribly in your [affected.name]!", 100)
..()
@@ -161,6 +168,7 @@
var/msg = "<span class='notice'>[user] bends [target]'s [affected.encased] back into place with \the [tool].</span>"
var/self_msg = "<span class='notice'>You bend [target]'s [affected.encased] back into place with \the [tool].</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Bends [affected.encased] into place", "[affected.encased] bend into place.") // CHOMPEdit
affected.open = 2.5
@@ -172,6 +180,7 @@
var/msg = "<span class='danger'>[user]'s hand slips, bending [target]'s [affected.encased] the wrong way!</span>"
var/self_msg = "<span class='danger'>Your hand slips, bending [target]'s [affected.encased] the wrong way!</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Slips, bending [affected.encased] the wrong way.", "Your hand slips, bending [affected.encased] the wrong way.") // CHOMPEdit
affected.createwound(BRUISE, 20)
affected.fracture()
@@ -209,6 +218,7 @@
var/msg = "<span class='filter_notice'>[user] starts applying \the [tool] to [target]'s [affected.encased].</span>"
var/self_msg = "<span class='filter_notice'>You start applying \the [tool] to [target]'s [affected.encased].</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Starts applying [tool] to \the [affected.encased]", "Applying [tool] to \the [affected.encased]") // CHOMPEdit
target.custom_pain("Something hurts horribly in your [affected.name]!", 100)
..()
@@ -220,6 +230,7 @@
var/msg = "<span class='notice'>[user] applied \the [tool] to [target]'s [affected.encased].</span>"
var/self_msg = "<span class='notice'>You applied \the [tool] to [target]'s [affected.encased].</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Applies \the [tool] to [affected.encased]", "Applied \the [tool] to [affected.encased]") // CHOMPEdit
affected.open = 2
@@ -251,6 +262,7 @@
user.visible_message("<span class='filter_notice'>[user] begins to open [target]'s [affected.encased] with \the [tool].</span>", \
"<span class='filter_notice'>You begin to open [target]'s [affected.encased] with \the [tool].</span>")
user.balloon_alert_visible("Begins to open \the [affected.encased]", "Opening \the [affected.encased]") // CHOMPEdit
target.custom_pain("Something hurts horribly in your [affected.name]!", 60)
..()
@@ -261,6 +273,7 @@
user.visible_message("<span class='notice'>[user] has cut [target]'s [affected.encased] wide open with \the [tool].</span>", \
"<span class='notice'>You have cut [target]'s [affected.encased] wide open with \the [tool].</span>")
user.balloon_alert_visible("Cuts \the [affected.encased] wide open.", "Cut \the [affected.encased] wide open.") // CHOMPEdit
affected.open = 3
/datum/surgery_step/open_encased/advancedsaw_open/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
@@ -270,6 +283,7 @@
user.visible_message("<span class='danger'>[user]'s hand slips, searing [target]'s [affected.encased] with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, searing [target]'s [affected.encased] with \the [tool]!</span>" )
user.balloon_alert_visible("Slips, searing \the [affected.encased]", "Your hand slips, searing [affected.encased]") // CHOMPEdit
affected.createwound(CUT, 20)
affected.createwound(BURN, 15)
@@ -302,6 +316,7 @@
var/msg = "<span class='filter_notice'>[user] starts sealing \the [target]'s [affected.encased] with \the [tool].</span>"
var/self_msg = "<span class='filter_notice'>You start sealing \the [target]'s [affected.encased] with \the [tool].</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Starts sealing \the [affected.encased]", "Sealing \the [affected.encased]") // CHOMPEdit
target.custom_pain("Something hurts horribly in your [affected.name]!", 100)
..()
@@ -313,5 +328,6 @@
var/msg = "<span class='notice'>[user] sealed \the [target]'s [affected.encased] with \the [tool].</span>"
var/self_msg = "<span class='notice'>You sealed \the [target]'s [affected.encased] with \the [tool].</span>"
user.visible_message(msg, self_msg)
user.balloon_alert_visible("Seals \the [affected.encased]", "Sealed \the [affected.encased]") // CHOMPEdit
affected.open = 2

View File

@@ -62,12 +62,14 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] begins scanning [target]'s [affected] with \the [tool].</span>", \
"<span class='notice'>You begin scanning [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Begins scanning [target]'s [affected]", "Scaning \the [affected]") // CHOMPEdit
..()
/datum/surgery_step/repairflesh/scan_injury/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] finishes scanning [target]'s [affected].</span>", \
"<span class='notice'>You finish scanning [target]'s [affected].</span>")
user.balloon_alert_visible("Finishes scanning [target]'s [affected]", "Finished scanning \the [affected]") // CHOMPEdit
if(affected.brute_dam)
to_chat(user, "<span class='notice'>The muscle in [target]'s [affected] is notably bruised.</span>")
if(affected.status & ORGAN_BROKEN)
@@ -81,6 +83,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user]'s hand slips, dropping \the [tool] onto [target]'s [affected]!</span>" , \
"<span class='warning'>Your hand slips, dropping \the [tool] onto [target]'s [affected]!</span>" )
user.balloon_alert_visible("Slips, dropping \the [tool].", "Your hand slips, dropping \the [tool] onto \the [affected].") // CHOMPEdit
affected.createwound(BRUISE, 10)
//////////////////////////////////////////////////////////////////
@@ -114,13 +117,16 @@
if(istype(tool, /obj/item/weapon/tape_roll) || istype(tool, /obj/item/taperoll))
user.visible_message("<span class='warning'>[user] begins taping up [target]'s [affected] with \the [tool].</span>", \
"<span class='notice'>You begin taping up [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Begins taping up \the [target]", "Taping up \the [affected]") // CHOMPEdit
affected.jostle_bone(10)
else if(istype(tool, /obj/item/weapon/surgical/hemostat) || istype(tool, /obj/item/weapon/surgical/FixOVein))
user.visible_message("<span class='notice'>[user] begins mending the charred blood vessels in [target]'s [affected] with \the [tool].</span>", \
"<span class='notice'>You begin mending the charred blood vessels in [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Begins mending the charred blood vessels in [affected].", "Mends the charred blood vessels in [affected].") // CHOMPEdit
else
user.visible_message("<span class='notice'>[user] begins coating the charred tissue in [target]'s [affected] with \the [tool].</span>", \
"<span class='notice'>You begin coating the charred tissue in [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Begins coating the charred tissue in \the [affected]", "Coating the charred tssue in \the [affected]") // CHOMPEdit
..()
/datum/surgery_step/repairflesh/repair_burns/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
@@ -128,6 +134,7 @@
if(istype(tool, /obj/item/weapon/tape_roll) || istype(tool, /obj/item/taperoll))
user.visible_message("<span class='notice'>[user] finishes taping up [target]'s [affected] with \the [tool].</span>", \
"<span class='notice'>You finish taping up [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Tapes up \the [affected]", "Taped up \the [affected]") // CHOMPEdit
affected.createwound(BRUISE, 10)
affected.heal_damage(0, 25, 0, 0)
if(!(affected.burn_dam))
@@ -141,6 +148,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, tearing up [target]'s [affected] with \the [tool].</span>", \
"<span class='danger'>Your hand slips, tearing up [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Slips, tearing up \the [affected]", "You slip, tearing up \the [affected]") // CHOMPEdit
affected.createwound(BRUISE, 10)
affected.createwound(CUT, 5)
if(istype(tool, /obj/item/stack) && prob(30))
@@ -179,13 +187,16 @@
if(istype(tool, /obj/item/weapon/tape_roll) || istype(tool, /obj/item/taperoll))
user.visible_message("<span class='warning'>[user] begins taping up [target]'s [affected] with \the [tool].</span>", \
"<span class='notice'>You begin taping up [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Begins to tape up \the [affected].", "Taping up \the [affected].") // CHOMPEdit
affected.jostle_bone(10)
else if(istype(tool, /obj/item/weapon/surgical/FixOVein) || istype(tool, /obj/item/weapon/surgical/bonesetter))
user.visible_message("<span class='notice'>[user] begins mending the torn tissue in [target]'s [affected] with \the [tool].</span>", \
"<span class='notice'>You begin mending the torn tissue in [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Begins mending torn tissue in \the [affected]", "Mending torn issue in \the [affected]") // CHOMPEdit
else
user.visible_message("<span class='notice'>[user] begins coating the tissue in [target]'s [affected] with \the [tool].</span>", \
"<span class='notice'>You begin coating the tissue in [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Begins coating tissue in \the [affected]", "Coating tissue in \the [affected]") // CHOMPEdit
..()
/datum/surgery_step/repairflesh/repair_brute/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
@@ -193,6 +204,7 @@
if(istype(tool, /obj/item/weapon/tape_roll) || istype(tool, /obj/item/taperoll))
user.visible_message("<span class='notice'>[user] finishes taping up [target]'s [affected] with \the [tool].</span>", \
"<span class='notice'>You finish taping up [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Tapes up \the [affected]", "Taped up \the [affected]") // CHOMPEdit
affected.createwound(BRUISE, 10)
affected.heal_damage(25, 0, 0, 0)
if(!(affected.brute_dam))
@@ -206,6 +218,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, tearing up [target]'s [affected] with \the [tool].</span>", \
"<span class='danger'>Your hand slips, tearing up [target]'s [affected] with \the [tool].</span>")
user.balloon_alert_visible("Slips, tearing up \the [affected]", "Your hand slips, tearing up \the [affected]") // CHOMPEdit
affected.createwound(BRUISE, 10)
affected.createwound(CUT, 5)
if(istype(tool, /obj/item/stack) && prob(30))

View File

@@ -40,17 +40,20 @@
/datum/surgery_step/generic/cut_face/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts to cut open [target]'s face and neck with \the [tool].</span>", \
"<span class='filter_notice'>You start to cut open [target]'s face and neck with \the [tool].</span>")
user.balloon_alert_visible("Begins to cut open [target]'s face and neck.", "Cutting open face and neck.") // CHOMPEdit
..()
/datum/surgery_step/generic/cut_face/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has cut open [target]'s face and neck with \the [tool].</span>" , \
"<span class='notice'> You have cut open[target]'s face and neck with \the [tool].</span>",)
user.balloon_alert_visible("Cuts up [target]'s face and neck.", "Face and neck cut open.") // CHOMPEdit
target.op_stage.face = 1
/datum/surgery_step/generic/cut_face/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, slicing [target]'s throat wth \the [tool]!</span>" , \
user.visible_message("<span class='danger'>[user]'s hand slips, slicing [target]'s throat with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, slicing [target]'s throat wth \the [tool]!</span>" )
user.balloon_alert_visible("Slips, slicing [target]'s throat.", "Your hand slips, slicing [target]'s throat.") // CHOMPEdit
affected.createwound(CUT, 60)
target.AdjustLosebreath(10)
@@ -75,16 +78,19 @@
/datum/surgery_step/face/mend_vocal/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts mending [target]'s vocal cords with \the [tool].</span>", \
"<span class='filter_notice'>You start mending [target]'s vocal cords with \the [tool].</span>")
user.balloon_alert_visible("Starts mending [target]'s vocal cords.", "Mending vocal cords.") // CHOMPEdit
..()
/datum/surgery_step/face/mend_vocal/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] mends [target]'s vocal cords with \the [tool].</span>", \
"<span class='notice'>You mend [target]'s vocal cords with \the [tool].</span>")
user.balloon_alert_visible("[target]'s vocal cords mended", "Vocal cords mended") // CHOMPEdit
target.op_stage.face = 2
/datum/surgery_step/face/mend_vocal/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='danger'>[user]'s hand slips, clamping [target]'s trachea shut for a moment with \the [tool]!</span>", \
"<span class='danger'>Your hand slips, clamping [user]'s trachea shut for a moment with \the [tool]!</span>")
"<span class='danger'>Your hand slips, clamping [target]'s trachea shut for a moment with \the [tool]!</span>")
user.balloon_alert_visible("Slips, clamping [target]'s trachea", "Your hand slips, clamping [target]'s trachea.") // CHOMPEdit
target.AdjustLosebreath(10)
///////////////////////////////////////////////////////////////
@@ -109,17 +115,20 @@
/datum/surgery_step/face/fix_face/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts pulling the skin on [target]'s face back in place with \the [tool].</span>", \
"<span class='filter_notice'>You start pulling the skin on [target]'s face back in place with \the [tool].</span>")
user.balloon_alert_visible("Starts pulling the skin on [target]'s face back in place.", "Pulling the skin back in place.") // CHOMPEdit
..()
/datum/surgery_step/face/fix_face/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] pulls the skin on [target]'s face back in place with \the [tool].</span>", \
"<span class='notice'>You pull the skin on [target]'s face back in place with \the [tool].</span>")
user.balloon_alert_visible("Pulls the skin on [target]'s face back in place", "Skin pulled back in place.") // CHOMPEdit
target.op_stage.face = 3
/datum/surgery_step/face/fix_face/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, tearing skin on [target]'s face with \the [tool]!</span>", \
"<span class='danger'>Your hand slips, tearing skin on [target]'s face with \the [tool]!</span>")
user.balloon_alert_visible("Slips, tearing skin on [target]'s face.", "Your hand slips, tearing skin on the face.") // CHOMPEdit
target.apply_damage(10, BRUTE, affected, sharp = TRUE, sharp = TRUE)
///////////////////////////////////////////////////////////////
@@ -144,12 +153,14 @@
/datum/surgery_step/face/cauterize/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] is beginning to cauterize the incision on [target]'s face and neck with \the [tool].</span>" , \
"<span class='notice'>You are beginning to cauterize the incision on [target]'s face and neck with \the [tool].</span>")
user.balloon_alert_visible("Begins to cauterize the incision on [target]'s face and neck", "Cauterizing the incision on face and neck.") // CHOMPEdit
..()
/datum/surgery_step/face/cauterize/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] cauterizes the incision on [target]'s face and neck with \the [tool].</span>", \
"<span class='notice'>You cauterize the incision on [target]'s face and neck with \the [tool].</span>")
user.balloon_alert_visible("Cauterizes the incision on [target]'s face and neck", "Cauterized the incision on the face and neck.") // CHOMPEdit
affected.open = 0
affected.status &= ~ORGAN_BLEEDING
if (target.op_stage.face == 3)
@@ -161,4 +172,5 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, leaving a small burn on [target]'s face with \the [tool]!</span>", \
"<span class='danger'>Your hand slips, leaving a small burn on [target]'s face with \the [tool]!</span>")
user.balloon_alert_visible("Slips, leaving a small burn on the face.", "Your hand slips, leaving a small burn on the face.") // CHOMPEdit
target.apply_damage(4, BURN, affected)

View File

@@ -50,12 +50,14 @@
user.visible_message("<span class='filter_notice'>[user] starts the incision on [target]'s [affected.name] with \the [tool].</span>", \
"<span class='filter_notice'>You start the incision on [target]'s [affected.name] with \the [tool].</span>")
target.custom_pain("You feel a horrible pain as if from a sharp knife in your [affected.name]!", 40)
user.balloon_alert_visible("Starts to open an incision on [target]", "Opening incision on \the [affected.name]") // CHOMPEdit
..()
/datum/surgery_step/generic/cut_open/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has made an incision on [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You have made an incision on [target]'s [affected.name] with \the [tool].</span>",)
user.balloon_alert_visible("Opens an incision on [target]'s [affected.name]", "Incision open on \the [affected.name]") // CHOMPEdit
affected.open = 1
if(istype(target) && target.should_have_organ(O_HEART))
@@ -67,6 +69,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, slicing open [target]'s [affected.name] in the wrong place with \the [tool]!</span>", \
"<span class='danger'>Your hand slips, slicing open [target]'s [affected.name] in the wrong place with \the [tool]!</span>")
user.balloon_alert_visible("Slips, slicing open \the [affected.name]", "Your hand slips, slicing open [affected.name] in the wrong place.") // CHOMPEdit
affected.createwound(CUT, 10)
///////////////////////////////////////////////////////////////
@@ -96,6 +99,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts the bloodless incision on [target]'s [affected.name] with \the [tool].</span>", \
"<span class='filter_notice'>You start the bloodless incision on [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Starts to open a bloodless incision on [target]", "Opening a blodless incision on \the [affected.name]") // CHOMPEdit
target.custom_pain("You feel a horrible, searing pain in your [affected.name]!", 50)
..()
@@ -115,9 +119,11 @@
affected.organ_clamp()
user.visible_message("<span class='notice'>[user] has made a bloodless incision on [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You have made a bloodless incision on [target]'s [affected.name] with \the [tool].</span>",)
user.balloon_alert_visible("Opens a bloodless incision on [target]'s [affected.name]", "Bloodless incision open on \the [affected.name]") // CHOMPEdit
else
user.visible_message("<span class='notice'>[user] has made an incision on [target]'s [affected.name] with \the [tool], but blood is still escaping from the wound.</span>", \
"<span class='notice'>You have made an incision on [target]'s [affected.name] with \the [tool], but blood is still coming from the wound..</span>",)
user.balloon_alert_visible("Opens an incision on [target]'s [affected.name], blood still flowing", "Incision open on \the [affected.name], but blood still flows") // CHOMPEdit
//Could be cleaner ...
spread_germs_to_organ(affected, user)
@@ -126,6 +132,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips as the blade sputters, searing a long gash in [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='danger'>Your hand slips as the blade sputters, searing a long gash in [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, searing a long gash on \the [affected.name]", "Your hand slips, searing a long gash on [affected.name].") // CHOMPEdit
affected.createwound(CUT, 7.5)
affected.createwound(BURN, 12.5)
@@ -154,6 +161,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts to construct a prepared incision on and within [target]'s [affected.name] with \the [tool].</span>", \
"<span class='filter_notice'>You start to construct a prepared incision on and within [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Begins constructing a prepared incsion on [target]'s [affected.name]", "Contructing prepared incision on \the [affected.name]") // CHOMPEdit
target.custom_pain("You feel a horrible, searing pain in your [affected.name] as it is pushed apart!", 50)
..()
@@ -161,6 +169,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has constructed a prepared incision on and within [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You have constructed a prepared incision on and within [target]'s [affected.name] with \the [tool].</span>",)
user.balloon_alert_visible("Constructs a prepared incision", "Constructed prepared incision") // CHOMPEdit
affected.open = 1
if(istype(target) && target.should_have_organ(O_HEART))
@@ -174,6 +183,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand jolts as the system sparks, ripping a gruesome hole in [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='danger'>Your hand jolts as the system sparks, ripping a gruesome hole in [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Hand slips as the system sparks, ripping a gruesome hole in [target]'s [affected.name]", "Your hand jolts as the system sparks, ripping a gruesome hole in \the [affected.name]") // CHOMPEdit
affected.createwound(CUT, 20)
affected.createwound(BURN, 15)
@@ -201,6 +211,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts clamping bleeders in [target]'s [affected.name] with \the [tool].</span>", \
"<span class='filter_notice'>You start clamping bleeders in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Starts clamping bleeders", "Clamping bleders") // CHOMPEdit
target.custom_pain("The pain in your [affected.name] is maddening!", 40)
..()
@@ -208,13 +219,15 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] clamps bleeders in [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You clamp bleeders in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Clamps bleeders", "Clamped bleeders") // CHOMPEdit
affected.organ_clamp()
spread_germs_to_organ(affected, user)
/datum/surgery_step/generic/clamp_bleeders/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, tearing blood vessals and causing massive bleeding in [target]'s [affected.name] with \the [tool]!</span>", \
user.visible_message("<span class='danger'>[user]'s hand slips, tearing blood vessels and causing massive bleeding in [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='danger'>Your hand slips, tearing blood vessels and causing massive bleeding in [target]'s [affected.name] with \the [tool]!</span>",)
user.balloon_alert_visible("Slips, tearing blood vessels and causing massive bleedings in [target]'s [affected.name]", "Your hand slips, tearing blood vessels and causing massive bleedings in \the [affected.name]") // CHOMPEdit
affected.createwound(CUT, 10)
///////////////////////////////////////////////////////////////
@@ -242,13 +255,19 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
var/msg = "[user] starts to pry open the incision on [target]'s [affected.name] with \the [tool]."
var/self_msg = "You start to pry open the incision on [target]'s [affected.name] with \the [tool]."
var/msgBall = "Starts to pry open the incision on [target]'s [affected.name]" // CHOMPEdit
var/self_msgBall = "Prying open the incision on [affected.name]" // CHOMPEdit
if (target_zone == BP_TORSO)
msg = "[user] starts to separate the ribcage and rearrange the organs in [target]'s torso with \the [tool]."
self_msg = "You start to separate the ribcage and rearrange the organs in [target]'s torso with \the [tool]."
msgBall = "Starts to separate the ribcage and rearrange the organs in [target]'s torso."
self_msgBall = "Separating ribcage and rearranging organs."
if (target_zone == BP_GROIN)
msg = "[user] starts to pry open the incision and rearrange the organs in [target]'s lower abdomen with \the [tool]."
self_msg = "You start to pry open the incision and rearrange the organs in [target]'s lower abdomen with \the [tool]."
msgBall = "Starts to pry open the incison and rearrange the organs in [target]'s lower abdomen"
user.visible_message("<span class='filter_notice'>[msg]</span>", "<span class='filter_notice'>[self_msg]</span>")
user.balloon_alert_visible(msgBall, self_msgBall) // CHOMPEdit
target.custom_pain("It feels like the skin on your [affected.name] is on fire!", 40)
..()
@@ -256,26 +275,40 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
var/msg = "<span class='notice'>[user] keeps the incision open on [target]'s [affected.name] with \the [tool].</span>"
var/self_msg = "<span class='notice'>You keep the incision open on [target]'s [affected.name] with \the [tool].</span>"
var/msgBall = "Keeps the incision open on [target]'s [affected.name]"
var/self_msgBall = "Keeping the incision open on \the [affected.name]"
if (target_zone == BP_TORSO)
msg = "<span class='notice'>[user] keeps the ribcage open on [target]'s torso with \the [tool].</span>"
self_msg = "<span class='notice'>You keep the ribcage open on [target]'s torso with \the [tool].</span>"
msgBall = "Keeps the ribcage open on [target]'s torso."
self_msgBall = "Keeping the ribcage open."
if (target_zone == BP_GROIN)
msg = "<span class='notice'>[user] keeps the incision open on [target]'s lower abdomen with \the [tool].</span>"
self_msg = "<span class='notice'>You keep the incision open on [target]'s lower abdomen with \the [tool].</span>"
msgBall = "Keeps the incision open on [target]'s lower abdomen."
self_msgBall = "Keeping the incision open on the lower abdomen."
user.visible_message(msg, self_msg)
user.balloon_alert_visible(msgBall, self_msgBall) // CHOMPEdit
affected.open = 2
/datum/surgery_step/generic/retract_skin/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
var/msg = "<span class='danger'>[user]'s hand slips, tearing the edges of the incision on [target]'s [affected.name] with \the [tool]!</span>"
var/self_msg = "<span class='danger'>Your hand slips, tearing the edges of the incision on [target]'s [affected.name] with \the [tool]!</span>"
var/msgBall = "Slips, tearing the edges of the incision."
var/self_msgBall = "Your hand slips, tearing the edges of the incision."
if (target_zone == BP_TORSO)
msg = "<span class='danger'>[user]'s hand slips, damaging several organs in [target]'s torso with \the [tool]!</span>"
self_msg = "<span class='danger'>Your hand slips, damaging several organs in [target]'s torso with \the [tool]!</span>"
msgBall = "Slips, damaging several organs in [target]'s torso."
self_msgBall = "Your hand slips, damaging several organs in the torso."
if (target_zone == BP_GROIN)
msg = "<span class='danger'>[user]'s hand slips, damaging several organs in [target]'s lower abdomen with \the [tool]!</span>"
self_msg = "<span class='danger'>Your hand slips, damaging several organs in [target]'s lower abdomen with \the [tool]!</span>"
msgBall = "Slips, damaging several organs in [target]'s lower abdomen."
self_msgBall = "Your hand slips, damaging several organs in the torso."
user.visible_message(msg, self_msg)
user.balloon_alert_visible(msgBall, self_msgBall) // CHOMPEdit
target.apply_damage(12, BRUTE, affected, sharp = TRUE)
///////////////////////////////////////////////////////////////
@@ -303,6 +336,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] is beginning to cauterize the incision on [target]'s [affected.name] with \the [tool].</span>" , \
"<span class='filter_notice'>You are beginning to cauterize the incision on [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Begins to cauterize the incision on [target]'s [affected.name]", "Cauterizing \the [affected.name]") // CHOMPEdit
target.custom_pain("Your [affected.name] is being burned!", 40)
..()
@@ -310,6 +344,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] cauterizes the incision on [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You cauterize the incision on [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Cauterizes the incision on [target]'s [affected.name]", "Incison cauterized on \the [affected.name]") // CHOMPEdit
affected.open = 0
affected.germ_level = 0
affected.status &= ~ORGAN_BLEEDING
@@ -318,6 +353,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, leaving a small burn on [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='danger'>Your hand slips, leaving a small burn on [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, leaving a small burn on [target]'s [affected.name]", "Your hand slips, leaving a small burn on \the [affected.name]") // CHOMPEdit
target.apply_damage(3, BURN, affected)
///////////////////////////////////////////////////////////////
@@ -349,6 +385,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] is beginning to amputate [target]'s [affected.name] with \the [tool].</span>" , \
"<span class='filter_notice'>You are beginning to cut through [target]'s [affected.amputation_point] with \the [tool].</span>")
user.balloon_alert_visible("Begins to amputate [target]'s [affected.name]", "Amputating \the [affected.name]") // CHOMPEdit
target.custom_pain("Your [affected.amputation_point] is being ripped apart!", 100)
..()
@@ -356,11 +393,13 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] amputates [target]'s [affected.name] at the [affected.amputation_point] with \the [tool].</span>", \
"<span class='notice'>You amputate [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Amputates [target]'s [affected.name] at the [affected.amputation_point]", "Amputated \the [affected.name]") // CHOMPEdit
affected.droplimb(1,DROPLIMB_EDGE)
/datum/surgery_step/generic/amputate/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, sawing through the bone in [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='danger'>Your hand slips, sawwing through the bone in [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, sawing through the bone in [target]'s [affected.name]", "Your hand slips, sawng through the bone in \the [affected.name]") // CHOMPEdit
affected.createwound(CUT, 30)
affected.fracture()

View File

@@ -40,6 +40,7 @@
var/obj/item/organ/external/chest/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, scraping around inside [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='danger'>Your hand slips, scraping around inside [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, scraping around inside [target]'s [affected.name]", "Your hand slips, scraping around inside \the [affected.name]") // CHOMPEdit
affected.createwound(CUT, 20)
///////////////////////////////////////////////////////////////
@@ -66,6 +67,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool].</span>", \
"<span class='filter_notice'>You start making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool].</span>" )
user.balloon_alert_visible("Starts making space inside [target]'s [get_cavity(affected)]", "Making space inside [get_cavity(affected)]") // CHOMPEdit
target.custom_pain("The pain in your chest is living hell!",1)
affected.cavity = 1
..()
@@ -74,6 +76,7 @@
var/obj/item/organ/external/chest/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] makes some space inside [target]'s [get_cavity(affected)] cavity with \the [tool].</span>", \
"<span class='notice'>You make some space inside [target]'s [get_cavity(affected)] cavity with \the [tool].</span>" )
user.balloon_alert_visible("Makes space inside [target]'s [get_cavity(affected)]", "Made space inside \the [get_cavity(affected)]") // CHOMPEdit
///////////////////////////////////////////////////////////////
// Cavity Closing Surgery
@@ -101,6 +104,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts mending [target]'s [get_cavity(affected)] cavity wall with \the [tool].</span>", \
"<span class='filter_notice'>You start mending [target]'s [get_cavity(affected)] cavity wall with \the [tool].</span>" )
user.balloon_alert_visible("Starts mending [target]'s [get_cavity(affected)] cavity wall.", "Mending \the [get_cavity(affected)] cavity wall.") // CHOMPEdit
target.custom_pain("The pain in your chest is living hell!",1)
affected.cavity = 0
..()
@@ -108,7 +112,8 @@
/datum/surgery_step/cavity/close_space/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/chest/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] mends [target]'s [get_cavity(affected)] cavity walls with \the [tool].</span>", \
"<span class='notice'> You mend[target]'s [get_cavity(affected)] cavity walls with \the [tool].</span>" )
"<span class='notice'> You mend [target]'s [get_cavity(affected)] cavity walls with \the [tool].</span>" )
user.balloon_alert_visible("Mends [target]'s [get_cavity(affected)] cavity walls", "Mended [get_cavity(affected)] cavity walls.") // CHOMPEdit
///////////////////////////////////////////////////////////////
// Item Implantation Surgery
@@ -151,6 +156,7 @@
tool = G.wrapped
user.visible_message("<span class='notice'>[user] starts putting \the [tool] inside [target]'s [get_cavity(affected)] cavity.</span>", \
"<span class='notice'>You start putting \the [tool] inside [target]'s [get_cavity(affected)] cavity.</span>" ) //Nobody will probably ever see this, but I made these two blue. ~CK
user.balloon_alert_visible("Starts putting \the [tool] inside [target]'s [get_cavity(affected)]", "Putting \the [tool] inside \the [get_cavity(affected)]") // CHOMPEdit
target.custom_pain("The pain in your chest is living hell!",1)
..()
@@ -164,6 +170,7 @@
user.drop_item()
user.visible_message("<span class='notice'>[user] puts \the [tool] inside [target]'s [get_cavity(affected)] cavity.</span>", \
"<span class='notice'>You put \the [tool] inside [target]'s [get_cavity(affected)] cavity.</span>" )
user.balloon_alert_visible("Puts \the [tool] inside [target]'s [get_cavity(affected)]", "\the [tool] placed inside [get_cavity(affected)]") // CHOMPEdit
if (tool.w_class > get_max_wclass(affected)/2 && prob(50) && (affected.robotic < ORGAN_ROBOT))
to_chat(user, "<span class='danger'> You tear some blood vessels trying to fit such a big object in this cavity.</span>")
var/datum/wound/internal_bleeding/I = new (10)
@@ -202,6 +209,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] starts poking around inside [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You start poking around inside [target]'s [affected.name] with \the [tool].</span>" )
user.balloon_alert_visible("Pokes inside [target]'s [affected.name]", "Poking around inside [affected.name]") // CHOMPEdit
target.custom_pain("The pain in your [affected.name] is living hell!",1)
..()
@@ -214,11 +222,13 @@
if(isnull(obj)) //They clicked cancel.
user.visible_message("<span class='notice'>[user] takes \the [tool] out of [target]'s [affected.name].</span>", \
"<span class='notice'>You take \the [tool] out of the incision on [target]'s [affected.name].</span>" )
user.balloon_alert_visible("Takes \the [tool] out of [target]'s [affected.name]", "\the [tool] taken out of the incison on \the [affected.name]") // CHOMPEdit
return
if(!do_mob(user, target, 1)) //They moved away
to_chat(user, "<span class='warning'>You must remain close to and keep focused on your patient to conduct surgery.</span>")
user.visible_message("<span class='notice'>[user] fails to remove anything from [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='notice'>You fail to remove the [obj] from [target]'s [affected.name]s with \the [tool]!</span>" )
user.balloon_alert_visible("Fails to remove anything from [target]'s [affected.name]", "Failed to remove \the [obj] from \the [affected.name]") // CHOMPEdit
return
if(istype(obj,/obj/item/weapon/implant))
@@ -226,14 +236,17 @@
if (!imp.islegal()) //ILLEGAL IMPLANT ALERT!!!!!!!!!!
user.visible_message("<span class='notice'>[user] seems to be intently working on something within [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='notice'>You intently begin to take [obj] out of the incision on [target]'s [affected.name]s with \the [tool]!</span>" )
user.balloon_alert_visible("Intently works on something within [target]'s [affected.name]", "Intently taking \the [obj] out of the incision in \the [affected.name]") // CHOMPEdit
if(!do_after(user, min_duration, target))
user.visible_message("<span class='notice'>[user] fails to remove anything from [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='notice'>You fail to remove the [obj] from [target]'s [affected.name]s with \the [tool]!</span>" )
user.balloon_alert_visible("Fails to remove anything from [target]'s [affected.name]", "Failed to remove \the [obj] from \the [affected.name]") // CHOMPEdit
return
user.visible_message("<span class='notice'>[user] takes something out of the incision on [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='notice'>You take [obj] out of the incision on [target]'s [affected.name]s with \the [tool]!</span>" )
user.balloon_alert_visible("Takes something out of the incision on [target]'s [affected.name]", "[obj] taken out of the incision on [affected.name]") // CHOMPEdit
affected.implants -= obj
if(!target.has_embedded_objects())
target.clear_alert("embeddedobject")
@@ -259,6 +272,7 @@
else
user.visible_message("<span class='notice'>[user] could not find anything inside [target]'s [affected.name], and pulls \the [tool] out.</span>", \
"<span class='notice'>You could not find anything inside [target]'s [affected.name].</span>" )
user.balloon_alert_visible("Could not find anything inside", "Nothing found inside") // CHOMPEdit
/datum/surgery_step/cavity/implant_removal/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
..()

View File

@@ -37,15 +37,19 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
if (affected)
to_chat(user, "<span class='warning'>Something is in the way! You can't attach [E] here!</span>")
user.balloon_alert("Something is in the way!") // CHOMPEdit
return 0
if(!P)
to_chat(user, "<span class='warning'>There's nothing to attach [E] to!</span>")
user.balloon_alert("There's nothing to attach [E] to!") // CHOMPEdit
return 0
else if((P.robotic >= ORGAN_ROBOT) && (E.robotic < ORGAN_ROBOT))
to_chat(user, "<span class='warning'>Attaching [E] to [P] wouldn't work well.</span>")
user.balloon_alert("Attaching [E] to [P] wouldn't work well") // CHOMPEdit
return 0
else if(istype(E, /obj/item/organ/external/head) && E.robotic >= ORGAN_ROBOT && P.robotic < ORGAN_ROBOT)
to_chat(user, "<span class='warning'>Attaching [E] to [P] might break [E].</span>")
user.balloon_alert("Attaching [E] to [P] might break [E]") // CHOMPEdit
return 0
else
return 1
@@ -54,11 +58,13 @@
var/obj/item/organ/external/E = tool
user.visible_message("<span class='filter_notice'>[user] starts attaching [E.name] to [target]'s [E.amputation_point].</span>", \
"<span class='filter_notice'>You start attaching [E.name] to [target]'s [E.amputation_point].</span>")
user.balloon_alert_visible("Starts attaching [E.name] to [target]'s [E.amputation_point]", "Attaching [E.name] to [E.amputation_point]") // CHOMPEdit
/datum/surgery_step/limb/attach/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/E = tool
user.visible_message("<span class='notice'>[user] has attached [target]'s [E.name] to the [E.amputation_point].</span>", \
"<span class='notice'>You have attached [target]'s [E.name] to the [E.amputation_point].</span>")
user.balloon_alert_visible("Attaches [target]'s [E.name] to \the [E.amputation_point]", "Attached \the [E.name] to the [E.amputation_point]") // CHOMPEdit
user.drop_from_inventory(E)
E.replaced(target)
@@ -76,6 +82,7 @@
var/obj/item/organ/external/E = tool
user.visible_message("<span class='warning'> [user]'s hand slips, damaging [target]'s [E.amputation_point]!</span>", \
"<span class='warning'> Your hand slips, damaging [target]'s [E.amputation_point]!</span>")
user.balloon_alert_visible("Slips, damaging [target]'s [E.amputation_point]", "Your hand slips, damaging [E.amputation_point]") // CHOMPEdit
target.apply_damage(10, BRUTE, null, sharp = TRUE)
///////////////////////////////////////////////////////////////
@@ -102,11 +109,13 @@
var/obj/item/organ/external/E = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts connecting tendons and muscles in [target]'s [E.amputation_point] with [tool].</span>", \
"<span class='filter_notice'>You start connecting tendons and muscle in [target]'s [E.amputation_point].</span>")
user.balloon_alert_visible("Starts connecting tendons and muscles in [target]'s [E.amputation_point]", "Connecting tendons and muscle in \the [E.amputation_point]") // CHOMPEdit
/datum/surgery_step/limb/connect/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/E = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has connected tendons and muscles in [target]'s [E.amputation_point] with [tool].</span>", \
"<span class='notice'>You have connected tendons and muscles in [target]'s [E.amputation_point] with [tool].</span>")
user.balloon_alert_visible("Connected tendons and muscles in [target]'s [E.amputation_point]", "Connected tendons and muscles in \the [E.amputation_point]") // CHOMPEdit
E.status &= ~ORGAN_CUT_AWAY
target.update_icons_body()
target.updatehealth()
@@ -116,6 +125,7 @@
var/obj/item/organ/external/E = tool
user.visible_message("<span class='warning'> [user]'s hand slips, damaging [target]'s [E.amputation_point]!</span>", \
"<span class='warning'> Your hand slips, damaging [target]'s [E.amputation_point]!</span>")
user.balloon_alert_visible("Slips, damaging [target]'s [E.amputation_point]", "Your hand slips, damaging \the [E.amputation_point]") // CHOMPEdit
target.apply_damage(10, BRUTE, null, sharp = TRUE)
///////////////////////////////////////////////////////////////
@@ -140,11 +150,13 @@
/datum/surgery_step/limb/mechanize/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts attaching \the [tool] to [target].</span>", \
"<span class='filter_notice'>You start attaching \the [tool] to [target].</span>")
user.balloon_alert_visible("Starts attaching \the [tool] to [target]", "Attachng \the [tool]") // CHOMPEdit
/datum/surgery_step/limb/mechanize/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/robot_parts/L = tool
user.visible_message("<span class='notice'>[user] has attached \the [tool] to [target].</span>", \
"<span class='notice'>You have attached \the [tool] to [target].</span>")
user.balloon_alert_visible("Attaches \the [tool] to [target]", "Attached \the [tool]") // CHOMPEdit
if(L.part)
for(var/part_name in L.part)
@@ -168,4 +180,5 @@
/datum/surgery_step/limb/mechanize/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='warning'> [user]'s hand slips, damaging [target]'s flesh!</span>", \
"<span class='warning'> Your hand slips, damaging [target]'s flesh!</span>")
user.balloon_alert_visible("Slips, damaging [target]'s flesh", "Your hand slips, damaging the flesh") // CHOMPEdit
target.apply_damage(10, BRUTE, null, sharp = TRUE)

View File

@@ -40,17 +40,20 @@
/datum/surgery_step/brainstem/mend_vessels/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts to mend the blood vessels on [target]'s brainstem with \the [tool].</span>", \
"<span class='filter_notice'>You start to mend the blood vessels on [target]'s brainstem with \the [tool].</span>")
user.balloon_alert_visible("Starts mending blood vessels on [target]'s brainstem", "Mending blood vessels on the brainstem.") // CHOMPEdit
..()
/datum/surgery_step/brainstem/mend_vessels/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has mended the blood vessels on [target]'s brainstem with \the [tool].</span>" , \
"<span class='notice'> You have mended the blood vessels on [target]'s brainstem with \the [tool].</span>",)
user.balloon_alert_visible("Mended the blood vessels on [target]'s brainstem", "Mended the blood vessels on the brainstem.") // CHOMPEdit
target.op_stage.brainstem = 1
/datum/surgery_step/brainstem/mend_vessels/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, tearing at [target]'s brainstem with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, tearing at [target]'s brainstem with \the [tool]!</span>" )
user.balloon_alert_visible("Slips, tearing at [target]'s brainstem", "Your hand slips, tearing at the brainstem") // CHOMPEdit
affected.createwound(PIERCE, 10)
target.AdjustParalysis(10)
@@ -78,12 +81,14 @@
/datum/surgery_step/brainstem/drill_vertebrae/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts to drill around [target]'s brainstem with \the [tool].</span>", \
"<span class='filter_notice'>You start to drill around [target]'s brainstem with \the [tool].</span>")
user.balloon_alert_visible("Starts drilling around [target]'s brainstem", "Drilling around the brainstem") // CHOMPEdit
..()
/datum/surgery_step/brainstem/drill_vertebrae/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has drilled around [target]'s brainstem with \the [tool].</span>" , \
"<span class='notice'> You have drilled around [target]'s brainstem with \the [tool].</span>",)
user.balloon_alert_visible("Drilled around [target]'s brainstem", "Drilled around the brainstem") // CHOMPEdit
target.AdjustParalysis(10) //We're getting Invasive here. This only ticks down when the person is alive, so it's a good side-effect for this step. Rattling the braincase with a drill is not optimal.
target.op_stage.brainstem = 2
affected.fracture() //Does not apply damage, simply breaks it if it wasn't already. Doesn't stop a defib on its own.
@@ -92,6 +97,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, shredding [target]'s brainstem with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, shredding [target]'s brainstem with \the [tool]!</span>" )
user.balloon_alert_visible("Slips, shredding [target]'s brainstem", "Your hand slips, shredding the brainstem.") // CHOMPEdit
affected.createwound(PIERCE, 10)
target.AdjustParalysis(15)
spawn()
@@ -120,11 +126,13 @@
/datum/surgery_step/brainstem/clean_chips/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts to pick around [target]'s brainstem for bone chips with \the [tool].</span>", \
"<span class='filter_notice'>You start to pick around [target]'s brainstem for bone chips with \the [tool].</span>")
user.balloon_alert_visible("Starts to pick around [target]'s brainstem for bone chips.", "Picking around the brainstem for bone chips.") // CHOMPEdit
..()
/datum/surgery_step/brainstem/clean_chips/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has cleaned around [target]'s brainstem with \the [tool].</span>" , \
"<span class='notice'> You have cleaned around [target]'s brainstem with \the [tool].</span>",)
user.balloon_alert_visible("Cleaned around [target]'s brainstem") // CHOMPEdit
target.AdjustParalysis(10) //Still invasive.
target.op_stage.brainstem = 3
@@ -132,6 +140,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, gouging [target]'s brainstem with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, gouging [target]'s brainstem with \the [tool]!</span>" )
user.balloon_alert_visible("Slips, gouging [target]'s brainstem", "Your hand slips, gouging the brainstem") // CHOMPEdit
affected.createwound(CUT, 5)
target.AdjustParalysis(10)
spawn()
@@ -160,11 +169,13 @@
/datum/surgery_step/brainstem/mend_cord/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts to fuse [target]'s spinal cord with \the [tool].</span>", \
"<span class='filter_notice'>You start to fuse [target]'s spinal cord with \the [tool].</span>")
user.balloon_alert_visible("Starts fusing [target]'s spinal cord", "Fusing the spinal cord") // CHOMPEdit
..()
/datum/surgery_step/brainstem/mend_cord/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has fused [target]'s spinal cord with \the [tool].</span>" , \
"<span class='notice'> You have fused [target]'s spinal cord with \the [tool].</span>",)
user.balloon_alert_visible("Fused [target]'s spinal cord", "Fused the spinal cord") // CHOMPEdit
target.op_stage.brainstem = 4
target.AdjustParalysis(5)
target.add_modifier(/datum/modifier/franken_sickness, 20 MINUTES)
@@ -173,6 +184,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, tearing at [target]'s spinal cord with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, tearing at [target]'s spinal cord with \the [tool]!</span>" )
user.balloon_alert_visible("Slips, tearing [target]'s spinal cord", "Your hand slips, tearing at the spinal cord") // CHOMPEdit
affected.createwound(PIERCE, 5)
target.AdjustParalysis(20)
spawn()
@@ -200,11 +212,13 @@
/datum/surgery_step/brainstem/mend_vertebrae/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts to mend [target]'s opened vertebrae with \the [tool].</span>", \
"<span class='filter_notice'>You start to mend [target]'s opened vertebrae with \the [tool].</span>")
user.balloon_alert_visible("Starts mending [target]'s opened vertebrae", "Mending opened vertebrae") // CHOMPEdit
..()
/datum/surgery_step/brainstem/mend_vertebrae/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has mended [target]'s vertebrae with \the [tool].</span>" , \
"<span class='notice'> You have mended [target]'s vertebrae with \the [tool].</span>",)
user.balloon_alert_visible("Mended [target]'s vertebrae", "Mended the vertebrae") // CHOMPEdit
target.can_defib = 1
target.op_stage.brainstem = 5
@@ -212,6 +226,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, tearing at [target]'s spinal cord with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, tearing at [target]'s spinal cord with \the [tool]!</span>" )
user.balloon_alert_visible("Slips, tearing at [target]'s spinal cord", "Your hand slips, tearing at the spinal cord") // CHOMPEdit
affected.createwound(PIERCE, 5)
target.AdjustParalysis(15)
spawn()
@@ -240,18 +255,21 @@
/datum/surgery_step/brainstem/realign_tissue/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] starts to realign the tissues in [target]'s skull with \the [tool].</span>", \
"<span class='filter_notice'>You start to realign the tissues in [target]'s skull with \the [tool].</span>")
user.balloon_alert_visible("Starts to realign the tissues in [target]'s skull", "Realigning the tissues in the skull") // CHOMPEdit
..()
/datum/surgery_step/brainstem/realign_tissue/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has realigned the tissues in [target]'s skull back into place with \the [tool].</span>" , \
"<span class='notice'> You have realigned the tissues in [target]'s skull back into place with \the [tool].</span>",)
user.balloon_alert_visible("Realigned the tissues in [target]'s skull back in place", "Realigned the tissues in the skull back into place") // CHOMPEdit
target.AdjustParalysis(5) //I n v a s i v e
target.op_stage.brainstem = 0 //The cycle begins anew.
/datum/surgery_step/brainstem/realign_tissue/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, gouging [target]'s brainstem with \the [tool]!</span>" , \
"<span class='danger'>Your hand slips, gouging [target]'s brainstem with \the [tool]!</span>" )
"<span class='danger'>Your hand slips, gouging [target]'s brainstem with \the [tool]!</span>")
user.balloon_alert_visible("Slips, gounging at [target]'s brainstem", "Your hand slips, gouging at the brainstem") // CHOMPEdit
affected.createwound(CUT, 5)
target.AdjustParalysis(30)
spawn()

View File

@@ -36,6 +36,7 @@
/datum/surgery_step/generic/ripper/tear_vessel/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("[user] starts ripping into [target] with \the [tool].", \
"You start ripping into [target] with \the [tool].")
user.balloon_alert_visible("Starts ripping into [target]", "Ripping into [target]") // CHOMPEdit
target.custom_pain("[user] is ripping into your [target.op_stage.current_organ]!", 100)
..()
@@ -43,6 +44,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has ripped [target]'s [affected] \the [tool], blood and viscera spraying everywhere!</span>", \
"<span class='notice'>You have ripped [target]'s [target.op_stage.current_organ] out with \the [tool], spraying blood all through the room!</span>")
user.balloon_alert_visible("Rips into [target]'s [affected], blood and viscera everywhere!", "Ripped into [target]'s [affected], blood and viscera everywhere!") // CHOMPEdit
var/datum/wound/internal_bleeding/I = new (30) //splurt. New severed artery.
affected.wounds += I
affected.owner.custom_pain("You feel something rip in your [affected.name]!", 1)
@@ -54,6 +56,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user]'s hand slips, damaging [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='warning'>Your hand slips, damaging [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, damaging [target]'s [affected.name]", "Your hand slips, damaging \the [affected.name]") // CHOMPEdit
affected.createwound(BRUISE, 20) //Only bruised...Sad.
@@ -68,6 +71,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("[user] starts violently shifting \the [tool] in [target]'s [affected.name]!", \
"You start violently moving the [tool] in [target]'s [affected.name]!")
user.balloon_alert_visible("Starts violently shifting \the [tool] in [target]'s [affected.name]!", "Violently moving \the [tool] in \the [affected.name]") // CHOMPEdit
target.custom_pain("[user] is ripping into your [target.op_stage.current_organ]!", 100)
..()

View File

@@ -60,6 +60,7 @@
if(!(I.robotic >= ORGAN_ROBOT))
user.visible_message("<span class='filter_notice'>[user] starts treating damage to [target]'s [I.name] with [tool_name].</span>", \
"<span class='filter_notice'>You start treating damage to [target]'s [I.name] with [tool_name].</span>" )
user.balloon_alert_visible("Starts treating damage to [target]'s [I.name]", "Treating damage on \the [I.name]") // CHOMPEdit
target.custom_pain("The pain in your [affected.name] is living hell!", 100)
..()
@@ -80,8 +81,10 @@
if(!(I.robotic >= ORGAN_ROBOT))
user.visible_message("<span class='notice'>[user] treats damage to [target]'s [I.name] with [tool_name].</span>", \
"<span class='notice'>You treat damage to [target]'s [I.name] with [tool_name].</span>" )
user.balloon_alert_visible("Starts treating damage to [target]'s [I.name]", "Treating damage to \the [I.name]") // CHOMPEdit
if(I.organ_tag == O_BRAIN && I.status == ORGAN_DEAD && target.can_defib == 0) //Let people know they still got more work to get the brain back into working order.
to_chat(user, "<span class='warning'>You fix their [I] but the neurological structure is still heavily damaged and in need of repair.</span>")
user.balloon_alert("Fixed \the [I], neurological structure still in neeed of repair.") // CHOMPEdit
I.damage = 0
I.status = 0
if(I.organ_tag == O_EYES)
@@ -96,6 +99,7 @@
user.visible_message("<span class='warning'>[user]'s hand slips, getting mess and tearing the inside of [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='warning'>Your hand slips, getting mess and tearing the inside of [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, gettng mess and tearing the inside of [target]'s [affected.name]", "Your hand slips, getting mess and tearng the [affected.name]'s insides") // CHOMPEdit
var/dam_amt = 2
if (istype(tool, /obj/item/stack/medical/advanced/bruise_pack))
@@ -150,6 +154,7 @@
if(I.robotic >= ORGAN_ROBOT)
user.visible_message("[user] starts mending the damage to [target]'s [I.name]'s mechanisms.", \
"You start mending the damage to [target]'s [I.name]'s mechanisms." )
user.balloon_alert_visible("Mends damage to [target]'s [I.name]'s mechanisms.", "Mending damage to [I.name]'s mechanisms") // CHOMPEdit
target.custom_pain("The pain in your [affected.name] is living hell!",1)
..()
@@ -164,6 +169,7 @@
if(I.robotic >= ORGAN_ROBOT)
user.visible_message("<span class='notice'>[user] repairs [target]'s [I.name] with [tool].</span>", \
"<span class='notice'>You repair [target]'s [I.name] with [tool].</span>" )
user.balloon_alert_visible("Repairs [target]'s [I.name]", "Repaired \the [I.name]") // CHOMPEdit
I.damage = 0
if(I.organ_tag == O_EYES)
target.sdisabilities &= ~BLIND
@@ -175,6 +181,7 @@
user.visible_message("<span class='warning'>[user]'s hand slips, gumming up the mechanisms inside of [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='warning'>Your hand slips, gumming up the mechanisms inside of [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, gumming up the mechanisms inside of [target]'s [affected.name]", "Your hand slips, gumming up the mechanisms inside \the [affected.name]") // CHOMPEdit
target.adjustBruteLoss(5)
@@ -235,12 +242,14 @@
user.visible_message("<span class='filter_notice'>[user] starts to separate [target]'s [target.op_stage.current_organ] with \the [tool].</span>", \
"<span class='filter_notice'>You start to separate [target]'s [target.op_stage.current_organ] with \the [tool].</span>" )
user.balloon_alert_visible("Starts to separate [target]'s [target.op_stage.current_organ]", "Separating \the [target.op_stage.current_organ]") // CHOMPEdit
target.custom_pain("The pain in your [affected.name] is living hell!", 100)
..()
/datum/surgery_step/internal/detatch_organ/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has separated [target]'s [target.op_stage.current_organ] with \the [tool].</span>" , \
"<span class='notice'>You have separated [target]'s [target.op_stage.current_organ] with \the [tool].</span>")
user.balloon_alert_visible("Separates [target]'s [target.op_stage.current_organ]", "Separated \the [target.op_stage.current_organ]") // CHOMPEdit
var/obj/item/organ/I = target.internal_organs_by_name[target.op_stage.current_organ]
if(I && istype(I))
@@ -250,6 +259,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user]'s hand slips, slicing an artery inside [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='warning'>Your hand slips, slicing an artery inside [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, slicing an artery inside [target]'s [affected.name]", "Your hand slips, slicing anrtery inside [affected.name]") // CHOMPEdit
affected.createwound(CUT, rand(30,50), 1)
///////////////////////////////////////////////////////////////
@@ -300,11 +310,13 @@
to_chat(user, "<span class='notice'>You decide against preparing any organs for removal.</span>")
user.visible_message("<span class='filter_notice'>[user] starts pulling \the [tool] from [target]'s [affected].</span>", \
"<span class='filter_notice'>You start pulling \the [tool] from [target]'s [affected].</span>")
user.balloon_alert_visible("Starts pulling \the [tool] from [target]'s [affected]", "Pulling \the [tool] from \the [affected]") // CHOMPEdit
target.op_stage.current_organ = organ_to_remove
user.visible_message("<span class='filter_notice'>[user] starts removing [target]'s [target.op_stage.current_organ] with \the [tool].</span>", \
"<span class='filter_notice'>You start removing [target]'s [target.op_stage.current_organ] with \the [tool].</span>")
user.balloon_alert_visible("Starts removing [target]'s [target.op_stage.current_organ]", "Removing \the [target.op_stage.current_organ]") // CHOMPEdit
target.custom_pain("Someone's ripping out your [target.op_stage.current_organ]!", 100)
..()
@@ -313,11 +325,13 @@
if(!target.op_stage.current_organ) //They chose to remove their tool instead.
user.visible_message("<span class='notice'>[user] has removed \the [tool] from [target]'s [affected].</span>", \
"<span class='notice'>You have removed \the [tool] from [target]'s [affected].</span>")
user.balloon_alert_visible("Removes \the [tool] from [target]'s [affected]", "Removed \the [tool] from \the [affected]") // CHOMPEdit
// Extract the organ!
if(target.op_stage.current_organ)
user.visible_message("<span class='notice'>[user] has removed [target]'s [target.op_stage.current_organ] with \the [tool].</span>", \
"<span class='notice'>You have removed [target]'s [target.op_stage.current_organ] with \the [tool].</span>")
user.balloon_alert_visible("Removes [target]'s [target.op_stage.current_organ]", "Removed \the [target.op_stage.current_organ]") // CHOMPEdit
var/obj/item/organ/O = target.internal_organs_by_name[target.op_stage.current_organ]
if(O && istype(O))
O.removed(user)
@@ -327,6 +341,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user]'s hand slips, damaging [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='warning'>Your hand slips, damaging [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, damaging [target]'s [affected.name]", "Your hand slips, damaging \the [affected.name]") // CHOMPEdit
affected.createwound(BRUISE, 20)
///////////////////////////////////////////////////////////////
@@ -357,6 +372,7 @@
if((affected.robotic >= ORGAN_ROBOT) && !(O.robotic >= ORGAN_ROBOT))
to_chat(user, "<span class='danger'>You cannot install a naked organ into a robotic body.</span>")
user.balloon_alert("You cannot install a naked organ into a robotic body.") // CHOMPEdit
return SURGERY_FAILURE
if(!target.species)
@@ -376,6 +392,7 @@
organ_missing = 1
else
to_chat(user, "<span class='warning'>\The [target] already has [o_a][O.organ_tag].</span>")
user.balloon_alert("There is a [o_a][O.organ_tag] already!") // CHOMPEdit
return SURGERY_FAILURE
if(O && affected.organ_tag == O.parent_organ)
@@ -383,6 +400,7 @@
else
to_chat(user, "<span class='warning'>\The [O.organ_tag] [o_do] normally go in \the [affected.name].</span>")
user.balloon_alert("\The [O.organ_tag] [o_do] normally go in \the [affected.name]") // CHOMPEdit
return SURGERY_FAILURE
return ..() && organ_missing && organ_compatible
@@ -391,6 +409,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts transplanting \the [tool] into [target]'s [affected.name].</span>", \
"<span class='filter_notice'>You start transplanting \the [tool] into [target]'s [affected.name].</span>")
user.balloon_alert_visible("Strats transplanting \the [tool] into [target]'s [affected.name]", "Transplanting \the [tool] into \the [affected.name]") // CHOMPEdit
target.custom_pain("Someone's rooting around in your [affected.name]!", 100)
..()
@@ -398,6 +417,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has transplanted \the [tool] into [target]'s [affected.name].</span>", \
"<span class='notice'>You have transplanted \the [tool] into [target]'s [affected.name].</span>")
user.balloon_alert_visible("Transplants \the [tool] into [target]'s [affected.name]", "Transplanted \the [tool] into [affected.name]") // CHOMPEdit
var/obj/item/organ/O = tool
if(istype(O))
user.remove_from_mob(O)
@@ -406,6 +426,7 @@
/datum/surgery_step/internal/replace_organ/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='warning'>[user]'s hand slips, damaging \the [tool]!</span>", \
"<span class='warning'>Your hand slips, damaging \the [tool]!</span>")
user.balloon_alert_visible("Slips, damaging \the [tool]", "Your hand slips, damaging \the [tool]") // CHOMPEdit
var/obj/item/organ/I = tool
if(istype(I))
I.take_damage(rand(3,5),0)
@@ -449,12 +470,14 @@
/datum/surgery_step/internal/attach_organ/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='filter_notice'>[user] begins reattaching [target]'s [target.op_stage.current_organ] with \the [tool].</span>", \
"<span class='filter_notice'>You start reattaching [target]'s [target.op_stage.current_organ] with \the [tool].</span>")
user.balloon_alert_visible("Begins reattaching [target]'s [target.op_stage.current_organ]", "Reattaching [target.op_stage.current_organ]") // CHOMPEdit
target.custom_pain("Someone's digging needles into your [target.op_stage.current_organ]!", 100)
..()
/datum/surgery_step/internal/attach_organ/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has reattached [target]'s [target.op_stage.current_organ] with \the [tool].</span>" , \
"<span class='notice'>You have reattached [target]'s [target.op_stage.current_organ] with \the [tool].</span>")
user.balloon_alert_visible("Reattached [target]'s [target.op_stage.current_organ]", "Reattached [target.op_stage.current_organ]") // CHOMPEdit
var/obj/item/organ/I = target.internal_organs_by_name[target.op_stage.current_organ]
if(I && istype(I))
@@ -464,4 +487,5 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user]'s hand slips, damaging the flesh in [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='warning'>Your hand slips, damaging the flesh in [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, damaging the flesh in [target]'s [affected.name]", "Your hand slips, damaging the flesh in [affected.name]") // CHOMPEdit
affected.createwound(BRUISE, 20)

View File

@@ -39,6 +39,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts patching the damaged vein in [target]'s [affected.name] with \the [tool].</span>" , \
"<span class='filter_notice'>You start patching the damaged vein in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Starts patching the damaged ven in [target]'s [affected.name]", "Patching the damaged vein in \the [affected.name]") // CHOMPEdit
target.custom_pain("The pain in [affected.name] is unbearable!", 100)
..()
@@ -46,6 +47,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has patched the damaged vein in [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You have patched the damaged vein in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Patches the damaged vein in [target]'s [affected.name]", "Patched the damaged vein in \the [affected.name]") // CHOMPEdit
for(var/datum/wound/W in affected.wounds) if(W.internal)
affected.wounds -= W
@@ -56,6 +58,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>" , \
"<span class='danger'>Your hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>")
user.balloon_alert_visible("Slips, smearing [tool] in the incision in [target]'s [affected.name]", "Your hand slips, smearing [tool] in the incisiom in [affected.name]") // CHOMPEdit
affected.take_damage(5, 0)
///////////////////////////////////////////////////////////////
@@ -93,6 +96,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts cutting away necrotic tissue in [target]'s [affected.name] with \the [tool].</span>" , \
"<span class='filter_notice'>You start cutting away necrotic tissue in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Starts cutting away necrotic tissue in [target]'s [affected.name]", "Cutting away necrotic issue in \the [affected.name]") // CHOMPEdit
target.custom_pain("The pain in [affected.name] is unbearable!", 100)
..()
@@ -100,12 +104,14 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has cut away necrotic tissue in [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You have cut away necrotic tissue in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Cuts away necrotic tissue in [target]'s [affected.name]", "Cut away necrotic tissue in \the [affected.name]") // CHOMPEdit
affected.open = 3
/datum/surgery_step/fix_dead_tissue/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, slicing an artery inside [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='danger'>Your hand slips, slicing an artery inside [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, slicing an artery inside [target]'s [affected.name]", "Your hand slips, slicing an artery inside \the [affected.name]") // CHOMPEdit
affected.createwound(CUT, 20, 1)
///////////////////////////////////////////////////////////////
@@ -151,6 +157,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts applying medication to the affected tissue in [target]'s [affected.name] with \the [tool].</span>" , \
"<span class='filter_notice'>You start applying medication to the affected tissue in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Starts applying medication to the affected tissue in [target]'s [affected.name]", "Applying medication to the affected tissue in \the [affected.name]") // CHOMPEdit
target.custom_pain("Something in your [affected.name] is causing you a lot of pain!", 50)
..()
@@ -169,6 +176,7 @@
user.visible_message("<span class='notice'>[user] applies [trans] units of the solution to affected tissue in [target]'s [affected.name].</span>", \
"<span class='notice'>You apply [trans] units of the solution to affected tissue in [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Applies [trans] units of the solution to affected tissue in [target]'s [affected.name]", "Applied [trans] units of the solution to afected tissue in [affected.name]") // CHOMPEdit
/datum/surgery_step/treat_necrosis/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
@@ -182,6 +190,8 @@
user.visible_message("<span class='danger'>[user]'s hand slips, applying [trans] units of the solution to the wrong place in [target]'s [affected.name] with the [tool]!</span>" , \
"<span class='danger'>Your hand slips, applying [trans] units of the solution to the wrong place in [target]'s [affected.name] with the [tool]!</span>")
user.balloon_alert_visible("Slips, applying [trans] units of the solution to the wrong place in [target]'s [affected.name]",
"Your hand slips, applying [trans] units of the solution to the wrong place in \the [affected.name]") // CHOMPEdit
//no damage or anything, just wastes medicine
@@ -221,6 +231,7 @@
return
user.visible_message("<span class='filter_notice'>[user] starts cutting through the support systems of \the [rig] on [target] with \the [tool].</span>" , \
"<span class='filter_notice'>You start cutting through the support systems of \the [rig] on [target] with \the [tool].</span>")
user.balloon_alert_visible("Starts cutting through the support systems of \the [rig] on [target]", "Cutting through the support systems of \the [rig] on [target]") // CHOMPEdit
..()
/datum/surgery_step/hardsuit/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
@@ -232,10 +243,12 @@
rig.cut_suit()
user.visible_message("<span class='notice'>[user] has cut through the support systems of \the [rig] on [target] with \the [tool].</span>", \
"<span class='notice'>You have cut through the support systems of \the [rig] on [target] with \the [tool].</span>")
user.balloon_alert_visible("Cuts through the support systems of \the [rig] on [target]", "Cut through the support systems of \the [rig]") // CHOMPEdit
/datum/surgery_step/hardsuit/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='danger'>[user]'s [tool] can't quite seem to get through the metal...</span>", \
"<span class='danger'>\The [tool] can't quite seem to get through the metal. It's weakening, though - try again.</span>")
user.balloon_alert_visible("[tool] can't quite seem to get through the metal", "\The [tool] can't quite seem to get through the metal.") // CHOMPEdit
///////////////////////////////////////////
// De-Husking Surgery //
@@ -274,11 +287,13 @@
/datum/surgery_step/dehusk/structinitial/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] begins to create a fleshy but rigid looking mesh over gaps in [target]'s flesh with \the [tool].</span>", \
"<span class='notice'>You begin to create a fleshy but rigid looking mesh over gaps in [target]'s flesh with \the [tool].</span>")
user.balloon_alert_visible("Begins to create a fleshy mesh over gaps in [target]'s flesh.", "Creating a flesh mesh over gaps") // CHOMPEdit
..()
/datum/surgery_step/dehusk/structinitial/end_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] creates a fleshy but rigid looking mesh over gaps in [target]'s flesh with \the [tool].</span>", \
"<span class='notice'>You create a fleshy but rigid looking mesh over gaps in [target]'s flesh with \the [tool].</span>")
user.balloon_alert_visible("Creates a fleshy mesh over gaps in [target]'s flesh", "Created a fleshy mesh over gaps in the flesh") // CHOMPEdit
target.op_stage.dehusk = 1
..()
@@ -286,6 +301,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, and the mesh falls, with \the [tool] scraping [target]'s body.</span>", \
"<span class='danger'>Your hand slips, and the mesh falls, with \the [tool] scraping [target]'s body.</span>")
user.balloon_alert_visible("Slips, the mesh falls and scrapes [target]'s body", "Your hand slips, the mesh falls and scrapes the body") // CHOMPEdit
affected.createwound(CUT, 15)
affected.createwound(BRUISE, 10)
..()
@@ -306,11 +322,13 @@
/datum/surgery_step/dehusk/relocateflesh/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] begins to relocate some of [target]'s flesh with \the [tool], using it to fill in gaps.</span>", \
"<span class='notice'>You begin to relocate some of [target]'s flesh with \the [tool], using it to fill in gaps.</span>")
user.balloon_alert_visible("Begins relocating [target]'s flesh", "Relocating the flesh") // CHOMPEdit
..()
/datum/surgery_step/dehusk/relocateflesh/end_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] relocates some of [target]'s flesh with \the [tool], using it to fill in gaps.</span>", \
"<span class='notice'>You relocate some of [target]'s flesh with \the [tool], using it to fill in gaps.</span>")
user.balloon_alert_visible("Relocates [target]'s flesh", "Relocated the flesh") // CHOMPEdit
target.op_stage.dehusk = 2
..()
@@ -318,6 +336,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user] accidentally rips a massive chunk out of [target]'s flesh with \the [tool], causing massive damage.</span>", \
"<span class='danger'>You accidentally rip a massive chunk out of [target]'s flesh with \the [tool], causing massive damage.</span>")
user.balloon_alert_visible("Accidentally rips a massive chunk out of [target]'s flesh, causing massive damage",
"You accidentally rip a massive chunk out of the flesh, causing massive damage") // CHOMPEdit
affected.createwound(CUT, 25)
affected.createwound(BRUISE, 10)
..()
@@ -338,14 +358,17 @@
if(istype(tool,/obj/item/weapon/surgical/bioregen))
user.visible_message("<span class='notice'>[user] begins to recreate blood vessels and fill in the gaps in [target]'s flesh with \the [tool].</span>", \
"<span class='notice'>You begin to recreate blood vessels and fill in the gaps in [target]'s flesh with \the [tool].</span>")
user.balloon_alert_visible("Begins recreating blood vessels and filing gaps in [target]'s flesh", "Recreating blood vessels and filling gaps in the flesh") // CHOMPEdit
else if(istype(tool,/obj/item/weapon/surgical/FixOVein))
user.visible_message("<span class='notice'>[user] attempts to recreate blood vessels and fill in the gaps in [target]'s flesh with \the [tool].</span>", \
"<span class='notice'>You attempt to recreate blood vessels and fill in the gaps in [target]'s flesh with \the [tool].</span>")
user.balloon_alert_visible("Attempts to recreate blood vessesl and fill the gaps in [target]'s flesh", "Attempting to recreate blood vessels and fill gaps in the flesh") // CHOMPEdit
..()
/datum/surgery_step/dehusk/structfinish/end_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] finishes recreating the missing biological structures and filling in gaps in [target]'s flesh with \the [tool].</span>", \
"<span class='notice'>You finish recreating the missing biological structures and filling in gaps in [target]'s flesh with \the [tool].</span>")
user.balloon_alert_visible("Recreates the missing biological structures and gaps in [target]'s flesh", "Recreated the missing bological structures and gaps in the flesh") // CHOMPEdit
target.op_stage.dehusk = 0
target.mutations.Remove(HUSK)
target.status_flags &= ~DISFIGURED
@@ -357,9 +380,12 @@
if(istype(tool,/obj/item/weapon/surgical/bioregen))
user.visible_message("<span class='danger'>[user]'s hand slips, causing \the [tool] to scrape [target]'s body.</span>", \
"<span class='danger'>Your hand slips, causing \the [tool] to scrape [target]'s body.</span>")
user.balloon_alert_visible("Slips, scraping [target]'s body", "You slip, scraping the body.") // CHOMPEdit
else if(istype(tool,/obj/item/weapon/surgical/FixOVein))
user.visible_message("<span class='danger'>[user] fails to finish the structure over the gaps in [target]'s flesh, doing more damage than good.</span>", \
"<span class='danger'>You fail to finish the structure over the gaps in [target]'s flesh, doing more damage than good.</span>")
user.balloon_alert_visible("Fails to finish the structure in [target]'s flesh, doing more damage", "You fail to finish the structur, doing more damage") // CHOMPEdit
affected.createwound(CUT, 15)
affected.createwound(BRUISE, 10)
..()
@@ -377,11 +403,13 @@
/datum/surgery_step/internal/detoxify/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] begins to pull toxins from, and restore oxygen to [target]'s musculature and organs with \the [tool].</span>", \
"<span class='notice'>You begin to pull toxins from, and restore oxygen to [target]'s musculature and organs with \the [tool].</span>")
user.balloon_alert_visible("Begins pulling from, and restoring oxygen to [target]'s organs", "Pulling toxins from and restoring oxygen to the organs") // CHOMPEdit
..()
/datum/surgery_step/internal/detoxify/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] finishes pulling toxins from, and restoring oxygen to [target]'s musculature and organs with \the [tool].</span>", \
"<span class='notice'>You finish pulling toxins from, and restoring oxygen to [target]'s musculature and organs with \the [tool].</span>")
user.balloon_alert_visible("Finishes pulling toxins and restoring oxygen to [target]'s organs", "Pulled toxins from and restored oxygen to the organs") // CHOMPEdit
if(target.toxloss>25)
target.adjustToxLoss(-20)
if(target.oxyloss>25)
@@ -392,6 +420,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='danger'>[user]'s hand slips, failing to finish the surgery, and damaging [target] with \the [tool].</span>", \
"<span class='danger'>Your hand slips, failing to finish the surgery, and damaging [target] with \the [tool].</span>")
user.balloon_alert_visible("Slips, failing to finish the surgery and damaging [target]", "Your hand slips, failing to finish the surgery and damaging [target]") // CHOMPEdit
affected.createwound(CUT, 15)
affected.createwound(BRUISE, 10)
..()

View File

@@ -52,18 +52,21 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts to unscrew the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>", \
"<span class='filter_notice'>You start to unscrew the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Starts to unscrew the maintenance hatch on [target]'s [affected.name]", "Unscrewing the maintenance hatch on \the [affected.name]") // CHOMPEdit
..()
/datum/surgery_step/robotics/unscrew_hatch/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has opened the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You have opened the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>",)
user.balloon_alert_visible("Opens the maintenance hatch on [target]'s [affected.name]", "Maintenance hatch opened on \the [affected.name]") // CHOMPEdit
affected.open = 1
/datum/surgery_step/robotics/unscrew_hatch/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user]'s [tool.name] slips, failing to unscrew [target]'s [affected.name].</span>", \
"<span class='warning'>Your [tool] slips, failing to unscrew [target]'s [affected.name].</span>")
user.balloon_alert_visible("Slips, failing to unscrew [target]'s [affected.name]", "Your [tool] slips, failing to unscrew \the [affected.name]") // CHOMPEdit
///////////////////////////////////////////////////////////////
// Open Hatch Surgery
@@ -90,18 +93,21 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts to pry open the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>",
"<span class='filter_notice'>You start to pry open the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Starts to pry open the maintenance hatch on [target]'s [affected.name]", "Prying open the maintenance hatch on \the [affected.name]") // CHOMPEdit
..()
/datum/surgery_step/robotics/open_hatch/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] opens the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You open the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Opens the maintenance hatch on [target]'s [affected.name]", "Maintenance hatch on \the [affected.name] open") // CHOMPEdit
affected.open = 3
/datum/surgery_step/robotics/open_hatch/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user]'s [tool.name] slips, failing to open the hatch on [target]'s [affected.name].</span>",
"<span class='warning'>Your [tool] slips, failing to open the hatch on [target]'s [affected.name].</span>")
user.balloon_alert_visible("Slips, failing to open the hatch on [target]'s [affected.name]", "Your [tool] slips, fialing to open the hatch on \the [affected.name]") // CHOMPEdit
///////////////////////////////////////////////////////////////
// Close Hatch Surgery
@@ -128,12 +134,14 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] begins to close and secure the hatch on [target]'s [affected.name] with \the [tool].</span>" , \
"<span class='filter_notice'>You begin to close and secure the hatch on [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Begins closing and securing the hatch on [target]'s [affected.name]", "Closing and securing the hatch on \the [affected.name]") // CHOMPEdit
..()
/datum/surgery_step/robotics/close_hatch/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] closes and secures the hatch on [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You close and secure the hatch on [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Closes and secures the hatch on [target]'s [affected.name]", "Closed and secured the hatch on \the [affected.name]") // CHOMPEdit
affected.open = 0
affected.germ_level = 0
@@ -141,6 +149,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user]'s [tool.name] slips, failing to close the hatch on [target]'s [affected.name].</span>",
"<span class='warning'>Your [tool.name] slips, failing to close the hatch on [target]'s [affected.name].</span>")
user.balloon_alert_visible("[tool.name] slips, failing to close the htach on [target]'s [affected.name]", "[tool.name] slips, failing to close the htach on [target]'s [affected.name]") // CHOMPEdit
///////////////////////////////////////////////////////////////
// Brute Repair Surgery
@@ -173,12 +182,14 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] begins to patch damage to [target]'s [affected.name]'s support structure with \the [tool].</span>" , \
"<span class='filter_notice'>You begin to patch damage to [target]'s [affected.name]'s support structure with \the [tool].</span>")
user.balloon_alert_visible("Begins patching damage to [target]'s [affected.name]'s support structure", "Beggining to patch damage to \the [affected.name] support structure") // CHOMPEdit
..()
/datum/surgery_step/robotics/repair_brute/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] finishes patching damage to [target]'s [affected.name] with \the [tool].</span>", \
"<span class='notice'>You finish patching damage to [target]'s [affected.name] with \the [tool].</span>")
user.balloon_alert_visible("Finishes patching damage to [target]'s [affected.name]", "Patched samage to \the [affected.name]") // CHOMPEdit
affected.heal_damage(rand(30,50),0,1,1)
affected.disfigured = 0
@@ -186,6 +197,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user]'s [tool.name] slips, damaging the internal structure of [target]'s [affected.name].</span>",
"<span class='warning'>Your [tool.name] slips, damaging the internal structure of [target]'s [affected.name].</span>")
user.balloon_alert_visible("Slips, damaging the internal structure of [target]'s [affected.name]", "Your [tool.name] slips, damaging the internal structure of \the [affected.name]") // CHOMPEdit
target.apply_damage(rand(5,10), BURN, affected)
///////////////////////////////////////////////////////////////
@@ -207,11 +219,13 @@
if(istype(tool, /obj/item/stack/cable_coil))
var/obj/item/stack/cable_coil/C = tool
if(affected.burn_dam == 0)
user.balloon_alert_visible("There are no burnt wires here!") // CHOMPEdit
to_chat(user, "<span class='notice'>There are no burnt wires here!</span>")
return SURGERY_FAILURE
else
if(!C.can_use(5))
to_chat(user, "<span class='danger'>You need at least five cable pieces to repair this part.</span>") //usage amount made more consistent with regular cable repair
user.balloon_alert_visible("You need at least five cable pieces to repair this part.") // CHOMPEdit
return SURGERY_FAILURE
else
C.use(5)
@@ -222,12 +236,14 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] begins to splice new cabling into [target]'s [affected.name].</span>" , \
"<span class='filter_notice'>You begin to splice new cabling into [target]'s [affected.name].</span>")
user.balloon_alert_visible("Begins to splice new cabling into [target]'s [affected.name]", "Splcing new cabling into \the [affected.name]") // CHOMPEdit
..()
/datum/surgery_step/robotics/repair_burn/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] finishes splicing cable into [target]'s [affected.name].</span>", \
"<span class='notice'>You finishes splicing new cable into [target]'s [affected.name].</span>")
user.balloon_alert_visible("Finishes splicing cable into [target]'s [affected.name]", "Finished splicing new cable into [target]'s [affected.name]") // CHOMPEdit
affected.heal_damage(0,rand(30,50),1,1)
affected.disfigured = 0
@@ -235,6 +251,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'>[user] causes a short circuit in [target]'s [affected.name]!</span>",
"<span class='warning'>You cause a short circuit in [target]'s [affected.name]!</span>")
user.balloon_alert_visible("Causes a short circuit in [target]'s [affected.name]", "You cause a short circuit in \the [affected.name]") // CHOMPEdit
target.apply_damage(rand(5,10), BURN, affected)
///////////////////////////////////////////////////////////////
@@ -275,6 +292,7 @@
if(I.robotic >= ORGAN_ROBOT)
user.visible_message("<span class='filter_notice'>[user] starts mending the damage to [target]'s [I.name]'s mechanisms.</span>", \
"<span class='filter_notice'>You start mending the damage to [target]'s [I.name]'s mechanisms.</span>" )
user.balloon_alert_visible("Starts mending the damage to [target]'s [I.name]'s mechanisms.", "Mending the damage to \the [I.name]'s mechanism") // CHOMPEdit
target.custom_pain("The pain in your [affected.name] is living hell!",1)
..()
@@ -289,6 +307,7 @@
if(I.robotic >= ORGAN_ROBOT)
user.visible_message("<span class='notice'>[user] repairs [target]'s [I.name] with [tool].</span>", \
"<span class='notice'>You repair [target]'s [I.name] with [tool].</span>" )
user.balloon_alert_visible("Repairs [target]'s [I.name]", "Repaired \the [I.name]") // CHOMPEdit
I.damage = 0
if(I.organ_tag == O_EYES)
target.sdisabilities &= ~BLIND
@@ -300,6 +319,7 @@
user.visible_message("<span class='warning'>[user]'s hand slips, gumming up the mechanisms inside of [target]'s [affected.name] with \the [tool]!</span>", \
"<span class='warning'>Your hand slips, gumming up the mechanisms inside of [target]'s [affected.name] with \the [tool]!</span>")
user.balloon_alert_visible("Slips, gumming up the mechanisms inside [target]'s [affected.name]", "Your hand slips, gumming up the mechanisms inside of \the [affected.name]") // CHOMPEdit
target.adjustToxLoss(5)
affected.createwound(CUT, 5)
@@ -355,11 +375,13 @@
user.visible_message("<span class='filter_notice'>[user] starts to decouple [target]'s [target.op_stage.current_organ] with \the [tool].</span>", \
"<span class='filter_notice'>You start to decouple [target]'s [target.op_stage.current_organ] with \the [tool].</span>" )
user.balloon_alert_visible("Starts to decouple [target]'s [target.op_stage.current_organ]", "Decoupling \the [target.op_stage.current_organ]") // CHOMPEdit
..()
/datum/surgery_step/robotics/detatch_organ_robotic/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has decoupled [target]'s [target.op_stage.current_organ] with \the [tool].</span>" , \
"<span class='notice'>You have decoupled [target]'s [target.op_stage.current_organ] with \the [tool].</span>")
user.balloon_alert_visible("Decoupled [target]'s [target.op_stage.current_organ]", "Decouple \the [target.op_stage.current_organ]") // CHOMPEdit
var/obj/item/organ/internal/I = target.internal_organs_by_name[target.op_stage.current_organ]
if(I && istype(I))
@@ -369,6 +391,7 @@
/datum/surgery_step/robotics/detatch_organ_robotic/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='warning'>[user]'s hand slips, disconnecting \the [tool].</span>", \
"<span class='warning'>Your hand slips, disconnecting \the [tool].</span>")
user.balloon_alert_visible("Slips, disconnecting \the [tool]", "Your hand slips, disconnecting \the [tool]") // CHOMPEdit
///////////////////////////////////////////////////////////////
// Robot Organ Attaching Surgery
@@ -417,11 +440,13 @@
user.visible_message("<span class='filter_notice'>[user] begins reattaching [target]'s [target.op_stage.current_organ] with \the [tool].</span>", \
"<span class='filter_notice'>You start reattaching [target]'s [target.op_stage.current_organ] with \the [tool].</span>")
user.balloon_alert_visible("Begins reattaching [target]'s [target.op_stage.current_organ]", "Reattaching \the [target.op_stage.current_organ]") // CHOMPEdit
..()
/datum/surgery_step/robotics/attach_organ_robotic/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] has reattached [target]'s [target.op_stage.current_organ] with \the [tool].</span>" , \
"<span class='notice'>You have reattached [target]'s [target.op_stage.current_organ] with \the [tool].</span>")
user.balloon_alert_visible("Reattaches [target]'s [target.op_stage.current_organ]", "Reattached \the [target.op_stage.current_organ]") // CHOMPEdit
var/obj/item/organ/I = target.internal_organs_by_name[target.op_stage.current_organ]
if(I && istype(I))
@@ -431,6 +456,7 @@
/datum/surgery_step/robotics/attach_organ_robotic/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='warning'>[user]'s hand slips, disconnecting \the [tool].</span>", \
"<span class='warning'>Your hand slips, disconnecting \the [tool].</span>")
user.balloon_alert_visible("Slips, disconnecting \the [tool]", "Your hand slips, disonnectng \the [tool]") // CHOMPEdit
///////////////////////////////////////////////////////////////
// MMI Insertion Surgery
@@ -465,14 +491,17 @@
if(!(affected.robotic >= ORGAN_ROBOT))
to_chat(user, "<span class='danger'>You cannot install a computer brain into a meat skull.</span>")
user.balloon_alert("You cannot install a computer brain into a meat skull") // CHOMPEdit
return SURGERY_FAILURE
if(!target.should_have_organ("brain"))
to_chat(user, "<span class='danger'>You're pretty sure [target.species.name_plural] don't normally have a brain.</span>")
user.balloon_alert("You're pertty sure [target.species.name_plural] don't normall have a brain") // CHOMPEdit
return SURGERY_FAILURE
if(!isnull(target.internal_organs["brain"]))
to_chat(user, "<span class='danger'>Your subject already has a brain.</span>")
user.balloon_alert("Your subject already has a brain") // CHOMPEdit
return SURGERY_FAILURE
return 1
@@ -481,12 +510,14 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts installing \the [tool] into [target]'s [affected.name].</span>", \
"<span class='filter_notice'>You start installing \the [tool] into [target]'s [affected.name].</span>")
user.balloon_alert_visible("Starts installing \the [tool] into [target]'s [affected.name]", "Installing \the [tool] into \the [affected.name]") // CHOMPEdit
..()
/datum/surgery_step/robotics/install_mmi/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has installed \the [tool] into [target]'s [affected.name].</span>", \
"<span class='notice'>You have installed \the [tool] into [target]'s [affected.name].</span>")
user.balloon_alert_visible("Installed \the [tool] into [target]'s [affected.name]", "Installed \the [tool] into \the [affected.name]") // CHOMPEdit
var/obj/item/device/mmi/M = tool
var/obj/item/organ/internal/mmi_holder/holder = new(target, 1)
@@ -519,6 +550,7 @@
/datum/surgery_step/robotics/install_mmi/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='warning'>[user]'s hand slips.</span>", \
"<span class='warning'>Your hand slips.</span>")
user.balloon_alert_visible("Slips", "Your hand slips") // CHOMPEdit
/*
* Install a Diona Nymph into a Nymph Mech
@@ -548,22 +580,27 @@
if(!N.held_mob.client || N.held_mob.stat >= DEAD)
to_chat(user, "<span class='danger'>That nymph is not viable.</span>")
user.balloon_alert("That nymph is not viable") // CHOMPEdit
return SURGERY_FAILURE
if(!(affected.robotic >= ORGAN_ROBOT))
to_chat(user, "<span class='danger'>You cannot install a nymph into a meat puppet.</span>")
user.balloon_alert("You cannot install a nymph into a meat puppet") // CHOMPEdit
return SURGERY_FAILURE
if(!(affected.model != "Skrellian Exoskeleton"))
to_chat(user, "<span class='dangerou'>You're fairly certain a nymph can't pilot a normal robot.</span>")
user.balloon_alert("You're fairly certain a nymph can't pilot a normal robot") // CHOMPEdit
return SURGERY_FAILURE
if(!target.should_have_organ("brain"))
to_chat(user, "<span class='danger'>You're pretty sure [target.species.name_plural] don't normally have a brain.</span>")
user.balloon_alert("You're pretty sure [target.species.name_plural] don't normall have a brain") // CHOMPEdit
return SURGERY_FAILURE
if(!isnull(target.internal_organs["brain"]))
to_chat(user, "<span class='danger'>Your subject already has a cephalon.</span>")
user.balloon_alert("Your subject already has a cephalon") // CHOMPEdit
return SURGERY_FAILURE
return 1
@@ -572,12 +609,14 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='filter_notice'>[user] starts setting \the [tool] into [target]'s [affected.name].</span>", \
"<span class='filter_notice'>You start setting \the [tool] into [target]'s [affected.name].</span>")
user.balloon_alert_visible("Stars setting \the [tool] into [target]'s [affected.name]", "Setting \the into \the [affected.name]") // CHOMPEdit
..()
/datum/surgery_step/robotics/install_nymph/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='notice'>[user] has installed \the [tool] into [target]'s [affected.name].</span>", \
"<span class='notice'>You have installed \the [tool] into [target]'s [affected.name].</span>")
user.balloon_alert_visible("Installed \the [tool] into [target]'s [affected.name]", "Installed \the [tool] into \the [affected.name]") // CHOMPEdit
var/obj/item/weapon/holder/diona/N = tool
var/obj/item/organ/internal/brain/cephalon/cephalon = new(target, 1)
@@ -613,3 +652,4 @@
/datum/surgery_step/robotics/install_nymph/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='warning'>[user]'s hand slips.</span>", \
"<span class='warning'>Your hand slips.</span>")
user.balloon_alert_visible("Slips", "Your hand slips") // CHOMPEdit

View File

@@ -211,6 +211,7 @@
if(!do_mob(user, M, calc_duration * toolspeed, zone, exclusive = TRUE))
success = FALSE
to_chat(user, "<span class='warning'>You must remain close to and keep focused on your patient to conduct surgery.</span>")
user.balloon_alert("You must remain close to and keep focused on your patent to conduct surgery") // CHOMPEdit
if(success)
selected_surgery.end_step(user, M, zone, src)