From d39234c734e00ba7854d99b68614ec22fdf8cee2 Mon Sep 17 00:00:00 2001
From: Killian <49700375+KillianKirilenko@users.noreply.github.com>
Date: Thu, 6 Mar 2025 21:54:13 +0000
Subject: [PATCH] fake coins and coin/mint refactors (#17218)
* fake coins and fake coin accessories
* coin and mint refactors
* coin and mint refactors
---
code/game/objects/items/toys/fake_coin.dm | 117 ++++++++++++++++++
code/game/objects/random/misc.dm | 6 +-
.../loadout/loadout_general.dm | 27 ++++
code/modules/economy/coins.dm | 79 ++++++++++--
code/modules/economy/mint.dm | 35 ++----
code/modules/economy/vending.dm | 3 +
code/modules/materials/sheets/_sheets.dm | 1 +
code/modules/materials/sheets/gems.dm | 4 +
code/modules/materials/sheets/metals/metal.dm | 13 ++
icons/obj/coins.dmi | Bin 0 -> 4090 bytes
icons/obj/items.dmi | Bin 94456 -> 90685 bytes
vorestation.dme | 1 +
12 files changed, 248 insertions(+), 38 deletions(-)
create mode 100644 code/game/objects/items/toys/fake_coin.dm
create mode 100644 icons/obj/coins.dmi
diff --git a/code/game/objects/items/toys/fake_coin.dm b/code/game/objects/items/toys/fake_coin.dm
new file mode 100644
index 0000000000..df75ae5125
--- /dev/null
+++ b/code/game/objects/items/toys/fake_coin.dm
@@ -0,0 +1,117 @@
+/*****************************Coin********************************/
+// fake "toy" version that allows people to have them as trinkets
+// without letting them easily get stuff from vending machines
+
+/obj/item/fake_coin
+ icon = 'icons/obj/coins.dmi'
+ name = "Coin"
+ desc = "A simple coin you can flip. The weight doesn't seem quite right..."
+ description_fluff = "This isn't a real coin; you can't use it on vending machines."
+ icon_state = "coin"
+ randpixel = 8
+ force = 0.0
+ throwforce = 0.0
+ w_class = ITEMSIZE_TINY
+ slot_flags = SLOT_EARS
+ var/sides = 2
+ drop_sound = 'sound/items/drop/ring.ogg'
+ pickup_sound = 'sound/items/pickup/ring.ogg'
+
+/obj/item/fake_coin/Initialize(mapload)
+ . = ..()
+ randpixel_xy()
+
+/obj/item/fake_coin/gold
+ name = MAT_GOLD + " coin"
+ desc = "A shiny " + MAT_GOLD + " coin. Just like in the old movies with pirates!"
+ icon_state = "coin_gold"
+
+/obj/item/fake_coin/silver
+ name = MAT_SILVER + " coin"
+ desc = "A shiny " + MAT_SILVER + " coin. You can almost see your reflection in it. Unless you're a vampire."
+ icon_state = "coin_silver"
+
+/obj/item/fake_coin/copper
+ name = MAT_COPPER + " coin"
+ desc = "A sturdy " + MAT_COPPER + " coin. The preferred tender of people who like to make other people count a lot."
+ icon_state = "coin_copper"
+
+/obj/item/fake_coin/diamond
+ name = MAT_DIAMOND + " coin"
+ desc = "A coin made of solid " + MAT_DIAMOND + ". Carbon, really, but who's counting?" // me, I'm counting
+ icon_state = "coin_diamond"
+
+/obj/item/fake_coin/graphite
+ name = MAT_GRAPHITE + " coin"
+ desc = "A small pressed plaque of " + MAT_GRAPHITE + ". This seems... impractical. Maybe you could use it as a pencil in a pinch?"
+ icon_state = "coin_graphite"
+
+/obj/item/fake_coin/iron
+ name = MAT_IRON + " coin"
+ desc = "A dull " + MAT_IRON + " coin. Not that it's boring, it's just a bit plain."
+ icon_state = "coin_iron"
+
+/obj/item/fake_coin/steel
+ name = MAT_STEEL + " coin"
+ desc = "A plain " + MAT_STEEL + " coin. You'd think they'd make more coins out of this, considering how plentiful it is."
+ icon_state = "coin_steel"
+
+/obj/item/fake_coin/durasteel
+ name = MAT_DURASTEEL + " coin"
+ desc = "A shiny " + MAT_DURASTEEL + " coin. Keep it in your breast pocket, maybe it'll stop a bullet someday."
+ icon_state = "coin_durasteel"
+
+/obj/item/fake_coin/plasteel
+ name = MAT_PLASTEEL + " coin"
+ desc = "Someone made a coin out of " + MAT_PLASTEEL + ". Now why would they do that?"
+ icon_state = "coin_plasteel"
+
+/obj/item/fake_coin/titanium
+ name = MAT_TITANIUM + " coin"
+ desc = "A shiny " + MAT_TITANIUM + " coin with some commemorative markings."
+ icon_state = "coin_titanium"
+
+/obj/item/fake_coin/lead
+ name = MAT_LEAD + " coin"
+ desc = "A heavy coin indeed. Shame it's worthless as anything other than a paperweight."
+ icon_state = "coin_lead"
+
+/obj/item/fake_coin/phoron
+ name = "solid " + MAT_PHORON + " coin"
+ desc = "Solid " + MAT_PHORON + ", pressed into a coin and laminated for safety. Go ahead, lick it."
+ icon_state = "coin_phoron"
+
+/obj/item/fake_coin/uranium
+ name = MAT_URANIUM + " coin"
+ desc = "A " + MAT_URANIUM + " coin. You probably don't want to store this in your pants pocket..."
+ icon_state = "coin_uranium"
+
+/obj/item/fake_coin/platinum
+ name = MAT_PLATINUM + " coin"
+ desc = "A shiny " + MAT_PLATINUM + " coin. Truth is, the game was rigged from the start."
+ icon_state = "coin_platinum"
+
+/obj/item/fake_coin/morphium
+ name = MAT_MORPHIUM + " coin"
+ desc = "Solid " + MAT_MORPHIUM + ", made into a coin. Extravagant is putting it lightly."
+ icon_state = "coin_morphium"
+
+/obj/item/fake_coin/aluminium
+ name = MAT_ALUMINIUM + " coin"
+ desc = "Someone decided to make a coin out of" + MAT_ALUMINIUM + ". Now your wallet can be lighter than ever."
+ icon_state = "coin_aluminium"
+
+/obj/item/fake_coin/verdantium
+ name = MAT_VERDANTIUM + " coin"
+ desc = "Shiny green " + MAT_VERDANTIUM + ", pressed into a coin. It almost seems to glimmer under starlight."
+ icon_state = "coin_verdantium"
+
+/obj/item/fake_coin/attack_self(mob/user as mob)
+ var/result = rand(1, sides)
+ var/comment = ""
+ if(result == 1)
+ comment = "tails"
+ else if(result == 2)
+ comment = "heads"
+ user.visible_message(span_notice("[user] has thrown \the [src]. It lands on [comment]!"), \
+ span_notice("You throw \the [src]. It lands on [comment]!"))
diff --git a/code/game/objects/random/misc.dm b/code/game/objects/random/misc.dm
index 44e85abeff..2a003ac29c 100644
--- a/code/game/objects/random/misc.dm
+++ b/code/game/objects/random/misc.dm
@@ -655,12 +655,16 @@
icon_state = "rup"
/obj/random/coin/item_to_spawn()
- return pick(prob(5);/obj/item/coin/silver,
+ return pick(prob(7);/obj/item/coin/copper,
+ prob(5);/obj/item/coin/silver,
+ prob(5);/obj/item/coin/steel,
prob(3);/obj/item/coin/iron,
prob(4);/obj/item/coin/gold,
+ prob(3);/obj/item/coin/titanium,
prob(3);/obj/item/coin/phoron,
prob(1);/obj/item/coin/uranium,
prob(2);/obj/item/coin/platinum,
+ prob(2);/obj/item/coin/lead,
prob(1);/obj/item/coin/diamond)
//VOREStation Add Start
diff --git a/code/modules/client/preference_setup/loadout/loadout_general.dm b/code/modules/client/preference_setup/loadout/loadout_general.dm
index de9a69226f..83d30b92c6 100644
--- a/code/modules/client/preference_setup/loadout/loadout_general.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_general.dm
@@ -30,6 +30,33 @@
display_name = "deck of cards"
path = /obj/item/deck/cards
+/datum/gear/fake_coin
+ display_name = "coin selection"
+ description = "A small piece of metal often exchanged for goods and services, but no longer considered legal tender in most jurisdictions. Doesn't look like it'll go in the coin slot of vending machines."
+ path = /obj/item/fake_coin/silver
+
+/datum/gear/fake_coin/New()
+ ..()
+ var/cointype = list()
+ cointype["gold"] = /obj/item/fake_coin/gold
+ cointype["silver"] = /obj/item/fake_coin/silver
+ cointype["copper"] = /obj/item/fake_coin/copper
+ cointype["diamond"] = /obj/item/fake_coin/diamond
+ cointype["graphite"] = /obj/item/fake_coin/graphite
+ cointype["iron"] = /obj/item/fake_coin/iron
+ cointype["steel"] = /obj/item/fake_coin/steel
+ cointype["durasteel"] = /obj/item/fake_coin/durasteel
+ cointype["plasteel"] = /obj/item/fake_coin/plasteel
+ cointype["titanium"] = /obj/item/fake_coin/titanium
+ cointype["lead"] = /obj/item/fake_coin/lead
+ cointype["phoron"] = /obj/item/fake_coin/phoron
+ cointype["uranium"] = /obj/item/fake_coin/uranium
+ cointype["platinum"] = /obj/item/fake_coin/platinum
+ cointype["morphium"] = /obj/item/fake_coin/morphium
+ cointype["aluminium"] = /obj/item/fake_coin/aluminium
+ cointype["verdantium"] = /obj/item/fake_coin/verdantium
+ gear_tweaks += new/datum/gear_tweak/path(cointype)
+
/datum/gear/tarot
display_name = "deck of tarot cards"
path = /obj/item/deck/tarot
diff --git a/code/modules/economy/coins.dm b/code/modules/economy/coins.dm
index 1d29b16061..36690bd59c 100644
--- a/code/modules/economy/coins.dm
+++ b/code/modules/economy/coins.dm
@@ -1,7 +1,7 @@
/*****************************Coin********************************/
/obj/item/coin
- icon = 'icons/obj/items.dmi'
+ icon = 'icons/obj/coins.dmi'
name = "Coin"
desc = "A simple coin you can flip."
icon_state = "coin"
@@ -15,56 +15,109 @@
drop_sound = 'sound/items/drop/ring.ogg'
pickup_sound = 'sound/items/pickup/ring.ogg'
-/obj/item/coin/New()
+/obj/item/coin/Initialize(mapload)
+ . = ..()
randpixel_xy()
/obj/item/coin/gold
- name = "gold coin"
+ name = MAT_GOLD + " coin"
+ desc = "A shiny " + MAT_GOLD + " coin. Just like in the old movies with pirates!"
icon_state = "coin_gold"
matter = list(MAT_GOLD = 250)
/obj/item/coin/silver
- name = "silver coin"
+ name = MAT_SILVER + " coin"
+ desc = "A shiny " + MAT_SILVER + " coin. You can almost see your reflection in it. Unless you're a vampire."
icon_state = "coin_silver"
matter = list(MAT_SILVER = 250)
+/obj/item/coin/copper
+ name = MAT_COPPER + " coin"
+ desc = "A sturdy " + MAT_COPPER + " coin. The preferred tender of people who like to make other people count a lot."
+ icon_state = "coin_copper"
+ matter = list(MAT_COPPER = 250)
+
/obj/item/coin/diamond
- name = "diamond coin"
+ name = MAT_DIAMOND + " coin"
+ desc = "A coin made of solid " + MAT_DIAMOND + ". Carbon, really, but who's counting?" // me, I'm counting
icon_state = "coin_diamond"
matter = list(MAT_DIAMOND = 250)
+/obj/item/coin/graphite
+ name = MAT_GRAPHITE + " coin"
+ desc = "A small pressed plaque of " + MAT_GRAPHITE + ". This seems... impractical. Maybe you could use it as a pencil in a pinch?"
+ icon_state = "coin_graphite"
+ matter = list(MAT_GRAPHITE = 250)
+
/obj/item/coin/iron
- name = "iron coin"
+ name = MAT_IRON + " coin"
+ desc = "A dull " + MAT_IRON + " coin. Not that it's boring, it's just a bit plain."
icon_state = "coin_iron"
matter = list(MAT_IRON = 250)
+/obj/item/coin/steel
+ name = MAT_STEEL + " coin"
+ desc = "A plain " + MAT_STEEL + " coin. You'd think they'd make more coins out of this, considering how plentiful it is."
+ icon_state = "coin_steel"
+ matter = list(MAT_STEEL = 250)
+
+/obj/item/coin/durasteel
+ name = MAT_DURASTEEL + " coin"
+ desc = "A shiny " + MAT_DURASTEEL + " coin. Keep it in your breast pocket, maybe it'll stop a bullet someday."
+ icon_state = "coin_durasteel"
+ matter = list(MAT_DURASTEEL = 250)
+
+/obj/item/coin/plasteel
+ name = MAT_PLASTEEL + " coin"
+ desc = "Someone made a coin out of " + MAT_PLASTEEL + ". Now why would they do that?"
+ icon_state = "coin_plasteel"
+ matter = list(MAT_PLASTEEL = 250)
+
+/obj/item/coin/titanium
+ name = MAT_TITANIUM + " coin"
+ desc = "A shiny " + MAT_TITANIUM + " coin with some commemorative markings."
+ icon_state = "coin_titanium"
+ matter = list(MAT_TITANIUM = 250)
+
+/obj/item/coin/lead
+ name = MAT_LEAD + " coin"
+ desc = "A heavy coin indeed. Shame it's worthless as anything other than a paperweight."
+ icon_state = "coin_lead"
+ matter = list(MAT_LEAD = 250)
+
/obj/item/coin/phoron
- name = "solid phoron coin"
+ name = "solid " + MAT_PHORON + " coin"
+ desc = "Solid " + MAT_PHORON + ", pressed into a coin and laminated for safety. Go ahead, lick it."
icon_state = "coin_phoron"
matter = list(MAT_PHORON = 250)
/obj/item/coin/uranium
- name = "uranium coin"
+ name = MAT_URANIUM + " coin"
+ desc = "A " + MAT_URANIUM + " coin. You probably don't want to store this in your pants pocket..."
icon_state = "coin_uranium"
matter = list(MAT_URANIUM = 250)
/obj/item/coin/platinum
- name = "platinum coin"
- icon_state = "coin_adamantine"
+ name = MAT_PLATINUM + " coin"
+ desc = "A shiny " + MAT_PLATINUM + " coin. Truth is, the game was rigged from the start."
+ icon_state = "coin_platinum"
matter = list(MAT_GOLD = 250)
/obj/item/coin/morphium
- name = "morphium coin"
+ name = MAT_MORPHIUM + " coin"
+ desc = "Solid " + MAT_MORPHIUM + ", made into a coin. Extravagant is putting it lightly."
icon_state = "coin_morphium"
matter = list(MAT_MORPHIUM = 250)
/obj/item/coin/aluminium
- name = "aluminium coin"
+ name = MAT_ALUMINIUM + " coin"
+ desc = "Someone decided to make a coin out of" + MAT_ALUMINIUM + ". Now your wallet can be lighter than ever."
icon_state = "coin_aluminium"
matter = list(MAT_ALUMINIUM = 250)
/obj/item/coin/verdantium
- name = "verdantium coin"
+ name = MAT_VERDANTIUM + " coin"
+ desc = "Shiny green " + MAT_VERDANTIUM + ", pressed into a coin. It almost seems to glimmer under starlight."
icon_state = "coin_verdantium"
matter = list(MAT_VERDANTIUM = 250)
diff --git a/code/modules/economy/mint.dm b/code/modules/economy/mint.dm
index ecbc957a68..fc20a5eb49 100644
--- a/code/modules/economy/mint.dm
+++ b/code/modules/economy/mint.dm
@@ -1,39 +1,28 @@
/**********************Mint**************************/
/obj/machinery/mineral/mint
- name = "Coin press"
- desc = "A relatively crude hand-operated coin press that turns sheets (or ingots, as the case may be) of materials into fresh coins. They're probably not going to be considered legal tender in most polities, but you might fool a vending machine with one..?
It looks like it'll accept silver, gold, diamond, iron, solid phoron, and uranium."
+ name = "coin press"
+ desc = "A relatively crude hand-operated coin press that turns sheets (or ingots, as the case may be) of materials into fresh coins. They're probably not going to be considered legal tender in most polities, but you might fool a vending machine with one..?"
icon = 'icons/obj/stationobjs.dmi'
icon_state = "coinpress0"
density = TRUE
anchored = TRUE
var/coinsToProduce = 6 //how many coins do we make per sheet? a sheet is 2000 units whilst a coin is 250, and some material should be lost in the process
- var/list/validMats = list(MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_IRON, MAT_PHORON, MAT_URANIUM) //what's valid stuff to make coins out of?
/obj/machinery/mineral/mint/attackby(obj/item/stack/material/M, mob/user)
- if(M.default_type in validMats)
+ if(!anchored)
+ user.visible_message(span_warning("\The [src] must be properly secured to operate!"))
+ return
+ if(!M.coin_type)
+ user.visible_message(span_notice("You can't make coins out of that."))
+ return
+ else if(M.coin_type)
user.visible_message("[user] starts to feed a sheet of [M.default_type] into \the [src].")
while(M.amount > 0)
icon_state = "coinpress1"
if(do_after(user, 2 SECONDS, src))
M.amount--
- if(M.default_type == MAT_SILVER)
- while(coinsToProduce-- > 0)
- new /obj/item/coin/silver(user.loc)
- else if(M.default_type == MAT_GOLD)
- while(coinsToProduce-- > 0)
- new /obj/item/coin/gold(user.loc)
- else if(M.default_type == MAT_DIAMOND)
- while(coinsToProduce-- > 0)
- new /obj/item/coin/diamond(user.loc)
- else if(M.default_type == MAT_IRON)
- while(coinsToProduce-- > 0)
- new /obj/item/coin/iron(user.loc)
- else if(M.default_type == MAT_PHORON)
- while(coinsToProduce-- > 0)
- new /obj/item/coin/phoron(user.loc)
- else if(M.default_type == MAT_URANIUM)
- while(coinsToProduce-- > 0)
- new /obj/item/coin/uranium(user.loc)
+ while(coinsToProduce-- > 0)
+ new M.coin_type(user.loc)
src.visible_message(span_notice("\The [src] rattles and dispenses several [M.default_type] coins!"))
coinsToProduce = initial(coinsToProduce)
if(M.amount == 0)
@@ -45,5 +34,3 @@
to_chat(user,span_warning("\The [src] is hand-operated and requires your full attention!"))
icon_state = "coinpress0"
break
- else
- src.visible_message(span_notice("\The [src] doesn't look like it'll accept that material."))
diff --git a/code/modules/economy/vending.dm b/code/modules/economy/vending.dm
index 9d8afd4251..79446f2f5f 100644
--- a/code/modules/economy/vending.dm
+++ b/code/modules/economy/vending.dm
@@ -231,6 +231,9 @@ GLOBAL_LIST_EMPTY(vending_products)
if(panel_open)
attack_hand(user)
return
+ else if(istype(W, /obj/item/fake_coin) && has_premium)
+ to_chat(user, span_notice("\The [W] doesn't fit into the coin slot on \the [src]."))
+ return
else if(istype(W, /obj/item/coin) && has_premium)
user.drop_item()
W.forceMove(src)
diff --git a/code/modules/materials/sheets/_sheets.dm b/code/modules/materials/sheets/_sheets.dm
index 0c7386bc32..9d9a548ede 100644
--- a/code/modules/materials/sheets/_sheets.dm
+++ b/code/modules/materials/sheets/_sheets.dm
@@ -16,6 +16,7 @@
var/default_type = MAT_STEEL
var/datum/material/material
+ var/coin_type = null
var/perunit = SHEET_MATERIAL_AMOUNT
var/apply_colour //temp pending icon rewrite
drop_sound = 'sound/items/drop/axe.ogg'
diff --git a/code/modules/materials/sheets/gems.dm b/code/modules/materials/sheets/gems.dm
index 2b2c49d3b6..a71135f000 100644
--- a/code/modules/materials/sheets/gems.dm
+++ b/code/modules/materials/sheets/gems.dm
@@ -5,6 +5,7 @@
no_variants = FALSE
drop_sound = 'sound/items/drop/glass.ogg'
pickup_sound = 'sound/items/pickup/glass.ogg'
+ coin_type = /obj/item/coin/phoron
/obj/item/stack/material/diamond
name = MAT_DIAMOND
@@ -12,6 +13,7 @@
default_type = MAT_DIAMOND
drop_sound = 'sound/items/drop/glass.ogg'
pickup_sound = 'sound/items/pickup/glass.ogg'
+ coin_type = /obj/item/coin/diamond
/obj/item/stack/material/painite
name = MAT_PAINITE
@@ -53,6 +55,7 @@
default_type = MAT_VERDANTIUM
no_variants = FALSE
apply_colour = TRUE
+ coin_type = /obj/item/coin/verdantium
/obj/item/stack/material/morphium
name = MAT_MORPHIUM
@@ -61,6 +64,7 @@
default_type = MAT_MORPHIUM
no_variants = FALSE
apply_colour = TRUE
+ coin_type = /obj/item/coin/morphium
/obj/item/stack/material/glamour
name = MAT_GLAMOUR
diff --git a/code/modules/materials/sheets/metals/metal.dm b/code/modules/materials/sheets/metals/metal.dm
index b80408d871..cb7cd3126b 100644
--- a/code/modules/materials/sheets/metals/metal.dm
+++ b/code/modules/materials/sheets/metals/metal.dm
@@ -4,6 +4,7 @@
default_type = MAT_STEEL
no_variants = FALSE
apply_colour = TRUE
+ coin_type = /obj/item/coin/steel
/obj/item/stack/material/plasteel
name = MAT_PLASTEEL
@@ -11,6 +12,7 @@
default_type = MAT_PLASTEEL
no_variants = FALSE
apply_colour = TRUE
+ coin_type = /obj/item/coin/plasteel
/obj/item/stack/material/plasteel/rebar
name = MAT_PLASTEELREBAR
@@ -32,6 +34,7 @@
default_type = MAT_DURASTEEL
no_variants = FALSE
apply_colour = TRUE
+ coin_type = /obj/item/coin/durasteel
/obj/item/stack/material/titanium
name = MAT_TITANIUM
@@ -40,6 +43,7 @@
item_state = "sheet-silver"
default_type = MAT_TITANIUM
no_variants = FALSE
+ coin_type = /obj/item/coin/titanium
/obj/item/stack/material/iron
name = MAT_IRON
@@ -47,6 +51,7 @@
default_type = MAT_IRON
apply_colour = 1
no_variants = FALSE
+ coin_type = /obj/item/coin/iron
/obj/item/stack/material/lead
name = MAT_LEAD
@@ -54,6 +59,7 @@
default_type = MAT_LEAD
apply_colour = 1
no_variants = FALSE
+ coin_type = /obj/item/coin/lead
/obj/item/stack/material/gold
name = MAT_GOLD
@@ -61,6 +67,7 @@
default_type = MAT_GOLD
no_variants = FALSE
apply_colour = TRUE
+ coin_type = /obj/item/coin/gold
/obj/item/stack/material/silver
name = MAT_SILVER
@@ -68,6 +75,7 @@
default_type = MAT_SILVER
no_variants = FALSE
apply_colour = TRUE
+ coin_type = /obj/item/coin/silver
//Valuable resource, cargo can sell it.
/obj/item/stack/material/platinum
@@ -76,12 +84,14 @@
default_type = MAT_PLATINUM
no_variants = FALSE
apply_colour = TRUE
+ coin_type = /obj/item/coin/platinum
/obj/item/stack/material/uranium
name = MAT_URANIUM
icon_state = "sheet-uranium"
default_type = MAT_URANIUM
no_variants = FALSE
+ coin_type = /obj/item/coin/uranium
//Extremely valuable to Research.
/obj/item/stack/material/mhydrogen
@@ -119,6 +129,7 @@
default_type = MAT_GRAPHITE
apply_colour = 1
no_variants = FALSE
+ coin_type = /obj/item/coin/graphite
/obj/item/stack/material/bronze
name = MAT_BRONZE
@@ -143,6 +154,7 @@
default_type = MAT_COPPER
apply_colour = 1
no_variants = FALSE
+ coin_type = /obj/item/coin/copper
/obj/item/stack/material/aluminium
name = MAT_ALUMINIUM
@@ -151,3 +163,4 @@
default_type = MAT_ALUMINIUM
apply_colour = 1
no_variants = FALSE
+ coin_type = /obj/item/coin/aluminium
diff --git a/icons/obj/coins.dmi b/icons/obj/coins.dmi
new file mode 100644
index 0000000000000000000000000000000000000000..7eedcd974632887c5265d3b7dd847dbcea4e9803
GIT binary patch
literal 4090
zcmb`KXH-+$wty3Q??sw9(xihRpcE-m3{?fC3PGeumrw$PBqANb0|<K?OvrkkAax
zL+{c<2c?DpK|&2L=e~D;yf?-h_x`v)=ALV;z1Ny^uQ}KH=1RD0Va&=T$OHfYSiyG;
z?o)IDMNkZMl;=y=$3he}7jA7EWZ(vM4SX69^wi%E0D$FWq&0a_>#-PaX
zWNzz#vFtSCefA=AfLuJ?5cefr)aX??`dW
zpN@17K2LE89j}|M>l{(@bsiFQKubZnkjDNc{%L1Hgl$L<1^{520vqUA!*cMszGl`Q
z*jA)fSSgbfOQH(%4ThP-vAII^WI@^=$@cb%rGA)Nd;b=g`gFFZs$>MIBX*WOG`niz
zozIWnH=USZ=b2AV{`bIY`&`~?4}9##(E7AbJak2z=t}l$v`HOHH~V!%w_fHDXXnYt
zo}Pd_mAnfr6&>pt2f1+G9KL8q2&gJLz<@zQj!{O9KH-@l#&q3ns
z0Hb$7F@Tz}p_1`)7C0~vb1|Dl@!J4aaJ{Cj7WFWxOcleS;o(11b92o@Leyw!X`i^c
z0sl--zinZ`rtqfkDAUS}nYx^N-|fR~)5sUxE@D!jZzWJB2W*XiHT>&%(bv)Ze@kb0
zN(qgef`XddF)HIhYM0{WcN*7mU?}vf)qBA1F-fpTrGI-el0FS;W0|3}#bxM>g!DyJ
zRex%~aknuoF_UOrn^Roz;bmi*GCb~84Farz?J$0dtIjQ+nXi=~=Ocm#3E)9Sl=MOk
zt?b?Gw1D}V54yXs#0$ib08tL+mI1Z192p;XgK1r6Vq*Hj`iHD+-%L(-6m>Z$mGs>U
z@;Mqn?K+8Pu{4|)+*&K#Odrd5Z78fBj;&F}rm+`P6RC8gqjSHh@0>bbV_vU?Cw765
zv%TBTvOQXj1Q_Y&BP)SbN@62kLPrrYDBo$toMcsAx>lh|
z9y{O4yha9y!y)sUWsAldy;QIK*GyL`YIQBZ$P=A-J>8hWnDvSZ1!~;{1`dX|gcz%7
zc1Z&oC@eLO+4w*Y0)@Ttf712UKn?-mdk6S&FkwI4>B>cSQ~RV}Uj)Xd!a7(uJn{
zUu@@p^EG>r<(up^8N5jArRjUD`r)8p0Q}j?J)Y;NtJ_(y}tB
z7CGoZ#|yZ%wUzw+dxB7nkf5NHynNkZM0mJQ#xBJeGLF+@j-#BWAI_lBqGnj@p#Qsb
zO|JJ!i~Bchrq<<@h?%#q|@lP3?0|OzKxD50i*b>eMI;o!DG11*hgI$QJvj%dk-vy91Ao
zDy#O59i%nL&fGltee8@c4ha68XA%wYFdmcUALYmzydf)bi
zZf0!ki7%koBA2SaT`#0?6{=e2ke$Y{n2y8vCPYkwJj4gUD@Um^=-0l#C~D{T!t$a+
z+|+$^)(d|TWfi?Zw0sN74})XS(o8*n9nHC~y-`?F(w%t}a-bs#B<}A6Y_af$I^dT_
zO_^9M*49FR*VtVs*+iqR;oVFaQqRQI+p@B}+WXcSwL`C3`o;jnblQDh^H}dYxedd{
z$-p*!BFIzW(RP~pd~3Qpq-6mMgfyOlGEhQlJ^=&oRGF13j{&B)>U6ZU`Wu6{d>ZJ&
z#4a6R5uwA>++0+da6sH6*F2j_r#fG*nx&2W{rMjD^@C6cf5Z_vwixMUn{yo8KoLGkim
zHPX1)-20P2PTrcV#PK01zw$!^LJ2aEL*cQ#y&$T5Upk~|4uJ~bTrkbT1FNiVy*&c(
z5NDyHDVoxMpsu=%atm|a-77dp7VP_&7%0W9y|v^K`@7*$yzF$?B>-3geTTF(Xh4eL
zOc9S=3y?dIUp|?;(naW<8MA!~s2_EIHba7TtsoIW!|aP$+2$rsUlq|RlXj+E
zVc*=l>yKa|_?e%c7s!Tha)snRq=@#$?4xHU%?~WUM6HSg&g9DhDGBwZ)uSZ~4+q=B
zqya~4pkOn72`2>E^?CI1ueITGa5wc0(dBvVh?lFYtMTZu+Us57XFm^>JJwQOF7OG*
zgWF4J&DM9+9%@&66}mX;#(-I#V(TJxzNnyNALhS#3H1CQV1B$l
zt^VxyrnC0n)5x4o4?H>MDP3{97akFQ1GZb>d!8@n+}lrc-~C;k-h|HbUuzb5%GZ%X
z_ZV-4kejQ=FrJ&wl^DN;HOS@N#AT|xxSGd2D+u~n*FrJF8|E#V=UN(=k&e~-}74Up`5)RmMtQqKXMJ{1Ecce1i{*LN7+
zH;J(aS
z-EM{sF>cV=)Ov~Qvbp*-#;M7<^8tD~IuU_1#ox~K{a0+k48sUbo-2iqSPsm2wT36#
zy5;%BFxyQuRzFjXW8;8#?wGyojs-l|edD{=!8j+9a4E`FViVjwbxiC`1o;CXeny?I
zSNO?+&r@Hr;BLiGNY+UK8L(>Y?7@U0cx{$HltN)@$Xqpdj`XaD!`Tn|TZjDeNJ+rm
z$pf9sD8miYd)(Zr*Kxeat%-7@wi-8-G~}^2|)YJd6g6v^nk(J
z$n)QXA^lnkR5>v2$tw#6K3__!mhIlUrTpy%i81`64*oa6
z`TtbW{~Ud7k{*s&tBA+#lWl{CN18?xlaj=i|1OmUk**ueoO?rgC*NH6`udz-#z!uH
zCkVHQ?bdz9h&gpAhLHOkaLV}$4Slu_WD^62j)YL*^s4&$sqVo+Nr}I{uwG({Szlid
zFl$f#sCbF}>PKZAO%TdK#HK-gYAZha=TAk!jg6gnv}R~jipi1vIIgqE6y!$0Mgq1g
zzpQ@s&i_l?W$gAYQ8QFPHXo7F^qw5=>w7F~RZ}P;bv)~*zPGpcy{l^_q^W0cFfWZ4
z525&L6hamp)oOT|%%-BIVfOCoo9#1ItD5DYqE+HCd?HiBLxEya+HOR_sVp2f^(~Yg
zU{m3^)CL!)Py?H}R}LCqA<2UWcEF3Df(#@pq+oM%>lY
ze4E{@7ksvTp%OvDyIO%0GLBpOqq9v+L_ah;KjsQRxTpN4Bw#xY^#0m1@pzqpFT%7~
zlKK*|N@#^Q8SQnp{#4{)vU?>hE&WiEMaTW>()13+OG!(k9DUX{6YSVcs7OLnOHCTZ
zCpjTSPWmdJY2`s{o3AZ3%9}((iA7KuTVur|CDWpTq5g#KXvl?GJsLeRJ~HC+h!|t3
zAJtZXS6TX6j36|sPkBEgehdpN@44d$FDzGC;=YPlYn-1sN$$G8*8elyyNvRs^Y&TR
z7A36Jr60ug(dQW%J~Gk?PbGzk%Kf7c4ErszZQ1INmQHI}id+ObrH|XQ2HoDiEpzSB
zuaz^1BWN~q$TR$if%D7#uiM~1^Z5Uy`F_h~S7Om;&_yrhG7kV7S{PL5L!$l*GQZX=
literal 0
HcmV?d00001
diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi
index a7598b39a5348ea732d446dfb00f340b09c20fe4..a7e0199f9dc72a1bc04c6708f5c79617da8a2396 100644
GIT binary patch
delta 70737
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