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/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm
index d33ecedf0a..9fbedb33cd 100644
--- a/code/game/objects/items/robot/robot_upgrades.dm
+++ b/code/game/objects/items/robot/robot_upgrades.dm
@@ -566,7 +566,7 @@
/obj/item/borg/upgrade/expand/deactivate(mob/living/silicon/robot/R, user = usr)
. = ..()
- if (.)
+ if (. && R.hasExpanded)
R.resize = 0.5
R.hasExpanded = FALSE
R.update_transform()
diff --git a/code/modules/integrated_electronics/subtypes/output.dm b/code/modules/integrated_electronics/subtypes/output.dm
index 47b6e151cb..efd98c4d50 100644
--- a/code/modules/integrated_electronics/subtypes/output.dm
+++ b/code/modules/integrated_electronics/subtypes/output.dm
@@ -35,7 +35,7 @@
stuff_to_display = replacetext("[I.data]", eol , "
")
/obj/item/integrated_circuit/output/screen/large
- name = "large screen"
+ name = "medium screen"
desc = "Takes any data type as an input and displays it to anybody near the device when pulsed. \
It can also be examined to see the last thing it displayed."
icon_state = "screen_medium"
@@ -51,15 +51,29 @@
else
if(!isturf(assembly.loc))
return
+
+ var/atom/host = assembly || src
+ var/list/mobs = list()
+ for(var/mob/M in range(0, get_turf(src)))
+ mobs += M
+ to_chat(mobs, "[icon2html(host.icon, world, host.icon_state)] flashes a message: [stuff_to_display]")
+ host.investigate_log("displayed \"[html_encode(stuff_to_display)]\" as [type].", INVESTIGATE_CIRCUIT)
- var/list/nearby_things = range(0, get_turf(src))
- for(var/mob/M in nearby_things)
- var/obj/O = assembly ? assembly : src
- to_chat(M, "[icon2html(O.icon, world, O.icon_state)] [stuff_to_display]")
- if(assembly)
- assembly.investigate_log("displayed \"[html_encode(stuff_to_display)]\" with [type].", INVESTIGATE_CIRCUIT)
- else
- investigate_log("displayed \"[html_encode(stuff_to_display)]\" as [type].", INVESTIGATE_CIRCUIT)
+/obj/item/integrated_circuit/output/screen/extralarge // the subtype is called "extralarge" because tg brought back medium screens and they named the subtype /screen/large
+ name = "large screen"
+ desc = "Takes any data type as an input and displays it to the user upon examining, and to all nearby beings when pulsed."
+ icon_state = "screen_large"
+ power_draw_per_use = 40
+ cooldown_per_use = 10
+
+/obj/item/integrated_circuit/output/screen/extralarge/do_work()
+ ..()
+ var/atom/host = assembly || src
+ var/list/mobs = list()
+ for(var/mob/M in viewers(7, get_turf(src)))
+ mobs += M
+ to_chat(mobs, "[icon2html(host.icon, world, host.icon_state)] flashes a message: [stuff_to_display]")
+ host.investigate_log("displayed \"[html_encode(stuff_to_display)]\" as [type].", INVESTIGATE_CIRCUIT)
/obj/item/integrated_circuit/output/light
name = "light"
@@ -389,25 +403,4 @@
//Hippie Ported Code--------------------------------------------------------------------------------------------------------
-
-
/obj/item/radio/headset/integrated
-
-/obj/item/integrated_circuit/output/screen/large
- name = "medium screen"
-
-/obj/item/integrated_circuit/output/screen/extralarge // the subtype is called "extralarge" because tg brought back medium screens and they named the subtype /screen/large
- name = "large screen"
- desc = "Takes any data type as an input and displays it to the user upon examining, and to all nearby beings when pulsed."
- icon_state = "screen_large"
- power_draw_per_use = 40
- cooldown_per_use = 10
-
-/obj/item/integrated_circuit/output/screen/extralarge/do_work()
- ..()
- var/obj/O = assembly ? get_turf(assembly) : loc
- O.visible_message("[icon2html(O.icon, world, O.icon_state)] [stuff_to_display]")
- if(assembly)
- assembly.investigate_log("displayed \"[html_encode(stuff_to_display)]\" with [type].", INVESTIGATE_CIRCUIT)
- else
- investigate_log("displayed \"[html_encode(stuff_to_display)]\" as [type].", INVESTIGATE_CIRCUIT)
diff --git a/code/modules/mining/mint.dm b/code/modules/mining/mint.dm
index 714b02cf3e..3f0759a44c 100644
--- a/code/modules/mining/mint.dm
+++ b/code/modules/mining/mint.dm
@@ -13,6 +13,9 @@
var/produced_coins = 0 // how many coins the machine has made in it's last cycle
var/processing = FALSE
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()
@@ -123,9 +126,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.
diff --git a/html/changelog.html b/html/changelog.html
index be626132cb..ebc042889c 100644
--- a/html/changelog.html
+++ b/html/changelog.html
@@ -50,6 +50,18 @@
-->