Various TG Chat message sorting fixes (#25229)

* Fixes unsorted emotes, announcements, votes, surgery, prayers, ahelp responses

* Apply suggestions from code review

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>

---------

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
This commit is contained in:
S34N
2024-04-29 03:07:25 +01:00
committed by GitHub
parent 4add53d6c1
commit 2e4089dc15
28 changed files with 368 additions and 209 deletions
+10 -5
View File
@@ -41,14 +41,16 @@
if(times_repeated >= max_times_to_check)
user.visible_message(
"<span class='notice'>[user] seems to have had enough and stops checking inside [target].</span>",
"<span class='notice'>There doesn't seem to be anything inside, you've checked enough times.</span>"
"<span class='notice'>There doesn't seem to be anything inside, you've checked enough times.</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_BEGINSTEP_SKIP
I = locate(/obj/item/bio_chip) in target
user.visible_message(
"[user] starts poking around inside [target]'s [affected.name] with \the [tool].",
"You start poking around inside [target]'s [affected.name] with \the [tool]."
"You start poking around inside [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("The pain in your [affected.name] is living hell!")
return ..()
@@ -59,7 +61,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'>[user] grips onto [target]'s [affected.name] by mistake, tearing it!</span>",
"<span class='warning'>You think you've found something, but you've grabbed onto [target]'s [affected.name] instead, damaging it!</span>"
"<span class='warning'>You think you've found something, but you've grabbed onto [target]'s [affected.name] instead, damaging it!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(10)
return SURGERY_STEP_RETRY
@@ -70,7 +73,8 @@
if(I && prob(80)) //implant removal only works on the chest.
user.visible_message(
"<span class='notice'>[user] takes something out of [target]'s [affected.name] with \the [tool].</span>",
"<span class='notice'>You take \an [I] out of [target]'s [affected.name]s with \the [tool].</span>"
"<span class='notice'>You take \an [I] out of [target]'s [affected.name]s with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
I.removed(target)
@@ -94,7 +98,8 @@
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>"
"<span class='notice'>You could not find anything inside [target]'s [affected.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
+24 -12
View File
@@ -60,7 +60,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts applying medication to the damaged bones in [target]'s [affected.name] with \the [tool].",
"You start applying medication to the damaged bones in [target]'s [affected.name] with \the [tool]."
"You start applying medication to the damaged bones in [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Something in your [affected.name] is causing you a lot of pain!")
return ..()
@@ -69,7 +70,8 @@
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>"
"<span class='notice'> You apply some [tool] to [target]'s bone in [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -78,7 +80,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'> [user]'s hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>",
"<span class='warning'> Your hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>"
"<span class='warning'> Your hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
@@ -96,7 +99,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] is beginning to set the bone in [target]'s [affected.name] in place with \the [tool].",
"You are beginning to set the bone in [target]'s [affected.name] in place with \the [tool]."
"You are beginning to set the bone in [target]'s [affected.name] in place with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("The pain in your [affected.name] is going to make you pass out!")
return ..()
@@ -105,7 +109,8 @@
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] in place with \the [tool].</span>",
"<span class='notice'> You set 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>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -113,7 +118,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'> [user]'s hand slips, damaging the bone in [target]'s [affected.name] with \the [tool]!</span>",
"<span class='warning'> Your hand slips, damaging the bone in [target]'s [affected.name] with \the [tool]!</span>"
"<span class='warning'> Your hand slips, damaging the bone in [target]'s [affected.name] with \the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(5)
return SURGERY_STEP_RETRY
@@ -124,7 +130,8 @@
/datum/surgery_step/set_bone/mend_skull/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message(
"[user] is beginning piece together [target]'s skull with \the [tool].",
"You are beginning piece together [target]'s skull with \the [tool]."
"You are beginning piece together [target]'s skull with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -132,7 +139,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='notice'> [user] sets [target]'s [affected.encased] with \the [tool].</span>",
"<span class='notice'> You set [target]'s [affected.encased] with \the [tool].</span>"
"<span class='notice'> You set [target]'s [affected.encased] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -141,7 +149,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'>[user]'s hand slips, damaging [target]'s face with \the [tool]!</span>",
"<span class='warning'>Your hand slips, damaging [target]'s face with \the [tool]!</span>"
"<span class='warning'>Your hand slips, damaging [target]'s face with \the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
var/obj/item/organ/external/head/H = affected
H.receive_damage(10)
@@ -164,7 +173,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts to finish mending the damaged bones in [target]'s [affected.name] with \the [tool].",
"You start to finish mending the damaged bones in [target]'s [affected.name] with \the [tool]."
"You start to finish mending the damaged bones in [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -172,7 +182,8 @@
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>"
"<span class='notice'> You have mended the damaged bones in [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.mend_fracture()
return SURGERY_STEP_CONTINUE
@@ -181,6 +192,7 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'> [user]'s hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>",
"<span class='warning'> Your hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>"
"<span class='warning'> Your hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
+21 -11
View File
@@ -136,7 +136,8 @@
var/obj/item/organ/external/chest/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'> [user]'s hand slips, scraping around inside [target]'s [affected.name] with \the [tool]!</span>",
"<span class='warning'> Your hand slips, scraping around inside [target]'s [affected.name] with \the [tool]!</span>"
"<span class='warning'> Your hand slips, scraping around inside [target]'s [affected.name] with \the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(20)
return SURGERY_STEP_RETRY
@@ -156,7 +157,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool].",
"You start making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool]."
"You start making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("The pain in your chest is living hell!")
return ..()
@@ -165,7 +167,8 @@
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>"
"<span class='notice'> You make some space inside [target]'s [get_cavity(affected)] cavity with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -186,7 +189,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts mending [target]'s [get_cavity(affected)] cavity wall with \the [tool].",
"You start mending [target]'s [get_cavity(affected)] cavity wall with \the [tool]."
"You start mending [target]'s [get_cavity(affected)] cavity wall with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("The pain in your chest is living hell!")
return ..()
@@ -195,7 +199,8 @@
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>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -218,7 +223,8 @@
// Check even if there isn't anything inside
user.visible_message(
"[user] checks for items in [target]'s [target_zone].",
"<span class='notice'>You check for items in [target]'s [target_zone]...</span>"
"<span class='notice'>You check for items in [target]'s [target_zone]...</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -239,7 +245,8 @@
return SURGERY_STEP_CONTINUE
user.visible_message(
"<span class='notice'>[user] pulls [extracting] out of [target]'s [target_zone]!</span>",
"<span class='notice'>You pull [extracting] out of [target]'s [target_zone].</span>"
"<span class='notice'>You pull [extracting] out of [target]'s [target_zone].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
user.put_in_hands(extracting)
affected.hidden = null
@@ -249,7 +256,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'>[user] grabs onto something else by mistake, damaging it!.</span>",
"<span class='warning'>You grab onto something else inside [target]'s [get_cavity(affected)] cavity by mistake, damaging it!</span>"
"<span class='warning'>You grab onto something else inside [target]'s [get_cavity(affected)] cavity by mistake, damaging it!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.damage += rand(3, 5)
@@ -298,7 +306,8 @@
user.visible_message(
"[user] starts putting \the [tool] inside [target]'s [get_cavity(affected)] cavity.",
"You start putting \the [tool] inside [target]'s [get_cavity(affected)] cavity."
"You start putting \the [tool] inside [target]'s [get_cavity(affected)] cavity.",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("The pain in your [target_zone] is living hell!")
return ..()
@@ -311,13 +320,14 @@
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>"
"<span class='notice'>You put \the [tool] inside [target]'s [get_cavity(affected)] cavity.</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
if((tool.w_class > get_max_wclass(affected) / 2 && prob(50) && !affected.is_robotic()))
user.visible_message(
"<span class='warning'>[user] tears some blood vessels trying to fit the object in the cavity!</span>",
"<span class='danger'>You tear some blood vessels trying to fit the object into the cavity!</span>",
"<span class='warning'>You hear some gentle tearing.</span>")
"<span class='warning'>You hear some gentle tearing.</span>", MESSAGE_TYPE_COMBAT)
affected.cause_internal_bleeding()
user.drop_item()
affected.hidden = tool
+7 -6
View File
@@ -22,17 +22,17 @@
time = 1.6 SECONDS
/datum/surgery_step/slime/cut_flesh/begin_step(mob/user, mob/living/simple_animal/slime/target, target_zone, obj/item/tool)
user.visible_message("[user] starts cutting through [target]'s flesh with \the [tool].", "You start cutting through [target]'s flesh with \the [tool].")
user.visible_message("[user] starts cutting through [target]'s flesh with \the [tool].", "You start cutting through [target]'s flesh with \the [tool].", chat_message_type = MESSAGE_TYPE_COMBAT)
return ..()
/datum/surgery_step/slime/cut_flesh/end_step(mob/living/user, mob/living/simple_animal/slime/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'> [user] cuts through [target]'s flesh with \the [tool].</span>",
"<span class='notice'> You cut through [target]'s flesh with \the [tool], revealing its silky innards.</span>")
"<span class='notice'> You cut through [target]'s flesh with \the [tool], revealing its silky innards.</span>", chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_CONTINUE
/datum/surgery_step/slime/cut_flesh/fail_step(mob/living/user, mob/living/simple_animal/slime/target, target_zone, obj/item/tool)
user.visible_message("<span class='warning'> [user]'s hand slips, tearing [target]'s flesh with \the [tool]!</span>", \
"<span class='warning'> Your hand slips, tearing [target]'s flesh with \the [tool]!</span>")
"<span class='warning'> Your hand slips, tearing [target]'s flesh with \the [tool]!</span>", chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_RETRY
/datum/surgery_step/slime/extract_core
@@ -43,7 +43,8 @@
/datum/surgery_step/slime/extract_core/begin_step(mob/user, mob/living/simple_animal/slime/target, target_zone, obj/item/tool)
user.visible_message(
"<span class='notice'>[user] begins to extract a core from [target].</span>",
"<span class='notice'>You begin to extract a core from [target]...</span>"
"<span class='notice'>You begin to extract a core from [target]...</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -52,7 +53,7 @@
if(slime.cores > 0)
slime.cores--
user.visible_message("<span class='notice'>[user] successfully extracts a core from [slime]!</span>",
"<span class='notice'>You successfully extract a core from [slime]. [slime.cores] core\s remaining.</span>")
"<span class='notice'>You successfully extract a core from [slime]. [slime.cores] core\s remaining.</span>", chat_message_type = MESSAGE_TYPE_COMBAT)
new slime.coretype(slime.loc)
@@ -67,5 +68,5 @@
/datum/surgery_step/slime/extract_core/fail_step(mob/living/user, mob/living/simple_animal/slime/target, target_zone, obj/item/tool)
user.visible_message("<span class='warning'> [user]'s hand slips, tearing [target]'s flesh with \the [tool]!</span>", \
"<span class='warning'> Your hand slips, tearing [target]'s flesh with \the [tool]!</span>")
"<span class='warning'> Your hand slips, tearing [target]'s flesh with \the [tool]!</span>", chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_RETRY
+4 -3
View File
@@ -18,7 +18,8 @@
/datum/surgery_step/insert_pill/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message(
"[user] begins to wedge \the [tool] in [target]'s [parse_zone(target_zone)].",
"<span class='notice'>You begin to wedge [tool] in [target]'s [parse_zone(target_zone)]...</span>"
"<span class='notice'>You begin to wedge [tool] in [target]'s [parse_zone(target_zone)]...</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -30,7 +31,7 @@
for(var/obj/item/reagent_containers/pill in target.contents) // Can't give them more than 4 dental implants.
dental_implants++
if(dental_implants >= 4)
user.visible_message("[user] pulls \the [tool] back out of [target]'s [parse_zone(target_zone)]!", "<span class='notice'>You pull \the [tool] back out of [target]'s [parse_zone(target_zone)], there wans't enough room...</span>")
user.visible_message("[user] pulls \the [tool] back out of [target]'s [parse_zone(target_zone)]!", "<span class='notice'>You pull \the [tool] back out of [target]'s [parse_zone(target_zone)], there wans't enough room...</span>", chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_INCOMPLETE
user.drop_item()
@@ -40,7 +41,7 @@
P.name = "Activate Pill ([tool.name])"
P.Grant(target)
user.visible_message("[user] wedges \the [tool] into [target]'s [parse_zone(target_zone)]!", "<span class='notice'>You wedge [tool] into [target]'s [parse_zone(target_zone)].</span>")
user.visible_message("[user] wedges \the [tool] into [target]'s [parse_zone(target_zone)]!", "<span class='notice'>You wedge [tool] into [target]'s [parse_zone(target_zone)].</span>", chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_CONTINUE
/datum/action/item_action/hands_free/activate_pill
+22 -11
View File
@@ -20,7 +20,8 @@
user.visible_message(
"[user] begins to cut through [target]'s [affected.encased] with \the [tool].",
"You begin to cut through [target]'s [affected.encased] with \the [tool]."
"You begin to cut through [target]'s [affected.encased] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Something hurts horribly in your [affected.name]!")
return ..()
@@ -30,7 +31,8 @@
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>"
"<span class='notice'> You have cut [target]'s [affected.encased] open with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.open = ORGAN_ORGANIC_ENCASED_OPEN
affected.fracture(silent = TRUE)
@@ -41,7 +43,8 @@
user.visible_message(
"<span class='warning'> [user]'s hand slips, cracking [target]'s [affected.encased] with \the [tool]!</span>" ,
"<span class='warning'> Your hand slips, cracking [target]'s [affected.encased] with \the [tool]!</span>"
"<span class='warning'> Your hand slips, cracking [target]'s [affected.encased] with \the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(20)
@@ -65,7 +68,8 @@
user.visible_message(
"[user] starts to force open the [affected.encased] in [target]'s [affected.name] with \the [tool].",
"You start to force open the [affected.encased] in [target]'s [affected.name] with \the [tool]."
"You start to force open the [affected.encased] in [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Something hurts horribly in your [affected.name]!")
return ..()
@@ -76,7 +80,8 @@
user.visible_message(
"<span class='notice'> [user] forces open [target]'s [affected.encased] with \the [tool].</span>",
"<span class='notice'> You force open [target]'s [affected.encased] with \the [tool].</span>"
"<span class='notice'> You force open [target]'s [affected.encased] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.open = ORGAN_ORGANIC_ENCASED_OPEN
@@ -88,7 +93,8 @@
user.visible_message(
"<span class='warning'> [user]'s hand slips, cracking [target]'s [affected.encased]!</span>",
"<span class='warning'> Your hand slips, cracking [target]'s [affected.encased]!</span>"
"<span class='warning'> Your hand slips, cracking [target]'s [affected.encased]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(20)
@@ -111,7 +117,8 @@
user.visible_message(
"[user] starts bending [target]'s [affected.encased] back into place with \the [tool].",
"You start bending [target]'s [affected.encased] back into place with \the [tool]."
"You start bending [target]'s [affected.encased] back into place with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Something hurts horribly in your [affected.name]!")
return ..()
@@ -121,7 +128,8 @@
user.visible_message(
"<span class='notice'>[user] bends [target]'s [affected.encased] back into place with \the [tool].</span>",
"<span class='notice'>You bend [target]'s [affected.encased] back into place with \the [tool].</span>"
"<span class='notice'>You bend [target]'s [affected.encased] back into place with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -131,7 +139,8 @@
user.visible_message(
"<span class='warning'>[user]'s hand slips, bending [target]'s [affected.encased] the wrong way!</span>",
"<span class='warning'>Your hand slips, bending [target]'s [affected.encased] the wrong way!</span>"
"<span class='warning'>Your hand slips, bending [target]'s [affected.encased] the wrong way!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(20)
@@ -153,7 +162,8 @@
user.visible_message(
"[user] starts applying \the [tool] to [target]'s [affected.encased].",
"You start applying \the [tool] to [target]'s [affected.encased]."
"You start applying \the [tool] to [target]'s [affected.encased].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Something hurts horribly in your [affected.name]!")
return ..()
@@ -163,7 +173,8 @@
user.visible_message(
"<span class='notice'> [user] applied \the [tool] to [target]'s [affected.encased].</span>",
"<span class='notice'> You applied \the [tool] to [target]'s [affected.encased].</span>"
"<span class='notice'> You applied \the [tool] to [target]'s [affected.encased].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.open = ORGAN_ORGANIC_OPEN
+33 -18
View File
@@ -27,7 +27,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts the incision on [target]'s [affected.name] with \the [tool].",
"You start the incision on [target]'s [affected.name] with \the [tool]."
"You start the incision on [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("You feel a horrible pain as if from a sharp knife in your [affected.name]!")
return ..()
@@ -36,7 +37,8 @@
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>"
"<span class='notice'> You have made an incision on [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.open = ORGAN_ORGANIC_OPEN
target.resume_bleeding()
@@ -46,7 +48,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'> [user]'s hand slips, slicing open [target]'s [affected.name] in a wrong spot with \the [tool]!</span>",
"<span class='warning'> Your hand slips, slicing open [target]'s [affected.name] in a wrong spot with \the [tool]!</span>"
"<span class='warning'> Your hand slips, slicing open [target]'s [affected.name] in a wrong spot with \the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(10)
return SURGERY_STEP_RETRY
@@ -68,7 +71,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts clamping bleeders in [target]'s [affected.name] with \the [tool].",
"You start clamping bleeders in [target]'s [affected.name] with \the [tool]."
"You start clamping bleeders in [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("The pain in your [affected.name] is maddening!")
return ..()
@@ -77,7 +81,8 @@
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>"
"<span class='notice'> You clamp bleeders in [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
spread_germs_to_organ(affected, user, tool)
return SURGERY_STEP_CONTINUE
@@ -86,7 +91,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'> [user]'s hand slips, tearing blood vessels and causing massive bleeding in [target]'s [affected.name] with \the [tool]!</span>",
"<span class='warning'> Your hand slips, tearing blood vessels and causing massive bleeding in [target]'s [affected.name] with \the [tool]!</span>"
"<span class='warning'> Your hand slips, tearing blood vessels and causing massive bleeding in [target]'s [affected.name] with \the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(10)
return SURGERY_STEP_RETRY
@@ -114,7 +120,7 @@
if(target_zone == BODY_ZONE_PRECISE_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]."
user.visible_message(msg, self_msg)
user.visible_message(msg, self_msg, chat_message_type = MESSAGE_TYPE_COMBAT)
affected.custom_pain("It feels like the skin on your [affected.name] is on fire!")
return ..()
@@ -128,7 +134,7 @@
if(target_zone == BODY_ZONE_PRECISE_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>"
user.visible_message(msg, self_msg)
user.visible_message(msg, self_msg, chat_message_type = MESSAGE_TYPE_COMBAT)
affected.open = ORGAN_ORGANIC_ENCASED_OPEN
return SURGERY_STEP_CONTINUE
@@ -142,7 +148,7 @@
if(target_zone == BODY_ZONE_PRECISE_GROIN)
msg = "<span class='warning'>[user]'s hand slips, damaging several organs [target]'s lower abdomen with \the [tool]</span>"
self_msg = "<span class='warning'> Your hand slips, damaging several organs [target]'s lower abdomen with \the [tool]!</span>"
user.visible_message(msg, self_msg)
user.visible_message(msg, self_msg, chat_message_type = MESSAGE_TYPE_COMBAT)
target.apply_damage(12, BRUTE, affected, sharp = TRUE)
return SURGERY_STEP_RETRY
@@ -164,7 +170,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] is beginning to cauterize the incision on [target]'s [affected.name] with \the [tool].",
"You are beginning to cauterize the incision on [target]'s [affected.name] with \the [tool]."
"You are beginning to cauterize the incision on [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Your [affected.name] is being burned!")
return ..()
@@ -173,7 +180,8 @@
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>"
"<span class='notice'>You cauterize the incision on [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.open = ORGAN_CLOSED
affected.germ_level = 0
@@ -183,7 +191,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'>[user]'s hand slips, leaving a small burn on [target]'s [affected.name] with \the [tool]!</span>",
"<span class='warning'>Your hand slips, leaving a small burn on [target]'s [affected.name] with \the [tool]!</span>"
"<span class='warning'>Your hand slips, leaving a small burn on [target]'s [affected.name] with \the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
target.apply_damage(3, BURN, affected)
return SURGERY_STEP_RETRY
@@ -196,7 +205,8 @@
user.visible_message(
"[user] is beginning to cauterize the incision on [target]'s [affected.name] with \the [tool].",
// give a little heads up to the surgeon that they're stopping the surgery prematurely in case that wasn't the intention.
"<span class='warning'>You are interrupting the current surgery</span>, beginning to cauterize the incision on [target]'s [affected.name] with \the [tool]."
"<span class='warning'>You are interrupting the current surgery</span>, beginning to cauterize the incision on [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Your [affected.name] is being burned!")
return ..()
@@ -217,7 +227,8 @@
/datum/surgery_step/generic/drill/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message(
"[user] begins to drill into the bone in [target]'s [parse_zone(target_zone)].",
"<span class='notice'>You begin to drill into the bone in [target]'s [parse_zone(target_zone)]...</span>"
"<span class='notice'>You begin to drill into the bone in [target]'s [parse_zone(target_zone)]...</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -229,7 +240,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'>[user]'s [tool] doesn't get a firm grip and tears at the bone in [target]'s [parse_zone(target_zone)]!</span>",
"<span class='warning'>Your [tool] doesn't get a firm grip and tears at the bone in [target]'s [parse_zone(target_zone)]!</span>"
"<span class='warning'>Your [tool] doesn't get a firm grip and tears at the bone in [target]'s [parse_zone(target_zone)]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(15)
@@ -251,7 +263,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] is beginning to amputate [target]'s [affected.name] with \the [tool].",
"You are beginning to cut through [target]'s [affected.amputation_point] with \the [tool]."
"You are beginning to cut through [target]'s [affected.amputation_point] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Your [affected.amputation_point] is being ripped apart!")
return ..()
@@ -260,7 +273,8 @@
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>"
"<span class='notice'> You amputate [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
add_attack_logs(user, target, "Surgically removed [affected.name]. INTENT: [uppertext(user.a_intent)]")//log it
@@ -279,7 +293,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'> [user]'s hand slips, sawing through the bone in [target]'s [affected.name] with \the [tool]!</span>",
"<span class='warning'> Your hand slips, sawing through the bone in [target]'s [affected.name] with \the [tool]!</span>"
"<span class='warning'> Your hand slips, sawing through the bone in [target]'s [affected.name] with \the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(30)
affected.fracture()
+4 -2
View File
@@ -32,7 +32,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts augmenting [affected] with [tool].",
"You start augmenting [affected] with [tool]."
"You start augmenting [affected] with [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
to_chat(user, "<span class='warning'>[tool] cannot be used to augment this limb!</span>")
@@ -45,7 +46,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='notice'>[user] has finished augmenting [affected] with [tool].</span>",
"<span class='notice'>You augment [affected] with [tool].</span>"
"<span class='notice'>You augment [affected] with [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
if(L.part)
+18 -9
View File
@@ -117,7 +117,8 @@
user.visible_message(
"[user] starts attaching [E.name] to [target]'s [E.amputation_point].",
"You start attaching [E.name] to [target]'s [E.amputation_point]."
"You start attaching [E.name] to [target]'s [E.amputation_point].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -125,7 +126,8 @@
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>"
"<span class='notice'>You have attached [target]'s [E.name] to the [E.amputation_point].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
attach_limb(user, target, E)
return SURGERY_STEP_CONTINUE
@@ -134,7 +136,8 @@
var/obj/item/organ/external/E = tool
user.visible_message(
"<span class='alert'>[user]'s hand slips, damaging [target]'s [E.amputation_point]!</span>",
"<span class='alert'>Your hand slips, damaging [target]'s [E.amputation_point]!</span>"
"<span class='alert'>Your hand slips, damaging [target]'s [E.amputation_point]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
target.apply_damage(10, BRUTE, null, sharp = TRUE)
return SURGERY_STEP_RETRY
@@ -194,7 +197,8 @@
var/obj/item/organ/external/E = target.get_organ(target_zone)
user.visible_message(
"[user] starts connecting tendons and muscles in [target]'s [E.amputation_point] with [tool].",
"You start connecting tendons and muscle in [target]'s [E.amputation_point]."
"You start connecting tendons and muscle in [target]'s [E.amputation_point].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -202,7 +206,8 @@
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>"
"<span class='notice'>You have connected tendons and muscles in [target]'s [E.amputation_point] with [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
E.properly_attached = TRUE
target.update_body()
@@ -214,7 +219,8 @@
var/obj/item/organ/external/E = target.get_organ(target_zone)
user.visible_message(
"<span class='alert'>[user]'s hand slips, damaging [target]'s [E.amputation_point]!</span>",
"<span class='alert'>Your hand slips, damaging [target]'s [E.amputation_point]!</span>"
"<span class='alert'>Your hand slips, damaging [target]'s [E.amputation_point]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
target.apply_damage(10, BRUTE, null, sharp = TRUE)
return SURGERY_STEP_RETRY
@@ -235,7 +241,8 @@
user.visible_message(
"[user] starts attaching \the [tool] to [target].",
"You start attaching \the [tool] to [target]."
"You start attaching \the [tool] to [target].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -243,7 +250,8 @@
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>"
"<span class='notice'>You have attached \the [tool] to [target].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
if(L.part)
@@ -273,7 +281,8 @@
/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='alert'>[user]'s hand slips, damaging [target]'s flesh!</span>",
"<span class='alert'>Your hand slips, damaging [target]'s flesh!</span>"
"<span class='alert'>Your hand slips, damaging [target]'s flesh!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
target.apply_damage(10, BRUTE, null, sharp = TRUE)
return SURGERY_STEP_RETRY
+58 -34
View File
@@ -244,13 +244,15 @@
if(!I.is_robotic() && !istype(tool, /obj/item/stack/nanopaste))
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>"
"<span class='notice'> You treat damage to [target]'s [I.name] with [tool_name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
I.damage = 0
else if(I.is_robotic() && istype (tool, /obj/item/stack/nanopaste))
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>"
"<span class='notice'> You treat damage to [target]'s [I.name] with [tool_name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
I.damage = 0
return SURGERY_STEP_CONTINUE
@@ -263,7 +265,8 @@
user.visible_message(
"<span class='warning'> [user]'s hand slips, getting messy and tearing the inside of [target]'s [parse_zone(target_zone)] with [tool]!</span>",
"<span class='warning'> Your hand slips, getting messy and tearing the inside of [target]'s [parse_zone(target_zone)] with [tool]!</span>"
"<span class='warning'> Your hand slips, getting messy and tearing the inside of [target]'s [parse_zone(target_zone)] with [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
var/dam_amt = 2
@@ -314,7 +317,8 @@
return SURGERY_BEGINSTEP_SKIP
user.visible_message(
"[user] starts to separate [target]'s [I] with [tool].",
"You start to separate [target]'s [I] with [tool] for removal."
"You start to separate [target]'s [I] with [tool] for removal.",
chat_message_type = MESSAGE_TYPE_COMBAT
)
var/mob/living/carbon/human/H = target
var/obj/item/organ/affected = H.get_organ(user.zone_selected)
@@ -329,13 +333,15 @@
if(!extracting || extracting.owner != target)
user.visible_message(
"<span class='notice'>[user] can't seem to extract anything from [target]'s [parse_zone(target_zone)]!</span>",
"<span class='notice'>You can't extract anything from [target]'s [parse_zone(target_zone)]!</span>"
"<span class='notice'>You can't extract anything from [target]'s [parse_zone(target_zone)]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
user.visible_message(
"<span class='notice'> [user] has separated and extracts [target]'s [extracting] with [tool].</span>",
"<span class='notice'> You have separated and extracted [target]'s [extracting] with [tool].</span>"
"<span class='notice'> You have separated and extracted [target]'s [extracting] with [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
add_attack_logs(user, target, "Surgically removed [extracting.name]. INTENT: [uppertext(user.a_intent)]")
@@ -357,19 +363,22 @@
if(affected)
user.visible_message(
"<span class='warning'> [user]'s hand slips, damaging [target]'s [affected.name] with [tool]!</span>",
"<span class='warning'> Your hand slips, damaging [target]'s [affected.name] with [tool]!</span>"
"<span class='warning'> Your hand slips, damaging [target]'s [affected.name] with [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(20)
else
user.visible_message(
"<span class='warning'> [user]'s hand slips, damaging [target]'s [parse_zone(target_zone)] with [tool]!</span>",
"<span class='warning'> Your hand slips, damaging [target]'s [parse_zone(target_zone)] with [tool]!</span>"
"<span class='warning'> Your hand slips, damaging [target]'s [parse_zone(target_zone)] with [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
else
user.visible_message(
"[user] can't seem to extract anything from [target]'s [parse_zone(target_zone)]!",
"<span class='notice'>You can't extract anything from [target]'s [parse_zone(target_zone)]!</span>"
"<span class='notice'>You can't extract anything from [target]'s [parse_zone(target_zone)]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -415,13 +424,15 @@
if(affected)
user.visible_message(
"[user] starts transplanting [tool] into [target]'s [affected.name].",
"You start transplanting [tool] into [target]'s [affected.name]."
"You start transplanting [tool] into [target]'s [affected.name].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Someone's rooting around in your [affected.name]!")
else
user.visible_message(
"[user] starts transplanting [tool] into [target]'s [parse_zone(target_zone)].",
"You start transplanting [tool] into [target]'s [parse_zone(target_zone)]."
"You start transplanting [tool] into [target]'s [parse_zone(target_zone)].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -444,17 +455,20 @@
if(affected)
user.visible_message("<span class='notice'> [user] has transplanted [tool] into [target]'s [affected.name].</span>",
"<span class='notice'> You have transplanted [tool] into [target]'s [affected.name].</span>")
"<span class='notice'> You have transplanted [tool] into [target]'s [affected.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT)
else
user.visible_message("<span class='notice'> [user] has transplanted [tool] into [target]'s [parse_zone(target_zone)].</span>",
"<span class='notice'> You have transplanted [tool] into [target]'s [parse_zone(target_zone)].</span>")
"<span class='notice'> You have transplanted [tool] into [target]'s [parse_zone(target_zone)].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_CONTINUE
/datum/surgery_step/internal/manipulate_organs/implant/fail_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message(
"<span class='warning'>[user]'s hand slips, damaging [tool]!</span>",
"<span class='warning'>Your hand slips, damaging [tool]!</span>"
"<span class='warning'>Your hand slips, damaging [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
var/obj/item/organ/internal/I = tool
if(istype(I) && !I.tough)
@@ -565,12 +579,14 @@
if(istype(C, /obj/item/reagent_containers/syringe))
user.visible_message(
"<span class='notice'> [user] has injected [tool] into [target]'s [I.name].</span>",
"<span class='notice'> You have injected [tool] into [target]'s [I.name].</span>"
"<span class='notice'> You have injected [tool] into [target]'s [I.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
else
user.visible_message(
"<span class='notice'> [user] has poured some of [tool] over [target]'s [I.name].</span>",
"<span class='notice'> You have poured some of [tool] over [target]'s [I.name].</span>"
"<span class='notice'> You have poured some of [tool] over [target]'s [I.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
R.reaction(target, REAGENT_INGEST, R.total_volume / C.amount_per_transfer_from_this)
@@ -611,7 +627,8 @@
user.visible_message(
"<span class='warning'> [user]'s hand slips, splashing the contents of [tool] all over [target][affected ? "'s [affected.name]" : ""] incision!</span>",
"<span class='warning'> Your hand slips, splashing the contents of [tool] all over [target][affected ? "'s [affected.name]" : ""] incision!</span>"
"<span class='warning'> Your hand slips, splashing the contents of [tool] all over [target][affected ? "'s [affected.name]" : ""] incision!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
// continue here since we want to keep moving in the surgery
return SURGERY_STEP_CONTINUE
@@ -628,14 +645,15 @@
/datum/surgery_step/internal/manipulate_organs/finish/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
var/mob/living/carbon/human/H = target
var/obj/item/organ/external/affected = target.get_organ(target_zone)
var/msg
var/self_msg
if(affected && affected.encased)
var/msg = "[user] starts bending [target]'s [affected.encased] back into place with [tool]."
var/self_msg = "You start bending [target]'s [affected.encased] back into place with [tool]."
user.visible_message(msg, self_msg)
msg = "[user] starts bending [target]'s [affected.encased] back into place with [tool]."
self_msg = "You start bending [target]'s [affected.encased] back into place with [tool]."
else
var/msg = "[user] starts pulling [target]'s skin back into place with [tool]."
var/self_msg = "You start pulling [target]'s skin back into place with [tool]."
user.visible_message(msg, self_msg)
msg = "[user] starts pulling [target]'s skin back into place with [tool]."
self_msg = "You start pulling [target]'s skin back into place with [tool]."
user.visible_message(msg, self_msg, chat_message_type = MESSAGE_TYPE_COMBAT)
if(H && affected)
affected.custom_pain("Something hurts horribly in your [affected.name]!")
@@ -654,7 +672,7 @@
msg = "<span class='notice'>[user] pulls [target]'s flesh back into place with [tool].</span>"
self_msg = "<span class='notice'>You pull [target]'s flesh back into place with [tool].</span>"
user.visible_message(msg, self_msg)
user.visible_message(msg, self_msg, chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_CONTINUE
/datum/surgery_step/internal/manipulate_organs/finish/fail_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -670,7 +688,7 @@
self_msg = "<span class='warning'> Your hand slips, tearing skin!</span>"
if(affected)
affected.receive_damage(20)
user.visible_message(msg, self_msg)
user.visible_message(msg, self_msg, chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_RETRY
//////////////////////////////////////////////////////////////////
@@ -730,14 +748,16 @@
/datum/surgery_step/cut_carapace/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("[user] starts the incision on [target]'s [target_zone] with [tool].", \
"You start the incision on [target]'s [target_zone] with [tool].")
"You start the incision on [target]'s [target_zone] with [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT)
return ..()
/datum/surgery_step/cut_carapace/end_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message(
"<span class='notice'> [user] has made an incision on [target]'s [target_zone] with [tool].</span>",
"<span class='notice'> You have made an incision on [target]'s [target_zone] with [tool].</span>"
"<span class='notice'> You have made an incision on [target]'s [target_zone] with [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -745,7 +765,8 @@
user.visible_message(
"<span class='warning'>[user]'s hand slips, slicing open [target]'s [target_zone] in a wrong spot with [tool]!</span>",
"<span class='warning'>Your hand slips, slicing open [target]'s [target_zone] in a wrong spot with [tool]!</span>"
"<span class='warning'>Your hand slips, slicing open [target]'s [target_zone] in a wrong spot with [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
@@ -770,7 +791,7 @@
if(target_zone == BODY_ZONE_PRECISE_GROIN)
msg = "[user] starts to pry open the incision and rearrange the organs in [target]'s lower abdomen with [tool]."
self_msg = "You start to pry open the incision and rearrange the organs in [target]'s lower abdomen with [tool]."
user.visible_message(msg, self_msg)
user.visible_message(msg, self_msg, chat_message_type = MESSAGE_TYPE_COMBAT)
return ..()
/datum/surgery_step/retract_carapace/end_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -782,7 +803,7 @@
if(target_zone == BODY_ZONE_PRECISE_GROIN)
msg = "<span class='notice'> [user] keeps the incision open on [target]'s lower abdomen with [tool].</span>"
self_msg = "<span class='notice'> You keep the incision open on [target]'s lower abdomen with [tool].</span>"
user.visible_message(msg, self_msg)
user.visible_message(msg, self_msg, chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_CONTINUE
/datum/surgery_step/generic/retract_carapace/fail_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -794,7 +815,7 @@
if(target_zone == BODY_ZONE_PRECISE_GROIN)
msg = "<span class='warning'> [user]'s hand slips, damaging several organs in [target]'s lower abdomen with [tool]</span>"
self_msg = "<span class='warning'> Your hand slips, damaging several organs in [target]'s lower abdomen with [tool]!</span>"
user.visible_message(msg, self_msg)
user.visible_message(msg, self_msg, chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_RETRY
// redefine cauterize for every step because of course it relies on get_organ()
@@ -825,7 +846,8 @@
var/zone = zone_name(target_zone)
user.visible_message(
"[user] is beginning to cauterize the incision on [target]'s [zone] with \the [tool].",
"You are beginning to cauterize the incision on [target]'s [zone] with \the [tool]."
"You are beginning to cauterize the incision on [target]'s [zone] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
to_chat(user, "<span class='userdanger'>Your [zone] is being burned!</span>") // No custom pain because xenos are special
return ..()
@@ -834,7 +856,8 @@
var/zone = zone_name(target_zone)
user.visible_message(
"<span class='notice'>[user] cauterizes the incision on [target]'s [zone] with \the [tool].</span>",
"<span class='notice'>You cauterize the incision on [target]'s [zone] with \the [tool].</span>"
"<span class='notice'>You cauterize the incision on [target]'s [zone] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -842,7 +865,8 @@
var/zone = zone_name(target_zone)
user.visible_message(
"<span class='warning'>[user]'s hand slips, leaving a small burn on [target]'s [zone] with \the [tool]!</span>",
"<span class='warning'>Your hand slips, leaving a small burn on [target]'s [zone] with \the [tool]!</span>"
"<span class='warning'>Your hand slips, leaving a small burn on [target]'s [zone] with \the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
target.apply_damage(3, BURN, target_zone)
return SURGERY_STEP_RETRY
+27 -13
View File
@@ -90,7 +90,8 @@
user.visible_message(
"[user] starts patching the damaged vein in [target]'s [affected.name] with \the [tool].",
"You start patching the damaged vein in [target]'s [affected.name] with \the [tool]."
"You start patching the damaged vein in [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("The pain in your [affected.name] is unbearable!")
return ..()
@@ -100,7 +101,8 @@
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>"
"<span class='notice'> You have patched the damaged vein in [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.fix_internal_bleeding()
@@ -114,7 +116,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'>[user]'s hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>",
"<span class='warning'>Your hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>"
"<span class='warning'>Your hand slips, smearing [tool] in the incision in [target]'s [affected.name]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(5, 0)
@@ -139,7 +142,8 @@
user.visible_message(
"[user] starts to treat the scorched tissue in [target]'s [affected.name] with [tool].",
"You start to treat the scorched tissue in [target]'s [affected.name] with [tool]."
"You start to treat the scorched tissue in [target]'s [affected.name] with [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Your [affected.name] flares with agony as its burn is touched!")
@@ -156,7 +160,8 @@
user.visible_message(
"<span class='notice'>[user] finishes treating affected tissue in [target]'s [affected.name].</span>",
"<span class='notice'>You finish treating affected tissue in [target]'s [affected.name] with [tool].</span>"
"<span class='notice'>You finish treating affected tissue in [target]'s [affected.name] with [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -169,7 +174,8 @@
user.visible_message(
"<span class='warning'>[user]'s hand slips, applying [tool] in the wrong place on [target]'s [affected.name]!</span>",
"<span class='warning'>Your hand slips, applying [tool] in the wrong place on [target]'s [affected.name]!</span>"
"<span class='warning'>Your hand slips, applying [tool] in the wrong place on [target]'s [affected.name]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
@@ -191,7 +197,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts cutting away necrotic tissue in [target]'s [affected.name] with \the [tool].",
"You start cutting away necrotic tissue in [target]'s [affected.name] with \the [tool]."
"You start cutting away necrotic tissue in [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("The pain in [affected.name] is unbearable!")
return ..()
@@ -200,7 +207,8 @@
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>"
"<span class='notice'> You have cut away necrotic tissue in [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.open = ORGAN_ORGANIC_OPEN
@@ -210,7 +218,8 @@
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 [tool]!</span>",
"<span class='warning'>Your hand slips, slicing an artery inside [target]'s [affected.name] with [tool]!</span>"
"<span class='warning'>Your hand slips, slicing an artery inside [target]'s [affected.name] with [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.receive_damage(20)
@@ -240,7 +249,9 @@
if(!container.reagents.has_reagent("mitocholide"))
user.visible_message(
"[user] looks at \the [tool] and ponders.",
"You are not sure if \the [tool] contains the mitocholide necessary to treat the necrosis.")
"You are not sure if \the [tool] contains the mitocholide necessary to treat the necrosis.",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return FALSE
/datum/surgery_step/treat_necrosis/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -253,7 +264,8 @@
user.visible_message(
"[user] starts applying medication to the affected tissue in [target]'s [affected.name] with \the [tool].",
"You start applying medication to the affected tissue in [target]'s [affected.name] with \the [tool]."
"You start applying medication to the affected tissue in [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Something in your [affected.name] is causing you a lot of pain!")
return ..()
@@ -279,7 +291,8 @@
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>"
"<span class='notice'> You apply [trans] units of the solution to affected tissue in [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
@@ -297,7 +310,8 @@
user.visible_message(
"<span class='warning'>[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='warning'>Your hand slips, applying [trans] units of the solution to the wrong place in [target]'s [affected.name] with the [tool]!</span>"
"<span class='warning'>Your hand slips, applying [trans] units of the solution to the wrong place in [target]'s [affected.name] with the [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
//no damage or anything, just wastes medicine
+17 -4
View File
@@ -16,7 +16,11 @@
time = 6.4 SECONDS
/datum/surgery_step/reshape_face/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("[user] begins to alter [target]'s appearance.", "<span class='notice'>You begin to alter [target]'s appearance...</span>")
user.visible_message(
"[user] begins to alter [target]'s appearance.",
"<span class='notice'>You begin to alter [target]'s appearance...</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
/datum/surgery_step/reshape_face/end_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -24,7 +28,11 @@
var/species_names = target.dna.species.name
if(head.status & ORGAN_DISFIGURED)
head.status &= ~ORGAN_DISFIGURED
user.visible_message("[user] successfully restores [target]'s appearance!", "<span class='notice'>You successfully restore [target]'s appearance.</span>")
user.visible_message(
"[user] successfully restores [target]'s appearance!",
"<span class='notice'>You successfully restore [target]'s appearance.</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
else
var/list/names = list()
var/list_size = 10
@@ -74,7 +82,11 @@
var/oldname = target.real_name
target.real_name = chosen_name
var/newname = target.real_name //something about how the code handles names required that I use this instead of target.real_name
user.visible_message("[user] alters [oldname]'s appearance completely, [target.p_they()] [target.p_are()] now [newname]!", "<span class='notice'>You alter [oldname]'s appearance completely, [target.p_they()] [target.p_are()] now [newname].</span>")
user.visible_message(
"[user] alters [oldname]'s appearance completely, [target.p_they()] [target.p_are()] now [newname]!",
"<span class='notice'>You alter [oldname]'s appearance completely, [target.p_they()] [target.p_are()] now [newname].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
target.sec_hud_set_ID()
return SURGERY_STEP_CONTINUE
@@ -83,7 +95,8 @@
var/obj/item/organ/external/head/head = target.get_organ(target_zone)
user.visible_message(
"<span class='warning'> [user]'s hand slips, tearing skin on [target]'s face with [tool]!</span>",
"<span class='warning'> Your hand slips, tearing skin on [target]'s face with [tool]!</span>"
"<span class='warning'> Your hand slips, tearing skin on [target]'s face with [tool]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
target.apply_damage(10, BRUTE, head, sharp = TRUE)
return SURGERY_STEP_RETRY
@@ -69,7 +69,11 @@
H.clear_alert("embeddedobject")
if(objects > 0)
user.visible_message("[user] successfully removes [objects] object\s from [H]'s [parse_zone(user.zone_selected)]!", "<span class='notice'>You successfully remove [objects] object\s from [H]'s [L.name].</span>")
user.visible_message(
"[user] successfully removes [objects] object\s from [H]'s [parse_zone(user.zone_selected)]!",
"<span class='notice'>You successfully remove [objects] object\s from [H]'s [L.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
else
to_chat(user, "<span class='warning'>You find no objects embedded in [H]'s [parse_zone(user.zone_selected)]!</span>")
+76 -38
View File
@@ -122,7 +122,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts to unscrew the maintenance hatch on [target]'s [affected.name] with \the [tool].",
"You start to unscrew the maintenance hatch on [target]'s [affected.name] with \the [tool]."
"You start to unscrew the maintenance hatch on [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -130,7 +131,8 @@
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>"
"<span class='notice'> You have opened the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.open = ORGAN_SYNTHETIC_LOOSENED
return SURGERY_STEP_CONTINUE
@@ -139,7 +141,8 @@
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>"
"<span class='warning'> Your [tool] slips, failing to unscrew [target]'s [affected.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
@@ -157,7 +160,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts to pry open the maintenance hatch on [target]'s [affected.name] with \the [tool].",
"You start to pry open the maintenance hatch on [target]'s [affected.name] with \the [tool]."
"You start to pry open the maintenance hatch on [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -165,7 +169,8 @@
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>"
"<span class='notice'> You open the maintenance hatch on [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.open = ORGAN_SYNTHETIC_OPEN
return SURGERY_STEP_CONTINUE
@@ -174,7 +179,8 @@
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>"
"<span class='warning'> Your [tool] slips, failing to open the hatch on [target]'s [affected.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
@@ -192,7 +198,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] begins to close and secure the hatch on [target]'s [affected.name] with \the [tool].",
"You begin to close and secure the hatch on [target]'s [affected.name] with \the [tool]."
"You begin to close and secure the hatch on [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -200,7 +207,8 @@
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>"
"<span class='notice'> You close and secure the hatch on [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
tool.play_tool_sound(target)
affected.open = ORGAN_CLOSED
@@ -208,8 +216,10 @@
/datum/surgery_step/robotics/external/close_hatch/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
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.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>",
chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_RETRY
/datum/surgery_step/robotics/external/close_hatch/premature
@@ -219,7 +229,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] begins to close and secure the hatch on [target]'s [affected.name] with \the [tool].",
"<span class'warning'>You are interrupting the current surgery</span>, beginning to close and secure the hatch on [target]'s [affected.name] with \the [tool]."
"<span class'warning'>You are interrupting the current surgery</span>, beginning to close and secure the hatch on [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -248,7 +259,8 @@
C.use(3)
user.visible_message(
"[user] begins to splice new cabling into [target]'s [affected.name].",
"You begin to splice new cabling into [target]'s [affected.name]."
"You begin to splice new cabling into [target]'s [affected.name].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -258,7 +270,8 @@
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>"
"<span class='notice'> You finishes splicing new cable into [target]'s [affected.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.heal_damage(0, rand(30, 50), 1, 1)
if(affected.burn_dam)
@@ -270,7 +283,8 @@
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>"
"<span class='warning'> You cause a short circuit in [target]'s [affected.name]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
target.apply_damage(rand(5, 10), BURN, affected)
return SURGERY_STEP_RETRY
@@ -292,7 +306,8 @@
return SURGERY_BEGINSTEP_SKIP
user.visible_message(
"[user] begins to patch damage to [target]'s [affected.name]'s support structure with \the [tool].",
"You begin to patch damage to [target]'s [affected.name]'s support structure with \the [tool]."
"You begin to patch damage to [target]'s [affected.name]'s support structure with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -301,7 +316,8 @@
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>"
"<span class='notice'> You finish patching damage to [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.heal_damage(rand(30, 50), 0, 1, 1)
affected.status &= ~ORGAN_DISFIGURED
@@ -315,7 +331,8 @@
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>"
"<span class='warning'>Your [tool.name] slips, damaging the internal structure of [target]'s [affected.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
target.apply_damage(rand(5, 10), BURN, affected)
return SURGERY_STEP_RETRY
@@ -355,7 +372,8 @@
if(I && I.damage && I.is_robotic())
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."
"You start mending the damage to [target]'s [I.name]'s mechanisms.",
chat_message_type = MESSAGE_TYPE_COMBAT
)
found_damaged_organ = TRUE
@@ -376,7 +394,8 @@
if(I.is_robotic())
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>"
"<span class='notice'> You repair [target]'s [I.name] with [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
I.damage = 0
I.surgeryize()
@@ -385,8 +404,10 @@
/datum/surgery_step/robotics/manipulate_robotic_organs/mend/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
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.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>",
chat_message_type = MESSAGE_TYPE_COMBAT)
target.adjustToxLoss(5)
affected.receive_damage(5)
@@ -441,14 +462,16 @@
I.insert(target)
user.visible_message(
"<span class='notice'> [user] has reattached [target]'s [I].</span>",
"<span class='notice'> You have reattached [target]'s [I].</span>"
"<span class='notice'> You have reattached [target]'s [I].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
/datum/surgery_step/robotics/manipulate_robotic_organs/implant/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message(
"<span class='warning'> [user]'s hand slips, disconnecting \the [tool].</span>",
"<span class='warning'> Your hand slips, disconnecting \the [tool].</span>"
"<span class='warning'> Your hand slips, disconnecting \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
@@ -479,7 +502,8 @@
return SURGERY_BEGINSTEP_SKIP
user.visible_message(
"[user] starts to decouple [target]'s [I] with \the [tool].",
"You start to decouple [target]'s [I] with \the [tool]."
"You start to decouple [target]'s [I] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("The pain in your [affected.name] is living hell!")
@@ -492,13 +516,15 @@
if(!I || I.owner != target)
user.visible_message(
"[user] can't seem to extract anything from [target]'s [parse_zone(target_zone)]!",
"<span class='notice'>You can't extract anything from [target]'s [parse_zone(target_zone)]!</span>"
"<span class='notice'>You can't extract anything from [target]'s [parse_zone(target_zone)]!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE
user.visible_message(
"<span class='notice'> [user] has decoupled [target]'s [I] with \the [tool].</span>",
"<span class='notice'> You have decoupled [target]'s [I] with \the [tool].</span>"
"<span class='notice'> You have decoupled [target]'s [I] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
add_attack_logs(user, target, "Surgically removed [I.name]. INTENT: [uppertext(user.a_intent)]")
@@ -515,7 +541,8 @@
/datum/surgery_step/robotics/manipulate_robotic_organs/extract/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message(
"<span class='warning'> [user]'s hand slips, disconnecting \the [tool].</span>",
"<span class='warning'> Your hand slips, disconnecting \the [tool].</span>"
"<span class='warning'> Your hand slips, disconnecting \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
@@ -571,7 +598,8 @@
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>"
"<span class='notice'> You have installed \the [tool] into [target]'s [affected.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
var/obj/item/mmi/M = tool
@@ -583,7 +611,8 @@
/datum/surgery_step/robotics/manipulate_robotic_organs/install_mmi/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message(
"<span class='warning'> [user]'s hand slips!</span>",
"<span class='warning'> Your hand slips!</span>"
"<span class='warning'> Your hand slips!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
@@ -600,7 +629,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] starts to decouple [target]'s [affected.name] with \the [tool].",
"You start to decouple [target]'s [affected.name] with \the [tool]."
"You start to decouple [target]'s [affected.name] with \the [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.custom_pain("Your [affected.amputation_point] is being ripped apart!")
@@ -610,7 +640,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"<span class='notice'> [user] has decoupled [target]'s [affected.name] with \the [tool].</span>",
"<span class='notice'> You have decoupled [target]'s [affected.name] with \the [tool].</span>"
"<span class='notice'> You have decoupled [target]'s [affected.name] with \the [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
@@ -626,7 +657,8 @@
user.visible_message(
"<span class='warning'> [user]'s hand slips!</span>",
"<span class='warning'> Your hand slips!</span>"
"<span class='warning'> Your hand slips!</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_RETRY
@@ -639,7 +671,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message(
"[user] begins to reprogram the appearance of [target]'s [affected.name] with [tool].",
"You begin to reprogram the appearance of [target]'s [affected.name] with [tool]."
"You begin to reprogram the appearance of [target]'s [affected.name] with [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -658,15 +691,18 @@
target.UpdateDamageIcon()
user.visible_message(
"<span class='notice'> [user] reprograms the appearance of [target]'s [affected.name] with [tool].</span>",
"<span class='notice'> You reprogram the appearance of [target]'s [affected.name] with [tool].</span>"
"<span class='notice'> You reprogram the appearance of [target]'s [affected.name] with [tool].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
affected.open = ORGAN_CLOSED
return SURGERY_STEP_CONTINUE
/datum/surgery_step/robotics/external/customize_appearance/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
var/obj/item/organ/external/affected = target.get_organ(target_zone)
user.visible_message("<span class='warning'> [user]'s [tool.name] slips, failing to reprogram [target]'s [affected.name].</span>",
"<span class='warning'> Your [tool.name] slips, failing to reprogram [target]'s [affected.name].</span>")
user.visible_message(
"<span class='warning'> [user]'s [tool.name] slips, failing to reprogram [target]'s [affected.name].</span>",
"<span class='warning'> Your [tool.name] slips, failing to reprogram [target]'s [affected.name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT)
return SURGERY_STEP_RETRY
/datum/surgery/robotics/reconfigure_id
@@ -687,7 +723,8 @@
/datum/surgery_step/robotics/edit_serial/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message(
"[user] begins to edit [target]'s identity parameters with [tool].",
"You begin to alter [target]'s identity parameters with [tool]."
"You begin to alter [target]'s identity parameters with [tool].",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return ..()
@@ -714,6 +751,7 @@
target.gender = new_gender
user.visible_message(
"<span class='notice'>[user] edits [old_name]'s identity parameters with [tool]; [target.p_they()] [target.p_are()] now known as [new_name].</span>",
"<span class='notice'>You alter [old_name]'s identity parameters with [tool]; [target.p_they()] [target.p_are()] now known as [new_name].</span>"
"<span class='notice'>You alter [old_name]'s identity parameters with [tool]; [target.p_they()] [target.p_are()] now known as [new_name].</span>",
chat_message_type = MESSAGE_TYPE_COMBAT
)
return SURGERY_STEP_CONTINUE