From abf3f76df0e4bf00a107a516576ac0c94bd7eae6 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Tue, 30 Jan 2018 10:45:28 -0500 Subject: [PATCH] Converts /mecha + extras to Initialize (#34985) --- code/__DEFINES/layers.dm | 2 +- code/_onclick/hud/screen_objects.dm | 8 ++-- code/game/gamemodes/meteor/meteors.dm | 12 ++--- code/game/machinery/buttons.dm | 4 +- code/game/machinery/cloning.dm | 4 +- code/game/machinery/deployable.dm | 4 +- code/game/machinery/doors/alarmlock.dm | 4 +- code/game/machinery/doors/brigdoors.dm | 4 +- code/game/machinery/doors/door.dm | 4 +- code/game/machinery/doors/shutters.dm | 6 +-- code/game/machinery/doors/windowdoor.dm | 8 ++-- code/game/machinery/firealarm.dm | 4 +- code/game/machinery/syndicatebomb.dm | 4 +- .../machinery/telecomms/telecomunications.dm | 6 +-- code/game/mecha/combat/gygax.dm | 5 +- code/game/mecha/combat/marauder.dm | 12 ++--- code/game/mecha/combat/reticence.dm | 5 +- .../mecha/equipment/tools/medical_tools.dm | 13 +++--- .../mecha/equipment/tools/mining_tools.dm | 4 +- .../game/mecha/equipment/tools/other_tools.dm | 4 +- code/game/mecha/equipment/tools/work_tools.dm | 13 +++--- code/game/mecha/mecha_control_console.dm | 2 +- code/game/mecha/mecha_parts.dm | 28 +++++------ code/game/mecha/mecha_wreckage.dm | 46 ++++++++++--------- code/game/mecha/medical/medical.dm | 4 +- code/game/mecha/working/ripley.dm | 5 +- code/game/mecha/working/working.dm | 4 +- 27 files changed, 107 insertions(+), 112 deletions(-) diff --git a/code/__DEFINES/layers.dm b/code/__DEFINES/layers.dm index a3e2222f2ef..80d57303867 100644 --- a/code/__DEFINES/layers.dm +++ b/code/__DEFINES/layers.dm @@ -34,7 +34,7 @@ #define HIGH_SIGIL_LAYER 2.56 #define BELOW_OPEN_DOOR_LAYER 2.6 -#define SHUTTER_LAYER 2.65 //Prevents shutters from being placed above doors. It's overridden by /obj/machinery/door/New() & poddoor/shutters/New() +#define SHUTTER_LAYER 2.65 //Prevents shutters from being placed above doors. It's overridden by /obj/machinery/door/Initialize() & poddoor/shutters/Initialize() #define OPEN_DOOR_LAYER 2.7 #define PROJECTILE_HIT_THRESHHOLD_LAYER 2.75 //projectiles won't hit objects at or below this layer if possible #define TABLE_LAYER 2.8 diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index 1bfb8017308..b7b57b669bd 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -546,7 +546,11 @@ plane = SPLASHSCREEN_PLANE var/client/holder -/obj/screen/splash/New(client/C, visible, use_previous_title) //TODO: Make this use INITIALIZE_IMMEDIATE +INITIALIZE_IMMEDIATE(/obj/screen/splash) + +/obj/screen/splash/Initialize(client/C, visible, use_previous_title) + . = ..() + holder = C if(!visible) @@ -563,8 +567,6 @@ holder.screen += src - ..() - /obj/screen/splash/proc/Fade(out, qdel_after = TRUE) if(QDELETED(src)) return diff --git a/code/game/gamemodes/meteor/meteors.dm b/code/game/gamemodes/meteor/meteors.dm index 13ab7a8bb12..d0c6cde8b91 100644 --- a/code/game/gamemodes/meteor/meteors.dm +++ b/code/game/gamemodes/meteor/meteors.dm @@ -284,7 +284,7 @@ GLOBAL_LIST_INIT(meteorsC, list(/obj/effect/meteor/dust)) //for space dust event var/meteorgibs = /obj/effect/gibspawner/generic threat = 2 -/obj/effect/meteor/meaty/New() +/obj/effect/meteor/meaty/Initialize() for(var/path in meteordrop) if(path == /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant) meteordrop -= path @@ -294,7 +294,7 @@ GLOBAL_LIST_INIT(meteorsC, list(/obj/effect/meteor/dust)) //for space dust event if(path == /obj/item/organ/tongue) meteordrop -= path meteordrop += pick(typesof(path)) - ..() + return ..() /obj/effect/meteor/meaty/make_debris() ..() @@ -315,9 +315,9 @@ GLOBAL_LIST_INIT(meteorsC, list(/obj/effect/meteor/dust)) //for space dust event meteordrop = list(/obj/item/reagent_containers/food/snacks/meat/slab/xeno, /obj/item/organ/tongue/alien) meteorgibs = /obj/effect/gibspawner/xeno -/obj/effect/meteor/meaty/xeno/New() +/obj/effect/meteor/meaty/xeno/Initialize() meteordrop += subtypesof(/obj/item/organ/alien) - ..() + return ..() /obj/effect/meteor/meaty/xeno/ram_turf(turf/T) if(!isspaceturf(T)) @@ -366,8 +366,8 @@ GLOBAL_LIST_INIT(meteorsSPOOKY, list(/obj/effect/meteor/pumpkin)) meteordrop = list(/obj/item/clothing/head/hardhat/pumpkinhead, /obj/item/reagent_containers/food/snacks/grown/pumpkin) threat = 100 -/obj/effect/meteor/pumpkin/New() - ..() +/obj/effect/meteor/pumpkin/Initialize() + . = ..() meteorsound = pick('sound/hallucinations/im_here1.ogg','sound/hallucinations/im_here2.ogg') ////////////////////////// #undef DEFAULT_METEOR_LIFETIME diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm index 997d16836d9..b98976d83c7 100644 --- a/code/game/machinery/buttons.dm +++ b/code/game/machinery/buttons.dm @@ -17,8 +17,8 @@ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF -/obj/machinery/button/New(loc, ndir = 0, built = 0) - ..() +/obj/machinery/button/Initialize(mapload, ndir = 0, built = 0) + . = ..() if(built) setDir(ndir) pixel_x = (dir & 3)? 0 : (dir == 4 ? -24 : 24) diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index fedb5aa49dd..63fe574c811 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -88,8 +88,8 @@ var/read_only = 0 //Well,it's still a floppy disk //Disk stuff. -/obj/item/disk/data/New() - ..() +/obj/item/disk/data/Initialize() + . = ..() icon_state = "datadisk[rand(0,6)]" add_overlay("datadisk_gene") diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index b9a2a68b34a..a25e1edb211 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -96,8 +96,8 @@ var/deploy_message = TRUE -/obj/structure/barricade/security/New() - ..() +/obj/structure/barricade/security/Initialize() + . = ..() addtimer(CALLBACK(src, .proc/deploy), deploy_time) /obj/structure/barricade/security/proc/deploy() diff --git a/code/game/machinery/doors/alarmlock.dm b/code/game/machinery/doors/alarmlock.dm index a75d47b345f..cf46e6b0fd3 100644 --- a/code/game/machinery/doors/alarmlock.dm +++ b/code/game/machinery/doors/alarmlock.dm @@ -10,8 +10,8 @@ var/air_frequency = FREQ_ATMOS_ALARMS autoclose = FALSE -/obj/machinery/door/airlock/alarmlock/New() - ..() +/obj/machinery/door/airlock/alarmlock/Initialize() + . = ..() air_connection = new /obj/machinery/door/airlock/alarmlock/Destroy() diff --git a/code/game/machinery/doors/brigdoors.dm b/code/game/machinery/doors/brigdoors.dm index bf3baf8b6fc..3f0d28705a9 100644 --- a/code/game/machinery/doors/brigdoors.dm +++ b/code/game/machinery/doors/brigdoors.dm @@ -38,8 +38,8 @@ maptext_height = 26 maptext_width = 32 -/obj/machinery/door_timer/New() - ..() +/obj/machinery/door_timer/Initialize() + . = ..() Radio = new/obj/item/device/radio(src) Radio.listening = 0 diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 9182057d852..25ff6c0ce1d 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -53,8 +53,8 @@ return TRUE return ..() -/obj/machinery/door/New() - ..() +/obj/machinery/door/Initialize() + . = ..() if(density) layer = CLOSED_DOOR_LAYER //Above most items if closed else diff --git a/code/game/machinery/doors/shutters.dm b/code/game/machinery/doors/shutters.dm index 77267a49a4b..5f9bb39daef 100644 --- a/code/game/machinery/doors/shutters.dm +++ b/code/game/machinery/doors/shutters.dm @@ -14,9 +14,9 @@ //shutters look like ass with things on top of them. -/obj/machinery/door/poddoor/shutters/New() - ..() - layer = CLOSED_DOOR_LAYER //to handle /obj/machinery/door/New() resetting the layer. +/obj/machinery/door/poddoor/shutters/Initialize() + . = ..() + layer = CLOSED_DOOR_LAYER //to handle /obj/machinery/door/Initialize() resetting the layer. /obj/machinery/door/poddoor/shutters/open(ignorepower = 0) diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index 29f05acc2bc..1969b1cb169 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -21,8 +21,8 @@ var/cable = 2 var/list/debris = list() -/obj/machinery/door/window/New(loc, set_dir) - ..() +/obj/machinery/door/window/Initialize(mapload, set_dir) + . = ..() if(set_dir) setDir(set_dir) if(src.req_access && src.req_access.len) @@ -329,8 +329,8 @@ resistance_flags = FIRE_PROOF | ACID_PROOF var/made_glow = FALSE -/obj/machinery/door/window/clockwork/New(loc, set_dir) - ..() +/obj/machinery/door/window/clockwork/Initialize(mapload, set_dir) + . = ..() for(var/i in 1 to 2) debris += new/obj/item/clockwork/alloy_shards/medium/gear_bit/large(src) change_construction_value(2) diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index 0af43df223a..583a2299373 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -30,8 +30,8 @@ var/last_alarm = 0 var/area/myarea = null -/obj/machinery/firealarm/New(loc, dir, building) - ..() +/obj/machinery/firealarm/Initialize(mapload, dir, building) + . = ..() if(dir) src.setDir(dir) if(building) diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index 8e5391010a0..6b86c48071d 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -253,8 +253,8 @@ open_panel = TRUE timer_set = 120 -/obj/machinery/syndicatebomb/empty/New() - ..() +/obj/machinery/syndicatebomb/empty/Initialize() + . = ..() wires.cut_all() /obj/machinery/syndicatebomb/self_destruct diff --git a/code/game/machinery/telecomms/telecomunications.dm b/code/game/machinery/telecomms/telecomunications.dm index b68d3485399..2fcd37da91f 100644 --- a/code/game/machinery/telecomms/telecomunications.dm +++ b/code/game/machinery/telecomms/telecomunications.dm @@ -80,13 +80,9 @@ GLOBAL_LIST_EMPTY(telecomms_list) // return TRUE if found, FALSE if not found return signal && (!freq_listening.len || (signal.frequency in freq_listening)) - -/obj/machinery/telecomms/New() - GLOB.telecomms_list += src - ..() - /obj/machinery/telecomms/Initialize(mapload) . = ..() + GLOB.telecomms_list += src if(mapload && autolinkers.len) // Links nearby machines if(!long_range_link) diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index 56e3ccc6c31..b46bc2abf2a 100644 --- a/code/game/mecha/combat/gygax.dm +++ b/code/game/mecha/combat/gygax.dm @@ -27,8 +27,8 @@ wreckage = /obj/structure/mecha_wreckage/gygax/dark max_equip = 4 -/obj/mecha/combat/gygax/dark/loaded/New() - ..() +/obj/mecha/combat/gygax/dark/loaded/Initialize() + . = ..() var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/carbine ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/flashbang @@ -37,7 +37,6 @@ ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay ME.attach(src) - return /obj/mecha/combat/gygax/dark/add_cell(obj/item/stock_parts/cell/C=null) if(C) diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm index 7be8fb62469..b82af2632eb 100644 --- a/code/game/mecha/combat/marauder.dm +++ b/code/game/mecha/combat/marauder.dm @@ -29,8 +29,8 @@ thrusters_action.Remove(user) zoom_action.Remove(user) -/obj/mecha/combat/marauder/loaded/New() - ..() +/obj/mecha/combat/marauder/loaded/Initialize() + . = ..() var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/energy/pulse(src) ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack(src) @@ -52,8 +52,8 @@ force = 55 max_equip = 5 -/obj/mecha/combat/marauder/seraph/New() - ..() +/obj/mecha/combat/marauder/seraph/Initialize() + . = ..() var/obj/item/mecha_parts/mecha_equipment/ME ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src) ME.attach(src) @@ -74,8 +74,8 @@ wreckage = /obj/structure/mecha_wreckage/mauler max_equip = 5 -/obj/mecha/combat/marauder/mauler/loaded/New() - ..() +/obj/mecha/combat/marauder/mauler/loaded/Initialize() + . = ..() var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg(src) ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src) diff --git a/code/game/mecha/combat/reticence.dm b/code/game/mecha/combat/reticence.dm index 14891835c5f..18b50d30773 100644 --- a/code/game/mecha/combat/reticence.dm +++ b/code/game/mecha/combat/reticence.dm @@ -19,10 +19,9 @@ turnsound = null opacity = 0 -/obj/mecha/combat/reticence/loaded/New() - ..() +/obj/mecha/combat/reticence/loaded/Initialize() + . = ..() var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/silenced ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/rcd //HAHA IT MAKES WALLS GET IT ME.attach(src) - return diff --git a/code/game/mecha/equipment/tools/medical_tools.dm b/code/game/mecha/equipment/tools/medical_tools.dm index 97e743b30e2..90c598ccccb 100644 --- a/code/game/mecha/equipment/tools/medical_tools.dm +++ b/code/game/mecha/equipment/tools/medical_tools.dm @@ -2,11 +2,10 @@ /obj/item/mecha_parts/mecha_equipment/medical -/obj/item/mecha_parts/mecha_equipment/medical/New() - ..() +/obj/item/mecha_parts/mecha_equipment/medical/Initialize() + . = ..() START_PROCESSING(SSobj, src) - /obj/item/mecha_parts/mecha_equipment/medical/can_attach(obj/mecha/medical/M) if(..() && istype(M)) return 1 @@ -256,8 +255,8 @@ range = MELEE|RANGED equip_cooldown = 10 -/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/New() - ..() +/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/Initialize() + . = ..() create_reagents(max_volume) reagents.set_reacting(FALSE) syringes = new @@ -534,8 +533,8 @@ var/obj/item/gun/medbeam/mech/medigun materials = list(MAT_METAL = 15000, MAT_GLASS = 8000, MAT_PLASMA = 3000, MAT_GOLD = 8000, MAT_DIAMOND = 2000) -/obj/item/mecha_parts/mecha_equipment/medical/mechmedbeam/New() - ..() +/obj/item/mecha_parts/mecha_equipment/medical/mechmedbeam/Initialize() + . = ..() medigun = new(src) diff --git a/code/game/mecha/equipment/tools/mining_tools.dm b/code/game/mecha/equipment/tools/mining_tools.dm index 0984621dc35..6017515a632 100644 --- a/code/game/mecha/equipment/tools/mining_tools.dm +++ b/code/game/mecha/equipment/tools/mining_tools.dm @@ -110,8 +110,8 @@ equip_cooldown = 15 var/scanning_time = 0 -/obj/item/mecha_parts/mecha_equipment/mining_scanner/New() - ..() +/obj/item/mecha_parts/mecha_equipment/mining_scanner/Initialize() + . = ..() START_PROCESSING(SSfastprocess, src) /obj/item/mecha_parts/mecha_equipment/mining_scanner/process() diff --git a/code/game/mecha/equipment/tools/other_tools.dm b/code/game/mecha/equipment/tools/other_tools.dm index b82a46b7e04..980b7170c1f 100644 --- a/code/game/mecha/equipment/tools/other_tools.dm +++ b/code/game/mecha/equipment/tools/other_tools.dm @@ -358,8 +358,8 @@ var/fuel_per_cycle_active = 200 var/power_per_cycle = 20 -/obj/item/mecha_parts/mecha_equipment/generator/New() - ..() +/obj/item/mecha_parts/mecha_equipment/generator/Initialize() + . = ..() generator_init() /obj/item/mecha_parts/mecha_equipment/generator/Destroy() diff --git a/code/game/mecha/equipment/tools/work_tools.dm b/code/game/mecha/equipment/tools/work_tools.dm index a52c8d14387..ac8304be399 100644 --- a/code/game/mecha/equipment/tools/work_tools.dm +++ b/code/game/mecha/equipment/tools/work_tools.dm @@ -127,11 +127,10 @@ energy_drain = 0 range = MELEE|RANGED -/obj/item/mecha_parts/mecha_equipment/extinguisher/New() +/obj/item/mecha_parts/mecha_equipment/extinguisher/Initialize() + . = ..() create_reagents(1000) reagents.add_reagent("water", 1000) - ..() - return /obj/item/mecha_parts/mecha_equipment/extinguisher/action(atom/target) //copypasted from extinguisher. TODO: Rewrite from scratch. if(!action_checks(target) || get_dist(chassis, target)>3) @@ -197,9 +196,9 @@ flags_2 = NO_MAT_REDEMPTION_2 var/mode = 0 //0 - deconstruct, 1 - wall or floor, 2 - airlock. -/obj/item/mecha_parts/mecha_equipment/rcd/New() +/obj/item/mecha_parts/mecha_equipment/rcd/Initialize() + . = ..() GLOB.rcd_list += src - ..() /obj/item/mecha_parts/mecha_equipment/rcd/Destroy() GLOB.rcd_list -= src @@ -299,10 +298,10 @@ var/obj/item/stack/cable_coil/cable var/max_cable = 1000 -/obj/item/mecha_parts/mecha_equipment/cable_layer/New() +/obj/item/mecha_parts/mecha_equipment/cable_layer/Initialize() + . = ..() cable = new(src) cable.amount = 0 - ..() /obj/item/mecha_parts/mecha_equipment/cable_layer/can_attach(obj/mecha/working/M) if(..()) diff --git a/code/game/mecha/mecha_control_console.dm b/code/game/mecha/mecha_control_console.dm index bb495675b12..c949a8e1574 100644 --- a/code/game/mecha/mecha_control_console.dm +++ b/code/game/mecha/mecha_control_console.dm @@ -124,7 +124,7 @@ /obj/item/storage/box/mechabeacons name = "exosuit tracking beacons" -/obj/item/storage/box/mechabeacons/New() +/obj/item/storage/box/mechabeacons/PopulateContents() ..() new /obj/item/mecha_parts/mecha_tracking(src) new /obj/item/mecha_parts/mecha_tracking(src) diff --git a/code/game/mecha/mecha_parts.dm b/code/game/mecha/mecha_parts.dm index 3455d19877a..d62926e3d0b 100644 --- a/code/game/mecha/mecha_parts.dm +++ b/code/game/mecha/mecha_parts.dm @@ -26,8 +26,8 @@ /obj/item/mecha_parts/chassis/ripley name = "\improper Ripley chassis" -/obj/item/mecha_parts/chassis/ripley/New() - ..() +/obj/item/mecha_parts/chassis/ripley/Initialize() + . = ..() construct = new /datum/construction/mecha/ripley_chassis(src) /obj/item/mecha_parts/part/ripley_torso @@ -60,8 +60,8 @@ /obj/item/mecha_parts/chassis/odysseus name = "\improper Odysseus chassis" -/obj/item/mecha_parts/chassis/odysseus/New() - ..() +/obj/item/mecha_parts/chassis/odysseus/Initialize() + . = ..() construct = new /datum/construction/mecha/odysseus_chassis(src) /obj/item/mecha_parts/part/odysseus_head @@ -99,8 +99,8 @@ /obj/item/mecha_parts/chassis/gygax name = "\improper Gygax chassis" -/obj/item/mecha_parts/chassis/gygax/New() - ..() +/obj/item/mecha_parts/chassis/gygax/Initialize() + . = ..() construct = new /datum/construction/mecha/gygax_chassis(src) /obj/item/mecha_parts/part/gygax_torso @@ -145,8 +145,8 @@ /obj/item/mecha_parts/chassis/durand name = "\improper Durand chassis" -/obj/item/mecha_parts/chassis/durand/New() - ..() +/obj/item/mecha_parts/chassis/durand/Initialize() + . = ..() construct = new /datum/construction/mecha/durand_chassis(src) /obj/item/mecha_parts/part/durand_torso @@ -190,8 +190,8 @@ /obj/item/mecha_parts/chassis/firefighter name = "Firefighter chassis" -/obj/item/mecha_parts/chassis/firefighter/New() - ..() +/obj/item/mecha_parts/chassis/firefighter/Initialize() + . = ..() construct = new /datum/construction/mecha/firefighter_chassis(src) @@ -200,8 +200,8 @@ /obj/item/mecha_parts/chassis/honker name = "\improper H.O.N.K chassis" -/obj/item/mecha_parts/chassis/honker/New() - ..() +/obj/item/mecha_parts/chassis/honker/Initialize() + . = ..() construct = new /datum/construction/mecha/honker_chassis(src) /obj/item/mecha_parts/part/honker_torso @@ -240,8 +240,8 @@ /obj/item/mecha_parts/chassis/phazon name = "\improper Phazon chassis" -/obj/item/mecha_parts/chassis/phazon/New() - ..() +/obj/item/mecha_parts/chassis/phazon/Initialize() + . = ..() construct = new /datum/construction/mecha/phazon_chassis(src) /obj/item/mecha_parts/part/phazon_torso diff --git a/code/game/mecha/mecha_wreckage.dm b/code/game/mecha/mecha_wreckage.dm index de8f8ecb3ac..21323855ebc 100644 --- a/code/game/mecha/mecha_wreckage.dm +++ b/code/game/mecha/mecha_wreckage.dm @@ -16,16 +16,18 @@ var/salvage_num = 5 var/mob/living/silicon/ai/AI //AIs to be salvaged -/obj/structure/mecha_wreckage/New(loc, mob/living/silicon/ai/AI_pilot) - ..() - if(AI_pilot) //Type-checking for this is already done in mecha/Destroy() - AI = AI_pilot - AI.apply_damage(150, BURN) //Give the AI a bit of damage from the "shock" of being suddenly shut down - AI.death() //The damage is not enough to kill the AI, but to be 'corrupted files' in need of repair. - AI.forceMove(src) //Put the dead AI inside the wreckage for recovery - add_overlay(mutable_appearance('icons/obj/projectiles.dmi', "green_laser")) //Overlay for the recovery beacon - AI.controlled_mech = null - AI.remote_control = null +/obj/structure/mecha_wreckage/Initialize(mapload, mob/living/silicon/ai/AI_pilot) + . = ..() + if(!AI_pilot) //Type-checking for this is already done in mecha/Destroy() + return + + AI = AI_pilot + AI.apply_damage(150, BURN) //Give the AI a bit of damage from the "shock" of being suddenly shut down + AI.death() //The damage is not enough to kill the AI, but to be 'corrupted files' in need of repair. + AI.forceMove(src) //Put the dead AI inside the wreckage for recovery + add_overlay(mutable_appearance('icons/obj/projectiles.dmi', "green_laser")) //Overlay for the recovery beacon + AI.controlled_mech = null + AI.remote_control = null /obj/structure/mecha_wreckage/examine(mob/user) ..() @@ -102,8 +104,8 @@ name = "\improper Gygax wreckage" icon_state = "gygax-broken" -/obj/structure/mecha_wreckage/gygax/New() - ..() +/obj/structure/mecha_wreckage/gygax/Initialize() + . = ..() var/list/parts = list(/obj/item/mecha_parts/part/gygax_torso, /obj/item/mecha_parts/part/gygax_head, /obj/item/mecha_parts/part/gygax_left_arm, @@ -145,8 +147,8 @@ name = "\improper Ripley wreckage" icon_state = "ripley-broken" -/obj/structure/mecha_wreckage/ripley/New() - ..() +/obj/structure/mecha_wreckage/ripley/Initialize() + . = ..() var/list/parts = list(/obj/item/mecha_parts/part/ripley_torso, /obj/item/mecha_parts/part/ripley_left_arm, /obj/item/mecha_parts/part/ripley_right_arm, @@ -163,8 +165,8 @@ name = "\improper Firefighter wreckage" icon_state = "firefighter-broken" -/obj/structure/mecha_wreckage/ripley/firefighter/New() - ..() +/obj/structure/mecha_wreckage/ripley/firefighter/Initialize() + . = ..() var/list/parts = list(/obj/item/mecha_parts/part/ripley_torso, /obj/item/mecha_parts/part/ripley_left_arm, /obj/item/mecha_parts/part/ripley_right_arm, @@ -188,8 +190,8 @@ icon_state = "honker-broken" desc = "All is right in the universe." -/obj/structure/mecha_wreckage/honker/New() - ..() +/obj/structure/mecha_wreckage/honker/Initialize() + . = ..() var/list/parts = list( /obj/item/mecha_parts/chassis/honker, /obj/item/mecha_parts/part/honker_torso, @@ -209,8 +211,8 @@ name = "\improper Durand wreckage" icon_state = "durand-broken" -/obj/structure/mecha_wreckage/durand/New() - ..() +/obj/structure/mecha_wreckage/durand/Initialize() + . = ..() var/list/parts = list( /obj/item/mecha_parts/part/durand_torso, /obj/item/mecha_parts/part/durand_head, @@ -234,8 +236,8 @@ name = "\improper Odysseus wreckage" icon_state = "odysseus-broken" -/obj/structure/mecha_wreckage/odysseus/New() - ..() +/obj/structure/mecha_wreckage/odysseus/Initialize() + . = ..() var/list/parts = list( /obj/item/mecha_parts/part/odysseus_torso, /obj/item/mecha_parts/part/odysseus_head, diff --git a/code/game/mecha/medical/medical.dm b/code/game/mecha/medical/medical.dm index 8121507b5ba..5fedc9fad67 100644 --- a/code/game/mecha/medical/medical.dm +++ b/code/game/mecha/medical/medical.dm @@ -1,5 +1,5 @@ -/obj/mecha/medical/New() - ..() +/obj/mecha/medical/Initialize() + . = ..() trackers += new /obj/item/mecha_parts/mecha_tracking(src) diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm index a7115abd1dd..714e24696a9 100644 --- a/code/game/mecha/working/ripley.dm +++ b/code/game/mecha/working/ripley.dm @@ -80,11 +80,10 @@ wreckage = /obj/structure/mecha_wreckage/ripley/deathripley step_energy_drain = 0 -/obj/mecha/working/ripley/deathripley/New() - ..() +/obj/mecha/working/ripley/deathripley/Initialize() + . = ..() var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/hydraulic_clamp/kill ME.attach(src) - return /obj/mecha/working/ripley/mining desc = "An old, dusty mining Ripley." diff --git a/code/game/mecha/working/working.dm b/code/game/mecha/working/working.dm index e4c001a508a..1bdae48389c 100644 --- a/code/game/mecha/working/working.dm +++ b/code/game/mecha/working/working.dm @@ -1,6 +1,6 @@ /obj/mecha/working internal_damage_threshold = 60 -/obj/mecha/working/New() - ..() +/obj/mecha/working/Initialize() + . = ..() trackers += new /obj/item/mecha_parts/mecha_tracking(src)