From 2c0700aaf8dcb24391079028e6717dfb24cf6c53 Mon Sep 17 00:00:00 2001
From: Toastical <20125180+Toastical@users.noreply.github.com>
Date: Thu, 19 Jun 2025 21:13:50 +0300
Subject: [PATCH] migrated morgue tray and crematorium (#29579)
---
code/game/objects/structures/morgue.dm | 28 ++++++++++++--------------
1 file changed, 13 insertions(+), 15 deletions(-)
diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm
index ee9d664cff9..465bbc0731c 100644
--- a/code/game/objects/structures/morgue.dm
+++ b/code/game/objects/structures/morgue.dm
@@ -37,6 +37,7 @@
anchored = TRUE
var/open_sound = 'sound/items/deconstruct.ogg'
var/status
+ new_attack_chain = TRUE
/obj/structure/morgue/Initialize(mapload)
. = ..()
@@ -172,17 +173,12 @@
return ..()
attack_hand(user)
-/obj/structure/morgue/attackby__legacy__attackchain(P as obj, mob/user as mob, params)
- if(is_pen(P))
- var/t = rename_interactive(user, P)
-
- if(isnull(t))
- return
-
+/obj/structure/morgue/item_interaction(mob/living/user, obj/item/used, list/modifiers)
+ if(is_pen(used))
+ rename_interactive(user, used)
update_icon(UPDATE_OVERLAYS)
add_fingerprint(user)
- return
-
+ return ITEM_INTERACT_COMPLETE
return ..()
/obj/structure/morgue/wirecutter_act(mob/user)
@@ -340,6 +336,7 @@ GLOBAL_LIST_EMPTY(crematoriums)
var/repairstate = CREMATOR_OPERATIONAL // Repairstate 0 is DESTROYED, 1 has the igniter applied but needs welding (IN_REPAIR), 2 is OPERATIONAL
var/locked = FALSE
var/open_sound = 'sound/items/deconstruct.ogg'
+ new_attack_chain = TRUE
/obj/structure/crematorium/Initialize(mapload)
. = ..()
@@ -419,19 +416,20 @@ GLOBAL_LIST_EMPTY(crematoriums)
GLOB.crematoriums += src
return TRUE
-/obj/structure/crematorium/attackby__legacy__attackchain(obj/item/P, mob/user, params)
- if(is_pen(P))
- rename_interactive(user, P)
+/obj/structure/crematorium/item_interaction(mob/living/user, obj/item/used, list/modifiers)
+ if(is_pen(used))
+ rename_interactive(user, used)
add_fingerprint(user)
- return
- if(istype(P, /obj/item/assembly/igniter))
+ return ITEM_INTERACT_COMPLETE
+ if(istype(used, /obj/item/assembly/igniter))
if(repairstate == CREMATOR_DESTROYED)
user.visible_message("[user] replaces [src]'s igniter.", "You replace [src]'s damaged igniter. Now it just needs its paneling welded.")
repairstate = CREMATOR_IN_REPAIR
desc = "A broken human incinerator. No longer works well on barbeque nights. It requires its paneling to be welded to function."
- qdel(P)
+ qdel(used)
else
to_chat(user, "[src] does not need its igniter replaced.")
+ return ITEM_INTERACT_COMPLETE
return ..()
/obj/structure/crematorium/relaymove(mob/user as mob)