Converts /mecha + extras to Initialize (#34985)

This commit is contained in:
Jordan Brown
2018-01-30 10:45:28 -05:00
committed by Leo
parent 41950e2ad9
commit abf3f76df0
27 changed files with 107 additions and 112 deletions

View File

@@ -34,7 +34,7 @@
#define HIGH_SIGIL_LAYER 2.56 #define HIGH_SIGIL_LAYER 2.56
#define BELOW_OPEN_DOOR_LAYER 2.6 #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 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 PROJECTILE_HIT_THRESHHOLD_LAYER 2.75 //projectiles won't hit objects at or below this layer if possible
#define TABLE_LAYER 2.8 #define TABLE_LAYER 2.8

View File

@@ -546,7 +546,11 @@
plane = SPLASHSCREEN_PLANE plane = SPLASHSCREEN_PLANE
var/client/holder 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 holder = C
if(!visible) if(!visible)
@@ -563,8 +567,6 @@
holder.screen += src holder.screen += src
..()
/obj/screen/splash/proc/Fade(out, qdel_after = TRUE) /obj/screen/splash/proc/Fade(out, qdel_after = TRUE)
if(QDELETED(src)) if(QDELETED(src))
return return

View File

@@ -284,7 +284,7 @@ GLOBAL_LIST_INIT(meteorsC, list(/obj/effect/meteor/dust)) //for space dust event
var/meteorgibs = /obj/effect/gibspawner/generic var/meteorgibs = /obj/effect/gibspawner/generic
threat = 2 threat = 2
/obj/effect/meteor/meaty/New() /obj/effect/meteor/meaty/Initialize()
for(var/path in meteordrop) for(var/path in meteordrop)
if(path == /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant) if(path == /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant)
meteordrop -= path 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) if(path == /obj/item/organ/tongue)
meteordrop -= path meteordrop -= path
meteordrop += pick(typesof(path)) meteordrop += pick(typesof(path))
..() return ..()
/obj/effect/meteor/meaty/make_debris() /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) meteordrop = list(/obj/item/reagent_containers/food/snacks/meat/slab/xeno, /obj/item/organ/tongue/alien)
meteorgibs = /obj/effect/gibspawner/xeno meteorgibs = /obj/effect/gibspawner/xeno
/obj/effect/meteor/meaty/xeno/New() /obj/effect/meteor/meaty/xeno/Initialize()
meteordrop += subtypesof(/obj/item/organ/alien) meteordrop += subtypesof(/obj/item/organ/alien)
..() return ..()
/obj/effect/meteor/meaty/xeno/ram_turf(turf/T) /obj/effect/meteor/meaty/xeno/ram_turf(turf/T)
if(!isspaceturf(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) meteordrop = list(/obj/item/clothing/head/hardhat/pumpkinhead, /obj/item/reagent_containers/food/snacks/grown/pumpkin)
threat = 100 threat = 100
/obj/effect/meteor/pumpkin/New() /obj/effect/meteor/pumpkin/Initialize()
..() . = ..()
meteorsound = pick('sound/hallucinations/im_here1.ogg','sound/hallucinations/im_here2.ogg') meteorsound = pick('sound/hallucinations/im_here1.ogg','sound/hallucinations/im_here2.ogg')
////////////////////////// //////////////////////////
#undef DEFAULT_METEOR_LIFETIME #undef DEFAULT_METEOR_LIFETIME

View File

@@ -17,8 +17,8 @@
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF 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) if(built)
setDir(ndir) setDir(ndir)
pixel_x = (dir & 3)? 0 : (dir == 4 ? -24 : 24) pixel_x = (dir & 3)? 0 : (dir == 4 ? -24 : 24)

View File

@@ -88,8 +88,8 @@
var/read_only = 0 //Well,it's still a floppy disk var/read_only = 0 //Well,it's still a floppy disk
//Disk stuff. //Disk stuff.
/obj/item/disk/data/New() /obj/item/disk/data/Initialize()
..() . = ..()
icon_state = "datadisk[rand(0,6)]" icon_state = "datadisk[rand(0,6)]"
add_overlay("datadisk_gene") add_overlay("datadisk_gene")

View File

@@ -96,8 +96,8 @@
var/deploy_message = TRUE var/deploy_message = TRUE
/obj/structure/barricade/security/New() /obj/structure/barricade/security/Initialize()
..() . = ..()
addtimer(CALLBACK(src, .proc/deploy), deploy_time) addtimer(CALLBACK(src, .proc/deploy), deploy_time)
/obj/structure/barricade/security/proc/deploy() /obj/structure/barricade/security/proc/deploy()

View File

@@ -10,8 +10,8 @@
var/air_frequency = FREQ_ATMOS_ALARMS var/air_frequency = FREQ_ATMOS_ALARMS
autoclose = FALSE autoclose = FALSE
/obj/machinery/door/airlock/alarmlock/New() /obj/machinery/door/airlock/alarmlock/Initialize()
..() . = ..()
air_connection = new air_connection = new
/obj/machinery/door/airlock/alarmlock/Destroy() /obj/machinery/door/airlock/alarmlock/Destroy()

View File

@@ -38,8 +38,8 @@
maptext_height = 26 maptext_height = 26
maptext_width = 32 maptext_width = 32
/obj/machinery/door_timer/New() /obj/machinery/door_timer/Initialize()
..() . = ..()
Radio = new/obj/item/device/radio(src) Radio = new/obj/item/device/radio(src)
Radio.listening = 0 Radio.listening = 0

View File

@@ -53,8 +53,8 @@
return TRUE return TRUE
return ..() return ..()
/obj/machinery/door/New() /obj/machinery/door/Initialize()
..() . = ..()
if(density) if(density)
layer = CLOSED_DOOR_LAYER //Above most items if closed layer = CLOSED_DOOR_LAYER //Above most items if closed
else else

View File

@@ -14,9 +14,9 @@
//shutters look like ass with things on top of them. //shutters look like ass with things on top of them.
/obj/machinery/door/poddoor/shutters/New() /obj/machinery/door/poddoor/shutters/Initialize()
..() . = ..()
layer = CLOSED_DOOR_LAYER //to handle /obj/machinery/door/New() resetting the layer. layer = CLOSED_DOOR_LAYER //to handle /obj/machinery/door/Initialize() resetting the layer.
/obj/machinery/door/poddoor/shutters/open(ignorepower = 0) /obj/machinery/door/poddoor/shutters/open(ignorepower = 0)

View File

@@ -21,8 +21,8 @@
var/cable = 2 var/cable = 2
var/list/debris = list() var/list/debris = list()
/obj/machinery/door/window/New(loc, set_dir) /obj/machinery/door/window/Initialize(mapload, set_dir)
..() . = ..()
if(set_dir) if(set_dir)
setDir(set_dir) setDir(set_dir)
if(src.req_access && src.req_access.len) if(src.req_access && src.req_access.len)
@@ -329,8 +329,8 @@
resistance_flags = FIRE_PROOF | ACID_PROOF resistance_flags = FIRE_PROOF | ACID_PROOF
var/made_glow = FALSE 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) for(var/i in 1 to 2)
debris += new/obj/item/clockwork/alloy_shards/medium/gear_bit/large(src) debris += new/obj/item/clockwork/alloy_shards/medium/gear_bit/large(src)
change_construction_value(2) change_construction_value(2)

View File

@@ -30,8 +30,8 @@
var/last_alarm = 0 var/last_alarm = 0
var/area/myarea = null var/area/myarea = null
/obj/machinery/firealarm/New(loc, dir, building) /obj/machinery/firealarm/Initialize(mapload, dir, building)
..() . = ..()
if(dir) if(dir)
src.setDir(dir) src.setDir(dir)
if(building) if(building)

View File

@@ -253,8 +253,8 @@
open_panel = TRUE open_panel = TRUE
timer_set = 120 timer_set = 120
/obj/machinery/syndicatebomb/empty/New() /obj/machinery/syndicatebomb/empty/Initialize()
..() . = ..()
wires.cut_all() wires.cut_all()
/obj/machinery/syndicatebomb/self_destruct /obj/machinery/syndicatebomb/self_destruct

View File

@@ -80,13 +80,9 @@ GLOBAL_LIST_EMPTY(telecomms_list)
// return TRUE if found, FALSE if not found // return TRUE if found, FALSE if not found
return signal && (!freq_listening.len || (signal.frequency in freq_listening)) return signal && (!freq_listening.len || (signal.frequency in freq_listening))
/obj/machinery/telecomms/New()
GLOB.telecomms_list += src
..()
/obj/machinery/telecomms/Initialize(mapload) /obj/machinery/telecomms/Initialize(mapload)
. = ..() . = ..()
GLOB.telecomms_list += src
if(mapload && autolinkers.len) if(mapload && autolinkers.len)
// Links nearby machines // Links nearby machines
if(!long_range_link) if(!long_range_link)

View File

@@ -27,8 +27,8 @@
wreckage = /obj/structure/mecha_wreckage/gygax/dark wreckage = /obj/structure/mecha_wreckage/gygax/dark
max_equip = 4 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 var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/carbine
ME.attach(src) ME.attach(src)
ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/flashbang ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/flashbang
@@ -37,7 +37,6 @@
ME.attach(src) ME.attach(src)
ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay
ME.attach(src) ME.attach(src)
return
/obj/mecha/combat/gygax/dark/add_cell(obj/item/stock_parts/cell/C=null) /obj/mecha/combat/gygax/dark/add_cell(obj/item/stock_parts/cell/C=null)
if(C) if(C)

View File

@@ -29,8 +29,8 @@
thrusters_action.Remove(user) thrusters_action.Remove(user)
zoom_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) var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/energy/pulse(src)
ME.attach(src) ME.attach(src)
ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack(src)
@@ -52,8 +52,8 @@
force = 55 force = 55
max_equip = 5 max_equip = 5
/obj/mecha/combat/marauder/seraph/New() /obj/mecha/combat/marauder/seraph/Initialize()
..() . = ..()
var/obj/item/mecha_parts/mecha_equipment/ME var/obj/item/mecha_parts/mecha_equipment/ME
ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src)
ME.attach(src) ME.attach(src)
@@ -74,8 +74,8 @@
wreckage = /obj/structure/mecha_wreckage/mauler wreckage = /obj/structure/mecha_wreckage/mauler
max_equip = 5 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) var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg(src)
ME.attach(src) ME.attach(src)
ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src)

View File

@@ -19,10 +19,9 @@
turnsound = null turnsound = null
opacity = 0 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 var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/silenced
ME.attach(src) ME.attach(src)
ME = new /obj/item/mecha_parts/mecha_equipment/rcd //HAHA IT MAKES WALLS GET IT ME = new /obj/item/mecha_parts/mecha_equipment/rcd //HAHA IT MAKES WALLS GET IT
ME.attach(src) ME.attach(src)
return

View File

@@ -2,11 +2,10 @@
/obj/item/mecha_parts/mecha_equipment/medical /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) START_PROCESSING(SSobj, src)
/obj/item/mecha_parts/mecha_equipment/medical/can_attach(obj/mecha/medical/M) /obj/item/mecha_parts/mecha_equipment/medical/can_attach(obj/mecha/medical/M)
if(..() && istype(M)) if(..() && istype(M))
return 1 return 1
@@ -256,8 +255,8 @@
range = MELEE|RANGED range = MELEE|RANGED
equip_cooldown = 10 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) create_reagents(max_volume)
reagents.set_reacting(FALSE) reagents.set_reacting(FALSE)
syringes = new syringes = new
@@ -534,8 +533,8 @@
var/obj/item/gun/medbeam/mech/medigun var/obj/item/gun/medbeam/mech/medigun
materials = list(MAT_METAL = 15000, MAT_GLASS = 8000, MAT_PLASMA = 3000, MAT_GOLD = 8000, MAT_DIAMOND = 2000) 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) medigun = new(src)

View File

@@ -110,8 +110,8 @@
equip_cooldown = 15 equip_cooldown = 15
var/scanning_time = 0 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) START_PROCESSING(SSfastprocess, src)
/obj/item/mecha_parts/mecha_equipment/mining_scanner/process() /obj/item/mecha_parts/mecha_equipment/mining_scanner/process()

View File

@@ -358,8 +358,8 @@
var/fuel_per_cycle_active = 200 var/fuel_per_cycle_active = 200
var/power_per_cycle = 20 var/power_per_cycle = 20
/obj/item/mecha_parts/mecha_equipment/generator/New() /obj/item/mecha_parts/mecha_equipment/generator/Initialize()
..() . = ..()
generator_init() generator_init()
/obj/item/mecha_parts/mecha_equipment/generator/Destroy() /obj/item/mecha_parts/mecha_equipment/generator/Destroy()

View File

@@ -127,11 +127,10 @@
energy_drain = 0 energy_drain = 0
range = MELEE|RANGED range = MELEE|RANGED
/obj/item/mecha_parts/mecha_equipment/extinguisher/New() /obj/item/mecha_parts/mecha_equipment/extinguisher/Initialize()
. = ..()
create_reagents(1000) create_reagents(1000)
reagents.add_reagent("water", 1000) reagents.add_reagent("water", 1000)
..()
return
/obj/item/mecha_parts/mecha_equipment/extinguisher/action(atom/target) //copypasted from extinguisher. TODO: Rewrite from scratch. /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) if(!action_checks(target) || get_dist(chassis, target)>3)
@@ -197,9 +196,9 @@
flags_2 = NO_MAT_REDEMPTION_2 flags_2 = NO_MAT_REDEMPTION_2
var/mode = 0 //0 - deconstruct, 1 - wall or floor, 2 - airlock. 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 GLOB.rcd_list += src
..()
/obj/item/mecha_parts/mecha_equipment/rcd/Destroy() /obj/item/mecha_parts/mecha_equipment/rcd/Destroy()
GLOB.rcd_list -= src GLOB.rcd_list -= src
@@ -299,10 +298,10 @@
var/obj/item/stack/cable_coil/cable var/obj/item/stack/cable_coil/cable
var/max_cable = 1000 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 = new(src)
cable.amount = 0 cable.amount = 0
..()
/obj/item/mecha_parts/mecha_equipment/cable_layer/can_attach(obj/mecha/working/M) /obj/item/mecha_parts/mecha_equipment/cable_layer/can_attach(obj/mecha/working/M)
if(..()) if(..())

View File

@@ -124,7 +124,7 @@
/obj/item/storage/box/mechabeacons /obj/item/storage/box/mechabeacons
name = "exosuit tracking beacons" 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)
new /obj/item/mecha_parts/mecha_tracking(src) new /obj/item/mecha_parts/mecha_tracking(src)

View File

@@ -26,8 +26,8 @@
/obj/item/mecha_parts/chassis/ripley /obj/item/mecha_parts/chassis/ripley
name = "\improper Ripley chassis" 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) construct = new /datum/construction/mecha/ripley_chassis(src)
/obj/item/mecha_parts/part/ripley_torso /obj/item/mecha_parts/part/ripley_torso
@@ -60,8 +60,8 @@
/obj/item/mecha_parts/chassis/odysseus /obj/item/mecha_parts/chassis/odysseus
name = "\improper Odysseus chassis" 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) construct = new /datum/construction/mecha/odysseus_chassis(src)
/obj/item/mecha_parts/part/odysseus_head /obj/item/mecha_parts/part/odysseus_head
@@ -99,8 +99,8 @@
/obj/item/mecha_parts/chassis/gygax /obj/item/mecha_parts/chassis/gygax
name = "\improper Gygax chassis" 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) construct = new /datum/construction/mecha/gygax_chassis(src)
/obj/item/mecha_parts/part/gygax_torso /obj/item/mecha_parts/part/gygax_torso
@@ -145,8 +145,8 @@
/obj/item/mecha_parts/chassis/durand /obj/item/mecha_parts/chassis/durand
name = "\improper Durand chassis" 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) construct = new /datum/construction/mecha/durand_chassis(src)
/obj/item/mecha_parts/part/durand_torso /obj/item/mecha_parts/part/durand_torso
@@ -190,8 +190,8 @@
/obj/item/mecha_parts/chassis/firefighter /obj/item/mecha_parts/chassis/firefighter
name = "Firefighter chassis" 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) construct = new /datum/construction/mecha/firefighter_chassis(src)
@@ -200,8 +200,8 @@
/obj/item/mecha_parts/chassis/honker /obj/item/mecha_parts/chassis/honker
name = "\improper H.O.N.K chassis" 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) construct = new /datum/construction/mecha/honker_chassis(src)
/obj/item/mecha_parts/part/honker_torso /obj/item/mecha_parts/part/honker_torso
@@ -240,8 +240,8 @@
/obj/item/mecha_parts/chassis/phazon /obj/item/mecha_parts/chassis/phazon
name = "\improper Phazon chassis" 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) construct = new /datum/construction/mecha/phazon_chassis(src)
/obj/item/mecha_parts/part/phazon_torso /obj/item/mecha_parts/part/phazon_torso

View File

@@ -16,16 +16,18 @@
var/salvage_num = 5 var/salvage_num = 5
var/mob/living/silicon/ai/AI //AIs to be salvaged var/mob/living/silicon/ai/AI //AIs to be salvaged
/obj/structure/mecha_wreckage/New(loc, mob/living/silicon/ai/AI_pilot) /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() if(!AI_pilot) //Type-checking for this is already done in mecha/Destroy()
AI = AI_pilot return
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 = AI_pilot
AI.forceMove(src) //Put the dead AI inside the wreckage for recovery AI.apply_damage(150, BURN) //Give the AI a bit of damage from the "shock" of being suddenly shut down
add_overlay(mutable_appearance('icons/obj/projectiles.dmi', "green_laser")) //Overlay for the recovery beacon AI.death() //The damage is not enough to kill the AI, but to be 'corrupted files' in need of repair.
AI.controlled_mech = null AI.forceMove(src) //Put the dead AI inside the wreckage for recovery
AI.remote_control = null 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) /obj/structure/mecha_wreckage/examine(mob/user)
..() ..()
@@ -102,8 +104,8 @@
name = "\improper Gygax wreckage" name = "\improper Gygax wreckage"
icon_state = "gygax-broken" 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, var/list/parts = list(/obj/item/mecha_parts/part/gygax_torso,
/obj/item/mecha_parts/part/gygax_head, /obj/item/mecha_parts/part/gygax_head,
/obj/item/mecha_parts/part/gygax_left_arm, /obj/item/mecha_parts/part/gygax_left_arm,
@@ -145,8 +147,8 @@
name = "\improper Ripley wreckage" name = "\improper Ripley wreckage"
icon_state = "ripley-broken" 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, 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_left_arm,
/obj/item/mecha_parts/part/ripley_right_arm, /obj/item/mecha_parts/part/ripley_right_arm,
@@ -163,8 +165,8 @@
name = "\improper Firefighter wreckage" name = "\improper Firefighter wreckage"
icon_state = "firefighter-broken" 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, 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_left_arm,
/obj/item/mecha_parts/part/ripley_right_arm, /obj/item/mecha_parts/part/ripley_right_arm,
@@ -188,8 +190,8 @@
icon_state = "honker-broken" icon_state = "honker-broken"
desc = "All is right in the universe." desc = "All is right in the universe."
/obj/structure/mecha_wreckage/honker/New() /obj/structure/mecha_wreckage/honker/Initialize()
..() . = ..()
var/list/parts = list( var/list/parts = list(
/obj/item/mecha_parts/chassis/honker, /obj/item/mecha_parts/chassis/honker,
/obj/item/mecha_parts/part/honker_torso, /obj/item/mecha_parts/part/honker_torso,
@@ -209,8 +211,8 @@
name = "\improper Durand wreckage" name = "\improper Durand wreckage"
icon_state = "durand-broken" icon_state = "durand-broken"
/obj/structure/mecha_wreckage/durand/New() /obj/structure/mecha_wreckage/durand/Initialize()
..() . = ..()
var/list/parts = list( var/list/parts = list(
/obj/item/mecha_parts/part/durand_torso, /obj/item/mecha_parts/part/durand_torso,
/obj/item/mecha_parts/part/durand_head, /obj/item/mecha_parts/part/durand_head,
@@ -234,8 +236,8 @@
name = "\improper Odysseus wreckage" name = "\improper Odysseus wreckage"
icon_state = "odysseus-broken" icon_state = "odysseus-broken"
/obj/structure/mecha_wreckage/odysseus/New() /obj/structure/mecha_wreckage/odysseus/Initialize()
..() . = ..()
var/list/parts = list( var/list/parts = list(
/obj/item/mecha_parts/part/odysseus_torso, /obj/item/mecha_parts/part/odysseus_torso,
/obj/item/mecha_parts/part/odysseus_head, /obj/item/mecha_parts/part/odysseus_head,

View File

@@ -1,5 +1,5 @@
/obj/mecha/medical/New() /obj/mecha/medical/Initialize()
..() . = ..()
trackers += new /obj/item/mecha_parts/mecha_tracking(src) trackers += new /obj/item/mecha_parts/mecha_tracking(src)

View File

@@ -80,11 +80,10 @@
wreckage = /obj/structure/mecha_wreckage/ripley/deathripley wreckage = /obj/structure/mecha_wreckage/ripley/deathripley
step_energy_drain = 0 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 var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/hydraulic_clamp/kill
ME.attach(src) ME.attach(src)
return
/obj/mecha/working/ripley/mining /obj/mecha/working/ripley/mining
desc = "An old, dusty mining Ripley." desc = "An old, dusty mining Ripley."

View File

@@ -1,6 +1,6 @@
/obj/mecha/working /obj/mecha/working
internal_damage_threshold = 60 internal_damage_threshold = 60
/obj/mecha/working/New() /obj/mecha/working/Initialize()
..() . = ..()
trackers += new /obj/item/mecha_parts/mecha_tracking(src) trackers += new /obj/item/mecha_parts/mecha_tracking(src)