Ore redemption machine streamlining. (#19062)

Makes the ore redemptor machine 100000% less spammy to request consoles, and prints a list of what exactly is in the machine. The new non-spamminess means chemistry and the bar can now get a notification, because there will only be one message per load.

Adds bluespace polycrystals, basically a "smelted" "sheet" of bluespace crystals, to the game, in order to make the ore redemptor accept them.
This commit is contained in:
bgobandit
2016-07-03 21:57:27 -04:00
committed by oranges
parent 8d939ceebf
commit 17aca2f8ed
3 changed files with 39 additions and 6 deletions
+8 -6
View File
@@ -19,7 +19,7 @@
var/ore_pickup_rate = 15
var/sheet_per_ore = 1
var/point_upgrade = 1
var/list/ore_values = list(("sand" = 1), ("iron" = 1), ("plasma" = 15), ("silver" = 16), ("gold" = 18), ("uranium" = 30), ("diamond" = 50), ("bananium" = 60))
var/list/ore_values = list(("sand" = 1), ("iron" = 1), ("plasma" = 15), ("silver" = 16), ("gold" = 18), ("uranium" = 30), ("diamond" = 50), ("bluespace crystal" = 50), ("bananium" = 60))
speed_process = 1
/obj/machinery/mineral/ore_redemption/New()
@@ -59,11 +59,6 @@
var/obj/item/stack/sheet/s = new processed_sheet(src,0)
s.amount = 0
stack_list[processed_sheet] = s
if(s.name != "glass" && s.name != "metal") //we can get these from cargo anyway
var/msg = "[capitalize(s.name)] sheets are now available in the Cargo Bay."
for(var/obj/machinery/requests_console/D in allConsoles)
if(D.department == "Science" || D.department == "Robotics" || D.department == "Research Director's Desk" || (D.department == "Chemistry" && (s.name == "uranium" || s.name == "solid plasma")))
D.createmessage("Ore Redemption Machine", "New minerals available!", msg, 1, 0)
var/obj/item/stack/sheet/storage = stack_list[processed_sheet]
storage.amount += sheet_per_ore //Stack the sheets
O.loc = null //Let the old sheet...
@@ -93,6 +88,13 @@
else
process_sheet(O)
i++
var/msg = "Now available in the Cargo Bay: \n"
for(var/s in stack_list) // Making an announcement for cargo
var/obj/item/stack/sheet/mats = stack_list[s]
msg += "[capitalize(mats.name)]: [mats.amount] sheets \n"
for(var/obj/machinery/requests_console/D in allConsoles)
if(D.department == "Science" || D.department == "Robotics" || D.department == "Research Director's Desk" || D.department == "Chemistry" || D.department == "Bar" )
D.createmessage("Ore Redemption Machine", "New minerals available!", msg, 1, 0)
/obj/machinery/mineral/ore_redemption/attackby(obj/item/weapon/W, mob/user, params)
if(exchange_parts(user, W))