mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-23 13:05:44 +01:00
Repath obj/machinery to obj/structure/machinery [MDB Ignore] (#22500)
Repaths obj/machinery to obj/structure/machinery. **Note for reviewers:** the only meaningful changed code exists within **code/game/objects/structures.dm** and **code/game/objects/structures/_machinery.dm**, largely concerning damage procs. With the exception of moving airlock defines to their own file, ALL OTHER CHANGES ARE STRICTLY PATH CHANGES. Objects, _categorically_, are largely divided between those you can hold in your hand/inventory and those you can't. Machinery objects are already subtypes of Structures behaviorally, this PR just makes their pathing reflect that, and allows for future work (tool actions, more health/destruction functionality) to be developed without unnecessary code duplication. I have tested this PR by loading up the Horizon and dismantling various machines and structures with tools, shooting guns of various types throughout the ship, and detonating a bunch of explosions throughout the ship.
This commit is contained in:
@@ -36,7 +36,7 @@
|
||||
new /obj/item/ore/diamond(src)
|
||||
if(21 to 25)
|
||||
for(var/i = 0, i < 3, i++)
|
||||
new /obj/machinery/portable_atmospherics/hydroponics(src)
|
||||
new /obj/structure/machinery/portable_atmospherics/hydroponics(src)
|
||||
if(26 to 30)
|
||||
for(var/i = 0, i < 3, i++)
|
||||
new /obj/item/reagent_containers/glass/beaker/noreact(src)
|
||||
|
||||
@@ -2,14 +2,14 @@
|
||||
#define DRILL_LIGHT_WARNING 1
|
||||
#define DRILL_LIGHT_ACTIVE 2
|
||||
|
||||
/obj/machinery/mining
|
||||
/obj/structure/machinery/mining
|
||||
icon = 'icons/obj/mining_drill.dmi'
|
||||
anchored = FALSE
|
||||
use_power = POWER_USE_OFF //The drill takes power directly from a cell.
|
||||
density = TRUE
|
||||
layer = MOB_LAYER + 0.1 //So it draws over mobs in the tile north of it.
|
||||
|
||||
/obj/machinery/mining/drill
|
||||
/obj/structure/machinery/mining/drill
|
||||
name = "mining drill head"
|
||||
desc = "A large industrial drill. Its bore does not penetrate deep enough to access the sublevels."
|
||||
icon_state = "mining_drill"
|
||||
@@ -65,17 +65,17 @@
|
||||
/// The last time the stored ores were updated, used as a cooldown to not nuke the server
|
||||
var/last_stored_ore_update = 0
|
||||
|
||||
/obj/machinery/mining/drill/mechanics_hints(mob/user, distance, is_adjacent)
|
||||
/obj/structure/machinery/mining/drill/mechanics_hints(mob/user, distance, is_adjacent)
|
||||
. += ..()
|
||||
. += "Attaching a mining satchel with a warp extraction pack and a linked ore box to this drill will bluespace-teleport any mined ore directly into the linked ore box."
|
||||
|
||||
/obj/machinery/mining/drill/upgrade_hints(mob/user, distance, is_adjacent)
|
||||
/obj/structure/machinery/mining/drill/upgrade_hints(mob/user, distance, is_adjacent)
|
||||
. += ..()
|
||||
. += "Upgraded <b>matter bins</b> will increase ore capacity."
|
||||
. += "Upgraded <b>capacitors</b> will improve power efficiency."
|
||||
. += "Upgraded <b>micro-lasers</b> will increase the amount of ore harvested."
|
||||
|
||||
/obj/machinery/mining/drill/feedback_hints(mob/user, distance, is_adjacent)
|
||||
/obj/structure/machinery/mining/drill/feedback_hints(mob/user, distance, is_adjacent)
|
||||
. += ..()
|
||||
if(need_player_check)
|
||||
. += SPAN_WARNING("The drill error light is flashing. The cell panel is [panel_open ? "open" : "closed"].")
|
||||
@@ -110,18 +110,18 @@
|
||||
for(var/ore in stored_ores)
|
||||
. += SPAN_NOTICE("- [stored_ores[ore]] [ore]")
|
||||
|
||||
/obj/machinery/mining/drill/Initialize()
|
||||
/obj/structure/machinery/mining/drill/Initialize()
|
||||
. = ..()
|
||||
spark_system = bind_spark(src, 3)
|
||||
|
||||
/obj/machinery/mining/drill/Destroy()
|
||||
/obj/structure/machinery/mining/drill/Destroy()
|
||||
QDEL_NULL(attached_satchel)
|
||||
QDEL_NULL(spark_system)
|
||||
QDEL_NULL(cell)
|
||||
QDEL_NULL_LIST(stored_ores)
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mining/drill/proc/update_ore_count()
|
||||
/obj/structure/machinery/mining/drill/proc/update_ore_count()
|
||||
stored_ores = list()
|
||||
for(var/obj/item/ore/O in contents)
|
||||
if(stored_ores[O.name])
|
||||
@@ -129,7 +129,7 @@
|
||||
else
|
||||
stored_ores[O.name] = 1
|
||||
|
||||
/obj/machinery/mining/drill/process()
|
||||
/obj/structure/machinery/mining/drill/process()
|
||||
if(need_player_check)
|
||||
return
|
||||
|
||||
@@ -248,7 +248,7 @@
|
||||
system_error("Resource field depleted.")
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/mining/drill/proc/activate_light(var/lights = DRILL_LIGHT_IDLE)
|
||||
/obj/structure/machinery/mining/drill/proc/activate_light(var/lights = DRILL_LIGHT_IDLE)
|
||||
switch(lights)
|
||||
if(DRILL_LIGHT_IDLE)
|
||||
set_light(2, 0.75, LIGHT_COLOR_TUNGSTEN)
|
||||
@@ -257,12 +257,12 @@
|
||||
if(DRILL_LIGHT_ACTIVE)
|
||||
set_light(4, 1, LIGHT_COLOR_LAVA)
|
||||
|
||||
/obj/machinery/mining/drill/attack_ai(mob/user)
|
||||
/obj/structure/machinery/mining/drill/attack_ai(mob/user)
|
||||
if(!ai_can_interact(user))
|
||||
return
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/mining/drill/attackby(obj/item/attacking_item, mob/user)
|
||||
/obj/structure/machinery/mining/drill/attackby(obj/item/attacking_item, mob/user)
|
||||
if(istype(attacking_item, /obj/item/mecha_equipment/drill_mover)) // the drill mover afterattack handles it
|
||||
return
|
||||
if(!active)
|
||||
@@ -384,7 +384,7 @@
|
||||
..()
|
||||
return
|
||||
|
||||
/obj/machinery/mining/drill/attack_hand(mob/user)
|
||||
/obj/structure/machinery/mining/drill/attack_hand(mob/user)
|
||||
check_supports()
|
||||
|
||||
if(need_player_check)
|
||||
@@ -439,7 +439,7 @@
|
||||
to_chat(user, SPAN_NOTICE("\The [src] is unpowered."))
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/mining/drill/update_icon()
|
||||
/obj/structure/machinery/mining/drill/update_icon()
|
||||
if(need_player_check)
|
||||
icon_state = "mining_drill_error"
|
||||
activate_light(DRILL_LIGHT_WARNING)
|
||||
@@ -454,7 +454,7 @@
|
||||
activate_light(DRILL_LIGHT_IDLE)
|
||||
return
|
||||
|
||||
/obj/machinery/mining/drill/RefreshParts()
|
||||
/obj/structure/machinery/mining/drill/RefreshParts()
|
||||
..()
|
||||
harvest_speed = 0
|
||||
capacity = 0
|
||||
@@ -469,7 +469,7 @@
|
||||
charge_use -= 5 * P.rating
|
||||
cell = locate(/obj/item/cell) in component_parts
|
||||
|
||||
/obj/machinery/mining/drill/proc/check_supports()
|
||||
/obj/structure/machinery/mining/drill/proc/check_supports()
|
||||
supported = FALSE
|
||||
|
||||
if(supports && length(supports) >= braces_needed)
|
||||
@@ -482,7 +482,7 @@
|
||||
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/mining/drill/proc/system_error(var/error)
|
||||
/obj/structure/machinery/mining/drill/proc/system_error(var/error)
|
||||
if(error)
|
||||
visible_message(SPAN_WARNING("[icon2html(src, viewers(get_turf(src)))] <b>[capitalize_first_letters(src.name)]</b> flashes a system warning: \"[error]\"."))
|
||||
current_error = error
|
||||
@@ -491,7 +491,7 @@
|
||||
active = FALSE
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/mining/drill/proc/get_resource_field()
|
||||
/obj/structure/machinery/mining/drill/proc/get_resource_field()
|
||||
resource_field = list()
|
||||
need_update_field = FALSE
|
||||
|
||||
@@ -506,7 +506,7 @@
|
||||
if(!length(resource_field))
|
||||
system_error("Resources depleted.")
|
||||
|
||||
/obj/machinery/mining/drill/proc/use_cell_power()
|
||||
/obj/structure/machinery/mining/drill/proc/use_cell_power()
|
||||
if(!cell)
|
||||
return FALSE
|
||||
if(cell.charge >= charge_use)
|
||||
@@ -514,7 +514,7 @@
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/mining/drill/verb/unload()
|
||||
/obj/structure/machinery/mining/drill/verb/unload()
|
||||
set name = "Unload Drill"
|
||||
set category = "Object"
|
||||
set src in oview(1)
|
||||
@@ -533,18 +533,18 @@
|
||||
to_chat(usr, SPAN_NOTICE("You spill the contents of \the [src]'s storage box all over the ground."))
|
||||
|
||||
|
||||
/obj/machinery/mining/brace
|
||||
/obj/structure/machinery/mining/brace
|
||||
name = "mining drill brace"
|
||||
desc = "A machinery brace for an industrial drill. It looks easily two feet thick."
|
||||
icon_state = "mining_brace"
|
||||
obj_flags = OBJ_FLAG_ROTATABLE
|
||||
var/obj/machinery/mining/drill/connected
|
||||
var/obj/structure/machinery/mining/drill/connected
|
||||
|
||||
component_types = list(
|
||||
/obj/item/circuitboard/miningdrillbrace
|
||||
)
|
||||
|
||||
/obj/machinery/mining/brace/attackby(obj/item/attacking_item, mob/user)
|
||||
/obj/structure/machinery/mining/brace/attackby(obj/item/attacking_item, mob/user)
|
||||
if(connected?.active)
|
||||
to_chat(user, SPAN_WARNING("You know you ought not work with the brace of a <i>running</i> drill, but you do anyways."))
|
||||
sleep(5)
|
||||
@@ -605,13 +605,13 @@
|
||||
else
|
||||
disconnect()
|
||||
|
||||
/obj/machinery/mining/brace/Destroy()
|
||||
/obj/structure/machinery/mining/brace/Destroy()
|
||||
disconnect()
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mining/brace/proc/connect()
|
||||
/obj/structure/machinery/mining/brace/proc/connect()
|
||||
for(var/angle in GLOB.cardinals) // make it face any drill in GLOB.cardinals direction from it
|
||||
var/obj/machinery/mining/drill/D = locate() in get_step(src, angle)
|
||||
var/obj/structure/machinery/mining/drill/D = locate() in get_step(src, angle)
|
||||
if(D)
|
||||
src.dir = angle
|
||||
connected = D
|
||||
@@ -628,7 +628,7 @@
|
||||
connected.supports += src
|
||||
connected.check_supports()
|
||||
|
||||
/obj/machinery/mining/brace/proc/disconnect()
|
||||
/obj/structure/machinery/mining/brace/proc/disconnect()
|
||||
if(!connected)
|
||||
return
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/**********************Input and output plates**************************/
|
||||
|
||||
/obj/machinery/mineral/input
|
||||
/obj/structure/machinery/mineral/input
|
||||
icon = 'icons/hud/mob/generic.dmi'
|
||||
icon_state = "x2"
|
||||
name = "Input Area"
|
||||
@@ -8,11 +8,11 @@
|
||||
density = FALSE
|
||||
anchored = TRUE
|
||||
|
||||
/obj/machinery/mineral/input/Initialize()
|
||||
/obj/structure/machinery/mineral/input/Initialize()
|
||||
. = ..()
|
||||
icon_state = "blank"
|
||||
|
||||
/obj/machinery/mineral/output
|
||||
/obj/structure/machinery/mineral/output
|
||||
icon = 'icons/hud/mob/generic.dmi'
|
||||
icon_state = "x"
|
||||
name = "Output Area"
|
||||
@@ -20,6 +20,6 @@
|
||||
density = FALSE
|
||||
anchored = TRUE
|
||||
|
||||
/obj/machinery/mineral/output/Initialize()
|
||||
/obj/structure/machinery/mineral/output/Initialize()
|
||||
. = ..()
|
||||
icon_state = "blank"
|
||||
|
||||
@@ -4,21 +4,21 @@
|
||||
#define SMELTER_MODE_COMPRESSING BITFLAG(2)
|
||||
#define SMELTER_MODE_SMELTING BITFLAG(3)
|
||||
|
||||
/obj/machinery/mineral
|
||||
/obj/structure/machinery/mineral
|
||||
var/id //used for linking machines to consoles
|
||||
var/is_processing_machine = FALSE //used to check for initializing machines
|
||||
var/turf/input_turf
|
||||
var/turf/output_turf
|
||||
|
||||
// Locate our output and input machinery.
|
||||
/obj/machinery/mineral/proc/setup_io()
|
||||
/obj/structure/machinery/mineral/proc/setup_io()
|
||||
for(var/dir in GLOB.cardinals)
|
||||
var/input_spot = locate(/obj/machinery/mineral/input, get_step(src, dir))
|
||||
var/input_spot = locate(/obj/structure/machinery/mineral/input, get_step(src, dir))
|
||||
if(input_spot)
|
||||
input_turf = get_turf(input_spot) // thought of qdeling the spots here, but it's useful when rebuilding a destroyed machine
|
||||
break
|
||||
for(var/dir in GLOB.cardinals)
|
||||
var/output_spot = locate(/obj/machinery/mineral/output, get_step(src, dir))
|
||||
var/output_spot = locate(/obj/structure/machinery/mineral/output, get_step(src, dir))
|
||||
if(output_turf)
|
||||
output_turf = get_turf(output_spot)
|
||||
break
|
||||
@@ -28,19 +28,19 @@
|
||||
if(!output_turf)
|
||||
output_turf = get_step(src, dir)
|
||||
|
||||
/obj/machinery/mineral/proc/reset_io()
|
||||
/obj/structure/machinery/mineral/proc/reset_io()
|
||||
input_turf = null
|
||||
output_turf = null
|
||||
|
||||
setup_io()
|
||||
|
||||
/obj/machinery/mineral/Initialize()
|
||||
/obj/structure/machinery/mineral/Initialize()
|
||||
. = ..()
|
||||
if(is_processing_machine)
|
||||
// checks for movement (i.e. shuttles) and calls reset_io()
|
||||
RegisterSignal(src, COMSIG_MOVABLE_MOVED, PROC_REF(reset_io))
|
||||
|
||||
/obj/machinery/mineral/Destroy()
|
||||
/obj/structure/machinery/mineral/Destroy()
|
||||
if(is_processing_machine)
|
||||
UnregisterSignal(src, COMSIG_MOVABLE_MOVED, PROC_REF(reset_io))
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
|
||||
/**********************Mineral processing unit console**************************/
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console
|
||||
/obj/structure/machinery/mineral/processing_unit_console
|
||||
name = "ore redemption console"
|
||||
desc = "A handy console which can be use to retrieve mining points for use in the mining vendor, or to set processing values for various ore types."
|
||||
icon = 'icons/obj/machinery/wall/terminals.dmi'
|
||||
@@ -58,7 +58,7 @@
|
||||
idle_power_usage = 15
|
||||
active_power_usage = 50
|
||||
|
||||
var/obj/machinery/mineral/processing_unit/machine
|
||||
var/obj/structure/machinery/mineral/processing_unit/machine
|
||||
var/show_all_ores = TRUE
|
||||
var/points = 0
|
||||
|
||||
@@ -74,13 +74,13 @@
|
||||
/obj/item/stock_parts/console_screen
|
||||
)
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/upgrade_hints(mob/user, distance, is_adjacent)
|
||||
/obj/structure/machinery/mineral/processing_unit_console/upgrade_hints(mob/user, distance, is_adjacent)
|
||||
. += ..()
|
||||
. += "Upgraded <b>capacitors</b> will increase the amount of ore smelted per second."
|
||||
. += "Upgraded <b>micro-lasers</b> will increase the amount of ore smelted per second."
|
||||
. += "Upgraded <b>scanning modules</b> will increase the amount of ore smelted per second."
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/Initialize(mapload, d, populate_components)
|
||||
/obj/structure/machinery/mineral/processing_unit_console/Initialize(mapload, d, populate_components)
|
||||
. = ..()
|
||||
var/mutable_appearance/screen_overlay = mutable_appearance(icon, "production_console-screen", plane = ABOVE_LIGHTING_PLANE)
|
||||
AddOverlays(screen_overlay)
|
||||
@@ -88,24 +88,24 @@
|
||||
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/LateInitialize()
|
||||
/obj/structure/machinery/mineral/processing_unit_console/LateInitialize()
|
||||
. = ..()
|
||||
setup_machine()
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/Destroy()
|
||||
/obj/structure/machinery/mineral/processing_unit_console/Destroy()
|
||||
if(machine)
|
||||
machine.console = null
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/proc/handle_machine_deletion()
|
||||
/obj/structure/machinery/mineral/processing_unit_console/proc/handle_machine_deletion()
|
||||
SIGNAL_HANDLER
|
||||
machine = null
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/proc/setup_machine(mob/user)
|
||||
/obj/structure/machinery/mineral/processing_unit_console/proc/setup_machine(mob/user)
|
||||
if(!machine)
|
||||
var/area/A = get_area(src)
|
||||
var/best_distance = INFINITY
|
||||
for(var/obj/machinery/mineral/processing_unit/checked_machine in SSmachinery.machinery)
|
||||
for(var/obj/structure/machinery/mineral/processing_unit/checked_machine in SSmachinery.machinery)
|
||||
if(id)
|
||||
if(checked_machine.id == id)
|
||||
machine = checked_machine
|
||||
@@ -124,7 +124,7 @@
|
||||
|
||||
return machine
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/attackby(obj/item/attacking_item, mob/user)
|
||||
/obj/structure/machinery/mineral/processing_unit_console/attackby(obj/item/attacking_item, mob/user)
|
||||
if(default_deconstruction_screwdriver(user, attacking_item))
|
||||
return
|
||||
if(default_deconstruction_crowbar(user, attacking_item))
|
||||
@@ -133,20 +133,20 @@
|
||||
return
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/attack_hand(mob/user)
|
||||
/obj/structure/machinery/mineral/processing_unit_console/attack_hand(mob/user)
|
||||
add_fingerprint(user)
|
||||
if(!setup_machine(user))
|
||||
return
|
||||
ui_interact(user)
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/ui_interact(mob/user, datum/tgui/ui)
|
||||
/obj/structure/machinery/mineral/processing_unit_console/ui_interact(mob/user, datum/tgui/ui)
|
||||
ui = SStgui.try_update_ui(user, src, ui)
|
||||
if(!ui)
|
||||
ui = new(user, src, "MiningProcessor", "Ore Redemption Console", ui_x=500, ui_y=575)
|
||||
ui.autoupdate = FALSE
|
||||
ui.open()
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/ui_data(mob/user)
|
||||
/obj/structure/machinery/mineral/processing_unit_console/ui_data(mob/user)
|
||||
var/list/data = list()
|
||||
var/obj/item/card/id/ID = user.GetIdCard()
|
||||
if(ID)
|
||||
@@ -180,7 +180,7 @@
|
||||
data["oreList"] = ore_list
|
||||
return data
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/ui_act(action, params)
|
||||
/obj/structure/machinery/mineral/processing_unit_console/ui_act(action, params)
|
||||
if(..())
|
||||
return TRUE
|
||||
|
||||
@@ -231,7 +231,7 @@
|
||||
show_all_ores = !show_all_ores
|
||||
return TRUE
|
||||
|
||||
/obj/machinery/mineral/processing_unit_console/proc/print_report(var/mob/living/user)
|
||||
/obj/structure/machinery/mineral/processing_unit_console/proc/print_report(var/mob/living/user)
|
||||
var/obj/item/card/id/ID = user.GetIdCard()
|
||||
if(!ID)
|
||||
to_chat(user, SPAN_WARNING("No ID detected. Cannot digitally sign."))
|
||||
@@ -342,11 +342,11 @@
|
||||
/**********************Mineral processing unit**************************/
|
||||
|
||||
/**
|
||||
* A list containing alloy data, initialized only once by the first `/obj/machinery/mineral/processing_unit` that initializes
|
||||
* A list containing alloy data, initialized only once by the first `/obj/structure/machinery/mineral/processing_unit` that initializes
|
||||
*/
|
||||
GLOBAL_LIST_EMPTY_TYPED(alloy_data, /datum/alloy)
|
||||
|
||||
/obj/machinery/mineral/processing_unit
|
||||
/obj/structure/machinery/mineral/processing_unit
|
||||
name = "industrial smelter" //This isn't actually a goddamn furnace, we're in space and it's processing platinum and flammable phoron... //lol fuk u bay it is //i'm gay // based and redpilled
|
||||
desc = "A large smelter and compression machine which heats up ore, then applies the process specified within the ore redemption console, outputting the result to the other side."
|
||||
icon = 'icons/obj/machinery/mining_machines.dmi'
|
||||
@@ -357,7 +357,7 @@ GLOBAL_LIST_EMPTY_TYPED(alloy_data, /datum/alloy)
|
||||
light_range = 3
|
||||
|
||||
///The ore redemption console that is linked to us
|
||||
var/obj/machinery/mineral/processing_unit_console/console
|
||||
var/obj/structure/machinery/mineral/processing_unit_console/console
|
||||
|
||||
///How many sheets in a second this smelter can make (more or less, rounded up depending on ticklag)
|
||||
var/sheets_per_second = 50
|
||||
@@ -392,7 +392,7 @@ GLOBAL_LIST_EMPTY_TYPED(alloy_data, /datum/alloy)
|
||||
/obj/item/stock_parts/matter_bin
|
||||
)
|
||||
|
||||
/obj/machinery/mineral/processing_unit/Initialize()
|
||||
/obj/structure/machinery/mineral/processing_unit/Initialize()
|
||||
. = ..()
|
||||
|
||||
// initialize static alloy_data list, if it's not already initialized
|
||||
@@ -407,16 +407,16 @@ GLOBAL_LIST_EMPTY_TYPED(alloy_data, /datum/alloy)
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
|
||||
/obj/machinery/mineral/processing_unit/LateInitialize()
|
||||
/obj/structure/machinery/mineral/processing_unit/LateInitialize()
|
||||
. = ..()
|
||||
setup_io()
|
||||
|
||||
/obj/machinery/mineral/processing_unit/Destroy()
|
||||
/obj/structure/machinery/mineral/processing_unit/Destroy()
|
||||
if(console)
|
||||
console.machine = null
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mineral/processing_unit/proc/link_console(obj/machinery/mineral/processing_unit_console/console_to_link)
|
||||
/obj/structure/machinery/mineral/processing_unit/proc/link_console(obj/structure/machinery/mineral/processing_unit_console/console_to_link)
|
||||
if(console)
|
||||
UnregisterSignal(console, COMSIG_QDELETING)
|
||||
console = null
|
||||
@@ -424,12 +424,12 @@ GLOBAL_LIST_EMPTY_TYPED(alloy_data, /datum/alloy)
|
||||
console = console_to_link
|
||||
RegisterSignal(console, COMSIG_QDELETING, PROC_REF(handle_console_deletion))
|
||||
|
||||
/obj/machinery/mineral/processing_unit/proc/handle_console_deletion()
|
||||
/obj/structure/machinery/mineral/processing_unit/proc/handle_console_deletion()
|
||||
SIGNAL_HANDLER
|
||||
|
||||
console = null
|
||||
|
||||
/obj/machinery/mineral/processing_unit/attackby(obj/item/attacking_item, mob/user)
|
||||
/obj/structure/machinery/mineral/processing_unit/attackby(obj/item/attacking_item, mob/user)
|
||||
if(default_deconstruction_screwdriver(user, attacking_item))
|
||||
return
|
||||
if(default_deconstruction_crowbar(user, attacking_item))
|
||||
@@ -439,7 +439,7 @@ GLOBAL_LIST_EMPTY_TYPED(alloy_data, /datum/alloy)
|
||||
return ..()
|
||||
|
||||
|
||||
/obj/machinery/mineral/processing_unit/process(seconds_per_tick)
|
||||
/obj/structure/machinery/mineral/processing_unit/process(seconds_per_tick)
|
||||
..()
|
||||
|
||||
if(!src.output_turf || !src.input_turf)
|
||||
@@ -568,7 +568,7 @@ GLOBAL_LIST_EMPTY_TYPED(alloy_data, /datum/alloy)
|
||||
if(console)
|
||||
SStgui.update_uis(console)
|
||||
|
||||
/obj/machinery/mineral/processing_unit/RefreshParts()
|
||||
/obj/structure/machinery/mineral/processing_unit/RefreshParts()
|
||||
..()
|
||||
var/scan_rating = 0
|
||||
var/cap_rating = 0
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/machinery/mineral/rigpress
|
||||
/obj/structure/machinery/mineral/rigpress
|
||||
name = "hardsuit module press"
|
||||
desc = "This machine converts certain items permanently into hardsuit modules."
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
@@ -18,7 +18,7 @@
|
||||
/obj/item/gun/energy/vaurca/thermaldrill = /obj/item/rig_module/mounted/thermalldrill
|
||||
)
|
||||
|
||||
/obj/machinery/mineral/rigpress/mechanics_hints(mob/user, distance, is_adjacent)
|
||||
/obj/structure/machinery/mineral/rigpress/mechanics_hints(mob/user, distance, is_adjacent)
|
||||
. += ..()
|
||||
. += "The following devices can be made:"
|
||||
for(var/press_type in press_types)
|
||||
@@ -26,7 +26,7 @@
|
||||
var/obj/item/product = press_types[press_type]
|
||||
. += "[initial(base.name)] -> [initial(product.name)]"
|
||||
|
||||
/obj/machinery/mineral/rigpress/update_icon()
|
||||
/obj/structure/machinery/mineral/rigpress/update_icon()
|
||||
if(pressing)
|
||||
icon_state = "coinpress1"
|
||||
else
|
||||
@@ -35,7 +35,7 @@
|
||||
/**
|
||||
* If a compatible item is fed into the machine, begin conversion. Only allow one at a time.
|
||||
*/
|
||||
/obj/machinery/mineral/rigpress/attackby(obj/item/attacking_item, mob/user)
|
||||
/obj/structure/machinery/mineral/rigpress/attackby(obj/item/attacking_item, mob/user)
|
||||
if(!pressing)
|
||||
var/outcome_path
|
||||
// Check that the item is compatible.
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
/**********************Mineral stacking unit console**************************/
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console
|
||||
/obj/structure/machinery/mineral/stacking_unit_console
|
||||
name = "stacking machine console"
|
||||
desc = "This console allows you to set the max stack size for the stacking machine, as well as letting you eject stacks manually."
|
||||
icon = 'icons/obj/machinery/wall/terminals.dmi'
|
||||
icon_state = "production_console"
|
||||
density = FALSE
|
||||
anchored = TRUE
|
||||
var/obj/machinery/mineral/stacking_machine/machine
|
||||
var/obj/structure/machinery/mineral/stacking_machine/machine
|
||||
idle_power_usage = 15
|
||||
active_power_usage = 50
|
||||
|
||||
@@ -17,27 +17,27 @@
|
||||
/obj/item/stock_parts/console_screen
|
||||
)
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console/Initialize(mapload, d, populate_components)
|
||||
/obj/structure/machinery/mineral/stacking_unit_console/Initialize(mapload, d, populate_components)
|
||||
..()
|
||||
var/mutable_appearance/screen_overlay = mutable_appearance(icon, "production_console-screen", plane = ABOVE_LIGHTING_PLANE)
|
||||
AddOverlays(screen_overlay)
|
||||
set_light(1.4, 1, COLOR_CYAN)
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console/LateInitialize()
|
||||
/obj/structure/machinery/mineral/stacking_unit_console/LateInitialize()
|
||||
. = ..()
|
||||
setup_machine(null)
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console/Destroy()
|
||||
/obj/structure/machinery/mineral/stacking_unit_console/Destroy()
|
||||
if(machine)
|
||||
machine.console = null
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console/proc/setup_machine(mob/user)
|
||||
/obj/structure/machinery/mineral/stacking_unit_console/proc/setup_machine(mob/user)
|
||||
if(!machine)
|
||||
var/area/machine_area = get_area(src)
|
||||
var/best_distance = INFINITY
|
||||
for(var/obj/machinery/mineral/stacking_machine/checked_machine in SSmachinery.machinery)
|
||||
for(var/obj/structure/machinery/mineral/stacking_machine/checked_machine in SSmachinery.machinery)
|
||||
if(id)
|
||||
if(checked_machine.id == id)
|
||||
machine = checked_machine
|
||||
@@ -51,7 +51,7 @@
|
||||
|
||||
return machine
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console/attackby(obj/item/attacking_item, mob/user)
|
||||
/obj/structure/machinery/mineral/stacking_unit_console/attackby(obj/item/attacking_item, mob/user)
|
||||
if(default_deconstruction_screwdriver(user, attacking_item))
|
||||
return
|
||||
if(default_deconstruction_crowbar(user, attacking_item))
|
||||
@@ -60,11 +60,11 @@
|
||||
return
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console/attack_hand(mob/user)
|
||||
/obj/structure/machinery/mineral/stacking_unit_console/attack_hand(mob/user)
|
||||
add_fingerprint(user)
|
||||
ui_interact(user)
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console/ui_interact(mob/user, datum/tgui/ui)
|
||||
/obj/structure/machinery/mineral/stacking_unit_console/ui_interact(mob/user, datum/tgui/ui)
|
||||
if(!setup_machine(user))
|
||||
return
|
||||
ui = SStgui.try_update_ui(user, src, ui)
|
||||
@@ -72,7 +72,7 @@
|
||||
ui = new(user, src, "StackingMachine", "Stacking Machine")
|
||||
ui.open()
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console/ui_data(mob/user)
|
||||
/obj/structure/machinery/mineral/stacking_unit_console/ui_data(mob/user)
|
||||
if(!machine)
|
||||
return list()
|
||||
var/list/data = list(
|
||||
@@ -88,7 +88,7 @@
|
||||
))
|
||||
return data
|
||||
|
||||
/obj/machinery/mineral/stacking_unit_console/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state)
|
||||
/obj/structure/machinery/mineral/stacking_unit_console/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state)
|
||||
. = ..()
|
||||
if(.)
|
||||
return
|
||||
@@ -116,7 +116,7 @@
|
||||
/**********************Mineral stacking unit**************************/
|
||||
|
||||
|
||||
/obj/machinery/mineral/stacking_machine
|
||||
/obj/structure/machinery/mineral/stacking_machine
|
||||
name = "stacking machine"
|
||||
desc = "A machine which takes loose stacks of finished sheets and packs them together into one easily transportable sheet."
|
||||
icon = 'icons/obj/machinery/mining_machines.dmi'
|
||||
@@ -124,7 +124,7 @@
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
is_processing_machine = TRUE
|
||||
var/obj/machinery/mineral/stacking_unit_console/console
|
||||
var/obj/structure/machinery/mineral/stacking_unit_console/console
|
||||
var/list/stack_storage = list()
|
||||
var/list/stack_paths = list()
|
||||
var/stack_amt = 50 // Amount to stack before releasing
|
||||
@@ -136,7 +136,7 @@
|
||||
/obj/item/stock_parts/manipulator = 2
|
||||
)
|
||||
|
||||
/obj/machinery/mineral/stacking_machine/Initialize()
|
||||
/obj/structure/machinery/mineral/stacking_machine/Initialize()
|
||||
. = ..()
|
||||
|
||||
for(var/stacktype in subtypesof(/obj/item/stack/material) - typesof(/obj/item/stack/material/cyborg))
|
||||
@@ -146,12 +146,12 @@
|
||||
|
||||
setup_io()
|
||||
|
||||
/obj/machinery/mineral/stacking_machine/Destroy()
|
||||
/obj/structure/machinery/mineral/stacking_machine/Destroy()
|
||||
if(console)
|
||||
console.machine = null
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mineral/stacking_machine/attackby(obj/item/attacking_item, mob/user)
|
||||
/obj/structure/machinery/mineral/stacking_machine/attackby(obj/item/attacking_item, mob/user)
|
||||
if(default_deconstruction_screwdriver(user, attacking_item))
|
||||
return
|
||||
if(default_deconstruction_crowbar(user, attacking_item))
|
||||
@@ -160,7 +160,7 @@
|
||||
return
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mineral/stacking_machine/process()
|
||||
/obj/structure/machinery/mineral/stacking_machine/process()
|
||||
if(!console)
|
||||
return
|
||||
if(stat & BROKEN)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/**********************Unloading unit**************************/
|
||||
|
||||
/obj/machinery/mineral/unloading_machine
|
||||
/obj/structure/machinery/mineral/unloading_machine
|
||||
name = "unloading machine"
|
||||
desc = "A machine capable of unloading an ore box or ore scattered on the floor within its input zone, to its output zone."
|
||||
icon = 'icons/obj/machinery/mining_machines.dmi'
|
||||
@@ -17,11 +17,11 @@
|
||||
)
|
||||
|
||||
|
||||
/obj/machinery/mineral/unloading_machine/Initialize()
|
||||
/obj/structure/machinery/mineral/unloading_machine/Initialize()
|
||||
. = ..()
|
||||
setup_io()
|
||||
|
||||
/obj/machinery/mineral/unloading_machine/attackby(obj/item/attacking_item, mob/user)
|
||||
/obj/structure/machinery/mineral/unloading_machine/attackby(obj/item/attacking_item, mob/user)
|
||||
if(default_deconstruction_screwdriver(user, attacking_item))
|
||||
return
|
||||
if(default_deconstruction_crowbar(user, attacking_item))
|
||||
@@ -30,7 +30,7 @@
|
||||
return
|
||||
return ..()
|
||||
|
||||
/obj/machinery/mineral/unloading_machine/process()
|
||||
/obj/structure/machinery/mineral/unloading_machine/process()
|
||||
..()
|
||||
if(src.output_turf && src.input_turf)
|
||||
if(locate(/obj/structure/ore_box, input_turf))
|
||||
|
||||
@@ -36,7 +36,7 @@ GLOBAL_LIST_INIT(minevendor_list, list(
|
||||
new /datum/data/mining_equipment(/obj/item/autochisel, 10, 400),
|
||||
new /datum/data/mining_equipment(/obj/item/tank/jetpack, 10, 400),
|
||||
new /datum/data/mining_equipment(/obj/item/mine_bot_upgrade, 10, 400),
|
||||
new /datum/data/mining_equipment(/obj/machinery/mining/brace, -1, 500, 1),
|
||||
new /datum/data/mining_equipment(/obj/structure/machinery/mining/brace, -1, 500, 1),
|
||||
new /datum/data/mining_equipment(/obj/item/card/mining_point_card, -1, 500),
|
||||
new /datum/data/mining_equipment(/obj/item/storage/belt/mining, 10, 500),
|
||||
new /datum/data/mining_equipment(/obj/item/warp_core, 25, 500),
|
||||
@@ -54,7 +54,7 @@ GLOBAL_LIST_INIT(minevendor_list, list(
|
||||
new /datum/data/mining_equipment(/obj/item/spaceflare, 5, 800),
|
||||
new /datum/data/mining_equipment(/obj/item/lazarus_injector, 25, 1000),
|
||||
new /datum/data/mining_equipment(/obj/item/storage/backpack/cell, 5, 1000),
|
||||
new /datum/data/mining_equipment(/obj/machinery/mining/drill, -1, 1000, 1),
|
||||
new /datum/data/mining_equipment(/obj/structure/machinery/mining/drill, -1, 1000, 1),
|
||||
new /datum/data/mining_equipment(/obj/item/resonator/upgraded, 10, 1250),
|
||||
new /datum/data/mining_equipment(/obj/item/pickaxe/diamond, 10, 1500),
|
||||
new /datum/data/mining_equipment(/obj/item/gun/energy/vaurca/thermaldrill, 5, 1750),
|
||||
@@ -63,7 +63,7 @@ GLOBAL_LIST_INIT(minevendor_list, list(
|
||||
new /datum/data/mining_equipment(/obj/item/orbital_dropper/mecha/miner, 2, 3500)
|
||||
))
|
||||
|
||||
/obj/machinery/mineral/equipment_vendor
|
||||
/obj/structure/machinery/mineral/equipment_vendor
|
||||
name = "mining equipment vendor"
|
||||
desc = "An equipment vendor for miners, points collected at an ore redemption machine can be spent here."
|
||||
icon = 'icons/obj/machinery/mining_machines.dmi'
|
||||
@@ -90,35 +90,35 @@ GLOBAL_LIST_INIT(minevendor_list, list(
|
||||
|
||||
/obj/item/circuitboard/machine/mining_equipment_vendor
|
||||
name = T_BOARD("Mining Equipment Vendor")
|
||||
build_path = /obj/machinery/mineral/equipment_vendor
|
||||
build_path = /obj/structure/machinery/mineral/equipment_vendor
|
||||
origin_tech = list(TECH_DATA = 1, TECH_ENGINEERING = 1)
|
||||
req_components = list( /obj/item/stock_parts/console_screen = 1,
|
||||
/obj/item/stock_parts/matter_bin = 3)
|
||||
|
||||
/obj/machinery/mineral/equipment_vendor/power_change()
|
||||
/obj/structure/machinery/mineral/equipment_vendor/power_change()
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/mineral/equipment_vendor/update_icon()
|
||||
/obj/structure/machinery/mineral/equipment_vendor/update_icon()
|
||||
if(powered())
|
||||
icon_state = initial(icon_state)
|
||||
else
|
||||
icon_state = "[initial(icon_state)]-off"
|
||||
return
|
||||
|
||||
/obj/machinery/mineral/equipment_vendor/attack_hand(mob/user)
|
||||
/obj/structure/machinery/mineral/equipment_vendor/attack_hand(mob/user)
|
||||
if(..())
|
||||
return
|
||||
ui_interact(user)
|
||||
|
||||
/obj/machinery/mineral/equipment_vendor/ui_interact(mob/user, datum/tgui/ui)
|
||||
/obj/structure/machinery/mineral/equipment_vendor/ui_interact(mob/user, datum/tgui/ui)
|
||||
ui = SStgui.try_update_ui(user, src, ui)
|
||||
if(!ui)
|
||||
ui = new(user, src, "MiningVendor", "Mining Equipment Vendor", ui_x=500, ui_y=500)
|
||||
ui.autoupdate = FALSE
|
||||
ui.open()
|
||||
|
||||
/obj/machinery/mineral/equipment_vendor/ui_data(mob/user)
|
||||
/obj/structure/machinery/mineral/equipment_vendor/ui_data(mob/user)
|
||||
var/list/data = list()
|
||||
var/obj/item/card/id/ID = user.GetIdCard()
|
||||
if(ID)
|
||||
@@ -132,7 +132,7 @@ GLOBAL_LIST_INIT(minevendor_list, list(
|
||||
data["prizeList"] = prize_list
|
||||
return data
|
||||
|
||||
/obj/machinery/mineral/equipment_vendor/ui_act(action, params)
|
||||
/obj/structure/machinery/mineral/equipment_vendor/ui_act(action, params)
|
||||
. = ..()
|
||||
if(.)
|
||||
return
|
||||
@@ -160,7 +160,7 @@ GLOBAL_LIST_INIT(minevendor_list, list(
|
||||
intent_message(MACHINE_SOUND)
|
||||
return TRUE
|
||||
|
||||
/obj/machinery/mineral/equipment_vendor/attackby(obj/item/attacking_item, mob/user, params)
|
||||
/obj/structure/machinery/mineral/equipment_vendor/attackby(obj/item/attacking_item, mob/user, params)
|
||||
if(istype(attacking_item, /obj/item/coin/mining))
|
||||
var/list/equipment_choices = list(
|
||||
"Kinetic Accelerator Kit" = /obj/item/storage/toolbox/ka,
|
||||
|
||||
@@ -934,7 +934,7 @@ GLOBAL_LIST_INIT_TYPED(total_extraction_beacons, /obj/structure/extraction_point
|
||||
return
|
||||
var/turf/T = get_turf(A)
|
||||
for(var/found_inhibitor in GLOB.bluespace_inhibitors)
|
||||
var/obj/machinery/anti_bluespace/AB = found_inhibitor
|
||||
var/obj/structure/machinery/anti_bluespace/AB = found_inhibitor
|
||||
if(T.z != AB.z || get_dist(T, AB) > 8 || (AB.stat & (NOPOWER | BROKEN)))
|
||||
continue
|
||||
AB.use_power_oneoff(AB.active_power_usage)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**********************Mint**************************/
|
||||
|
||||
|
||||
/obj/machinery/mineral/mint
|
||||
/obj/structure/machinery/mineral/mint
|
||||
name = "coin press"
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
icon_state = "coinpress0"
|
||||
@@ -18,12 +18,12 @@
|
||||
var/chosen = DEFAULT_WALL_MATERIAL //which material will be used to make coins
|
||||
var/coinsToProduce = 10
|
||||
|
||||
/obj/machinery/mineral/mint/Initialize()
|
||||
/obj/structure/machinery/mineral/mint/Initialize()
|
||||
. = ..()
|
||||
START_PROCESSING(SSprocessing, src)
|
||||
setup_io()
|
||||
|
||||
/obj/machinery/mineral/mint/process()
|
||||
/obj/structure/machinery/mineral/mint/process()
|
||||
if(input_turf)
|
||||
var/obj/item/stack/O
|
||||
O = locate(/obj/item/stack, get_turf(input_turf))
|
||||
@@ -47,7 +47,7 @@
|
||||
if(processed)
|
||||
qdel(O)
|
||||
|
||||
/obj/machinery/mineral/mint/attack_hand(user)
|
||||
/obj/structure/machinery/mineral/mint/attack_hand(user)
|
||||
var/dat = "<b>Coin Press</b><br>"
|
||||
|
||||
if(!input_turf)
|
||||
@@ -100,7 +100,7 @@
|
||||
dat += "<br><A href='byond://?src=[REF(src)];makeCoins=[1]'>Make coins</A>"
|
||||
user << browse(HTML_SKELETON(dat), "window=mint")
|
||||
|
||||
/obj/machinery/mineral/mint/Topic(href, href_list)
|
||||
/obj/structure/machinery/mineral/mint/Topic(href, href_list)
|
||||
if(..())
|
||||
return TRUE
|
||||
usr.set_machine(src)
|
||||
|
||||
Reference in New Issue
Block a user