From b5472e50f4ab32e9e444740f93473eaf2a4e3970 Mon Sep 17 00:00:00 2001 From: Lohikar Date: Fri, 14 Jul 2017 12:08:59 -0500 Subject: [PATCH] Convert a fuck ton of machines to Initialize() (#2985) Needs testing, but shouldn't break anything. Also adds Destroy() to the SMES base class. --- code/game/machinery/Sleeper.dm | 5 +---- code/game/machinery/ai_slipper.dm | 4 ++-- code/game/machinery/computer/RCON_Console.dm | 4 ++-- code/game/machinery/computer/arcade.dm | 4 ++-- code/game/machinery/computer/communications.dm | 7 ++++--- code/game/machinery/computer/crew.dm | 4 ++-- code/game/machinery/computer/guestpass.dm | 4 ++-- code/game/machinery/computer/message.dm | 4 ++-- code/game/machinery/cryopod.dm | 7 +------ code/game/machinery/doppler_array.dm | 4 ++-- code/game/machinery/floodlight.dm | 6 +++--- code/game/machinery/floorlayer.dm | 4 ++-- code/game/machinery/pipe/pipelayer.dm | 4 ++-- code/game/machinery/suit_storage_unit.dm | 9 +++++---- code/game/objects/items/devices/spy_bug.dm | 4 ++-- code/game/objects/structures/watercloset.dm | 4 ++-- code/modules/economy/Accounts_DB.dm | 4 ++-- code/modules/examine/descriptions/atmospherics.dm | 4 ++-- code/modules/holodeck/HolodeckControl.dm | 8 ++++---- code/modules/holodeck/HolodeckObjects.dm | 4 ---- code/modules/hydroponics/trays/tray_apiary.dm | 4 ++-- code/modules/mining/drilling/drill.dm | 9 ++++----- code/modules/power/antimatter/shielding.dm | 13 +++++++++---- code/modules/power/batteryrack.dm | 5 ++--- code/modules/power/singularity/collector.dm | 4 ++-- code/modules/power/singularity/field_generator.dm | 10 ++-------- .../particle_accelerator/particle_control.dm | 4 ++-- code/modules/power/smes.dm | 1 + code/modules/power/smes_construction.dm | 4 ++-- code/modules/power/tesla/coil.dm | 8 ++++---- code/modules/reagents/Chemistry-Machinery.dm | 5 ++--- code/modules/research/message_server.dm | 3 ++- .../artifact/artifact_autocloner.dm | 4 ++-- .../artifact/artifact_replicator.dm | 4 ++-- .../xenoarchaeology/artifact/artifact_unknown.dm | 4 ++-- .../research/xenoarchaeology/finds/finds_misc.dm | 3 ++- .../xenoarchaeology/machinery/artifact_analyser.dm | 4 ++-- .../machinery/artifact_harvester.dm | 4 ++-- .../xenoarchaeology/machinery/geosample_scanner.dm | 4 ++-- .../xenoarchaeology/tools/suspension_generator.dm | 6 +++--- code/modules/shieldgen/shield_capacitor.dm | 14 ++++++++------ code/modules/shieldgen/shield_gen_external.dm | 3 --- code/modules/supermatter/supermatter.dm | 2 +- 43 files changed, 104 insertions(+), 116 deletions(-) diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 2a7a9deea46..8e9faf65396 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -16,12 +16,9 @@ idle_power_usage = 15 active_power_usage = 200 //builtin health analyzer, dialysis machine, injectors. -/obj/machinery/sleeper/New() - ..() - beaker = new /obj/item/weapon/reagent_containers/glass/beaker/large(src) - /obj/machinery/sleeper/Initialize() . = ..() + beaker = new /obj/item/weapon/reagent_containers/glass/beaker/large(src) update_icon() /obj/machinery/sleeper/machinery_process() diff --git a/code/game/machinery/ai_slipper.dm b/code/game/machinery/ai_slipper.dm index 6dd1c462769..778c599ac4b 100644 --- a/code/game/machinery/ai_slipper.dm +++ b/code/game/machinery/ai_slipper.dm @@ -15,8 +15,8 @@ req_access = list(access_ai_upload) -/obj/machinery/ai_slipper/New() - ..() +/obj/machinery/ai_slipper/Initialize() + . = ..() update_icon() /obj/machinery/ai_slipper/power_change() diff --git a/code/game/machinery/computer/RCON_Console.dm b/code/game/machinery/computer/RCON_Console.dm index 2319288dab3..4de50fee6b2 100644 --- a/code/game/machinery/computer/RCON_Console.dm +++ b/code/game/machinery/computer/RCON_Console.dm @@ -15,8 +15,8 @@ var/current_tag = null var/datum/nano_module/rcon/rcon -/obj/machinery/computer/rcon/New() - ..() +/obj/machinery/computer/rcon/Initialize() + . = ..() rcon = new(src) /obj/machinery/computer/rcon/Destroy() diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 13d96e76872..41c42866a3b 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -93,8 +93,8 @@ var/blocked = 0 //Player cannot attack/heal while set var/turtle = 0 -/obj/machinery/computer/arcade/battle/New() - ..() +/obj/machinery/computer/arcade/battle/Initialize() + . = ..() var/name_action var/name_part1 var/name_part2 diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index efb75c2fad3..fba483dedc7 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -35,10 +35,11 @@ var/stat_msg1 var/stat_msg2 - var/datum/announcement/priority/crew_announcement = new + var/datum/announcement/priority/crew_announcement -/obj/machinery/computer/communications/New() - ..() +/obj/machinery/computer/communications/Initialize() + . = ..() + crew_announcement = new crew_announcement.newscast = 1 /obj/machinery/computer/communications/machinery_process() diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm index ed323a9a6b1..ae4da16567e 100644 --- a/code/game/machinery/computer/crew.dm +++ b/code/game/machinery/computer/crew.dm @@ -10,9 +10,9 @@ circuit = /obj/item/weapon/circuitboard/crew var/datum/nano_module/crew_monitor/crew_monitor -/obj/machinery/computer/crew/New() +/obj/machinery/computer/crew/Initialize() + . = ..() crew_monitor = new(src) - ..() /obj/machinery/computer/crew/Destroy() qdel(crew_monitor) diff --git a/code/game/machinery/computer/guestpass.dm b/code/game/machinery/computer/guestpass.dm index c63134fe0c2..56eb8dc77d6 100644 --- a/code/game/machinery/computer/guestpass.dm +++ b/code/game/machinery/computer/guestpass.dm @@ -59,8 +59,8 @@ var/list/internal_log = list() var/mode = 0 // 0 - making pass, 1 - viewing logs -/obj/machinery/computer/guestpass/New() - ..() +/obj/machinery/computer/guestpass/Initialize() + . = ..() uid = "[rand(100,999)]-G[rand(10,99)]" /obj/machinery/computer/guestpass/attackby(obj/O, mob/user) diff --git a/code/game/machinery/computer/message.dm b/code/game/machinery/computer/message.dm index 05e7a5cb680..ec313abdb00 100644 --- a/code/game/machinery/computer/message.dm +++ b/code/game/machinery/computer/message.dm @@ -29,8 +29,8 @@ var/customjob = "Admin" var/custommessage = "This is a test, please ignore." -/obj/machinery/computer/message_monitor/New() - ..() +/obj/machinery/computer/message_monitor/Initialize() + . = ..() spark_system = bind_spark(src, 5) /obj/machinery/computer/message_monitor/Destroy() diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index add0c705f83..8746a637012 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -205,10 +205,6 @@ allow_occupant_types = list(/mob/living/silicon/robot) disallow_occupant_types = list(/mob/living/silicon/robot/drone) -/obj/machinery/cryopod/New() - announce = new /obj/item/device/radio/intercom(src) - ..() - /obj/machinery/cryopod/Destroy() if(occupant) occupant.forceMove(loc) @@ -295,7 +291,6 @@ //Delete all items not on the preservation list. var/list/items = src.contents.Copy() items -= occupant // Don't delete the occupant - items -= announce // or the autosay radio. for(var/obj/item/W in items) @@ -324,7 +319,7 @@ icon_state = base_icon_state - announce.autosay("[occupant.real_name], [occupant.mind.role_alt_title], [on_store_message]", "[on_store_name]") + global_announcer.autosay("[occupant.real_name], [occupant.mind.role_alt_title], [on_store_message]", "[on_store_name]") visible_message("\The [initial(name)] hums and hisses as it moves [occupant.real_name] into storage.", 3) // Let SSjobs handle the rest. diff --git a/code/game/machinery/doppler_array.dm b/code/game/machinery/doppler_array.dm index f762a575739..04153493a50 100644 --- a/code/game/machinery/doppler_array.dm +++ b/code/game/machinery/doppler_array.dm @@ -5,8 +5,8 @@ var/list/doppler_arrays = list() desc = "A highly precise directional sensor array which measures the release of quants from decaying tachyons. The doppler shifting of the mirror-image formed by these quants can reveal the size, location and temporal affects of energetic disturbances within a large radius ahead of the array." -/obj/machinery/doppler_array/New() - ..() +/obj/machinery/doppler_array/Initialize() + . = ..() doppler_arrays += src /obj/machinery/doppler_array/Destroy() diff --git a/code/game/machinery/floodlight.dm b/code/game/machinery/floodlight.dm index 80360a80e14..85ec1193925 100644 --- a/code/game/machinery/floodlight.dm +++ b/code/game/machinery/floodlight.dm @@ -13,11 +13,11 @@ light_color = LIGHT_COLOR_TUNGSTEN light_wedge = LIGHT_WIDE -/obj/machinery/floodlight/New() - src.cell = new(src) +/obj/machinery/floodlight/Initialize() + . = ..() + cell = new(src) cell.maxcharge = 1000 cell.charge = 1000 // 41minutes @ 200W - ..() /obj/machinery/floodlight/update_icon() overlays.Cut() diff --git a/code/game/machinery/floorlayer.dm b/code/game/machinery/floorlayer.dm index 70a49a74b35..9dd78fd094e 100644 --- a/code/game/machinery/floorlayer.dm +++ b/code/game/machinery/floorlayer.dm @@ -9,9 +9,9 @@ var/obj/item/stack/tile/T var/list/mode = list("dismantle"=0,"laying"=0,"collect"=0) -/obj/machinery/floorlayer/New() +/obj/machinery/floorlayer/Initialize() + . = ..() T = new/obj/item/stack/tile/floor(src) - ..() /obj/machinery/floorlayer/Move(new_turf,M_Dir) ..() diff --git a/code/game/machinery/pipe/pipelayer.dm b/code/game/machinery/pipe/pipelayer.dm index 0de61b4685f..b20b35e5fcb 100644 --- a/code/game/machinery/pipe/pipelayer.dm +++ b/code/game/machinery/pipe/pipelayer.dm @@ -15,9 +15,9 @@ var/obj/item/weapon/wrench/W var/list/Pipes = list("regular pipes"=0,"scrubbers pipes"=31,"supply pipes"=29,"heat exchange pipes"=2) -/obj/machinery/pipelayer/New() +/obj/machinery/pipelayer/Initialize() + . = ..() W = new(src) - ..() /obj/machinery/pipelayer/Move(new_turf,M_Dir) ..() diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index de534ea9cc3..50dd39fe2e8 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -35,8 +35,9 @@ MASK_TYPE = /obj/item/clothing/mask/breath -/obj/machinery/suit_storage_unit/New() - src.update_icon() +/obj/machinery/suit_storage_unit/Initialize() + . = ..() + update_icon() if(SUIT_TYPE) SUIT = new SUIT_TYPE(src) if(HELMET_TYPE) @@ -605,8 +606,8 @@ var/datum/wires/suit_storage_unit/wires = null -/obj/machinery/suit_cycler/New() - ..() +/obj/machinery/suit_cycler/Initialize() + . = ..() wires = new(src) target_department = departments[1] diff --git a/code/game/objects/items/devices/spy_bug.dm b/code/game/objects/items/devices/spy_bug.dm index 7e591b4a679..3b36384220a 100644 --- a/code/game/objects/items/devices/spy_bug.dm +++ b/code/game/objects/items/devices/spy_bug.dm @@ -147,8 +147,8 @@ // These cheap toys are accessible from the mercenary camera console as well network = list(NETWORK_MERCENARY) -/obj/machinery/camera/spy/New() - ..() +/obj/machinery/camera/spy/Initialize() + . = ..() name = "DV-136ZB #[rand(1000,9999)]" c_tag = name diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index 4babb4b3d10..e8d17c2f777 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -141,8 +141,8 @@ var/is_washing = 0 var/list/temperature_settings = list("normal" = 310, "boiling" = T0C+100, "freezing" = T0C) -/obj/machinery/shower/New() - ..() +/obj/machinery/shower/Initialize() + . = ..() create_reagents(2) //add heat controls? when emagged, you can freeze to death in it? diff --git a/code/modules/economy/Accounts_DB.dm b/code/modules/economy/Accounts_DB.dm index a78b13a5386..992d144e2bd 100644 --- a/code/modules/economy/Accounts_DB.dm +++ b/code/modules/economy/Accounts_DB.dm @@ -40,9 +40,9 @@ Generated By: [held_card.registered_name], [held_card.assignment]
"} -/obj/machinery/account_database/New() +/obj/machinery/account_database/Initialize() + . = ..() machine_id = "[station_name()] Acc. DB #[num_financial_terminals++]" - ..() /obj/machinery/account_database/attackby(obj/O, mob/user) if(!istype(O, /obj/item/weapon/card/id)) diff --git a/code/modules/examine/descriptions/atmospherics.dm b/code/modules/examine/descriptions/atmospherics.dm index e01600aa6d6..f71aa56f116 100644 --- a/code/modules/examine/descriptions/atmospherics.dm +++ b/code/modules/examine/descriptions/atmospherics.dm @@ -2,8 +2,8 @@ description_info = "This pipe, and all other pipes, can be connected or disconnected by a wrench. The internal pressure of the pipe must \ be below 300 kPa to do this. More pipes can be obtained from the pipe dispenser." -/obj/machinery/atmospherics/pipe/New() //This is needed or else 20+ lines of copypasta to dance around inheritence. - ..() +/obj/machinery/atmospherics/pipe/Initialize() //This is needed or else 20+ lines of copypasta to dance around inheritence. + . = ..() description_info += "
Most pipes and atmospheric devices can be connected or disconnected with a wrench. The pipe's pressure must not be too high, \ or if it is a device, it must be turned off first." diff --git a/code/modules/holodeck/HolodeckControl.dm b/code/modules/holodeck/HolodeckControl.dm index 83c1a5dae5e..474804f6082 100644 --- a/code/modules/holodeck/HolodeckControl.dm +++ b/code/modules/holodeck/HolodeckControl.dm @@ -26,8 +26,8 @@ var/list/supported_programs var/list/restricted_programs -/obj/machinery/computer/HolodeckControl/New() - ..() +/obj/machinery/computer/HolodeckControl/Initialize() + . = ..() linkedholodeck = locate(linkedholodeck_area) supported_programs = list() restricted_programs = list() @@ -339,8 +339,8 @@ density = 0 linkedholodeck_area = /area/holodeck/alphadeck -/obj/machinery/computer/HolodeckControl/Exodus/New() - ..() +/obj/machinery/computer/HolodeckControl/Exodus/Initialize() + . = ..() supported_programs = list( "Empty Court" = "emptycourt", "Basketball Court" = "basketball", diff --git a/code/modules/holodeck/HolodeckObjects.dm b/code/modules/holodeck/HolodeckObjects.dm index 4054a75ed8e..041723a95a2 100644 --- a/code/modules/holodeck/HolodeckObjects.dm +++ b/code/modules/holodeck/HolodeckObjects.dm @@ -381,10 +381,6 @@ user << "The station AI is not to interact with these devices!" return -/obj/machinery/readybutton/New() - ..() - - /obj/machinery/readybutton/attackby(obj/item/weapon/W as obj, mob/user as mob) user << "The device is a solid button, there's nothing you can do with it!" diff --git a/code/modules/hydroponics/trays/tray_apiary.dm b/code/modules/hydroponics/trays/tray_apiary.dm index 3d5f3343bfa..8069f88eb51 100644 --- a/code/modules/hydroponics/trays/tray_apiary.dm +++ b/code/modules/hydroponics/trays/tray_apiary.dm @@ -25,9 +25,9 @@ var/hydrotray_type = /obj/machinery/portable_atmospherics/hydroponics //overwrite this after it's created if the apiary needs a custom machinery sprite -/obj/machinery/apiary/New() +/obj/machinery/apiary/Initialize() ..() - overlays += image('icons/obj/apiary_bees_etc.dmi', icon_state="apiary") + add_overlay(image('icons/obj/apiary_bees_etc.dmi', icon_state = "apiary")) /obj/machinery/apiary/bullet_act(var/obj/item/projectile/Proj) //Works with the Somatoray to modify plant variables. if(istype(Proj ,/obj/item/projectile/energy/floramut)) diff --git a/code/modules/mining/drilling/drill.dm b/code/modules/mining/drilling/drill.dm index 5b03bac02f9..8808f0ccab4 100644 --- a/code/modules/mining/drilling/drill.dm +++ b/code/modules/mining/drilling/drill.dm @@ -40,9 +40,8 @@ var/datum/effect_system/sparks/spark_system -/obj/machinery/mining/drill/New() - - ..() +/obj/machinery/mining/drill/Initialize() + . = ..() component_parts = list() component_parts += new /obj/item/weapon/circuitboard/miningdrill(src) @@ -340,8 +339,8 @@ icon_state = "mining_brace" var/obj/machinery/mining/drill/connected -/obj/machinery/mining/brace/New() - ..() +/obj/machinery/mining/brace/Initialize() + . = ..() component_parts = list() component_parts += new /obj/item/weapon/circuitboard/miningdrillbrace(src) diff --git a/code/modules/power/antimatter/shielding.dm b/code/modules/power/antimatter/shielding.dm index 09c09f9361a..3deed76df05 100644 --- a/code/modules/power/antimatter/shielding.dm +++ b/code/modules/power/antimatter/shielding.dm @@ -36,8 +36,8 @@ proc/cardinalrange(var/center) /obj/machinery/am_shielding/map mapped = 1 -/obj/machinery/am_shielding/New(loc, var/obj/machinery/power/am_control_unit/AMC) - ..() +/obj/machinery/am_shielding/Initialize(mapload, var/obj/machinery/power/am_control_unit/AMC) + . = ..() if(!AMC) if (!mapped) WARNING("AME sector somehow created without a parent control unit!") @@ -45,8 +45,13 @@ proc/cardinalrange(var/center) return link_control(AMC) remove_machine(src) - spawn (10) - update_icon() + if (mapload) + . = INITIALIZE_HINT_LATELOAD + else + addtimer(CALLBACK(src, /atom/.proc/update_icon), 1 SECOND) + +/obj/machinery/am_shielding/LateInitialize() + update_icon() /obj/machinery/am_shielding/proc/link_control(var/obj/machinery/power/am_control_unit/AMC) if(!istype(AMC)) diff --git a/code/modules/power/batteryrack.dm b/code/modules/power/batteryrack.dm index b0703c08b67..8397618fc57 100644 --- a/code/modules/power/batteryrack.dm +++ b/code/modules/power/batteryrack.dm @@ -12,11 +12,10 @@ var/cells_amount = 0 var/capacitors_amount = 0 -/obj/machinery/power/smes/batteryrack/New() - ..() +/obj/machinery/power/smes/batteryrack/Initialize() + . = ..() add_parts() RefreshParts() - return //Maybe this should be moved up to obj/machinery /obj/machinery/power/smes/batteryrack/proc/add_parts() diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 05972c9aa17..71ab924494b 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -17,8 +17,8 @@ var/global/list/rad_collectors = list() var/locked = 0 var/drainratio = 1 -/obj/machinery/power/rad_collector/New() - ..() +/obj/machinery/power/rad_collector/Initialize() + . = ..() rad_collectors += src /obj/machinery/power/rad_collector/Destroy() diff --git a/code/modules/power/singularity/field_generator.dm b/code/modules/power/singularity/field_generator.dm index c556b50244a..17d25f26f6d 100644 --- a/code/modules/power/singularity/field_generator.dm +++ b/code/modules/power/singularity/field_generator.dm @@ -28,8 +28,8 @@ field_generator power level display var/power = 30000 // Current amount of power var/state = 0 var/warming_up = 0 - var/list/obj/machinery/containment_field/fields - var/list/obj/machinery/field_generator/connected_gens + var/list/obj/machinery/containment_field/fields = list() + var/list/obj/machinery/field_generator/connected_gens = list() var/clean_up = 0 //If keeping field generators powered is hard then increase the emitter active power usage. @@ -52,12 +52,6 @@ field_generator power level display if(level) add_overlay("+p[level]") -/obj/machinery/field_generator/New() - ..() - fields = list() - connected_gens = list() - return - /obj/machinery/field_generator/machinery_process() if(Varedit_start == 1) if(active == 0) diff --git a/code/modules/power/singularity/particle_accelerator/particle_control.dm b/code/modules/power/singularity/particle_accelerator/particle_control.dm index 9e87589cc35..4b60296d329 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_control.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_control.dm @@ -21,11 +21,11 @@ var/parts = null var/datum/wires/particle_acc/control_box/wires = null -/obj/machinery/particle_accelerator/control_box/New() +/obj/machinery/particle_accelerator/control_box/Initialize() wires = new(src) connected_parts = list() active_power_usage = initial(active_power_usage) * (strength + 1) - ..() + . = ..() /obj/machinery/particle_accelerator/control_box/Destroy() if(active) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index ab6068adffa..c84291ed84d 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -78,6 +78,7 @@ QDEL_NULL(big_spark) QDEL_NULL(small_spark) SSpower.smes_units -= src + QDEL_NULL(terminal) return ..() // TODO: Properly clean up terminal. /obj/machinery/power/smes/Initialize() diff --git a/code/modules/power/smes_construction.dm b/code/modules/power/smes_construction.dm index 52802d6916d..53973a903f2 100644 --- a/code/modules/power/smes_construction.dm +++ b/code/modules/power/smes_construction.dm @@ -106,7 +106,7 @@ // Proc: New() // Parameters: None // Description: Adds standard components for this SMES, and forces recalculation of properties. -/obj/machinery/power/smes/buildable/New(var/install_coils = 1) +/obj/machinery/power/smes/buildable/Initialize(mapload, install_coils = 1) component_parts = list() component_parts += new /obj/item/stack/cable_coil(src,30) component_parts += new /obj/item/weapon/circuitboard/smes(src) @@ -120,7 +120,7 @@ SSmachinery.queue_rcon_update() - ..() + . = ..() // Proc: attack_hand() // Parameters: None diff --git a/code/modules/power/tesla/coil.dm b/code/modules/power/tesla/coil.dm index 32cf9c37a2f..4a86d902235 100644 --- a/code/modules/power/tesla/coil.dm +++ b/code/modules/power/tesla/coil.dm @@ -8,8 +8,8 @@ var/power_loss = 2 var/input_power_multiplier = 1 -/obj/machinery/power/tesla_coil/New() - ..() +/obj/machinery/power/tesla_coil/Initialize() + . = ..() component_parts = list() // component_parts += new /obj/item/weapon/circuitboard/tesla_coil(null) component_parts += new /obj/item/weapon/stock_parts/capacitor(null) @@ -62,8 +62,8 @@ anchored = 0 density = 1 -/obj/machinery/power/grounding_rod/New() - ..() +/obj/machinery/power/grounding_rod/Initialize() + . = ..() component_parts = list() // component_parts += new /obj/item/weapon/circuitboard/grounding_rod(null) component_parts += new /obj/item/weapon/stock_parts/capacitor(null) diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index faf2ebea015..0b5015b9584 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -566,10 +566,9 @@ /obj/item/stack/material/mhydrogen = "hydrazine" //doesn't really make much sense but thank Bay ) -/obj/machinery/reagentgrinder/New() - ..() +/obj/machinery/reagentgrinder/Initialize() + . = ..() beaker = new /obj/item/weapon/reagent_containers/glass/beaker/large(src) - return /obj/machinery/reagentgrinder/update_icon() icon_state = "juicer"+num2text(!isnull(beaker)) diff --git a/code/modules/research/message_server.dm b/code/modules/research/message_server.dm index 4a592d324dd..f61d27fa5cb 100644 --- a/code/modules/research/message_server.dm +++ b/code/modules/research/message_server.dm @@ -176,7 +176,8 @@ var/obj/machinery/blackbox_recorder/blackbox // Note: actual logging has been moved to SSfeedback. //Only one can exist in the world! -/obj/machinery/blackbox_recorder/New() +/obj/machinery/blackbox_recorder/Initialize() + . = ..() if(blackbox) if(istype(blackbox,/obj/machinery/blackbox_recorder)) qdel(src) diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_autocloner.dm b/code/modules/research/xenoarchaeology/artifact/artifact_autocloner.dm index e91ab5bce6b..51a3ad9d1e2 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact_autocloner.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact_autocloner.dm @@ -15,8 +15,8 @@ active_power_usage = 2000 idle_power_usage = 1000 -/obj/machinery/auto_cloner/New() - ..() +/obj/machinery/auto_cloner/Initialize() + . = ..() time_per_spawn = rand(1200,3600) diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm index 92b630baf65..559d07a5747 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm @@ -20,8 +20,8 @@ var/fail_message -/obj/machinery/replicator/New() - ..() +/obj/machinery/replicator/Initialize() + . = ..() var/list/viables = list(\ /obj/item/roller,\ diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_unknown.dm b/code/modules/research/xenoarchaeology/artifact/artifact_unknown.dm index 27a68f23ecb..0e6c0172385 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact_unknown.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact_unknown.dm @@ -30,8 +30,8 @@ var/datum/artifact_effect/secondary_effect var/being_used = 0 -/obj/machinery/artifact/New() - ..() +/obj/machinery/artifact/Initialize() + . = ..() //setup primary effect - these are the main ones (mixed) var/effecttype = pick(typesof(/datum/artifact_effect) - /datum/artifact_effect) diff --git a/code/modules/research/xenoarchaeology/finds/finds_misc.dm b/code/modules/research/xenoarchaeology/finds/finds_misc.dm index 03071c760b1..ca04405b56c 100644 --- a/code/modules/research/xenoarchaeology/finds/finds_misc.dm +++ b/code/modules/research/xenoarchaeology/finds/finds_misc.dm @@ -7,6 +7,7 @@ icon = 'icons/obj/mining.dmi' icon_state = "crystal" -/obj/machinery/crystal/New() +/obj/machinery/crystal/Initialize() + . = ..() if(prob(50)) icon_state = "crystal2" diff --git a/code/modules/research/xenoarchaeology/machinery/artifact_analyser.dm b/code/modules/research/xenoarchaeology/machinery/artifact_analyser.dm index fe6f8ad936b..91b08edd5ef 100644 --- a/code/modules/research/xenoarchaeology/machinery/artifact_analyser.dm +++ b/code/modules/research/xenoarchaeology/machinery/artifact_analyser.dm @@ -15,8 +15,8 @@ var/obj/scanned_object var/report_num = 0 -/obj/machinery/artifact_analyser/New() - ..() +/obj/machinery/artifact_analyser/Initialize() + . = ..() reconnect_scanner() /obj/machinery/artifact_analyser/proc/reconnect_scanner() diff --git a/code/modules/research/xenoarchaeology/machinery/artifact_harvester.dm b/code/modules/research/xenoarchaeology/machinery/artifact_harvester.dm index fe123309ebb..649eb23c1dd 100644 --- a/code/modules/research/xenoarchaeology/machinery/artifact_harvester.dm +++ b/code/modules/research/xenoarchaeology/machinery/artifact_harvester.dm @@ -14,8 +14,8 @@ var/obj/machinery/artifact_scanpad/owned_scanner = null var/last_process = 0 -/obj/machinery/artifact_harvester/New() - ..() +/obj/machinery/artifact_harvester/Initialize() + . = ..() //connect to a nearby scanner pad owned_scanner = locate(/obj/machinery/artifact_scanpad) in get_step(src, dir) if(!owned_scanner) diff --git a/code/modules/research/xenoarchaeology/machinery/geosample_scanner.dm b/code/modules/research/xenoarchaeology/machinery/geosample_scanner.dm index 2dec37db23d..f0016a2525a 100644 --- a/code/modules/research/xenoarchaeology/machinery/geosample_scanner.dm +++ b/code/modules/research/xenoarchaeology/machinery/geosample_scanner.dm @@ -45,8 +45,8 @@ var/t_left_radspike = 0 var/rad_shield = 0 -/obj/machinery/radiocarbon_spectrometer/New() - ..() +/obj/machinery/radiocarbon_spectrometer/Initialize() + . = ..() create_reagents(500) coolant_reagents_purity["water"] = 0.5 coolant_reagents_purity["icecoffee"] = 0.6 diff --git a/code/modules/research/xenoarchaeology/tools/suspension_generator.dm b/code/modules/research/xenoarchaeology/tools/suspension_generator.dm index 1bba8c03f4f..0c0254381d3 100644 --- a/code/modules/research/xenoarchaeology/tools/suspension_generator.dm +++ b/code/modules/research/xenoarchaeology/tools/suspension_generator.dm @@ -15,9 +15,9 @@ var/obj/effect/suspension_field/suspension_field var/list/secured_mobs = list() -/obj/machinery/suspension_gen/New() - src.cell = new/obj/item/weapon/cell/high(src) - ..() +/obj/machinery/suspension_gen/Initialize() + . = ..() + cell = new/obj/item/weapon/cell/high(src) /obj/machinery/suspension_gen/machinery_process() set background = 1 diff --git a/code/modules/shieldgen/shield_capacitor.dm b/code/modules/shieldgen/shield_capacitor.dm index 6eb928c4335..94e815a37da 100644 --- a/code/modules/shieldgen/shield_capacitor.dm +++ b/code/modules/shieldgen/shield_capacitor.dm @@ -19,13 +19,15 @@ var/charge_rate = 100000 //100 kW var/obj/machinery/shield_gen/owned_gen -/obj/machinery/shield_capacitor/New() - spawn(10) - for(var/obj/machinery/shield_gen/possible_gen in range(1, src)) - if(get_dir(src, possible_gen) == src.dir) - possible_gen.owned_capacitor = src - break +/obj/machinery/shield_capacitor/Initialize() ..() + return INITIALIZE_HINT_LATELOAD + +/obj/machinery/shield_capacitor/LateInitialize() + for(var/obj/machinery/shield_gen/possible_gen in range(1, src)) + if(get_dir(src, possible_gen) == src.dir) + possible_gen.owned_capacitor = src + break /obj/machinery/shield_capacitor/emag_act(var/remaining_charges, var/mob/user) if(prob(75)) diff --git a/code/modules/shieldgen/shield_gen_external.dm b/code/modules/shieldgen/shield_gen_external.dm index 4264b8579b7..31acacaf5c9 100644 --- a/code/modules/shieldgen/shield_gen_external.dm +++ b/code/modules/shieldgen/shield_gen_external.dm @@ -4,9 +4,6 @@ /obj/machinery/shield_gen/external name = "hull shield generator" -/obj/machinery/shield_gen/external/New() - ..() - //NOT MULTIZ COMPATIBLE //Search for space turfs within range that are adjacent to a simulated turf. /obj/machinery/shield_gen/external/get_shielded_turfs() diff --git a/code/modules/supermatter/supermatter.dm b/code/modules/supermatter/supermatter.dm index 2e7822eee50..b1c9da7911d 100644 --- a/code/modules/supermatter/supermatter.dm +++ b/code/modules/supermatter/supermatter.dm @@ -92,7 +92,7 @@ var/debug = 0 -/obj/machinery/power/supermatter/New() +/obj/machinery/power/supermatter/Initialize() . = ..() radio = new /obj/item/device/radio{channels=list("Engineering")}(src)