From 19af733ad2358d2ca4fe8d0f70373f49fd705d03 Mon Sep 17 00:00:00 2001 From: Silverplate <118299273+silverplatedelta@users.noreply.github.com> Date: Tue, 25 Apr 2023 17:00:37 -0400 Subject: [PATCH] Medical stacks (#20824) * Fixes gauze upgrading * Fixes accidental line removal * Unessassary boolean * shortens code, adds flag to /stack/medical * Clarity and proper inhertance --- code/game/objects/items/stacks/medical_packs.dm | 1 + code/game/objects/items/stacks/stack.dm | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/stacks/medical_packs.dm b/code/game/objects/items/stacks/medical_packs.dm index ba48b3b3b60..b97266aabd7 100644 --- a/code/game/objects/items/stacks/medical_packs.dm +++ b/code/game/objects/items/stacks/medical_packs.dm @@ -9,6 +9,7 @@ throw_range = 7 resistance_flags = FLAMMABLE max_integrity = 40 + parent_stack = TRUE var/heal_brute = 0 var/heal_burn = 0 var/self_delay = 20 diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index 1d4861b5c28..4c90397ecc1 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -31,6 +31,8 @@ var/table_type /// If this stack has a dynamic icon_state based on amount / max_amount var/dynamic_icon_state = FALSE + /// if true, then this item can't stack with subtypes + var/parent_stack = FALSE /obj/item/stack/Initialize(mapload, new_amount, merge = TRUE) . = ..() @@ -360,7 +362,7 @@ use(amount) /obj/item/stack/attackby(obj/item/W, mob/user, params) - if(istype(W, merge_type)) + if((!parent_stack && istype(W, merge_type)) || (parent_stack && W.type == type)) var/obj/item/stack/S = W merge(S) to_chat(user, "Your [S.name] stack now contains [S.get_amount()] [S.singular_name]\s.")