diff --git a/code/modules/mining/machine_processing.dm b/code/modules/mining/machine_processing.dm
index 7672e91cec..03568205c8 100644
--- a/code/modules/mining/machine_processing.dm
+++ b/code/modules/mining/machine_processing.dm
@@ -1,38 +1,39 @@
/**********************Mineral processing unit console**************************/
+#define PROCESS_NONE 0
+#define PROCESS_SMELT 1
+#define PROCESS_COMPRESS 2
+#define PROCESS_ALLOY 3
/obj/machinery/mineral/processing_unit_console
name = "production machine console"
icon = 'icons/obj/machines/mining_machines.dmi'
icon_state = "console"
- density = 1
- anchored = 1
+ density = TRUE
+ anchored = TRUE
var/obj/machinery/mineral/processing_unit/machine = null
- //var/machinedir = EAST //Dumb
- var/show_all_ores = 0
+ var/show_all_ores = FALSE
-/obj/machinery/mineral/processing_unit_console/New()
- ..()
- spawn(7)
- //src.machine = locate(/obj/machinery/mineral/processing_unit, get_step(src, machinedir))
- src.machine = locate(/obj/machinery/mineral/processing_unit) in range(5,src)
- if (machine)
- machine.console = src
- else
- world << "Warning: Ore processing machine console at [src.x], [src.y], [src.z] could not find its machine!"
- qdel(src)
+/obj/machinery/mineral/processing_unit_console/initialize()
+ . = ..()
+ src.machine = locate(/obj/machinery/mineral/processing_unit) in range(5, src)
+ if (machine)
+ machine.console = src
+ else
+ log_debug("Ore processing machine console at [src.x], [src.y], [src.z] could not find its machine!")
+ qdel(src)
/obj/machinery/mineral/processing_unit_console/attack_hand(mob/user)
- add_fingerprint(user)
+ if(..())
+ return
interact(user)
/obj/machinery/mineral/processing_unit_console/interact(mob/user)
-
if(..())
return
if(!allowed(user))
- user << "Access denied."
+ to_chat(user, "Access denied.")
return
user.set_machine(src)
@@ -49,13 +50,13 @@
dat += "
| [capitalize(O.display_name)] | [machine.ores_stored[ore]] | "
if(machine.ores_processing[ore])
switch(machine.ores_processing[ore])
- if(0)
+ if(PROCESS_NONE)
dat += "not processing"
- if(1)
+ if(PROCESS_SMELT)
dat += "smelting"
- if(2)
+ if(PROCESS_COMPRESS)
dat += "compressing"
- if(3)
+ if(PROCESS_ALLOY)
dat += "alloying"
else
dat += "not processing"
@@ -80,10 +81,10 @@
if(!choice) return
switch(choice)
- if("Nothing") choice = 0
- if("Smelting") choice = 1
- if("Compressing") choice = 2
- if("Alloying") choice = 3
+ if("Nothing") choice = PROCESS_NONE
+ if("Smelting") choice = PROCESS_SMELT
+ if("Compressing") choice = PROCESS_COMPRESS
+ if("Alloying") choice = PROCESS_ALLOY
machine.ores_processing[href_list["toggle_smelting"]] = choice
@@ -105,8 +106,8 @@
name = "material processor" //This isn't actually a goddamn furnace, we're in space and it's processing platinum and flammable phoron...
icon = 'icons/obj/machines/mining_machines.dmi'
icon_state = "furnace"
- density = 1
- anchored = 1
+ density = TRUE
+ anchored = TRUE
light_range = 3
var/obj/machinery/mineral/input = null
var/obj/machinery/mineral/output = null
@@ -115,17 +116,17 @@
var/list/ores_processing[0]
var/list/ores_stored[0]
var/static/list/alloy_data
- var/active = 0
+ var/active = FALSE
/obj/machinery/mineral/processing_unit/New()
..()
-
// initialize static alloy_data list
if(!alloy_data)
alloy_data = list()
for(var/alloytype in typesof(/datum/alloy)-/datum/alloy)
alloy_data += new alloytype()
+ // TODO - Initializing this here is insane. Put it in global lists init or something. ~Leshana
if(!ore_data || !ore_data.len)
for(var/oretype in typesof(/ore)-/ore)
var/ore/OD = new oretype()
@@ -133,15 +134,16 @@
ores_processing[OD.name] = 0
ores_stored[OD.name] = 0
+/obj/machinery/mineral/processing_unit/initialize()
+ . = ..()
+ // TODO - Eschew input/output machinery and just use dirs ~Leshana
//Locate our output and input machinery.
- spawn(5)
- for (var/dir in cardinal)
- src.input = locate(/obj/machinery/mineral/input, get_step(src, dir))
- if(src.input) break
- for (var/dir in cardinal)
- src.output = locate(/obj/machinery/mineral/output, get_step(src, dir))
- if(src.output) break
- return
+ for (var/dir in cardinal)
+ src.input = locate(/obj/machinery/mineral/input, get_step(src, dir))
+ if(src.input) break
+ for (var/dir in cardinal)
+ src.output = locate(/obj/machinery/mineral/output, get_step(src, dir))
+ if(src.output) break
return
/obj/machinery/mineral/processing_unit/process()
@@ -174,7 +176,7 @@
if(!O) continue
- if(ores_processing[metal] == 3 && O.alloy) //Alloying.
+ if(ores_processing[metal] == PROCESS_ALLOY && O.alloy) //Alloying.
for(var/datum/alloy/A in alloy_data)
@@ -190,7 +192,7 @@
for(var/needs_metal in A.requires)
//Check if we're alloying the needed metal and have it stored.
- if(ores_processing[needs_metal] != 3 || ores_stored[needs_metal] < A.requires[needs_metal])
+ if(ores_processing[needs_metal] != PROCESS_ALLOY || ores_stored[needs_metal] < A.requires[needs_metal])
enough_metal = 0
break
@@ -207,7 +209,7 @@
for(var/i=0,i0) can_make--
@@ -222,7 +224,7 @@
sheets+=2
new M.stack_type(output.loc)
- else if(ores_processing[metal] == 1 && O.smelts_to) //Smelting.
+ else if(ores_processing[metal] == PROCESS_SMELT && O.smelts_to) //Smelting.
var/can_make = Clamp(ores_stored[metal],0,sheets_per_tick-sheets)
@@ -242,3 +244,8 @@
continue
console.updateUsrDialog()
+
+#undef PROCESS_NONE
+#undef PROCESS_SMELT
+#undef PROCESS_COMPRESS
+#undef PROCESS_ALLOY
|