From 1d3847d5e5fc0a00dde18a713ca5161590443d3a Mon Sep 17 00:00:00 2001 From: Zxaber <37497534+zxaber@users.noreply.github.com> Date: Sun, 17 Nov 2019 20:04:29 -0800 Subject: [PATCH 1/3] Fixed --- code/game/objects/items/stacks/stack.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index 285647aaec7..b71b1a22073 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -413,6 +413,8 @@ if(!use(amount, TRUE, FALSE)) return FALSE var/obj/item/stack/F = new type(user? user : drop_location(), amount, FALSE) + for(var/i in F.custom_materials) + custom_materials[i] -= F.custom_materials[i] . = F F.copy_evidences(src) if(user) From d0d5a2adfbc57531fc00c8adaa67aa2b67a88d50 Mon Sep 17 00:00:00 2001 From: Zxaber <37497534+zxaber@users.noreply.github.com> Date: Sun, 17 Nov 2019 22:29:23 -0800 Subject: [PATCH 2/3] more fix --- code/game/objects/items/stacks/stack.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index b71b1a22073..c7b05840f9f 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -225,6 +225,8 @@ if(O) O.setDir(usr.dir) use(R.req_amount * multiplier) + for(var/i in custom_materials) + custom_materials[i] = amount * mats_per_stack if(R.applies_mats && custom_materials && custom_materials.len) var/list/used_materials = list() From 58f9a8202003cb7e5ece80a2202d4fb118936fdc Mon Sep 17 00:00:00 2001 From: Zxaber <37497534+zxaber@users.noreply.github.com> Date: Sun, 17 Nov 2019 22:35:06 -0800 Subject: [PATCH 3/3] Wait, this is better in the use proc --- code/game/objects/items/stacks/stack.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index c7b05840f9f..f29f8fdeb67 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -225,8 +225,6 @@ if(O) O.setDir(usr.dir) use(R.req_amount * multiplier) - for(var/i in custom_materials) - custom_materials[i] = amount * mats_per_stack if(R.applies_mats && custom_materials && custom_materials.len) var/list/used_materials = list() @@ -317,6 +315,8 @@ amount -= used if(check) zero_amount() + for(var/i in custom_materials) + custom_materials[i] = amount * mats_per_stack update_icon() update_weight() return TRUE