From 8de062adbbdc4ed5ade398dec4501bb662e49b10 Mon Sep 17 00:00:00 2001
From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com>
Date: Mon, 13 Jul 2020 19:46:51 +0100
Subject: [PATCH] fix
---
code/game/objects/items/cards_ids.dm | 19 ++++++++++---------
code/modules/mining/mint.dm | 11 +++++------
2 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm
index 60e869815b..9a371e3de0 100644
--- a/code/game/objects/items/cards_ids.dm
+++ b/code/game/objects/items/cards_ids.dm
@@ -250,15 +250,13 @@
return ..()
/obj/item/card/id/proc/insert_money(obj/item/I, mob/user, physical_currency)
+ if(!registered_account)
+ to_chat(user, "[src] doesn't have a linked account to deposit [I] into!")
+ return
var/cash_money = I.get_item_credit_value()
if(!cash_money)
to_chat(user, "[I] doesn't seem to be worth anything!")
return
-
- if(!registered_account)
- to_chat(user, "[src] doesn't have a linked account to deposit [I] into!")
- return
-
registered_account.adjust_money(cash_money)
if(physical_currency)
to_chat(user, "You stuff [I] into [src]. It disappears in a small puff of bluespace smoke, adding [cash_money] credits to the linked account.")
@@ -269,17 +267,20 @@
qdel(I)
/obj/item/card/id/proc/mass_insert_money(list/money, mob/user)
+ if(!registered_account)
+ to_chat(user, "[src] doesn't have a linked account to deposit into!")
+ return FALSE
+
if (!money || !money.len)
return FALSE
var/total = 0
for (var/obj/item/physical_money in money)
- var/cash_money = physical_money.get_item_credit_value()
+ total += physical_money.get_item_credit_value()
+ CHECK_TICK
- total += cash_money
-
- registered_account.adjust_money(cash_money)
+ registered_account.adjust_money(total)
QDEL_LIST(money)
diff --git a/code/modules/mining/mint.dm b/code/modules/mining/mint.dm
index e89bbef58d..84c6c416b7 100644
--- a/code/modules/mining/mint.dm
+++ b/code/modules/mining/mint.dm
@@ -11,7 +11,7 @@
var/chosen = /datum/material/iron //which material will be used to make coins
var/coinsToProduce = 10
speed_process = TRUE
-
+ var/obj/item/storage/bag/money/bag_to_use
/obj/machinery/mineral/mint/Initialize()
. = ..()
@@ -118,9 +118,8 @@
temp_list[chosen] = 400
if(T)
var/obj/item/O = new /obj/item/coin(src)
- var/obj/item/storage/bag/money/B = locate(/obj/item/storage/bag/money, T)
O.set_custom_materials(temp_list)
- if(!B)
- B = new /obj/item/storage/bag/money(src)
- unload_mineral(B)
- O.forceMove(B)
+ if(QDELETED(bag_to_use) || (bag_to_use.loc != T) || !SEND_SIGNAL(bag_to_use, COMSIG_TRY_STORAGE_INSERT, O, null, TRUE)) //important to send the signal so we don't overfill the bag.
+ bag_to_use = new(src) //make a new bag if we can't find or use the old one.
+ unload_mineral(bag_to_use) //just forcemove memes.
+ O.forceMove(bag_to_use) //don't bother sending the signal, the new bag is empty and all that.