mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-12 18:03:13 +00:00
So i left over some basic `/whatever/proc/format` uses in the original PR this fixes it. Notable exceptions to the rule: - Paths in add_verb/remove_verb, we need full path instead of a name there to access verb metadata so we can't use proc ref macros there. - regex.Replace, found out that it does not accept call by name. Instead i added new REGEX_REPLACE_HANDLER so we can at least try to mark these. There's still leftover global procs that do not use GLOBAL_PROC_REF but they functionally equivalent so that's for later. I don't see any reasonable way to grep for this. But if you got any ideas please share.
48 lines
1.9 KiB
Plaintext
48 lines
1.9 KiB
Plaintext
// Held by /obj/machinery/modular_computer to reduce amount of copy-pasted code.
|
|
//TODO: REFACTOR THIS SPAGHETTI CODE
|
|
/obj/item/modular_computer/processor
|
|
name = "processing unit"
|
|
desc = "An advanced computer." //modular PCs examine us
|
|
icon = null
|
|
icon_state = null
|
|
icon_state_unpowered = null
|
|
icon_state_menu = null
|
|
hardware_flag = 0
|
|
|
|
///The modular computer MACHINE that hosts us.
|
|
var/obj/machinery/modular_computer/machinery_computer
|
|
|
|
/obj/item/modular_computer/processor/UpdateDisplay()
|
|
. = ..()
|
|
//update the name with us
|
|
machinery_computer.name = name
|
|
|
|
/obj/item/modular_computer/processor/Initialize(mapload)
|
|
if(!istype(loc, /obj/machinery/modular_computer))
|
|
CRASH("A non '/obj/machinery/modular_computer' had a [src] initialized in it!")
|
|
|
|
// Obtain reference to machinery computer
|
|
machinery_computer = loc
|
|
machinery_computer.cpu = src
|
|
internal_cell = machinery_computer.internal_cell
|
|
hardware_flag = machinery_computer.hardware_flag
|
|
steel_sheet_cost = machinery_computer.steel_sheet_cost
|
|
max_idle_programs = machinery_computer.max_idle_programs
|
|
update_integrity(machinery_computer.get_integrity())
|
|
max_integrity = machinery_computer.max_integrity
|
|
integrity_failure = machinery_computer.integrity_failure
|
|
base_active_power_usage = machinery_computer.base_active_power_usage
|
|
base_idle_power_usage = machinery_computer.base_idle_power_usage
|
|
machinery_computer.RegisterSignal(src, COMSIG_ATOM_UPDATED_ICON, TYPE_PROC_REF(/obj/machinery/modular_computer, relay_icon_update)) //when we update_icon, also update the computer
|
|
return ..()
|
|
|
|
/obj/item/modular_computer/processor/Destroy(force)
|
|
if(machinery_computer && (machinery_computer.cpu == src))
|
|
machinery_computer.cpu = null
|
|
machinery_computer.UnregisterSignal(src, COMSIG_ATOM_UPDATED_ICON)
|
|
machinery_computer = null
|
|
return ..()
|
|
|
|
/obj/item/modular_computer/processor/relay_qdel()
|
|
qdel(machinery_computer)
|