From ad0915a95765c9e433262e802b2738851482eab2 Mon Sep 17 00:00:00 2001
From: CHOMPStation2StaffMirrorBot
<94713762+CHOMPStation2StaffMirrorBot@users.noreply.github.com>
Date: Sat, 1 Mar 2025 18:31:24 -0700
Subject: [PATCH] [MIRROR] some more new to init (#10270)
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
---
.../maps/RandomZLevels/stationCollision.dm | 9 +-
.../gateway_archive_vr/stationCollision.dm | 4 +-
.../binary_devices/algae_generator_vr.dm | 4 +-
.../binary_devices/binary_atmos_base.dm | 2 +-
code/datums/EPv2.dm | 1 -
code/defines/obj/weapon.dm | 10 +-
code/game/area/ai_monitored.dm | 17 +-
code/game/atoms_movable.dm | 4 +-
.../changeling/powers/bioelectrogenesis.dm | 3 +-
.../changeling/powers/electric_lockpick.dm | 3 +-
code/game/gamemodes/cult/construct_spells.dm | 9 +-
code/game/gamemodes/cult/narsie.dm | 14 +-
.../gamemodes/events/holidays/Christmas.dm | 3 -
code/game/gamemodes/meteor/meteors.dm | 4 +-
code/game/gamemodes/technomancer/catalog.dm | 4 +-
code/game/gamemodes/technomancer/core_obj.dm | 16 +-
.../technomancer/devices/shield_armor.dm | 4 +-
.../game/gamemodes/technomancer/spell_objs.dm | 9 +-
.../technomancer/spells/aspect_aura.dm | 6 +-
.../gamemodes/technomancer/spells/chroma.dm | 4 +-
.../technomancer/spells/flame_tongue.dm | 4 +-
.../technomancer/spells/instability_tap.dm | 6 +-
.../gamemodes/technomancer/spells/radiance.dm | 4 +-
.../gamemodes/technomancer/spells/reflect.dm | 4 +-
.../gamemodes/technomancer/spells/shield.dm | 4 +-
code/game/machinery/OpTable.dm | 4 +-
code/game/machinery/atmoalter/clamp.dm | 5 +-
code/game/machinery/computer/RCON_Console.dm | 4 +-
code/game/machinery/computer/crew.dm | 4 +-
code/game/machinery/doors/windowdoor.dm | 9 +-
code/game/machinery/floodlight.dm | 4 +-
code/game/machinery/nuclear_bomb.dm | 12 +-
code/game/machinery/partslathe_vr.dm | 4 +-
code/game/machinery/petrification.dm | 2 +-
code/game/machinery/pipe/pipelayer.dm | 4 +-
code/game/machinery/telecomms/presets.dm | 12 +-
.../machinery/telecomms/telecomunications.dm | 36 +---
code/game/machinery/transformer.dm | 10 +-
code/game/objects/effects/chem/coating.dm | 5 +-
code/game/objects/effects/chem/foam.dm | 4 +-
.../objects/effects/decals/Cleanable/misc.dm | 4 +-
code/game/objects/effects/decals/cleanable.dm | 8 +-
code/game/objects/effects/landmarks.dm | 186 +++++++---------
code/game/objects/effects/landmarks_events.dm | 8 +-
code/game/objects/effects/overlays.dm | 6 +-
.../projectiles/projectile_effects.dm | 6 +-
.../devices/communicator/communicator.dm | 2 +-
.../game/objects/items/devices/radio/radio.dm | 14 +-
code/game/objects/items/poi_items.dm | 11 +-
code/game/objects/items/robot/robot_items.dm | 10 +-
.../objects/items/stacks/marker_beacons.dm | 2 +-
code/game/objects/items/toys/toys.dm | 7 +-
code/game/objects/items/weapons/candle.dm | 4 +-
code/game/objects/items/weapons/chewables.dm | 4 +-
.../objects/items/weapons/cigs_lighters.dm | 4 +-
.../game/objects/items/weapons/clown_items.dm | 2 +-
code/game/objects/items/weapons/cosmetics.dm | 3 +-
code/game/objects/items/weapons/ecigs.dm | 62 +++---
code/game/objects/items/weapons/explosives.dm | 4 +-
.../items/weapons/grenades/flashbang.dm | 16 +-
.../objects/items/weapons/id cards/cards.dm | 4 +-
.../items/weapons/implants/implant_vr.dm | 12 +-
.../items/weapons/implants/implantcase.dm | 204 ++++++++----------
.../items/weapons/implants/implantcase_vr.dm | 7 +-
.../items/weapons/implants/implanter.dm | 35 ++-
.../items/weapons/implants/implantfreedom.dm | 9 +-
.../weapons/implants/implantreagent_vr.dm | 9 +-
code/game/objects/items/weapons/inducer_vr.dm | 13 +-
.../weapons/material/material_weapons.dm | 7 +-
.../objects/items/weapons/material/shards.dm | 8 +-
.../objects/items/weapons/material/thrown.dm | 8 +-
.../items/weapons/material/twohanded.dm | 4 +-
.../items/weapons/material/whetstone.dm | 2 +-
code/game/objects/items/weapons/melee/misc.dm | 8 +-
.../objects/items/weapons/melee/shock_maul.dm | 10 +-
code/game/objects/items/weapons/mop.dm | 8 +-
code/game/objects/items/weapons/mop_deploy.dm | 3 +-
code/game/objects/items/weapons/policetape.dm | 4 +-
.../objects/items/weapons/storage/bible.dm | 3 +-
.../objects/items/weapons/storage/fancy.dm | 12 +-
.../objects/items/weapons/storage/internal.dm | 9 +-
.../objects/items/weapons/storage/storage.dm | 9 +-
.../objects/items/weapons/storage/wallets.dm | 10 +-
.../objects/items/weapons/tanks/jetpack.dm | 4 +-
.../items/weapons/tanks/tank_types_vr.dm | 2 +-
code/game/objects/items/weapons/tape.dm | 5 +-
.../objects/items/weapons/tools/combitool.dm | 4 +-
.../objects/items/weapons/tools/crowbar.dm | 4 +-
.../items/weapons/tools/screwdriver.dm | 6 +-
.../items/weapons/tools/wirecutters.dm | 6 +-
code/game/objects/items/weapons/towels.dm | 4 +-
code/game/objects/micro_structures.dm | 5 +-
code/game/objects/structures/barsign.dm | 4 +-
.../spacesuits/rig/modules/modules.dm | 38 ++--
.../rig/modules/specific/datajack.dm | 4 +-
.../spacesuits/rig/modules/specific/device.dm | 8 +-
.../rig/modules/specific/jetpack.dm | 6 +-
.../rig/modules/specific/mounted_gun.dm | 4 +-
.../rig/modules/specific/self_destruct.dm | 8 +-
.../spacesuits/rig/modules/specific/vision.dm | 4 +-
.../spacesuits/rig/modules/specific/voice.dm | 4 +-
.../spacesuits/rig/modules/utility.dm | 16 +-
.../clothing/spacesuits/rig/modules/vision.dm | 4 +-
code/modules/clothing/spacesuits/rig/rig.dm | 4 +-
.../examine/descriptions/atmospherics.dm | 5 +-
code/modules/hydroponics/trays/tray_soil.dm | 6 +-
.../integrated_electronics/core/tools.dm | 6 +-
.../subtypes/illegal.dm | 10 +-
.../integrated_electronics/subtypes/input.dm | 4 +-
code/modules/mob/freelook/chunk.dm | 5 +-
code/modules/mob/freelook/update_triggers.dm | 4 +-
.../species/station/protean_vr/protean_rig.dm | 4 +-
code/modules/nifsoft/nif_tgui.dm | 2 +-
.../nifsoft/software/13_soulcatcher.dm | 4 +-
.../reagent_containers/_reagent_containers.dm | 2 +-
maps/redgate/falls/atoll_objs.dm | 3 +-
116 files changed, 574 insertions(+), 657 deletions(-)
diff --git a/archive/maps/RandomZLevels/stationCollision.dm b/archive/maps/RandomZLevels/stationCollision.dm
index 888b952c91..433b0ec4f4 100644
--- a/archive/maps/RandomZLevels/stationCollision.dm
+++ b/archive/maps/RandomZLevels/stationCollision.dm
@@ -45,8 +45,10 @@
*/
/obj/effect/landmark/sc_bible_spawner
name = "Safecode hint spawner"
+ delete_me = TRUE
-/obj/effect/landmark/sc_bible_spawner/New()
+/obj/effect/landmark/sc_bible_spawner/Initialize(mapload)
+ . = ..()
var/obj/item/storage/bible/B = new /obj/item/storage/bible/booze(src.loc)
B.name = "The Holy book of the Geometer"
B.deity_name = "Narsie"
@@ -54,7 +56,6 @@
B.item_state = "melted"
new /obj/item/paper/sc_safehint_paper_bible(B)
new /obj/item/pen(B)
- qdel(src)
/*
* Guns - I'm making these specifically so that I dont spawn a pile of fully loaded weapons on the map.
@@ -158,8 +159,8 @@ var/sc_safecode5 = "[rand(0,9)]"
/obj/item/storage/secure/safe/sc_ssafe
name = "Captain's secure safe"
-/obj/item/storage/secure/safe/sc_ssafe/New()
- ..()
+/obj/item/storage/secure/safe/sc_ssafe/Initialize(mapload)
+ . = ..()
l_code = "[sc_safecode1][sc_safecode2][sc_safecode3][sc_safecode4][sc_safecode5]"
l_set = 1
new /obj/item/gun/energy/mindflayer(src)
diff --git a/archive/maps/gateway_archive_vr/stationCollision.dm b/archive/maps/gateway_archive_vr/stationCollision.dm
index 96170e7ef6..e2c14b463a 100644
--- a/archive/maps/gateway_archive_vr/stationCollision.dm
+++ b/archive/maps/gateway_archive_vr/stationCollision.dm
@@ -45,9 +45,10 @@
*/
/obj/effect/landmark/sc_bible_spawner
name = "Safecode hint spawner"
+ delete_me = TRUE
/obj/effect/landmark/sc_bible_spawner/Initialize(mapload)
- ..()
+ . = ..()
var/obj/item/storage/bible/B = new /obj/item/storage/bible/booze(src.loc)
B.name = "The Holy book of the Geometer"
B.deity_name = "Narsie"
@@ -55,7 +56,6 @@
B.item_state = "melted"
new /obj/item/paper/sc_safehint_paper_bible(B)
new /obj/item/pen(B)
- return INITIALIZE_HINT_QDEL
/*
* Guns - I'm making these specifically so that I dont spawn a pile of fully loaded weapons on the map.
diff --git a/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm b/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm
index ff201c946b..47110628b1 100644
--- a/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm
@@ -36,8 +36,8 @@
/obj/machinery/atmospherics/binary/algae_farm/filled
stored_material = list(MAT_ALGAE = 10000, MAT_GRAPHITE = 0)
-/obj/machinery/atmospherics/binary/algae_farm/New()
- ..()
+/obj/machinery/atmospherics/binary/algae_farm/Initialize(mapload)
+ . = ..()
desc = initial(desc) + " Its outlet port is to the [dir2text(dir)]."
default_apply_parts()
update_icon()
diff --git a/code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm b/code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm
index 54de979b6c..6aab4676c9 100644
--- a/code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm
@@ -9,7 +9,7 @@
var/datum/pipe_network/network1
var/datum/pipe_network/network2
-/obj/machinery/atmospherics/binary/Initialize()
+/obj/machinery/atmospherics/binary/Initialize(mapload)
. = ..()
air1 = new
diff --git a/code/datums/EPv2.dm b/code/datums/EPv2.dm
index a41175f424..ffb586a961 100644
--- a/code/datums/EPv2.dm
+++ b/code/datums/EPv2.dm
@@ -59,7 +59,6 @@ var/global/list/all_exonet_connections = list()
new_address = "[addr_0]:[addr_1]"
string = "[string]0" //If we did get a collision, this should make the next attempt not have one.
- sleep(1)
address = new_address
all_exonet_connections |= src
diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm
index c213b386c7..2c81ccc466 100644
--- a/code/defines/obj/weapon.dm
+++ b/code/defines/obj/weapon.dm
@@ -54,9 +54,9 @@
/obj/item/soap/deluxe
icon_state = "soapdeluxe"
-/obj/item/soap/deluxe/New()
+/obj/item/soap/deluxe/Initialize(mapload)
+ . = ..()
desc = "A deluxe Waffle Co. brand bar of soap. Smells of [pick("lavender", "vanilla", "strawberry", "chocolate" ,"space")]."
- ..()
/obj/item/soap/syndie
desc = "An untrustworthy bar of soap. Smells of fear."
@@ -491,10 +491,10 @@
drop_sound = 'sound/items/drop/component.ogg'
pickup_sound = 'sound/items/pickup/component.ogg'
-/obj/item/stock_parts/New()
+/obj/item/stock_parts/Initialize(mapload)
+ . = ..()
src.pixel_x = rand(-5.0, 5)
src.pixel_y = rand(-5.0, 5)
- ..()
/obj/item/stock_parts/get_rating()
return rating
@@ -519,7 +519,7 @@
var/charge = 0
var/max_charge = 1000
-/obj/item/stock_parts/capacitor/New()
+/obj/item/stock_parts/capacitor/Initialize(mapload)
. = ..()
max_charge *= rating
diff --git a/code/game/area/ai_monitored.dm b/code/game/area/ai_monitored.dm
index 7c95e83b0d..aff8c28383 100644
--- a/code/game/area/ai_monitored.dm
+++ b/code/game/area/ai_monitored.dm
@@ -3,16 +3,13 @@
var/obj/machinery/camera/motioncamera = null
-/area/ai_monitored/New()
- ..()
+/area/ai_monitored/Initialize(mapload)
+ . = ..()
// locate and store the motioncamera
- spawn (20) // spawn on a delay to let turfs/objs load
- for (var/obj/machinery/camera/M in src)
- if(M.isMotion())
- motioncamera = M
- M.area_motion = src
- return
- return
+ for (var/obj/machinery/camera/M in src)
+ if(M.isMotion())
+ motioncamera = M
+ M.area_motion = src
/area/ai_monitored/Entered(atom/movable/O)
..()
@@ -22,5 +19,3 @@
/area/ai_monitored/Exited(atom/movable/O)
if (ismob(O) && motioncamera)
motioncamera.lostTarget(O)
-
-
diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm
index 3b50aafc27..f80059710b 100644
--- a/code/game/atoms_movable.dm
+++ b/code/game/atoms_movable.dm
@@ -468,10 +468,10 @@
var/atom/master = null
anchored = TRUE
-/atom/movable/overlay/New()
+/atom/movable/overlay/Initialize(mapload)
+ . = ..()
for(var/x in src.verbs)
src.verbs -= x
- ..()
/atom/movable/overlay/attackby(a, b)
if (src.master)
diff --git a/code/game/gamemodes/changeling/powers/bioelectrogenesis.dm b/code/game/gamemodes/changeling/powers/bioelectrogenesis.dm
index cce2d1da01..bdbebb740d 100644
--- a/code/game/gamemodes/changeling/powers/bioelectrogenesis.dm
+++ b/code/game/gamemodes/changeling/powers/bioelectrogenesis.dm
@@ -113,7 +113,8 @@
agony_amount = 80
electrocute_amount = 20
-/obj/item/electric_hand/New()
+/obj/item/electric_hand/Initialize(mapload)
+ . = ..()
if(ismob(loc))
visible_message(span_warning("Electrical arcs form around [loc.name]\'s hand!"),
span_warning("We store a charge of electricity in our hand."),
diff --git a/code/game/gamemodes/changeling/powers/electric_lockpick.dm b/code/game/gamemodes/changeling/powers/electric_lockpick.dm
index 59ed913073..62ab50231b 100644
--- a/code/game/gamemodes/changeling/powers/electric_lockpick.dm
+++ b/code/game/gamemodes/changeling/powers/electric_lockpick.dm
@@ -32,7 +32,8 @@
icon_state = "electric_hand"
show_examine = FALSE
-/obj/item/finger_lockpick/New()
+/obj/item/finger_lockpick/Initialize(mapload)
+ . = ..()
if(ismob(loc))
to_chat(loc, span_notice("We shape our finger to fit inside electronics, and are ready to force them open."))
diff --git a/code/game/gamemodes/cult/construct_spells.dm b/code/game/gamemodes/cult/construct_spells.dm
index 2652529cef..6718ba098c 100644
--- a/code/game/gamemodes/cult/construct_spells.dm
+++ b/code/game/gamemodes/cult/construct_spells.dm
@@ -438,13 +438,10 @@
cast_sound = null // Sound file played when this is used.
var/last_castcheck = null // The last time this spell was cast.
-/obj/item/spell/construct/New()
- //..() //This kills the spell, because super on this calls the default spell's New, which checks for a core. Can't have that.
- if(isliving(loc))
- owner = loc
+/obj/item/spell/construct/Initialize(mapload)
+ . = ..(mapload, TRUE)
if(!owner)
- qdel(src)
- update_icon()
+ return INITIALIZE_HINT_QDEL
/obj/item/spell/construct/adjust_instability(var/amount) //The only drawback to the boons of the geometer is the use of a mortal's blood as fuel. Constructs have already paid that price long ago.
return
diff --git a/code/game/gamemodes/cult/narsie.dm b/code/game/gamemodes/cult/narsie.dm
index a5153c22b7..648ee8b528 100644
--- a/code/game/gamemodes/cult/narsie.dm
+++ b/code/game/gamemodes/cult/narsie.dm
@@ -16,13 +16,13 @@ var/global/list/narsie_list = list()
consume_range = 3 //How many tiles out do we eat
-/obj/singularity/narsie/New()
- ..()
+/obj/singularity/narsie/Initialize(mapload)
+ . = ..()
narsie_list.Add(src)
/obj/singularity/narsie/Destroy()
narsie_list.Remove(src)
- ..()
+ . = ..()
/obj/singularity/narsie/large
name = "Nar-Sie"
@@ -40,8 +40,8 @@ var/global/list/narsie_list = list()
var/announce=1
var/cause_hell = 1
-/obj/singularity/narsie/large/New()
- ..()
+/obj/singularity/narsie/large/Initialize(mapload)
+ . = ..()
if(announce)
to_world(span_world(span_narsie(span_red("[uppertext(name)] HAS RISEN"))))
world << sound('sound/effects/weather/old_wind/wind_5_1.ogg')
@@ -362,6 +362,8 @@ var/global/list/narsie_list = list()
dir = SOUTH
move_self = 0
flick("narsie_spawn_anim",src)
- sleep(11)
+ addtimer(CALLBACK(src, PROC_REF(after_animation)), 1.1 SECONDS, TIMER_DELETE_ME)
+
+/obj/singularity/narsie/proc/after_animation()
move_self = 1
icon = initial(icon)
diff --git a/code/game/gamemodes/events/holidays/Christmas.dm b/code/game/gamemodes/events/holidays/Christmas.dm
index bb5e9f84e5..095e6893d5 100644
--- a/code/game/gamemodes/events/holidays/Christmas.dm
+++ b/code/game/gamemodes/events/holidays/Christmas.dm
@@ -23,9 +23,6 @@
desc = "Directions for use: Requires two people, one to pull each end."
var/cracked = 0
-/obj/item/toy/xmas_cracker/New()
- ..()
-
/obj/item/toy/xmas_cracker/attack(mob/target, mob/user)
if( !cracked && (issilicon(target) || (ishuman(target) && !target.get_active_hand())) && target.stat == CONSCIOUS)
target.visible_message(span_notice("[user] and [target] pop \an [src]! *pop*"), span_notice("You pull \an [src] with [target]! *pop*"), span_notice("You hear a *pop*."))
diff --git a/code/game/gamemodes/meteor/meteors.dm b/code/game/gamemodes/meteor/meteors.dm
index 8b730abcf6..874dce963f 100644
--- a/code/game/gamemodes/meteor/meteors.dm
+++ b/code/game/gamemodes/meteor/meteors.dm
@@ -151,8 +151,8 @@
GLOB.meteor_list -= src
return ..()
-/obj/effect/meteor/New()
- ..()
+/obj/effect/meteor/Initialize()
+ . = ..()
SpinAnimation()
/obj/effect/meteor/Bump(atom/A)
diff --git a/code/game/gamemodes/technomancer/catalog.dm b/code/game/gamemodes/technomancer/catalog.dm
index fd50cf0a25..392b0057ae 100644
--- a/code/game/gamemodes/technomancer/catalog.dm
+++ b/code/game/gamemodes/technomancer/catalog.dm
@@ -69,8 +69,8 @@ var/list/all_technomancer_assistance = subtypesof(/datum/technomancer/assistance
// Proc: New()
// Parameters: 0
// Description: Sets up the catalog, as shown below.
-/obj/item/technomancer_catalog/New()
- ..()
+/obj/item/technomancer_catalog/Initialize(mapload)
+ . = ..()
set_up()
// Proc: set_up()
diff --git a/code/game/gamemodes/technomancer/core_obj.dm b/code/game/gamemodes/technomancer/core_obj.dm
index 2a59ee8ada..ec7e9df6aa 100644
--- a/code/game/gamemodes/technomancer/core_obj.dm
+++ b/code/game/gamemodes/technomancer/core_obj.dm
@@ -37,8 +37,8 @@
var/max_summons = 10 // Maximum allowed summoned entities. Some cores will have different caps.
var/universal = FALSE // Allows non-technomancers to use the core - VOREStation Add
-/obj/item/technomancer_core/New()
- ..()
+/obj/item/technomancer_core/Initialize(mapload)
+ . = ..()
START_PROCESSING(SSobj, src)
/obj/item/technomancer_core/Destroy()
@@ -142,14 +142,14 @@
var/obj/item/technomancer_core/core = null
var/ability_icon_state = null
-/obj/spellbutton/New(loc, var/path, var/new_name, var/new_icon_state)
- if(!path || !ispath(path))
- message_admins("ERROR: /obj/spellbutton/New() was not given a proper path!")
- qdel(src)
+/obj/spellbutton/Initialize(mapload, var/path, var/new_name, var/new_icon_state)
+ . = ..()
+ src.core = loc
+ if(!path || !ispath(path) || !istype(core))
+ message_admins("ERROR: /obj/spellbutton/Initialize() was not given a proper path or not placed into the right location!")
+ return INITIALIZE_HINT_QDEL
src.name = new_name
src.spellpath = path
- src.loc = loc
- src.core = loc
src.ability_icon_state = new_icon_state
/obj/spellbutton/Click()
diff --git a/code/game/gamemodes/technomancer/devices/shield_armor.dm b/code/game/gamemodes/technomancer/devices/shield_armor.dm
index 20c42faa30..a740a02c7f 100644
--- a/code/game/gamemodes/technomancer/devices/shield_armor.dm
+++ b/code/game/gamemodes/technomancer/devices/shield_armor.dm
@@ -24,8 +24,8 @@
var/datum/effect/effect/system/spark_spread/spark_system = null
var/block_percentage = 75
-/obj/item/clothing/suit/armor/shield/New()
- ..()
+/obj/item/clothing/suit/armor/shield/Initialize(mapload)
+ . = ..()
spark_system = new /datum/effect/effect/system/spark_spread()
spark_system.set_up(5, 0, src)
diff --git a/code/game/gamemodes/technomancer/spell_objs.dm b/code/game/gamemodes/technomancer/spell_objs.dm
index a18db49170..ecbdef4424 100644
--- a/code/game/gamemodes/technomancer/spell_objs.dm
+++ b/code/game/gamemodes/technomancer/spell_objs.dm
@@ -110,16 +110,15 @@
// Proc: New()
// Parameters: 0
// Description: Sets owner to equal its loc, links to the owner's core, then applies overlays if needed.
-/obj/item/spell/New()
- ..()
+/obj/item/spell/Initialize(mapload, var/coreless)
+ . = ..()
if(isliving(loc))
owner = loc
- if(owner)
+ if(owner && !coreless)
core = owner.get_technomancer_core()
if(!core)
to_chat(owner, span_warning("You need a Core to do that."))
- qdel(src)
- return
+ return INITIALIZE_HINT_QDEL
// if(istype(/obj/item/technomancer_core, owner.back))
// core = owner.back
update_icon()
diff --git a/code/game/gamemodes/technomancer/spells/aspect_aura.dm b/code/game/gamemodes/technomancer/spells/aspect_aura.dm
index a20849e517..f27a3be04d 100644
--- a/code/game/gamemodes/technomancer/spells/aspect_aura.dm
+++ b/code/game/gamemodes/technomancer/spells/aspect_aura.dm
@@ -41,14 +41,14 @@
aspect = ASPECT_CHROMATIC
var/glow_color = "#FFFFFF"
-/obj/item/spell/aura/New()
- ..()
+/obj/item/spell/aura/Initialize(mapload)
+ . = ..()
set_light(7, 4, l_color = glow_color)
START_PROCESSING(SSobj, src)
/obj/item/spell/aura/Destroy()
STOP_PROCESSING(SSobj, src)
- ..()
+ . = ..()
/obj/item/spell/aura/process()
return
diff --git a/code/game/gamemodes/technomancer/spells/chroma.dm b/code/game/gamemodes/technomancer/spells/chroma.dm
index d0d9f7cf37..908ea0acc0 100644
--- a/code/game/gamemodes/technomancer/spells/chroma.dm
+++ b/code/game/gamemodes/technomancer/spells/chroma.dm
@@ -14,8 +14,8 @@
aspect = ASPECT_LIGHT
var/color_to_use = "#FFFFFF"
-/obj/item/spell/chroma/New()
- ..()
+/obj/item/spell/chroma/Initialize(mapload, coreless)
+ . = ..()
set_light(6, 5, l_color = color_to_use)
/obj/effect/temporary_effect/chroma
diff --git a/code/game/gamemodes/technomancer/spells/flame_tongue.dm b/code/game/gamemodes/technomancer/spells/flame_tongue.dm
index 68f341d106..61b9bbe822 100644
--- a/code/game/gamemodes/technomancer/spells/flame_tongue.dm
+++ b/code/game/gamemodes/technomancer/spells/flame_tongue.dm
@@ -14,8 +14,8 @@
aspect = ASPECT_FIRE
var/obj/item/weldingtool/spell/welder = null
-/obj/item/spell/flame_tongue/New()
- ..()
+/obj/item/spell/flame_tongue/Initialize(mapload, coreless)
+ . = ..()
set_light(3, 2, l_color = "#FF6A00")
visible_message(span_warning("\The [loc]'s hand begins to emit a flame."))
welder = new /obj/item/weldingtool/spell(src)
diff --git a/code/game/gamemodes/technomancer/spells/instability_tap.dm b/code/game/gamemodes/technomancer/spells/instability_tap.dm
index 67aac5557f..e866fc6947 100644
--- a/code/game/gamemodes/technomancer/spells/instability_tap.dm
+++ b/code/game/gamemodes/technomancer/spells/instability_tap.dm
@@ -14,8 +14,8 @@
cast_methods = CAST_USE
aspect = ASPECT_UNSTABLE
-/obj/item/spell/instability_tap/New()
- ..()
+/obj/item/spell/instability_tap/Initialize(mapload, coreless)
+ . = ..()
set_light(3, 2, l_color = "#FA58F4")
/obj/item/spell/instability_tap/on_use_cast(mob/user)
@@ -27,4 +27,4 @@
core.give_energy(amount)
adjust_instability(50)
playsound(src, 'sound/effects/supermatter.ogg', 75, 1)
- qdel(src)
\ No newline at end of file
+ qdel(src)
diff --git a/code/game/gamemodes/technomancer/spells/radiance.dm b/code/game/gamemodes/technomancer/spells/radiance.dm
index a84521cf82..da39e4b072 100644
--- a/code/game/gamemodes/technomancer/spells/radiance.dm
+++ b/code/game/gamemodes/technomancer/spells/radiance.dm
@@ -16,8 +16,8 @@
var/power = 250
toggled = 1
-/obj/item/spell/radiance/New()
- ..()
+/obj/item/spell/radiance/Initialize(mapload, coreless)
+ . = ..()
set_light(7, 4, l_color = "#D9D900")
START_PROCESSING(SSobj, src)
log_and_message_admins("has casted [src].")
diff --git a/code/game/gamemodes/technomancer/spells/reflect.dm b/code/game/gamemodes/technomancer/spells/reflect.dm
index b0dba844f4..251013bab1 100644
--- a/code/game/gamemodes/technomancer/spells/reflect.dm
+++ b/code/game/gamemodes/technomancer/spells/reflect.dm
@@ -16,8 +16,8 @@
var/damage_to_energy_multiplier = 60.0 //Determines how much energy to charge for blocking, e.g. 20 damage attack = 1200 energy cost
var/datum/effect/effect/system/spark_spread/spark_system = null
-/obj/item/spell/reflect/New()
- ..()
+/obj/item/spell/reflect/Initialize(mapload, coreless)
+ . = ..()
set_light(3, 2, l_color = "#006AFF")
spark_system = new /datum/effect/effect/system/spark_spread()
spark_system.set_up(5, 0, src)
diff --git a/code/game/gamemodes/technomancer/spells/shield.dm b/code/game/gamemodes/technomancer/spells/shield.dm
index d5182ca1de..f8c55b4562 100644
--- a/code/game/gamemodes/technomancer/spells/shield.dm
+++ b/code/game/gamemodes/technomancer/spells/shield.dm
@@ -18,8 +18,8 @@
var/damage_to_energy_multiplier = 30.0 //Determines how much energy to charge for blocking, e.g. 20 damage attack = 600 energy cost
var/datum/effect/effect/system/spark_spread/spark_system = null
-/obj/item/spell/shield/New()
- ..()
+/obj/item/spell/shield/Initialize(mapload, coreless)
+ . = ..()
set_light(3, 2, l_color = "#006AFF")
spark_system = new /datum/effect/effect/system/spark_spread()
spark_system.set_up(5, 0, src)
diff --git a/code/game/machinery/OpTable.dm b/code/game/machinery/OpTable.dm
index 27c0919106..66066a9de4 100644
--- a/code/game/machinery/OpTable.dm
+++ b/code/game/machinery/OpTable.dm
@@ -15,8 +15,8 @@
var/strapped = 0.0
var/obj/machinery/computer/operating/computer = null
-/obj/machinery/optable/New()
- ..()
+/obj/machinery/optable/Initialize(mapload)
+ . = ..()
for(var/direction in list(NORTH,EAST,SOUTH,WEST))
computer = locate(/obj/machinery/computer/operating, get_step(src, direction))
if(computer)
diff --git a/code/game/machinery/atmoalter/clamp.dm b/code/game/machinery/atmoalter/clamp.dm
index ba01be8538..b32ae4774c 100644
--- a/code/game/machinery/atmoalter/clamp.dm
+++ b/code/game/machinery/atmoalter/clamp.dm
@@ -14,8 +14,8 @@
var/datum/pipe_network/network_node1
var/datum/pipe_network/network_node2
-/obj/machinery/clamp/New(loc, var/obj/machinery/atmospherics/pipe/simple/to_attach = null)
- ..()
+/obj/machinery/clamp/Initialize(mapload, var/obj/machinery/atmospherics/pipe/simple/to_attach = null)
+ . = ..()
if(istype(to_attach))
target = to_attach
else
@@ -23,7 +23,6 @@
if(target)
update_networks()
dir = target.dir
- return 1
/obj/machinery/clamp/proc/update_networks()
if(!target)
diff --git a/code/game/machinery/computer/RCON_Console.dm b/code/game/machinery/computer/RCON_Console.dm
index bc2b0175ac..60e37ed506 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/tgui_module/rcon/rcon
-/obj/machinery/computer/rcon/New()
- ..()
+/obj/machinery/computer/rcon/Initialize(mapload)
+ . = ..()
rcon = new(src)
/obj/machinery/computer/rcon/Destroy()
diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm
index cc4fb5c488..ad469fc7c1 100644
--- a/code/game/machinery/computer/crew.dm
+++ b/code/game/machinery/computer/crew.dm
@@ -10,9 +10,9 @@
circuit = /obj/item/circuitboard/crew
var/datum/tgui_module/crew_monitor/crew_monitor
-/obj/machinery/computer/crew/New()
+/obj/machinery/computer/crew/Initialize(mapload)
+ . = ..()
crew_monitor = new(src)
- ..()
/obj/machinery/computer/crew/Destroy()
qdel(crew_monitor)
diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm
index 9b1ed01618..ae6fce9af3 100644
--- a/code/game/machinery/doors/windowdoor.dm
+++ b/code/game/machinery/doors/windowdoor.dm
@@ -17,13 +17,12 @@
can_atmos_pass = ATMOS_PASS_PROC
air_properties_vary_with_direction = 1
-/obj/machinery/door/window/New()
- ..()
+/obj/machinery/door/window/Initialize(mapload)
+ . = ..()
update_nearby_tiles()
if(LAZYLEN(req_access))
- src.icon_state = "[src.icon_state]"
- src.base_state = src.icon_state
- return
+ icon_state = "[icon_state]"
+ base_state = icon_state
/obj/machinery/door/window/update_icon()
if(density)
diff --git a/code/game/machinery/floodlight.dm b/code/game/machinery/floodlight.dm
index f4541f57b7..d1b3a8888e 100644
--- a/code/game/machinery/floodlight.dm
+++ b/code/game/machinery/floodlight.dm
@@ -13,9 +13,9 @@
var/open = 0
var/brightness_on = 8 //can't remember what the maxed out value is
-/obj/machinery/floodlight/Initialize() //ChompEDIT New --> Initialize
+/obj/machinery/floodlight/Initialize(mapload)
+ . = ..()
cell = new(src)
- ..()
/obj/machinery/floodlight/update_icon()
cut_overlays()
diff --git a/code/game/machinery/nuclear_bomb.dm b/code/game/machinery/nuclear_bomb.dm
index e284115852..5f0e830edb 100644
--- a/code/game/machinery/nuclear_bomb.dm
+++ b/code/game/machinery/nuclear_bomb.dm
@@ -25,8 +25,8 @@ var/bomb_set
// 3 is sealant open, 4 is unwrenched, 5 is removed from bolts.
use_power = USE_POWER_OFF
-/obj/machinery/nuclearbomb/New()
- ..()
+/obj/machinery/nuclearbomb/Initialize(mapload)
+ . = ..()
r_code = "[rand(10000, 99999.0)]"//Creates a random code upon object spawn.
wires["Red"] = 0
wires["Blue"] = 0
@@ -53,7 +53,7 @@ var/bomb_set
for(var/mob/M in viewers(1, src))
if((M.client && M.machine == src))
attack_hand(M)
- return
+ return ..()
/obj/machinery/nuclearbomb/attackby(obj/item/O as obj, mob/user as mob)
if(O.has_tool_quality(TOOL_SCREWDRIVER))
@@ -418,9 +418,9 @@ var/bomb_set
#undef NUKERANGE
-/obj/item/disk/nuclear/New()
- ..()
- nuke_disks |= src
+/obj/item/disk/nuclear/Initialize(mapload)
+ . = ..()
+ nuke_disks += src
/obj/item/disk/nuclear/Destroy()
if(!nuke_disks.len && blobstart.len > 0)
diff --git a/code/game/machinery/partslathe_vr.dm b/code/game/machinery/partslathe_vr.dm
index 86d0694d93..06184c1978 100644
--- a/code/game/machinery/partslathe_vr.dm
+++ b/code/game/machinery/partslathe_vr.dm
@@ -43,8 +43,8 @@
// type -> /datum/category_item/partslathe/
var/static/list/partslathe_recipies
-/obj/machinery/partslathe/New()
- ..()
+/obj/machinery/partslathe/Initialize(mapload)
+ . = ..()
default_apply_parts()
update_icon()
update_recipe_list()
diff --git a/code/game/machinery/petrification.dm b/code/game/machinery/petrification.dm
index 402a2e9cc3..645db260c7 100644
--- a/code/game/machinery/petrification.dm
+++ b/code/game/machinery/petrification.dm
@@ -19,7 +19,7 @@
var/mob/living/carbon/human/target
var/list/remotes = list()
-/obj/machinery/petrification/New()
+/obj/machinery/petrification/Initialize(mapload)
. = ..()
if(!pixel_x && !pixel_y)
pixel_x = (dir & 3) ? 0 : (dir == 4 ? 26 : -26)
diff --git a/code/game/machinery/pipe/pipelayer.dm b/code/game/machinery/pipe/pipelayer.dm
index 96f96dcfe3..8d54b64eaf 100644
--- a/code/game/machinery/pipe/pipelayer.dm
+++ b/code/game/machinery/pipe/pipelayer.dm
@@ -21,9 +21,9 @@
"heat exchange pipes" = /obj/machinery/atmospherics/pipe/simple/heat_exchanging
)
-/obj/machinery/pipelayer/New()
+/obj/machinery/pipelayer/Initialize(mapload)
+ . = ..()
W = new(src)
- ..()
default_apply_parts()
update_icon()
diff --git a/code/game/machinery/telecomms/presets.dm b/code/game/machinery/telecomms/presets.dm
index 1670694d02..af0535f7a8 100644
--- a/code/game/machinery/telecomms/presets.dm
+++ b/code/game/machinery/telecomms/presets.dm
@@ -59,10 +59,10 @@
//Common and other radio frequencies for people to freely use
-/obj/machinery/telecomms/receiver/preset_right/New()
+/obj/machinery/telecomms/receiver/preset_right/Initialize(mapload)
for(var/i = PUBLIC_LOW_FREQ, i < PUBLIC_HIGH_FREQ, i += 2)
freq_listening |= i
- ..()
+ . = ..()
/obj/machinery/telecomms/receiver/preset_cent
id = "CentCom Receiver"
@@ -86,12 +86,12 @@
freq_listening = list(SUP_FREQ, SRV_FREQ)
autolinkers = list("processor2", "supply", "service", "unused")
-/obj/machinery/telecomms/bus/preset_two/New()
+/obj/machinery/telecomms/bus/preset_two/Initialize(mapload)
for(var/i = PUBLIC_LOW_FREQ, i < PUBLIC_HIGH_FREQ, i += 2)
if(i == PUB_FREQ)
continue
freq_listening |= i
- ..()
+ . = ..()
/obj/machinery/telecomms/bus/preset_three
id = "Bus 3"
@@ -179,12 +179,12 @@
freq_listening = list()
autolinkers = list("unused")
-/obj/machinery/telecomms/server/presets/unused/New()
+/obj/machinery/telecomms/server/presets/unused/Initialize(mapload)
for(var/i = PUBLIC_LOW_FREQ, i < PUBLIC_HIGH_FREQ, i += 2)
if(i == AI_FREQ || i == PUB_FREQ)
continue
freq_listening |= i
- ..()
+ . = ..()
/obj/machinery/telecomms/server/presets/command
id = "Command Server"
diff --git a/code/game/machinery/telecomms/telecomunications.dm b/code/game/machinery/telecomms/telecomunications.dm
index 09e18dc2cd..51d95f2f4a 100644
--- a/code/game/machinery/telecomms/telecomunications.dm
+++ b/code/game/machinery/telecomms/telecomunications.dm
@@ -115,9 +115,15 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
return 0
-/obj/machinery/telecomms/New()
+/obj/machinery/telecomms/Initialize(mapload)
telecomms_list += src
..()
+ default_apply_parts()
+ return INITIALIZE_HINT_LATELOAD
+
+
+/obj/machinery/telecomms/LateInitialize()
+ . = ..()
//Set the listening_level if there's none.
if(!listening_level)
@@ -125,7 +131,6 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
var/turf/position = get_turf(src)
listening_level = position.z
-/obj/machinery/telecomms/Initialize()
if(autolinkers.len)
// Links nearby machines
if(!long_range_link)
@@ -148,7 +153,6 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
soundloop.mid_length = 30
soundloop.start()
// CHOMPAdd End
- . = ..()
/obj/machinery/telecomms/Destroy()
telecomms_list -= src
@@ -292,10 +296,6 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
var/list/linked_radios_weakrefs = list()
-/obj/machinery/telecomms/receiver/Initialize()
- . = ..()
- default_apply_parts()
-
/obj/machinery/telecomms/receiver/proc/link_radio(var/obj/item/radio/R)
if(!istype(R))
return
@@ -375,10 +375,6 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
long_range_link = 1
netspeed = 40
-/obj/machinery/telecomms/hub/Initialize()
- . = ..()
- default_apply_parts()
-
/obj/machinery/telecomms/hub/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from)
if(is_freq_listening(signal))
if(istype(machine_from, /obj/machinery/telecomms/receiver))
@@ -415,10 +411,6 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
var/broadcasting = 1
var/receiving = 1
-/obj/machinery/telecomms/relay/Initialize()
- . = ..()
- default_apply_parts()
-
/obj/machinery/telecomms/relay/forceMove(var/newloc)
. = ..(newloc)
listening_level = z
@@ -472,10 +464,6 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
netspeed = 40
var/change_frequency = 0
-/obj/machinery/telecomms/bus/Initialize()
- . = ..()
- default_apply_parts()
-
/obj/machinery/telecomms/bus/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from)
if(is_freq_listening(signal))
@@ -528,10 +516,6 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
circuit = /obj/item/circuitboard/telecomms/processor
var/process_mode = 1 // 1 = Uncompress Signals, 0 = Compress Signals
-/obj/machinery/telecomms/processor/Initialize()
- . = ..()
- default_apply_parts()
-
/obj/machinery/telecomms/processor/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from)
if(is_freq_listening(signal))
@@ -583,15 +567,11 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
// would add up to md5("password123comsat")
var/obj/item/radio/headset/server_radio = null
-/obj/machinery/telecomms/server/New()
- ..()
+/obj/machinery/telecomms/server/Initialize(mapload)
Compiler = new()
Compiler.Holder = src
server_radio = new()
-
-/obj/machinery/telecomms/server/Initialize()
. = ..()
- default_apply_parts()
/obj/machinery/telecomms/server/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from)
diff --git a/code/game/machinery/transformer.dm b/code/game/machinery/transformer.dm
index 8a09b6f048..908d527088 100644
--- a/code/game/machinery/transformer.dm
+++ b/code/game/machinery/transformer.dm
@@ -9,9 +9,9 @@
var/transform_dead = 0
var/transform_standing = 0
-/obj/machinery/transformer/New()
+/obj/machinery/transformer/Initialize(mapload)
+ . = ..()
// On us
- ..()
new /obj/machinery/conveyor(loc, WEST, 1)
/obj/machinery/transformer/Bumped(var/atom/movable/AM)
@@ -39,8 +39,8 @@
if(robot)
robot.SetLockDown(0)
-/obj/machinery/transformer/conveyor/New()
- ..()
+/obj/machinery/transformer/conveyor/Initialize(mapload)
+ . = ..()
var/turf/T = loc
if(T)
// Spawn Conveyour Belts
@@ -53,4 +53,4 @@
// West
var/turf/west = locate(T.x - 1, T.y, T.z)
if(istype(west, /turf/simulated/floor))
- new /obj/machinery/conveyor(west, WEST, 1)
\ No newline at end of file
+ new /obj/machinery/conveyor(west, WEST, 1)
diff --git a/code/game/objects/effects/chem/coating.dm b/code/game/objects/effects/chem/coating.dm
index 13a3cb4c39..3d18231d80 100644
--- a/code/game/objects/effects/chem/coating.dm
+++ b/code/game/objects/effects/chem/coating.dm
@@ -6,11 +6,8 @@
icon = 'icons/effects/effects.dmi'
icon_state = "dirt"
-/obj/effect/decal/cleanable/chemcoating/New()
- ..()
- create_reagents(100)
-
/obj/effect/decal/cleanable/chemcoating/Initialize()
+ create_reagents(100)
. = ..()
var/turf/T = get_turf(src)
if(T)
diff --git a/code/game/objects/effects/chem/foam.dm b/code/game/objects/effects/chem/foam.dm
index fe430d720c..489f40ad6d 100644
--- a/code/game/objects/effects/chem/foam.dm
+++ b/code/game/objects/effects/chem/foam.dm
@@ -142,8 +142,8 @@
can_atmos_pass = ATMOS_PASS_NO
var/metal = 1 // 1 = aluminum, 2 = iron
-/obj/structure/foamedmetal/New()
- ..()
+/obj/structure/foamedmetal/Initialize(mapload)
+ . = ..()
update_nearby_tiles(1)
/obj/structure/foamedmetal/Destroy()
diff --git a/code/game/objects/effects/decals/Cleanable/misc.dm b/code/game/objects/effects/decals/Cleanable/misc.dm
index 8978178f67..c65e2d22d9 100644
--- a/code/game/objects/effects/decals/Cleanable/misc.dm
+++ b/code/game/objects/effects/decals/Cleanable/misc.dm
@@ -24,8 +24,8 @@
/obj/effect/decal/cleanable/greenglow
-/obj/effect/decal/cleanable/greenglow/New()
- ..()
+/obj/effect/decal/cleanable/greenglow/Initialize(mapload, _age)
+ . = ..()
QDEL_IN(src, 2 MINUTES)
/obj/effect/decal/cleanable/dirt
diff --git a/code/game/objects/effects/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm
index 4f47975975..6d68370eec 100644
--- a/code/game/objects/effects/decals/cleanable.dm
+++ b/code/game/objects/effects/decals/cleanable.dm
@@ -33,10 +33,10 @@ generic_filth = TRUE means when the decal is saved, it will be switched out for
return
..()
-/obj/effect/decal/cleanable/New()
- if (random_icon_states && length(src.random_icon_states) > 0)
- src.icon_state = pick(src.random_icon_states)
- ..()
+/obj/effect/decal/cleanable/Initialize(mapload, _age)
+ . = ..()
+ if (random_icon_states && length(random_icon_states) > 0)
+ icon_state = pick(random_icon_states)
/obj/effect/decal/cleanable/update_icon()
diff --git a/code/game/objects/effects/landmarks.dm b/code/game/objects/effects/landmarks.dm
index 9cb3b82063..5cc387b828 100644
--- a/code/game/objects/effects/landmarks.dm
+++ b/code/game/objects/effects/landmarks.dm
@@ -8,71 +8,58 @@
invisibility = 100
var/delete_me = 0
-/obj/effect/landmark/New()
- ..()
+/obj/effect/landmark/Initialize(mapload)
+ . = ..()
tag = text("landmark*[]", name)
invisibility = 101
switch(name) //some of these are probably obsolete
if("monkey")
monkeystart += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("start")
newplayer_start += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("JoinLate") // Bit difference, since we need the spawn point to move.
latejoin += src
simulated = TRUE
// delete_me = 1
- return
//VOREStation Add end
if("Observer-Start") // Ghosts are the only thing that use the latejoin list afaik and it complains if there's nothing in the list.
latejoin += src
simulated = TRUE
- return
//VOREStation Add end
if("JoinLateGateway")
latejoin_gateway += loc
// CHOMPEdit Start
- delete_me = 1
+ delete_me = TRUE
// CHOMPEdit End
- return
//CHOMPEdit Begin
if("JoinLateStationGateway")
GLOB.latejoin_gatewaystation += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("JoinLateSifPlains")
GLOB.latejoin_plainspath += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("JoinLateFuelDepot")
GLOB.latejoin_fueldepot += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("JoinLateTyrVillage")
GLOB.latejoin_tyrvillage += loc
- delete_me = 1
- return
+ delete_me = TRUE
//CHOMPEdit End
if("JoinLateElevator")
latejoin_elevator += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("JoinLateCryo")
latejoin_cryo += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("JoinLateCyborg")
latejoin_cyborg += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("prisonwarp")
prisonwarp += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("Holding Facility")
holdingfacility += loc
if("tdome1")
@@ -85,39 +72,27 @@
tdomeobserve += loc
if("prisonsecuritywarp")
prisonsecuritywarp += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("blobstart")
blobstart += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("xeno_spawn")
xeno_spawn += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("endgame_exit")
endgame_safespawns += loc
- delete_me = 1
- return
+ delete_me = TRUE
if("bluespacerift")
endgame_exits += loc
- delete_me = 1
- return
+ delete_me = TRUE
//VOREStation Add Start
if("vinestart")
vinestart += loc
- delete_me = 1
- return
+ delete_me = TRUE
//VORE Station Add End
landmarks_list += src
- return 1
-/obj/effect/landmark/proc/delete()
- delete_me = 1
-
-/obj/effect/landmark/Initialize()
- . = ..()
if(delete_me)
return INITIALIZE_HINT_QDEL
@@ -133,16 +108,16 @@
icon_state = "x"
anchored = TRUE
-/obj/effect/landmark/start/New()
- ..()
+/obj/effect/landmark/start/Initialize(mapload)
+ . = ..()
tag = "start*[name]"
- invisibility = 101
return 1
/obj/effect/landmark/forbidden_level
- delete_me = 1
-/obj/effect/landmark/forbidden_level/Initialize()
+ delete_me = TRUE
+
+/obj/effect/landmark/forbidden_level/Initialize(mapload)
. = ..()
if(using_map)
using_map.secret_levels |= z
@@ -150,8 +125,9 @@
log_error("[type] mapped in but no using_map")
/obj/effect/landmark/hidden_level
- delete_me = 1
-/obj/effect/landmark/hidden_level/Initialize()
+ delete_me = TRUE
+
+/obj/effect/landmark/hidden_level/Initialize(mapload)
. = ..()
if(using_map)
using_map.hidden_levels |= z
@@ -165,79 +141,80 @@
icon_state = "x"
anchored = TRUE
-/obj/effect/landmark/virtual_reality/New()
- ..()
+/obj/effect/landmark/virtual_reality/Initialize(mapload)
+ . = ..()
tag = "virtual_reality*[name]"
- invisibility = 101
- return 1
+/obj/effect/landmark/costume
+ delete_me = TRUE
//Costume spawner landmarks
-/obj/effect/landmark/costume/New() //costume spawner, selects a random subclass and disappears
-
- var/list/options = typesof(/obj/effect/landmark/costume)
- var/PICK= options[rand(1,options.len)]
- new PICK(src.loc)
- delete_me = 1
+/obj/effect/landmark/costume/Initialize(mapload) //costume spawner, selects a random subclass and disappears
+ . = ..()
+ if(type == /obj/effect/landmark/costume)
+ var/list/options = subtypesof(/obj/effect/landmark/costume)
+ var/PICK= options[rand(1,options.len)]
+ new PICK(src.loc)
//SUBCLASSES. Spawn a bunch of items and disappear likewise
-/obj/effect/landmark/costume/chicken/New()
+/obj/effect/landmark/costume/chicken/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/suit/chickensuit(src.loc)
new /obj/item/clothing/head/chicken(src.loc)
new /obj/item/reagent_containers/food/snacks/egg(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/gladiator/New()
+/obj/effect/landmark/costume/gladiator/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/gladiator(src.loc)
new /obj/item/clothing/head/helmet/gladiator(src.loc)
- qdel(src)
-/obj/effect/landmark/costume/madscientist/New()
+/obj/effect/landmark/costume/madscientist/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/suit_jacket/green(src.loc)
new /obj/item/clothing/head/flatcap(src.loc)
new /obj/item/clothing/suit/storage/toggle/labcoat/mad(src.loc)
new /obj/item/clothing/glasses/gglasses(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/elpresidente/New()
+/obj/effect/landmark/costume/elpresidente/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/suit_jacket/green(src.loc)
new /obj/item/clothing/head/flatcap(src.loc)
new /obj/item/clothing/mask/smokable/cigarette/cigar/havana(src.loc)
new /obj/item/clothing/shoes/boots/jackboots(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/nyangirl/New()
+/obj/effect/landmark/costume/nyangirl/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/schoolgirl(src.loc)
new /obj/item/clothing/head/kitty(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/maid/New()
+/obj/effect/landmark/costume/maid/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/skirt(src.loc)
var/CHOICE = pick( /obj/item/clothing/head/beret , /obj/item/clothing/head/rabbitears )
new CHOICE(src.loc)
new /obj/item/clothing/glasses/sunglasses/blindfold(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/butler/New()
+/obj/effect/landmark/costume/butler/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/accessory/wcoat(src.loc)
new /obj/item/clothing/under/suit_jacket(src.loc)
new /obj/item/clothing/head/that(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/scratch/New()
+/obj/effect/landmark/costume/scratch/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/gloves/white(src.loc)
new /obj/item/clothing/shoes/white(src.loc)
new /obj/item/clothing/under/scratch(src.loc)
if (prob(30))
new /obj/item/clothing/head/cueball(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/highlander/New()
+/obj/effect/landmark/costume/highlander/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/kilt(src.loc)
new /obj/item/clothing/head/beret(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/prig/New()
+/obj/effect/landmark/costume/prig/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/accessory/wcoat(src.loc)
new /obj/item/clothing/glasses/monocle(src.loc)
var/CHOICE= pick( /obj/item/clothing/head/bowler, /obj/item/clothing/head/that)
@@ -246,71 +223,70 @@
new /obj/item/cane(src.loc)
new /obj/item/clothing/under/sl_suit(src.loc)
new /obj/item/clothing/mask/fakemoustache(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/plaguedoctor/New()
+/obj/effect/landmark/costume/plaguedoctor/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/suit/bio_suit/plaguedoctorsuit(src.loc)
new /obj/item/clothing/head/plaguedoctorhat(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/nightowl/New()
+/obj/effect/landmark/costume/nightowl/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/owl(src.loc)
new /obj/item/clothing/mask/gas/owl_mask(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/waiter/New()
+/obj/effect/landmark/costume/waiter/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/waiter(src.loc)
var/CHOICE= pick( /obj/item/clothing/head/kitty, /obj/item/clothing/head/rabbitears)
new CHOICE(src.loc)
new /obj/item/clothing/suit/storage/apron(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/pirate/New()
+/obj/effect/landmark/costume/pirate/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/pirate(src.loc)
new /obj/item/clothing/suit/pirate(src.loc)
var/CHOICE = pick( /obj/item/clothing/head/pirate , /obj/item/clothing/head/bandana )
new CHOICE(src.loc)
new /obj/item/clothing/glasses/eyepatch(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/commie/New()
+/obj/effect/landmark/costume/commie/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/soviet(src.loc)
new /obj/item/clothing/head/ushanka(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/imperium_monk/New()
+/obj/effect/landmark/costume/imperium_monk/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/suit/imperium_monk(src.loc)
if (prob(25))
new /obj/item/clothing/mask/gas/cyborg(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/holiday_priest/New()
+/obj/effect/landmark/costume/holiday_priest/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/suit/holidaypriest(src.loc)
- qdel(src)
-/obj/effect/landmark/costume/marisawizard/fake/New()
+/obj/effect/landmark/costume/marisawizard/fake/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/head/wizard/marisa/fake(src.loc)
new/obj/item/clothing/suit/wizrobe/marisa/fake(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/cutewitch/New()
+/obj/effect/landmark/costume/cutewitch/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/under/sundress(src.loc)
new /obj/item/clothing/head/witchwig(src.loc)
new /obj/item/staff/broom(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/fakewizard/New()
+/obj/effect/landmark/costume/fakewizard/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/suit/wizrobe/fake(src.loc)
new /obj/item/clothing/head/wizard/fake(src.loc)
new /obj/item/staff/(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/sexyclown/New()
+/obj/effect/landmark/costume/sexyclown/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/mask/gas/sexyclown(src.loc)
new /obj/item/clothing/under/sexyclown(src.loc)
- delete_me = 1
-/obj/effect/landmark/costume/sexymime/New()
+/obj/effect/landmark/costume/sexymime/Initialize(mapload)
+ . = ..()
new /obj/item/clothing/mask/gas/sexymime(src.loc)
new /obj/item/clothing/under/sexymime(src.loc)
- delete_me = 1
diff --git a/code/game/objects/effects/landmarks_events.dm b/code/game/objects/effects/landmarks_events.dm
index 7253fc6e2b..e7d4b10bb7 100644
--- a/code/game/objects/effects/landmarks_events.dm
+++ b/code/game/objects/effects/landmarks_events.dm
@@ -16,8 +16,8 @@ Admin verb is called by code\modules\admin\verbs\event_triggers.dm
var/isLoud = FALSE
var/isNarrate = FALSE
-/obj/effect/landmark/event_trigger/New()
- ..()
+/obj/effect/landmark/event_trigger/Initialize()
+ . = ..()
coordinates = "(X:[loc.x];Y:[loc.y];Z:[loc.z])"
/obj/effect/landmark/event_trigger/proc/set_vars(mob/M)
@@ -89,9 +89,9 @@ Admin verb is called by code\modules\admin\verbs\event_triggers.dm
var/isWarning = FALSE //For personal messages
isNarrate = TRUE
-/obj/effect/landmark/event_trigger/auto_narrate/New()
+/obj/effect/landmark/event_trigger/auto_narrate/Initialize()
+ . = ..()
message_range = world.view
- ..()
/obj/effect/landmark/event_trigger/auto_narrate/set_vars(mob/M)
..()
diff --git a/code/game/objects/effects/overlays.dm b/code/game/objects/effects/overlays.dm
index 5f76d72534..af3891263c 100644
--- a/code/game/objects/effects/overlays.dm
+++ b/code/game/objects/effects/overlays.dm
@@ -10,9 +10,9 @@
plane = ABOVE_OBJ_PLANE
var/tmp/atom/BeamSource
-/obj/effect/overlay/beam/New()
- ..()
- spawn(10) qdel(src)
+/obj/effect/overlay/beam/Initialize(mapload)
+ . = ..()
+ QDEL_IN(src, 1 SECOND)
/obj/effect/overlay/palmtree_r
name = "Palm tree"
diff --git a/code/game/objects/effects/temporary_visuals/projectiles/projectile_effects.dm b/code/game/objects/effects/temporary_visuals/projectiles/projectile_effects.dm
index 1088a3e4ba..9492114788 100644
--- a/code/game/objects/effects/temporary_visuals/projectiles/projectile_effects.dm
+++ b/code/game/objects/effects/temporary_visuals/projectiles/projectile_effects.dm
@@ -31,10 +31,10 @@
M.Turn(angle)
transform = M
-/obj/effect/projectile/New(angle_override, p_x, p_y, color_override, scaling = 1)
+/obj/effect/projectile/Initialize(mapload, angle_override, p_x, p_y, color_override, scaling = 1)
+ . = ..()
if(angle_override && p_x && p_y && color_override && scaling)
apply_vars(angle_override, p_x, p_y, color_override, scaling)
- return ..()
/obj/effect/projectile/proc/apply_vars(angle_override, p_x = 0, p_y = 0, color_override, scaling = 1, new_loc, increment = 0)
var/mutable_appearance/look = new(src)
@@ -54,7 +54,7 @@
/obj/effect/projectile_lighting
var/owner
-/obj/effect/projectile_lighting/New(loc, color, range, intensity, owner_key)
+/obj/effect/projectile_lighting/Initialize(mapload, color, range, intensity, owner_key)
. = ..()
set_light(range, intensity, color)
owner = owner_key
diff --git a/code/game/objects/items/devices/communicator/communicator.dm b/code/game/objects/items/devices/communicator/communicator.dm
index 5e13113f81..9fe9c0abf9 100644
--- a/code/game/objects/items/devices/communicator/communicator.dm
+++ b/code/game/objects/items/devices/communicator/communicator.dm
@@ -360,7 +360,7 @@ var/global/list/obj/item/communicator/all_communicators = list()
// Proc: New()
// Parameters: None
// Description: Gives ghosts an exonet address based on their key and ghost name.
-/mob/observer/dead/Initialize()
+/mob/observer/dead/Initialize(mapload)
. = ..()
exonet = new(src)
if(client)
diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm
index 7972929318..acc96ba1f8 100644
--- a/code/game/objects/items/devices/radio/radio.dm
+++ b/code/game/objects/items/devices/radio/radio.dm
@@ -75,7 +75,7 @@ var/global/list/default_medbay_channels = list(
frequency = new_frequency
radio_connection = radio_controller.add_object(src, frequency, RADIO_CHAT)
-/obj/item/radio/Initialize()
+/obj/item/radio/Initialize(mapload)
. = ..()
if(frequency < RADIO_LOW_FREQ || frequency > RADIO_HIGH_FREQ)
frequency = sanitize_frequency(frequency, RADIO_LOW_FREQ, RADIO_HIGH_FREQ)
@@ -84,6 +84,13 @@ var/global/list/default_medbay_channels = list(
for (var/ch_name in channels)
secure_radio_connections[ch_name] = radio_controller.add_object(src, radiochannels[ch_name], RADIO_CHAT)
+ wires = new(src)
+ internal_channels = default_internal_channels.Copy()
+ listening_objects += src
+ return INITIALIZE_HINT_LATELOAD
+
+/obj/item/radio/LateInitialize()
+ . = ..()
if(bluespace_radio)
if(bs_tx_preload_id)
//Try to find a receiver
@@ -120,11 +127,6 @@ var/global/list/default_medbay_channels = list(
if(!found)
testing("A radio [src] at [x],[y],[z] specified bluespace prelink IDs, but the machines with corresponding IDs ([bs_tx_preload_id], [bs_rx_preload_id]) couldn't be found.")
- wires = new(src)
- internal_channels = default_internal_channels.Copy()
- listening_objects += src
- return INITIALIZE_HINT_LATELOAD
-
/obj/item/radio/Destroy()
qdel(wires)
wires = null
diff --git a/code/game/objects/items/poi_items.dm b/code/game/objects/items/poi_items.dm
index 3789b5038f..40f4f121be 100644
--- a/code/game/objects/items/poi_items.dm
+++ b/code/game/objects/items/poi_items.dm
@@ -28,9 +28,9 @@
desc = "The top of this twisted chunk of metal is faintly stamped with a five pointed star. 'Property of US Army, Pascal B - 1957'."
catalogue_data = list(/datum/category_item/catalogue/information/objects/pascalb)
-/obj/item/poi/pascalb/New()
+/obj/item/poi/pascalb/Initialize(mapload)
+ . = ..()
START_PROCESSING(SSobj, src)
- return ..()
/obj/item/poi/pascalb/process()
SSradiation.radiate(src, 5)
@@ -75,9 +75,9 @@
desc = "This broken hunk of machinery looks extremely dangerous."
catalogue_data = list(/datum/category_item/catalogue/information/objects/oldreactor)
-/obj/item/poi/brokenoldreactor/New()
+/obj/item/poi/brokenoldreactor/Initialize(mapload)
+ . = ..()
START_PROCESSING(SSobj, src)
- return ..()
/obj/item/poi/brokenoldreactor/process()
SSradiation.radiate(src, 25)
@@ -134,7 +134,8 @@
var/has_paper = FALSE
-/obj/item/poi/broken_drone_circuit/New()
+/obj/item/poi/broken_drone_circuit/Initialize(mapload)
+ . = ..()
drone_name = "[pick(list("ADA","DOS","GNU","MAC","WIN","NJS","SKS","DRD","IOS","CRM","IBM","TEX","LVM","BSD",))]-[rand(1000, 9999)]]"
var/new_canalyzer = "[drone_name] [examine_canalyzer]" //Only way I could think to dynamically insert drone name here
examine_canalyzer = new_canalyzer
diff --git a/code/game/objects/items/robot/robot_items.dm b/code/game/objects/items/robot/robot_items.dm
index a14593394c..662a8b99e8 100644
--- a/code/game/objects/items/robot/robot_items.dm
+++ b/code/game/objects/items/robot/robot_items.dm
@@ -83,10 +83,9 @@
icon_state = "healthhud"
icon = 'icons/inventory/eyes/item.dmi'
-/obj/item/borg/sight/hud/med/New()
- ..()
+/obj/item/borg/sight/hud/med/Initialize(mapload)
+ . = ..()
hud = new /obj/item/clothing/glasses/hud/health(src)
- return
/obj/item/borg/sight/hud/sec
@@ -94,7 +93,6 @@
icon_state = "securityhud"
icon = 'icons/inventory/eyes/item.dmi'
-/obj/item/borg/sight/hud/sec/New()
- ..()
+/obj/item/borg/sight/hud/sec/Initialize(mapload)
+ . = ..()
hud = new /obj/item/clothing/glasses/hud/security(src)
- return
diff --git a/code/game/objects/items/stacks/marker_beacons.dm b/code/game/objects/items/stacks/marker_beacons.dm
index 2979044ff7..b090cd8d64 100644
--- a/code/game/objects/items/stacks/marker_beacons.dm
+++ b/code/game/objects/items/stacks/marker_beacons.dm
@@ -93,7 +93,7 @@ var/list/marker_beacon_colors = list(
var/perma = FALSE
var/mapped_in_color
-/obj/structure/marker_beacon/New(newloc, set_color)
+/obj/structure/marker_beacon/Initialize(mapload, set_color)
. = ..()
if(set_color)
picked_color = set_color
diff --git a/code/game/objects/items/toys/toys.dm b/code/game/objects/items/toys/toys.dm
index 6539d9c532..365010606b 100644
--- a/code/game/objects/items/toys/toys.dm
+++ b/code/game/objects/items/toys/toys.dm
@@ -36,7 +36,8 @@
icon_state = "waterballoon-e"
drop_sound = 'sound/items/drop/rubber.ogg'
-/obj/item/toy/balloon/New()
+/obj/item/toy/balloon/Initialize(mapload)
+ . = ..()
var/datum/reagents/R = new/datum/reagents(10)
reagents = R
R.my_atom = src
@@ -300,8 +301,8 @@
var/toysay = "What the fuck did you do?"
drop_sound = 'sound/items/drop/accessory.ogg'
-/obj/item/toy/figure/New()
- ..()
+/obj/item/toy/figure/Initialize(mapload)
+ . = ..()
desc = "A \"Space Life\" brand [name]"
/obj/item/toy/figure/attack_self(mob/user as mob)
diff --git a/code/game/objects/items/weapons/candle.dm b/code/game/objects/items/weapons/candle.dm
index e184066dee..ce93d023d2 100644
--- a/code/game/objects/items/weapons/candle.dm
+++ b/code/game/objects/items/weapons/candle.dm
@@ -10,9 +10,9 @@
var/wax = 2000
var/icon_type = "candle"
-/obj/item/flame/candle/New()
+/obj/item/flame/candle/Initialize(mapload)
+ . = ..()
wax -= rand(800, 1000) // Enough for 27-33 minutes. 30 minutes on average.
- ..()
/obj/item/flame/candle/update_icon()
var/i
diff --git a/code/game/objects/items/weapons/chewables.dm b/code/game/objects/items/weapons/chewables.dm
index b19eb147c5..dc9729d761 100644
--- a/code/game/objects/items/weapons/chewables.dm
+++ b/code/game/objects/items/weapons/chewables.dm
@@ -171,12 +171,12 @@
var/open_state
var/closed_state
-/obj/item/storage/box/fancy/chewables/tobacco/nico/New()
+/obj/item/storage/box/fancy/chewables/tobacco/nico/Initialize(mapload)
+ . = ..()
if(!open_state)
open_state = "[initial(icon_state)]0"
if(!closed_state)
closed_state = "[initial(icon_state)]"
- ..()
/obj/item/storage/box/fancy/chewables/tobacco/nico/update_icon()
cut_overlays()
diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm
index 12c3da4b1f..e0b6ad68fd 100644
--- a/code/game/objects/items/weapons/cigs_lighters.dm
+++ b/code/game/objects/items/weapons/cigs_lighters.dm
@@ -430,8 +430,8 @@ CIGARETTE PACKETS ARE IN FANCY.DM
ignitermes = span_notice("USER fiddles with FLAME, and manages to light their NAME with the power of science.")
is_pipe = 1
-/obj/item/clothing/mask/smokable/pipe/New()
- ..()
+/obj/item/clothing/mask/smokable/pipe/Initialize()
+ . = ..()
name = "empty [initial(name)]"
/obj/item/clothing/mask/smokable/pipe/attack_self(mob/user as mob)
diff --git a/code/game/objects/items/weapons/clown_items.dm b/code/game/objects/items/weapons/clown_items.dm
index 958cd36731..2eb35ebab4 100644
--- a/code/game/objects/items/weapons/clown_items.dm
+++ b/code/game/objects/items/weapons/clown_items.dm
@@ -17,7 +17,7 @@
/*
* Soap
*/
-/obj/item/soap/Initialize()
+/obj/item/soap/Initialize(mapload)
. = ..()
create_reagents(5)
wet()
diff --git a/code/game/objects/items/weapons/cosmetics.dm b/code/game/objects/items/weapons/cosmetics.dm
index aa225cc2d1..c88e10c9e5 100644
--- a/code/game/objects/items/weapons/cosmetics.dm
+++ b/code/game/objects/items/weapons/cosmetics.dm
@@ -26,7 +26,8 @@
/obj/item/lipstick/random
name = "lipstick"
-/obj/item/lipstick/random/New()
+/obj/item/lipstick/random/Initialize(mapload)
+ . = ..()
colour = pick("red","purple","jade","black")
name = "[colour] lipstick"
diff --git a/code/game/objects/items/weapons/ecigs.dm b/code/game/objects/items/weapons/ecigs.dm
index 423e7df8cd..02b37c7d00 100644
--- a/code/game/objects/items/weapons/ecigs.dm
+++ b/code/game/objects/items/weapons/ecigs.dm
@@ -18,8 +18,8 @@
var/icon_empty
var/ecig_colors = list(null, COLOR_DARK_GRAY, COLOR_RED_GRAY, COLOR_BLUE_GRAY, COLOR_GREEN_GRAY, COLOR_PURPLE_GRAY)
-/obj/item/clothing/mask/smokable/ecig/New()
- ..()
+/obj/item/clothing/mask/smokable/ecig/Initialize(mapload)
+ . = ..()
ec_cartridge = new cartridge_type(src)
/obj/item/clothing/mask/smokable/ecig/examine(mob/user)
@@ -61,8 +61,9 @@
icon_off = "ecigoff1"
icon_empty = "ecigoff1"
icon_on = "ecigon"
-/obj/item/clothing/mask/smokable/ecig/util/New()
- ..()
+
+/obj/item/clothing/mask/smokable/ecig/util/Initialize(mapload)
+ . = ..()
color = pick(ecig_colors)
/obj/item/clothing/mask/smokable/ecig/deluxe
@@ -152,9 +153,7 @@
matter = list(MAT_STEEL = 50, MAT_GLASS = 10)
volume = 20
flags = OPENCONTAINER
-
-/obj/item/reagent_containers/ecig_cartridge/New()
- create_reagents(volume)
+ possible_transfer_amounts = null
/obj/item/reagent_containers/ecig_cartridge/examine(mob/user as mob)//to see how much left
. = ..()
@@ -168,32 +167,36 @@
/obj/item/reagent_containers/ecig_cartridge/blanknico
name = "flavorless nicotine cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label says you can add whatever flavoring agents you want."
-/obj/item/reagent_containers/ecig_cartridge/blanknico/New()
- ..()
+
+/obj/item/reagent_containers/ecig_cartridge/blanknico/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 5)
reagents.add_reagent(REAGENT_ID_WATER, 10)
/obj/item/reagent_containers/ecig_cartridge/med_nicotine
name = "tobacco flavour cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label says its tobacco flavored."
-/obj/item/reagent_containers/ecig_cartridge/med_nicotine/New()
- ..()
+
+/obj/item/reagent_containers/ecig_cartridge/med_nicotine/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 5)
reagents.add_reagent(REAGENT_ID_WATER, 15)
/obj/item/reagent_containers/ecig_cartridge/high_nicotine
name = "high nicotine tobacco flavour cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label says its tobacco flavored, with extra nicotine."
-/obj/item/reagent_containers/ecig_cartridge/high_nicotine/New()
- ..()
+
+/obj/item/reagent_containers/ecig_cartridge/high_nicotine/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 10)
reagents.add_reagent(REAGENT_ID_WATER, 10)
/obj/item/reagent_containers/ecig_cartridge/orange
name = "orange flavour cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label says its orange flavored."
-/obj/item/reagent_containers/ecig_cartridge/orange/New()
- ..()
+
+/obj/item/reagent_containers/ecig_cartridge/orange/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 5)
reagents.add_reagent(REAGENT_ID_WATER, 10)
reagents.add_reagent(REAGENT_ID_ORANGEJUICE, 5)
@@ -201,8 +204,9 @@
/obj/item/reagent_containers/ecig_cartridge/mint
name = "mint flavour cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label says its mint flavored."
-/obj/item/reagent_containers/ecig_cartridge/mint/New()
- ..()
+
+/obj/item/reagent_containers/ecig_cartridge/mint/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 5)
reagents.add_reagent(REAGENT_ID_WATER, 10)
reagents.add_reagent(REAGENT_ID_MENTHOL, 5)
@@ -210,8 +214,8 @@
/obj/item/reagent_containers/ecig_cartridge/watermelon
name = "watermelon flavour cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label says its watermelon flavored."
-/obj/item/reagent_containers/ecig_cartridge/watermelon/New()
- ..()
+/obj/item/reagent_containers/ecig_cartridge/watermelon/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 5)
reagents.add_reagent(REAGENT_ID_WATER, 10)
reagents.add_reagent(REAGENT_ID_WATERMELONJUICE, 5)
@@ -219,8 +223,9 @@
/obj/item/reagent_containers/ecig_cartridge/grape
name = "grape flavour cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label says its grape flavored."
-/obj/item/reagent_containers/ecig_cartridge/grape/New()
- ..()
+
+/obj/item/reagent_containers/ecig_cartridge/grape/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 5)
reagents.add_reagent(REAGENT_ID_WATER, 10)
reagents.add_reagent(REAGENT_ID_GRAPEJUICE, 5)
@@ -228,8 +233,9 @@
/obj/item/reagent_containers/ecig_cartridge/lemonlime
name = "lemon-lime flavour cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label says its lemon-lime flavored."
-/obj/item/reagent_containers/ecig_cartridge/lemonlime/New()
- ..()
+
+/obj/item/reagent_containers/ecig_cartridge/lemonlime/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 5)
reagents.add_reagent(REAGENT_ID_WATER, 10)
reagents.add_reagent(REAGENT_ID_LEMONLIME, 5)
@@ -237,8 +243,9 @@
/obj/item/reagent_containers/ecig_cartridge/coffee
name = "coffee flavour cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label says its coffee flavored."
-/obj/item/reagent_containers/ecig_cartridge/coffee/New()
- ..()
+
+/obj/item/reagent_containers/ecig_cartridge/coffee/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 5)
reagents.add_reagent(REAGENT_ID_WATER, 10)
reagents.add_reagent(REAGENT_ID_COFFEE, 5)
@@ -246,8 +253,9 @@
/obj/item/reagent_containers/ecig_cartridge/cannabis
name = "herb flavour cartridge"
desc = "A small metal cartridge which contains an atomizing coil and a solution to be atomized. The label seems to be suspiciously scuffed off..."
-/obj/item/reagent_containers/ecig_cartridge/cannabis/New()
- ..()
+
+/obj/item/reagent_containers/ecig_cartridge/cannabis/Initialize(mapload)
+ . = ..()
reagents.add_reagent(REAGENT_ID_NICOTINE, 5)
reagents.add_reagent(REAGENT_ID_WATER, 10)
reagents.add_reagent("cannabis", 5)
diff --git a/code/game/objects/items/weapons/explosives.dm b/code/game/objects/items/weapons/explosives.dm
index 88296337ac..8f8ee2cbac 100644
--- a/code/game/objects/items/weapons/explosives.dm
+++ b/code/game/objects/items/weapons/explosives.dm
@@ -18,10 +18,10 @@
var/blast_light = 2
var/blast_flash = 3
-/obj/item/plastique/New()
+/obj/item/plastique/Initialize(mapload)
+ . = ..()
wires = new(src)
image_overlay = image('icons/obj/assemblies.dmi', "plastic-explosive2")
- ..()
/obj/item/plastique/Destroy()
qdel(wires)
diff --git a/code/game/objects/items/weapons/grenades/flashbang.dm b/code/game/objects/items/weapons/grenades/flashbang.dm
index f7f2a37963..5c80944dad 100644
--- a/code/game/objects/items/weapons/grenades/flashbang.dm
+++ b/code/game/objects/items/weapons/grenades/flashbang.dm
@@ -138,8 +138,8 @@
can_repeat = FALSE
banglet = TRUE
-/obj/item/grenade/flashbang/clusterbang/segment/New()//Segments should never exist except part of the clusterbang, since these immediately 'do their thing' and asplode
- ..()
+/obj/item/grenade/flashbang/clusterbang/segment/Initialize(mapload) //Segments should never exist except part of the clusterbang, since these immediately 'do their thing' and asplode
+ . = ..()
icon_state = "clusterbang_segment_active"
@@ -147,15 +147,13 @@
var/temploc = src.loc//Saves the current location to know where to step away from
walk_away(src,temploc,stepdist)//I must go, my people need me
- var/dettime = rand(15,60)
- spawn(dettime)
- detonate()
+ addtimer(CALLBACK(src, PROC_REF(detonate)), rand(15, 60), TIMER_DELETE_ME)
/obj/item/grenade/flashbang/cluster
banglet = TRUE
-/obj/item/grenade/flashbang/cluster/New()//Same concept as the segments, so that all of the parts don't become reliant on the clusterbang
- ..()
+/obj/item/grenade/flashbang/cluster/Initialize(mapload)//Same concept as the segments, so that all of the parts don't become reliant on the clusterbang
+ . = ..()
icon_state = "flashbang_active"
@@ -163,6 +161,4 @@
var/temploc = src.loc
walk_away(src,temploc,stepdist)
- var/dettime = rand(15,60)
- spawn(dettime)
- detonate()
+ addtimer(CALLBACK(src, PROC_REF(detonate)), rand(15, 60), TIMER_DELETE_ME)
diff --git a/code/game/objects/items/weapons/id cards/cards.dm b/code/game/objects/items/weapons/id cards/cards.dm
index 861841a21f..77092ebea1 100644
--- a/code/game/objects/items/weapons/id cards/cards.dm
+++ b/code/game/objects/items/weapons/id cards/cards.dm
@@ -27,7 +27,7 @@
drop_sound = 'sound/items/drop/card.ogg'
pickup_sound = 'sound/items/pickup/card.ogg'
-/obj/item/card/New()
+/obj/item/card/Initialize(mapload)
. = ..()
reset_icon()
@@ -299,4 +299,4 @@
UnregisterSignal(src, COMSIG_OBSERVER_MOVED)
R = null
last_robot_loc = null
- ..()
+ . = ..()
diff --git a/code/game/objects/items/weapons/implants/implant_vr.dm b/code/game/objects/items/weapons/implants/implant_vr.dm
index cde6b5abdf..6562e617ba 100644
--- a/code/game/objects/items/weapons/implants/implant_vr.dm
+++ b/code/game/objects/items/weapons/implants/implant_vr.dm
@@ -129,11 +129,10 @@
'Ignore' - keywords in the speech won't have any effect.
'Implant-toggle' - toggles implant."}
-/obj/item/implanter/sizecontrol/New()
+/obj/item/implanter/sizecontrol/Initialize(mapload)
+ . = ..()
src.imp = new /obj/item/implant/sizecontrol( src )
- ..()
update()
- return
//////////////////////////////
@@ -154,11 +153,10 @@ Due to the small chemical capacity of the implant, the life of the implant is re
safeties to prevent lethal or actively harmful commands from being input to lessen the severity of the crime if they are caught. This one has a golden stamp \
with the shape of a star on it, the letters 'KE' in black text on it."
-/obj/item/implanter/compliance/New()
- src.imp = new /obj/item/implant/compliance( src )
- ..()
+/obj/item/implanter/compliance/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/compliance(src)
update()
- return
/obj/item/implanter/compliance/attack_self(mob/user)
if(istype(imp,/obj/item/implant/compliance))
diff --git a/code/game/objects/items/weapons/implants/implantcase.dm b/code/game/objects/items/weapons/implants/implantcase.dm
index 48be1714cb..c75d60ef6b 100644
--- a/code/game/objects/items/weapons/implants/implantcase.dm
+++ b/code/game/objects/items/weapons/implants/implantcase.dm
@@ -12,51 +12,51 @@
var/obj/item/implant/imp = null
/obj/item/implantcase/proc/update()
- if (src.imp)
- src.icon_state = text("implantcase-[]", src.imp.implant_color)
+ if (imp)
+ icon_state = text("implantcase-[]", imp.implant_color)
else
- src.icon_state = "implantcase-0"
+ icon_state = "implantcase-0"
return
/obj/item/implantcase/attackby(obj/item/I as obj, mob/user as mob)
..()
if (istype(I, /obj/item/pen))
- var/t = tgui_input_text(user, "What would you like the label to be?", text("[]", src.name), null, MAX_NAME_LEN)
+ var/t = tgui_input_text(user, "What would you like the label to be?", text("[]", name), null, MAX_NAME_LEN)
if (user.get_active_hand() != I)
return
- if((!in_range(src, user) && src.loc != user))
+ if((!in_range(src, user) && loc != user))
return
t = sanitizeSafe(t, MAX_NAME_LEN)
if(t)
- src.name = text("Glass Case - '[]'", t)
+ name = text("Glass Case - '[]'", t)
else
- src.name = "Glass Case"
+ name = "Glass Case"
else if(istype(I, /obj/item/reagent_containers/syringe))
- if(!src.imp) return
- if(!src.imp.allow_reagents) return
- if(src.imp.reagents.total_volume >= src.imp.reagents.maximum_volume)
+ if(!imp) return
+ if(!imp.allow_reagents) return
+ if(imp.reagents.total_volume >= imp.reagents.maximum_volume)
to_chat(user, span_warning("\The [src] is full."))
else
spawn(5)
- I.reagents.trans_to_obj(src.imp, 5)
+ I.reagents.trans_to_obj(imp, 5)
to_chat(user, span_notice("You inject 5 units of the solution. The syringe now contains [I.reagents.total_volume] units."))
else if (istype(I, /obj/item/implanter))
var/obj/item/implanter/M = I
if (M.imp)
- if ((src.imp || M.imp.implanted))
+ if ((imp || M.imp.implanted))
return
M.imp.loc = src
- src.imp = M.imp
+ imp = M.imp
M.imp = null
- src.update()
+ update()
M.update()
else
- if (src.imp)
+ if (imp)
if (M.imp)
return
- src.imp.loc = M
- M.imp = src.imp
- src.imp = null
+ imp.loc = M
+ M.imp = imp
+ imp = null
update()
M.update()
return
@@ -67,10 +67,9 @@
desc = "A case containing a tracking implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/tracking/New()
- src.imp = new /obj/item/implant/tracking( src )
- ..()
- return
+/obj/item/implantcase/tracking/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/tracking(src)
/obj/item/implantcase/explosive
@@ -78,10 +77,9 @@
desc = "A case containing an explosive implant."
icon_state = "implantcase-r"
-/obj/item/implantcase/explosive/New()
- src.imp = new /obj/item/implant/explosive( src )
- ..()
- return
+/obj/item/implantcase/explosive/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/explosive(src)
/obj/item/implantcase/chem
@@ -89,10 +87,9 @@
desc = "A case containing a chemical implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/chem/New()
- src.imp = new /obj/item/implant/chem( src )
- ..()
- return
+/obj/item/implantcase/chem/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/chem(src)
/obj/item/implantcase/loyalty
@@ -100,10 +97,9 @@
desc = "A case containing a loyalty implant."
icon_state = "implantcase-r"
-/obj/item/implantcase/loyalty/New()
- src.imp = new /obj/item/implant/loyalty( src )
- ..()
- return
+/obj/item/implantcase/loyalty/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/loyalty(src)
/obj/item/implantcase/death_alarm
@@ -111,10 +107,9 @@
desc = "A case containing a death alarm implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/death_alarm/New()
- src.imp = new /obj/item/implant/death_alarm( src )
- ..()
- return
+/obj/item/implantcase/death_alarm/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/death_alarm(src)
/obj/item/implantcase/freedom
@@ -122,10 +117,9 @@
desc = "A case containing a freedom implant."
icon_state = "implantcase-r"
-/obj/item/implantcase/freedom/New()
- src.imp = new /obj/item/implant/freedom( src )
- ..()
- return
+/obj/item/implantcase/freedom/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/freedom(src)
/obj/item/implantcase/adrenalin
@@ -133,10 +127,9 @@
desc = "A case containing an adrenalin implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/adrenalin/New()
- src.imp = new /obj/item/implant/adrenalin( src )
- ..()
- return
+/obj/item/implantcase/adrenalin/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/adrenalin(src)
/obj/item/implantcase/dexplosive
@@ -144,10 +137,9 @@
desc = "A case containing an explosive."
icon_state = "implantcase-r"
-/obj/item/implantcase/dexplosive/New()
- src.imp = new /obj/item/implant/dexplosive( src )
- ..()
- return
+/obj/item/implantcase/dexplosive/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/dexplosive(src)
/obj/item/implantcase/health
@@ -155,157 +147,141 @@
desc = "A case containing a health tracking implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/health/New()
- src.imp = new /obj/item/implant/health( src )
- ..()
- return
+/obj/item/implantcase/health/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/health(src)
/obj/item/implantcase/language
name = "glass case - 'GalCom'"
desc = "A case containing a GalCom language implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/language/New()
- src.imp = new /obj/item/implant/language( src )
- ..()
- return
+/obj/item/implantcase/language/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/language(src)
/obj/item/implantcase/language/eal
name = "glass case - 'EAL'"
desc = "A case containing an Encoded Audio Language implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/language/eal/New()
- src.imp = new /obj/item/implant/language/eal( src )
- ..()
- return
+/obj/item/implantcase/language/eal/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/language/eal(src)
/obj/item/implantcase/shades
name = "glass case - 'Integrated Shades'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/shades/New()
- src.imp = new /obj/item/implant/organ( src )
- ..()
- return
+/obj/item/implantcase/shades/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ(src)
/obj/item/implantcase/taser
name = "glass case - 'Taser'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/taser/New()
- src.imp = new /obj/item/implant/organ/limbaugment( src )
- ..()
- return
+/obj/item/implantcase/taser/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment(src)
/obj/item/implantcase/laser
name = "glass case - 'Laser'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/laser/New()
- src.imp = new /obj/item/implant/organ/limbaugment/laser( src )
- ..()
- return
+/obj/item/implantcase/laser/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment/laser(src)
/obj/item/implantcase/dart
name = "glass case - 'Dart'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/dart/New()
- src.imp = new /obj/item/implant/organ/limbaugment/dart( src )
- ..()
- return
+/obj/item/implantcase/dart/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment/dart(src)
/obj/item/implantcase/toolkit
name = "glass case - 'Toolkit'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/toolkit/New()
- src.imp = new /obj/item/implant/organ/limbaugment/upperarm( src )
- ..()
- return
+/obj/item/implantcase/toolkit/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment/upperarm(src)
/obj/item/implantcase/medkit
name = "glass case - 'Toolkit'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/medkit/New()
- src.imp = new /obj/item/implant/organ/limbaugment/upperarm/medkit( src )
- ..()
- return
+/obj/item/implantcase/medkit/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment/upperarm/medkit(src)
/obj/item/implantcase/surge
name = "glass case - 'Muscle Overclocker'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/surge/New()
- src.imp = new /obj/item/implant/organ/limbaugment/upperarm/surge( src )
- ..()
- return
+/obj/item/implantcase/surge/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment/upperarm/surge(src)
/obj/item/implantcase/analyzer
name = "glass case - 'Scanner'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/analyzer/New()
- src.imp = new /obj/item/implant/organ/limbaugment/wrist( src )
- ..()
- return
+/obj/item/implantcase/analyzer/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment/wrist(src)
/obj/item/implantcase/sword
name = "glass case - 'Scanner'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/sword/New()
- src.imp = new /obj/item/implant/organ/limbaugment/wrist/sword( src )
- ..()
- return
+/obj/item/implantcase/sword/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment/wrist/sword(src)
/obj/item/implantcase/sprinter
name = "glass case - 'Sprinter'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/sprinter/New()
- src.imp = new /obj/item/implant/organ/pelvic( src )
- ..()
- return
+/obj/item/implantcase/sprinter/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/pelvic(src)
/obj/item/implantcase/armblade
name = "glass case - 'Armblade'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/armblade/New()
- src.imp = new /obj/item/implant/organ/limbaugment/upperarm/blade( src )
- ..()
- return
+/obj/item/implantcase/armblade/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment/upperarm/blade(src)
/obj/item/implantcase/handblade
name = "glass case - 'Handblade'"
desc = "A case containing a nanite fabricator implant."
icon_state = "implantcase-b"
-/obj/item/implantcase/handblade/New()
- src.imp = new /obj/item/implant/organ/limbaugment/wrist/blade( src )
- ..()
- return
+/obj/item/implantcase/handblade/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/organ/limbaugment/wrist/blade(src)
/obj/item/implantcase/restrainingbolt
name = "glass case - 'Restraining Bolt'"
desc = "A case containing a restraining bolt."
icon_state = "implantcase-b"
-/obj/item/implantcase/restrainingbolt/New()
- src.imp = new /obj/item/implant/restrainingbolt( src )
- ..()
- return
+/obj/item/implantcase/restrainingbolt/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/restrainingbolt(src)
diff --git a/code/game/objects/items/weapons/implants/implantcase_vr.dm b/code/game/objects/items/weapons/implants/implantcase_vr.dm
index e73cb756cc..88a04d249f 100644
--- a/code/game/objects/items/weapons/implants/implantcase_vr.dm
+++ b/code/game/objects/items/weapons/implants/implantcase_vr.dm
@@ -3,7 +3,6 @@
desc = "A case containing a language implant."
icon_state = "implantcase-r"
-/obj/item/implantcase/vrlanguage/New()
- src.imp = new /obj/item/implant/vrlanguage( src )
- ..()
- return
\ No newline at end of file
+/obj/item/implantcase/vrlanguage/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/vrlanguage(src)
diff --git a/code/game/objects/items/weapons/implants/implanter.dm b/code/game/objects/items/weapons/implants/implanter.dm
index f385529ee8..f14547655f 100644
--- a/code/game/objects/items/weapons/implants/implanter.dm
+++ b/code/game/objects/items/weapons/implants/implanter.dm
@@ -77,39 +77,35 @@
/obj/item/implanter/loyalty
name = "implanter-loyalty"
-/obj/item/implanter/loyalty/New()
- src.imp = new /obj/item/implant/loyalty( src )
- ..()
+/obj/item/implanter/loyalty/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/loyalty(src)
update()
- return
/obj/item/implanter/explosive
name = "implanter (E)"
-/obj/item/implanter/explosive/New()
- src.imp = new /obj/item/implant/explosive( src )
- ..()
+/obj/item/implanter/explosive/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/explosive(src)
update()
- return
/obj/item/implanter/adrenalin
name = "implanter-adrenalin"
-/obj/item/implanter/adrenalin/New()
- src.imp = new /obj/item/implant/adrenalin(src)
- ..()
+/obj/item/implanter/adrenalin/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/adrenalin(src)
update()
- return
/obj/item/implanter/compressed
name = "implanter (C)"
icon_state = "cimplanter1"
-/obj/item/implanter/compressed/New()
- imp = new /obj/item/implant/compressed( src )
- ..()
+/obj/item/implanter/compressed/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/compressed(src)
update()
- return
/obj/item/implanter/compressed/update()
if (imp)
@@ -158,8 +154,7 @@
/obj/item/implanter/restrainingbolt
name = "implanter (bolt)"
-/obj/item/implanter/restrainingbolt/New()
- src.imp = new /obj/item/implant/restrainingbolt( src )
- ..()
+/obj/item/implanter/restrainingbolt/Initialize(mapload)
+ . = ..()
+ imp = new /obj/item/implant/restrainingbolt(src)
update()
- return
diff --git a/code/game/objects/items/weapons/implants/implantfreedom.dm b/code/game/objects/items/weapons/implants/implantfreedom.dm
index 8285a27bbe..1b7a120f2c 100644
--- a/code/game/objects/items/weapons/implants/implantfreedom.dm
+++ b/code/game/objects/items/weapons/implants/implantfreedom.dm
@@ -8,11 +8,10 @@
var/uses = 1.0
-/obj/item/implant/freedom/New()
- src.activation_emote = pick("blink", "blink_r", "eyebrow", "chuckle", "twitch", "frown", "nod", "blush", "giggle", "grin", "groan", "shrug", "smile", "pale", "sniff", "whimper", "wink")
- src.uses = rand(1, 5)
- ..()
- return
+/obj/item/implant/freedom/Initialize(mapload)
+ . = ..()
+ activation_emote = pick("blink", "blink_r", "eyebrow", "chuckle", "twitch", "frown", "nod", "blush", "giggle", "grin", "groan", "shrug", "smile", "pale", "sniff", "whimper", "wink")
+ uses = rand(1, 5)
/obj/item/implant/freedom/trigger(emote, mob/living/carbon/source as mob)
diff --git a/code/game/objects/items/weapons/implants/implantreagent_vr.dm b/code/game/objects/items/weapons/implants/implantreagent_vr.dm
index f619d0588d..115d23d6c8 100644
--- a/code/game/objects/items/weapons/implants/implantreagent_vr.dm
+++ b/code/game/objects/items/weapons/implants/implantreagent_vr.dm
@@ -17,18 +17,17 @@
var/verb_name = "Transfer From Reagent Implant"
var/verb_desc = "Remove reagents from an internal reagent into a container"
-/obj/item/implant/reagent_generator/New()
- ..()
+/obj/item/implant/reagent_generator/Initialize(mapload)
+ . = ..()
create_reagents(usable_volume)
/obj/item/implanter/reagent_generator
var/implant_type = /obj/item/implant/reagent_generator
-/obj/item/implanter/reagent_generator/New()
- ..()
+/obj/item/implanter/reagent_generator/Initialize(mapload)
+ . = ..()
imp = new implant_type(src)
update()
- return
/obj/item/implant/reagent_generator/post_implant(mob/living/carbon/source)
START_PROCESSING(SSobj, src)
diff --git a/code/game/objects/items/weapons/inducer_vr.dm b/code/game/objects/items/weapons/inducer_vr.dm
index 14d6508e74..d4f52cd911 100644
--- a/code/game/objects/items/weapons/inducer_vr.dm
+++ b/code/game/objects/items/weapons/inducer_vr.dm
@@ -257,12 +257,13 @@
var/mob/living/carbon/human/hume
-/obj/item/cell/standin/New(newloc, var/mob/living/carbon/human/H)
- ..()
- if(istype(H, /mob/living/carbon/human))//ChompEDIT - fix a runtime
- hume = H
- charge = H.nutrition
- maxcharge = initial(H.nutrition)
+/obj/item/cell/standin/Initialize(mapload, var/mob/living/carbon/human/H)
+ if(!istype(H))
+ return INITIALIZE_HINT_QDEL
+ . = ..()
+ hume = H
+ charge = H.nutrition
+ maxcharge = initial(H.nutrition)
QDEL_IN(src, 20 SECONDS)
diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm
index 35e186ca84..ff5ed52c88 100644
--- a/code/game/objects/items/weapons/material/material_weapons.dm
+++ b/code/game/objects/items/weapons/material/material_weapons.dm
@@ -28,14 +28,13 @@
var/drops_debris = 1
var/named_from_material = 1 //YW EDIT, Does it prepend the material's name to it's name?
-/obj/item/material/New(var/newloc, var/material_key)
- ..(newloc)
+/obj/item/material/Initialize(mapload, var/material_key)
+ . = ..()
if(!material_key)
material_key = default_material
set_material(material_key)
if(!material)
- qdel(src)
- return
+ return INITIALIZE_HINT_QDEL
matter = material.get_matter()
if(matter.len)
diff --git a/code/game/objects/items/weapons/material/shards.dm b/code/game/objects/items/weapons/material/shards.dm
index a2a28d4df8..b4bbcb3685 100644
--- a/code/game/objects/items/weapons/material/shards.dm
+++ b/code/game/objects/items/weapons/material/shards.dm
@@ -143,8 +143,8 @@
return
// Preset types - left here for the code that uses them
-/obj/item/material/shard/shrapnel/New(loc)
- ..(loc, MAT_STEEL)
+/obj/item/material/shard/shrapnel/Initialize(mapload)
+ . = ..(mapload, MAT_STEEL)
-/obj/item/material/shard/phoron/New(loc)
- ..(loc, MAT_PGLASS)
+/obj/item/material/shard/phoron/Initialize(mapload)
+ . = ..(mapload, MAT_PGLASS)
diff --git a/code/game/objects/items/weapons/material/thrown.dm b/code/game/objects/items/weapons/material/thrown.dm
index cb6f7a17a9..22b2950b81 100644
--- a/code/game/objects/items/weapons/material/thrown.dm
+++ b/code/game/objects/items/weapons/material/thrown.dm
@@ -9,10 +9,10 @@
sharp = TRUE
edge = TRUE
-/obj/item/material/star/New()
- ..()
- src.pixel_x = rand(-12, 12)
- src.pixel_y = rand(-12, 12)
+/obj/item/material/star/Initialize(mapload)
+ . = ..()
+ pixel_x = rand(-12, 12)
+ pixel_y = rand(-12, 12)
/obj/item/material/star/throw_impact(atom/hit_atom)
..()
diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm
index c648e82b16..3a17abdbea 100644
--- a/code/game/objects/items/weapons/material/twohanded.dm
+++ b/code/game/objects/items/weapons/material/twohanded.dm
@@ -56,8 +56,8 @@
throwforce = round(force*thrown_force_divisor)
//to_world("[src] has unwielded force [force_unwielded], wielded force [force_wielded] and throwforce [throwforce] when made from default material [material.name]")
-/obj/item/material/twohanded/New()
- ..()
+/obj/item/material/twohanded/Initialize(mapload)
+ . = ..()
update_icon()
//Allow a small chance of parrying melee attacks when wielded - maybe generalize this to other weapons someday
diff --git a/code/game/objects/items/weapons/material/whetstone.dm b/code/game/objects/items/weapons/material/whetstone.dm
index 91a5574c0b..c04c14c7f2 100644
--- a/code/game/objects/items/weapons/material/whetstone.dm
+++ b/code/game/objects/items/weapons/material/whetstone.dm
@@ -43,7 +43,7 @@
. = ..()
. += "There [uses == 1 ? "is" : "are"] [uses] [material] [uses == 1 ? src.material.sheet_singular_name : src.material.sheet_plural_name] left for use."
-/obj/item/material/sharpeningkit/New()
+/obj/item/material/sharpeningkit/Initialize(mapload)
. = ..()
setrepair()
diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm
index 092885ab37..da8f154c22 100644
--- a/code/game/objects/items/weapons/melee/misc.dm
+++ b/code/game/objects/items/weapons/melee/misc.dm
@@ -37,8 +37,8 @@
w_class = ITEMSIZE_NORMAL
var/open = FALSE
-/obj/item/melee/umbrella/New()
- ..()
+/obj/item/melee/umbrella/Initialize(mapload)
+ . = ..()
update_icon()
/obj/item/melee/umbrella/attack_self()
@@ -56,9 +56,9 @@
H.update_inv_r_hand()
// Randomizes color
-/obj/item/melee/umbrella/random/New()
+/obj/item/melee/umbrella/random/Initialize(mapload)
+ . = ..()
color = get_random_colour()
- ..()
/obj/item/melee/cursedblade
name = "crystal blade"
diff --git a/code/game/objects/items/weapons/melee/shock_maul.dm b/code/game/objects/items/weapons/melee/shock_maul.dm
index 6b4ea740a5..1f138733a3 100644
--- a/code/game/objects/items/weapons/melee/shock_maul.dm
+++ b/code/game/objects/items/weapons/melee/shock_maul.dm
@@ -71,10 +71,9 @@
update_icon()
..()
-/obj/item/melee/shock_maul/Initialize() //CHOMPedit
- ..()
+/obj/item/melee/shock_maul/Initialize(mapload)
+ . = ..()
update_held_icon()
- return
/obj/item/melee/shock_maul/get_cell()
return bcell
@@ -111,11 +110,10 @@
usr.put_in_l_hand(src)
src.add_fingerprint(usr)
-/obj/item/melee/shock_maul/loaded/New() //this one starts with a cell pre-installed.
- ..()
+/obj/item/melee/shock_maul/loaded/Initialize(mapload) //this one starts with a cell pre-installed.
+ . = ..()
bcell = new/obj/item/cell/device/weapon(src)
update_icon()
- return
/obj/item/melee/shock_maul/proc/deductcharge()
if(status == 1) //Only deducts charge when it's on
diff --git a/code/game/objects/items/weapons/mop.dm b/code/game/objects/items/weapons/mop.dm
index 96cfdb01ef..b3f965c6f7 100644
--- a/code/game/objects/items/weapons/mop.dm
+++ b/code/game/objects/items/weapons/mop.dm
@@ -18,9 +18,9 @@ GLOBAL_LIST_BOILERPLATE(all_mops, /obj/item/mop)
var/mopping = 0
var/mopcount = 0
-/obj/item/mop/New()
+/obj/item/mop/Initialize(mapload)
+ . = ..()
create_reagents(30)
- ..()
/obj/item/mop/afterattack(atom/A, mob/user, proximity)
if(!proximity) return
@@ -59,9 +59,9 @@ GLOBAL_LIST_BOILERPLATE(all_mops, /obj/item/mop)
flags = NOCONDUCT
attack_verb = list("mopped", "bashed", "bludgeoned", "whacked")
-/obj/item/mop/advanced/New()
+/obj/item/mop/advanced/Initialize(mapload)
+ . = ..()
create_reagents(30)
- ..()
/obj/item/mop/advanced/afterattack(atom/A, mob/user, proximity)
if(!proximity) return
diff --git a/code/game/objects/items/weapons/mop_deploy.dm b/code/game/objects/items/weapons/mop_deploy.dm
index 2b2a9130f8..abd71e725a 100644
--- a/code/game/objects/items/weapons/mop_deploy.dm
+++ b/code/game/objects/items/weapons/mop_deploy.dm
@@ -15,7 +15,8 @@
var/mopcount = 0
-/obj/item/mop_deploy/New()
+/obj/item/mop_deploy/Initialize(mapload)
+ . = ..()
create_reagents(5)
START_PROCESSING(SSobj, src)
diff --git a/code/game/objects/items/weapons/policetape.dm b/code/game/objects/items/weapons/policetape.dm
index 70a0d5ade4..b930d0655b 100644
--- a/code/game/objects/items/weapons/policetape.dm
+++ b/code/game/objects/items/weapons/policetape.dm
@@ -53,8 +53,8 @@ var/list/tape_roll_applications = list()
icon_state = "[icon_base]_dir_[crumpled]"
dir = tape_dir
-/obj/item/tape/New()
- ..()
+/obj/item/tape/Initialize(mapload)
+ . = ..()
if(!hazard_overlays)
hazard_overlays = list()
hazard_overlays["[NORTH]"] = new/image('icons/effects/warning_stripes.dmi', icon_state = "N")
diff --git a/code/game/objects/items/weapons/storage/bible.dm b/code/game/objects/items/weapons/storage/bible.dm
index 3c5842992f..09a31eda72 100644
--- a/code/game/objects/items/weapons/storage/bible.dm
+++ b/code/game/objects/items/weapons/storage/bible.dm
@@ -91,7 +91,8 @@ GLOBAL_LIST_INIT(bibleitemstates, list(
desc = "To be applied to the head repeatedly."
icon_state ="bible"
-/obj/item/storage/bible/booze/New()
+/obj/item/storage/bible/booze/Initialize(mapload)
+ . = ..()
starts_with = list(
/obj/item/reagent_containers/food/drinks/bottle/small/beer,
/obj/item/reagent_containers/food/drinks/bottle/small/beer,
diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm
index 5fe11f61f8..15f84bfa0c 100644
--- a/code/game/objects/items/weapons/storage/fancy.dm
+++ b/code/game/objects/items/weapons/storage/fancy.dm
@@ -61,12 +61,12 @@
)
starts_with = list(/obj/item/reagent_containers/food/snacks/egg = 12)
-/obj/item/storage/fancy/egg_box/New()
+/obj/item/storage/fancy/egg_box/Initialize(mapload)
+ . = ..()
if(!open_state)
open_state = "[initial(icon_state)]0"
if(!closed_state)
closed_state = "[initial(icon_state)]"
- ..()
/obj/item/storage/fancy/egg_box/update_icon()
cut_overlays()
@@ -263,12 +263,12 @@
C.brand = brand
C.desc += " This one is \a [brand]."
-/obj/item/storage/fancy/cigarettes/New()
+/obj/item/storage/fancy/cigarettes/Initialize()
+ . = ..()
if(!open_state)
open_state = "[initial(icon_state)]_open"
if(!closed_state)
closed_state = "[initial(icon_state)]"
- ..()
/obj/item/storage/fancy/cigarettes/update_icon()
cut_overlays()
@@ -410,12 +410,12 @@
reagents.trans_to_obj(C, (reagents.total_volume/contents.len))
return ..()
-/obj/item/storage/fancy/cigar/New()
+/obj/item/storage/fancy/cigar/Initialize()
+ . = ..()
if(!open_state)
open_state = "[initial(icon_state)]0"
if(!closed_state)
closed_state = "[initial(icon_state)]"
- ..()
/obj/item/storage/fancy/cigar/update_icon()
cut_overlays()
diff --git a/code/game/objects/items/weapons/storage/internal.dm b/code/game/objects/items/weapons/storage/internal.dm
index 6cbea85879..3d92e9a3c6 100644
--- a/code/game/objects/items/weapons/storage/internal.dm
+++ b/code/game/objects/items/weapons/storage/internal.dm
@@ -4,12 +4,13 @@
preserve_item = 1
var/obj/item/master_item
-/obj/item/storage/internal/New(obj/item/MI)
- master_item = MI
- loc = master_item
+/obj/item/storage/internal/Initialize(mapload)
+ . = ..()
+ master_item = loc
+ if(!istype(master_item))
+ return INITIALIZE_HINT_QDEL
name = master_item.name
verbs -= /obj/item/verb/verb_pickup //make sure this is never picked up.
- ..()
/obj/item/storage/internal/Destroy()
master_item = null
diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm
index 4c2e9674b1..170c7d0f73 100644
--- a/code/game/objects/items/weapons/storage/storage.dm
+++ b/code/game/objects/items/weapons/storage/storage.dm
@@ -822,12 +822,12 @@
else
icon_state = closed_state
-/obj/item/storage/trinketbox/New()
+/obj/item/storage/trinketbox/Initialize(mapload)
+ . = ..()
if(!open_state)
open_state = "[initial(icon_state)]_open"
if(!closed_state)
closed_state = "[initial(icon_state)]"
- ..()
/obj/item/storage/trinketbox/attack_self()
open = !open
@@ -862,14 +862,15 @@
alpha = 200
var/datum/weakref/held_item
-/atom/movable/storage_slot/New(newloc, obj/item/held_item)
+/atom/movable/storage_slot/Initialize(mapload, obj/item/held_item)
+ . = ..()
ASSERT(held_item)
name += held_item.name
src.held_item = WEAKREF(held_item)
/atom/movable/storage_slot/Destroy()
held_item = null
- ..()
+ . = ..()
/// Has to be this way. The fact that the overlays will be constantly mutated by other storage means we can't wait.
/atom/movable/storage_slot/add_overlay(list/somethings)
diff --git a/code/game/objects/items/weapons/storage/wallets.dm b/code/game/objects/items/weapons/storage/wallets.dm
index 4eeefe58fe..1136643534 100644
--- a/code/game/objects/items/weapons/storage/wallets.dm
+++ b/code/game/objects/items/weapons/storage/wallets.dm
@@ -87,8 +87,8 @@
else
return ..()
-/obj/item/storage/wallet/random/New()
- ..()
+/obj/item/storage/wallet/random/Initialize(mapload)
+ . = ..()
var/amount = rand(50, 100) + rand(50, 100) // Triangular distribution from 100 to 200
var/obj/item/spacecash/SC = null
SC = new(src)
@@ -105,9 +105,9 @@
desc = "You can recolor it! Fancy! The future is NOW!"
icon_state = "wallet-white"
-/obj/item/storage/wallet/poly/New()
- ..()
- verbs |= /obj/item/storage/wallet/poly/proc/change_color
+/obj/item/storage/wallet/poly/Initialize(mapload)
+ . = ..()
+ verbs += /obj/item/storage/wallet/poly/proc/change_color
color = get_random_colour()
update_icon()
diff --git a/code/game/objects/items/weapons/tanks/jetpack.dm b/code/game/objects/items/weapons/tanks/jetpack.dm
index c95bb502f9..c825e71a64 100644
--- a/code/game/objects/items/weapons/tanks/jetpack.dm
+++ b/code/game/objects/items/weapons/tanks/jetpack.dm
@@ -19,8 +19,8 @@
var/volume_rate = 500 //Needed for borg jetpack transfer
actions_types = list(/datum/action/item_action/toggle_jetpack)
-/obj/item/tank/jetpack/New()
- ..()
+/obj/item/tank/jetpack/Initialize()
+ . = ..()
ion_trail = new /datum/effect/effect/system/ion_trail_follow()
ion_trail.set_up(src)
diff --git a/code/game/objects/items/weapons/tanks/tank_types_vr.dm b/code/game/objects/items/weapons/tanks/tank_types_vr.dm
index 342893c7ee..032c01ec39 100644
--- a/code/game/objects/items/weapons/tanks/tank_types_vr.dm
+++ b/code/game/objects/items/weapons/tanks/tank_types_vr.dm
@@ -8,7 +8,7 @@
gauge_cap = 3
volume = 12 // CHOMP EDIT double extended
-/obj/item/tank/emergency/phoron/double/Initialize() //ChompEDIT New() -> Initialize()
+/obj/item/tank/emergency/phoron/double/Initialize()
. = ..()
air_contents.adjust_gas(GAS_PHORON, (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C))
diff --git a/code/game/objects/items/weapons/tape.dm b/code/game/objects/items/weapons/tape.dm
index c9b2aea263..ef781aea0b 100644
--- a/code/game/objects/items/weapons/tape.dm
+++ b/code/game/objects/items/weapons/tape.dm
@@ -119,13 +119,10 @@
plane = MOB_PLANE
anchored = FALSE
drop_sound = null
+ flags = NOBLUDGEON
var/obj/item/stuck = null
-/obj/item/ducttape/New()
- ..()
- flags |= NOBLUDGEON
-
/obj/item/ducttape/examine(mob/user)
SHOULD_CALL_PARENT(FALSE)
return stuck.examine(user)
diff --git a/code/game/objects/items/weapons/tools/combitool.dm b/code/game/objects/items/weapons/tools/combitool.dm
index 76789f3638..45d4a93d96 100644
--- a/code/game/objects/items/weapons/tools/combitool.dm
+++ b/code/game/objects/items/weapons/tools/combitool.dm
@@ -31,8 +31,8 @@
for(var/obj/item/tool in tools)
. += "[icon2html(tool,)] - [tool.name][tools[current_tool]==tool?" (selected)":""]")
-/obj/item/combitool/New()
- ..()
+/obj/item/combitool/Initialize(mapload)
+ . = ..()
for(var/type in spawn_tools)
tools |= new type(src)
diff --git a/code/game/objects/items/weapons/tools/crowbar.dm b/code/game/objects/items/weapons/tools/crowbar.dm
index 41d77f78ed..3ff534a3bb 100644
--- a/code/game/objects/items/weapons/tools/crowbar.dm
+++ b/code/game/objects/items/weapons/tools/crowbar.dm
@@ -106,7 +106,7 @@
item_state = "crowbar_red"
random_color = FALSE
-/obj/item/tool/prybar/New()
+/obj/item/tool/prybar/Initialize(mapload)
+ . = ..()
if(random_color)
icon_state = "prybar[pick("","_green","_aubergine","_blue")]"
- . = ..()
diff --git a/code/game/objects/items/weapons/tools/screwdriver.dm b/code/game/objects/items/weapons/tools/screwdriver.dm
index d3d5ec472c..3e4b8eb07a 100644
--- a/code/game/objects/items/weapons/tools/screwdriver.dm
+++ b/code/game/objects/items/weapons/tools/screwdriver.dm
@@ -26,7 +26,8 @@
tool_qualities = list(TOOL_SCREWDRIVER)
var/random_color = TRUE
-/obj/item/tool/screwdriver/New()
+/obj/item/tool/screwdriver/Initialize(mapload)
+ . = ..()
if(random_color)
switch(pick("red","blue","purple","brown","green","cyan","yellow"))
if ("red")
@@ -52,8 +53,7 @@
item_state = "screwdriver_yellow"
if (prob(75))
- src.pixel_y = rand(0, 16)
- ..()
+ pixel_y = rand(0, 16)
/obj/item/tool/screwdriver/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
if(!istype(M) || user.a_intent == I_HELP)
diff --git a/code/game/objects/items/weapons/tools/wirecutters.dm b/code/game/objects/items/weapons/tools/wirecutters.dm
index a63aa34aec..da4b8f2ed4 100644
--- a/code/game/objects/items/weapons/tools/wirecutters.dm
+++ b/code/game/objects/items/weapons/tools/wirecutters.dm
@@ -28,7 +28,8 @@
tool_qualities = list(TOOL_WIRECUTTER)
var/random_color = TRUE
-/obj/item/tool/wirecutters/New()
+/obj/item/tool/wirecutters/Initialize(mapload)
+ . = ..()
if(random_color)
switch(pick("red","blue","yellow"))
if ("red")
@@ -42,8 +43,7 @@
item_state = "cutters_yellow"
if (prob(75))
- src.pixel_y = rand(0, 16)
- ..()
+ pixel_y = rand(0, 16)
/obj/item/tool/wirecutters/attack(mob/living/carbon/C as mob, mob/user as mob)
if(istype(C) && user.a_intent == I_HELP && (C.handcuffed) && (istype(C.handcuffed, /obj/item/handcuffs/cable)))
diff --git a/code/game/objects/items/weapons/towels.dm b/code/game/objects/items/weapons/towels.dm
index cb784c89e2..a200c49c41 100644
--- a/code/game/objects/items/weapons/towels.dm
+++ b/code/game/objects/items/weapons/towels.dm
@@ -29,6 +29,6 @@
else if(user.fire_stacks < 0)
user.fire_stacks = (min(0, user.fire_stacks + 1.5))
-/obj/item/towel/random/New()
- ..()
+/obj/item/towel/random/Initialize(mapload)
+ . = ..()
color = get_random_colour()
diff --git a/code/game/objects/micro_structures.dm b/code/game/objects/micro_structures.dm
index c402de3a5f..20386edd7f 100644
--- a/code/game/objects/micro_structures.dm
+++ b/code/game/objects/micro_structures.dm
@@ -20,12 +20,9 @@ var/global/list/micro_tunnels = list()
/mob/living/simple_mob/slime
)
-/obj/structure/micro_tunnel/New()
- . = ..()
- micro_tunnels.Add(src)
-
/obj/structure/micro_tunnel/Initialize()
. = ..()
+ micro_tunnels.Add(src)
if(name == initial(name))
var/area/our_area = get_area(src)
name = "[our_area.name] [name]"
diff --git a/code/game/objects/structures/barsign.dm b/code/game/objects/structures/barsign.dm
index 8c32a73329..5498b68179 100644
--- a/code/game/objects/structures/barsign.dm
+++ b/code/game/objects/structures/barsign.dm
@@ -27,8 +27,8 @@
else
. += "It says '[icon_state]'"
-/obj/structure/sign/double/barsign/New()
- ..()
+/obj/structure/sign/double/barsign/Initialize(mapload)
+ . = ..()
icon_state = pick(get_valid_states())
/obj/structure/sign/double/barsign/attackby(obj/item/I, mob/user)
diff --git a/code/modules/clothing/spacesuits/rig/modules/modules.dm b/code/modules/clothing/spacesuits/rig/modules/modules.dm
index 15a303769d..ffcf992449 100644
--- a/code/modules/clothing/spacesuits/rig/modules/modules.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/modules.dm
@@ -109,8 +109,8 @@
return
..()
-/obj/item/rig_module/New()
- ..()
+/obj/item/rig_module/Initialize(mapload)
+ . = ..()
if(suit_overlay_inactive)
suit_overlay = suit_overlay_inactive
@@ -239,9 +239,11 @@
var/module_mode = ""
var/obj/item/rig_module/module
-/stat_rig_module/New(var/obj/item/rig_module/module)
- ..()
- src.module = module
+/stat_rig_module/Initialize(mapload)
+ . = ..()
+ module = loc
+ if(!istype(module))
+ return INITIALIZE_HINT_QDEL
/stat_rig_module/Destroy()
module = null
@@ -275,8 +277,10 @@
/stat_rig_module/DblClick()
return Click()
-/stat_rig_module/activate/New(var/obj/item/rig_module/module)
- ..()
+/stat_rig_module/activate/Initialize(mapload)
+ . = ..()
+ if(!istype(module))
+ return INITIALIZE_HINT_QDEL
name = module.activate_string
if(module.active_power_cost)
name += " ([module.active_power_cost*10]A)"
@@ -285,8 +289,10 @@
/stat_rig_module/activate/CanUse()
return module.toggleable && !module.active
-/stat_rig_module/deactivate/New(var/obj/item/rig_module/module)
- ..()
+/stat_rig_module/deactivate/Initialize(mapload)
+ . = ..()
+ if(!istype(module))
+ return INITIALIZE_HINT_QDEL
name = module.deactivate_string
// Show cost despite being 0, if it means changing from an active cost.
if(module.active_power_cost || module.passive_power_cost)
@@ -297,8 +303,10 @@
/stat_rig_module/deactivate/CanUse()
return module.toggleable && module.active
-/stat_rig_module/engage/New(var/obj/item/rig_module/module)
- ..()
+/stat_rig_module/engage/Initialize(mapload)
+ . = ..()
+ if(!istype(module))
+ return INITIALIZE_HINT_QDEL
name = module.engage_string
if(module.use_power_cost)
name += " ([module.use_power_cost*10]E)"
@@ -307,8 +315,8 @@
/stat_rig_module/engage/CanUse()
return module.usable
-/stat_rig_module/select/New()
- ..()
+/stat_rig_module/select/Initialize(mapload)
+ . = ..()
name = "Select"
module_mode = "select"
@@ -318,8 +326,8 @@
return 1
return 0
-/stat_rig_module/charge/New()
- ..()
+/stat_rig_module/charge/Initialize(mapload)
+ . = ..()
name = "Change Charge"
module_mode = "select_charge_type"
diff --git a/code/modules/clothing/spacesuits/rig/modules/specific/datajack.dm b/code/modules/clothing/spacesuits/rig/modules/specific/datajack.dm
index 08b2e0ae10..dfe62cca47 100644
--- a/code/modules/clothing/spacesuits/rig/modules/specific/datajack.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/specific/datajack.dm
@@ -14,8 +14,8 @@
interface_desc = "An induction-powered high-throughput datalink suitable for hacking encrypted networks."
var/list/stored_research
-/obj/item/rig_module/datajack/New()
- ..()
+/obj/item/rig_module/datajack/Initialize(mapload)
+ . = ..()
stored_research = list()
/obj/item/rig_module/datajack/engage(atom/target)
diff --git a/code/modules/clothing/spacesuits/rig/modules/specific/device.dm b/code/modules/clothing/spacesuits/rig/modules/specific/device.dm
index 037ba31d4f..3542b9c86c 100644
--- a/code/modules/clothing/spacesuits/rig/modules/specific/device.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/specific/device.dm
@@ -9,8 +9,8 @@
var/device_type
var/obj/item/device
-/obj/item/rig_module/device/New()
- ..()
+/obj/item/rig_module/device/Initialize(mapload)
+ . = ..()
if(device_type) device = new device_type(src)
/obj/item/rig_module/device/engage(atom/target)
@@ -156,8 +156,8 @@
var/iastamp
var/deniedstamp
-/obj/item/rig_module/device/stamp/New()
- ..()
+/obj/item/rig_module/device/stamp/Initialize(mapload)
+ . = ..()
iastamp = new /obj/item/stamp/internalaffairs(src)
deniedstamp = new /obj/item/stamp/denied(src)
device = iastamp
diff --git a/code/modules/clothing/spacesuits/rig/modules/specific/jetpack.dm b/code/modules/clothing/spacesuits/rig/modules/specific/jetpack.dm
index 032ae53b1c..d9a58eca28 100644
--- a/code/modules/clothing/spacesuits/rig/modules/specific/jetpack.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/specific/jetpack.dm
@@ -51,8 +51,8 @@
jets.toggle()
return 1
-/obj/item/rig_module/maneuvering_jets/New()
- ..()
+/obj/item/rig_module/maneuvering_jets/Initialize(mapload)
+ . = ..()
jets = new(src)
/obj/item/rig_module/maneuvering_jets/installed()
@@ -63,4 +63,4 @@
/obj/item/rig_module/maneuvering_jets/removed()
..()
jets.holder = null
- jets.ion_trail.set_up(jets)
\ No newline at end of file
+ jets.ion_trail.set_up(jets)
diff --git a/code/modules/clothing/spacesuits/rig/modules/specific/mounted_gun.dm b/code/modules/clothing/spacesuits/rig/modules/specific/mounted_gun.dm
index 15acf1c9ec..1508ee4815 100644
--- a/code/modules/clothing/spacesuits/rig/modules/specific/mounted_gun.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/specific/mounted_gun.dm
@@ -15,8 +15,8 @@
var/gun_type = /obj/item/gun/energy/lasercannon/mounted
var/obj/item/gun/gun
-/obj/item/rig_module/mounted/New()
- ..()
+/obj/item/rig_module/mounted/Initialize(mapload)
+ . = ..()
gun = new gun_type(src)
/obj/item/rig_module/mounted/engage(atom/target)
diff --git a/code/modules/clothing/spacesuits/rig/modules/specific/self_destruct.dm b/code/modules/clothing/spacesuits/rig/modules/specific/self_destruct.dm
index e2295f3102..94d9dcb7d0 100644
--- a/code/modules/clothing/spacesuits/rig/modules/specific/self_destruct.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/specific/self_destruct.dm
@@ -14,10 +14,10 @@
interface_name = "dead man's switch"
interface_desc = "An integrated self-destruct module. When the wearer dies, they vanish in smoke. Do not press this button."
-/obj/item/rig_module/self_destruct/New()
- ..()
- src.smoke = new /datum/effect/effect/system/smoke_spread/bad()
- src.smoke.attach(src)
+/obj/item/rig_module/self_destruct/Initialize(mapload)
+ . = ..()
+ smoke = new /datum/effect/effect/system/smoke_spread/bad()
+ smoke.attach(src)
/obj/item/rig_module/self_destruct/Destroy()
qdel(smoke)
diff --git a/code/modules/clothing/spacesuits/rig/modules/specific/vision.dm b/code/modules/clothing/spacesuits/rig/modules/specific/vision.dm
index 37848b2c1d..de99eaaa73 100644
--- a/code/modules/clothing/spacesuits/rig/modules/specific/vision.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/specific/vision.dm
@@ -220,8 +220,8 @@
if((. = ..()) && holder.wearer)
holder.wearer.recalculate_vis()
-/obj/item/rig_module/vision/New()
- ..()
+/obj/item/rig_module/vision/Initialize(mapload)
+ . = ..()
if(!vision_modes)
return
diff --git a/code/modules/clothing/spacesuits/rig/modules/specific/voice.dm b/code/modules/clothing/spacesuits/rig/modules/specific/voice.dm
index aeea41514a..897e2c7bc9 100644
--- a/code/modules/clothing/spacesuits/rig/modules/specific/voice.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/specific/voice.dm
@@ -15,8 +15,8 @@
var/obj/item/voice_changer/voice_holder
-/obj/item/rig_module/voice/New()
- ..()
+/obj/item/rig_module/voice/Initialize(mapload)
+ . = ..()
voice_holder = new(src)
voice_holder.active = 0
diff --git a/code/modules/clothing/spacesuits/rig/modules/utility.dm b/code/modules/clothing/spacesuits/rig/modules/utility.dm
index 0183ce2e0e..b619fa1408 100644
--- a/code/modules/clothing/spacesuits/rig/modules/utility.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/utility.dm
@@ -107,8 +107,8 @@
device_type = /obj/item/pickaxe/excavationdrill
-/obj/item/rig_module/device/New()
- ..()
+/obj/item/rig_module/device/Initialize(mapload)
+ . = ..()
if(device_type) device = new device_type(src)
/obj/item/rig_module/device/engage(atom/target)
@@ -307,8 +307,8 @@
var/obj/item/voice_changer/voice_holder
-/obj/item/rig_module/voice/New()
- ..()
+/obj/item/rig_module/voice/Initialize(mapload)
+ . = ..()
voice_holder = new(src)
voice_holder.active = 0
@@ -396,8 +396,8 @@
jets.toggle()
return 1
-/obj/item/rig_module/maneuvering_jets/New()
- ..()
+/obj/item/rig_module/maneuvering_jets/Initialize(mapload)
+ . = ..()
jets = new(src)
/obj/item/rig_module/maneuvering_jets/installed()
@@ -584,8 +584,8 @@
var/iastamp
var/deniedstamp
-/obj/item/rig_module/device/stamp/New()
- ..()
+/obj/item/rig_module/device/stamp/Initialize(mapload)
+ . = ..()
iastamp = new /obj/item/stamp/internalaffairs(src)
deniedstamp = new /obj/item/stamp/denied(src)
device = iastamp
diff --git a/code/modules/clothing/spacesuits/rig/modules/vision.dm b/code/modules/clothing/spacesuits/rig/modules/vision.dm
index d96c6a80fa..48883a715f 100644
--- a/code/modules/clothing/spacesuits/rig/modules/vision.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/vision.dm
@@ -227,8 +227,8 @@
if((. = ..()) && holder.wearer)
holder.wearer.recalculate_vis()
-/obj/item/rig_module/vision/New()
- ..()
+/obj/item/rig_module/vision/Initialize(mapload)
+ . = ..()
if(!vision_modes)
return
diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm
index 3748b2d7b5..9f04814e45 100644
--- a/code/modules/clothing/spacesuits/rig/rig.dm
+++ b/code/modules/clothing/spacesuits/rig/rig.dm
@@ -106,8 +106,8 @@
var/obj/item/storage/backpack/rig_storage
permeability_coefficient = 0 //Protect the squishies, after all this shit should be waterproof.
-/obj/item/rig/New()
- ..()
+/obj/item/rig/Initialize(mapload)
+ . = ..()
suit_state = icon_state
item_state = icon_state
diff --git a/code/modules/examine/descriptions/atmospherics.dm b/code/modules/examine/descriptions/atmospherics.dm
index 57b6d3e9da..6e39fadaa9 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 less than 200 kPa above the ambient pressure 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."
@@ -164,4 +164,3 @@
/obj/machinery/pipedispenser
description_info = "This can be moved by using a wrench. You will need to wrench it again when you want to use it. You can put \
excess (atmospheric) pipes into the dispenser, as well. The dispenser requires electricity to function."
-
diff --git a/code/modules/hydroponics/trays/tray_soil.dm b/code/modules/hydroponics/trays/tray_soil.dm
index b275836046..b5c54e504e 100644
--- a/code/modules/hydroponics/trays/tray_soil.dm
+++ b/code/modules/hydroponics/trays/tray_soil.dm
@@ -50,12 +50,12 @@
icon = 'icons/obj/seeds.dmi'
icon_state = "blank"
-/obj/machinery/portable_atmospherics/hydroponics/soil/invisible/New(var/newloc,var/datum/seed/newseed)
+/obj/machinery/portable_atmospherics/hydroponics/soil/invisible/Initialize(mapload,var/datum/seed/newseed)
//VOREStation Addition Start
if(istype(loc, /turf/simulated/open) || istype(loc, /turf/space))
- qdel(src)
+ return INITIALIZE_HINT_QDEL
//VOREStation Addition End
- ..()
+ . = ..()
seed = newseed
dead = 0
age = 1
diff --git a/code/modules/integrated_electronics/core/tools.dm b/code/modules/integrated_electronics/core/tools.dm
index 085708824d..1b25235df4 100644
--- a/code/modules/integrated_electronics/core/tools.dm
+++ b/code/modules/integrated_electronics/core/tools.dm
@@ -284,7 +284,6 @@
return //No
/obj/item/storage/bag/circuits/basic/Initialize()
- //. = ..() CHOMPEdit
new /obj/item/storage/bag/circuits/mini/arithmetic(src)
new /obj/item/storage/bag/circuits/mini/trig(src)
new /obj/item/storage/bag/circuits/mini/input(src)
@@ -306,10 +305,9 @@
new /obj/item/integrated_electronics/debugger(src) //CHOMPEdit
new /obj/item/integrated_electronics/detailer(src) //CHOMPEdit
make_exact_fit()
- . = ..() //CHOMPEdit
+ . = ..()
/obj/item/storage/bag/circuits/all/Initialize()
- //. = ..() CHOMPEdit
new /obj/item/storage/bag/circuits/mini/arithmetic/all(src)
new /obj/item/storage/bag/circuits/mini/trig/all(src)
new /obj/item/storage/bag/circuits/mini/input/all(src)
@@ -333,7 +331,7 @@
new /obj/item/integrated_electronics/detailer(src) //CHOMPEdit
new /obj/item/tool/crowbar(src)
make_exact_fit()
- . = ..() //CHOMPEdit
+ . = ..()
/obj/item/storage/bag/circuits/mini
name = "circuit box"
diff --git a/code/modules/integrated_electronics/subtypes/illegal.dm b/code/modules/integrated_electronics/subtypes/illegal.dm
index 88e3a277d6..2bd9b94699 100644
--- a/code/modules/integrated_electronics/subtypes/illegal.dm
+++ b/code/modules/integrated_electronics/subtypes/illegal.dm
@@ -27,8 +27,8 @@
var/datum/exonet_protocol/exonet = null
var/address_spoofed = FALSE
-/obj/item/integrated_circuit/illegal/EPv2_Spoofer/New()
- ..()
+/obj/item/integrated_circuit/illegal/EPv2_Spoofer/Initialize(mapload)
+ . = ..()
exonet = new(src)
exonet.make_address("EPv2_Spoofer_circuit-\ref[src]")
desc += "
This circuit's EPv2 address is: [exonet.address]"
@@ -84,8 +84,8 @@
return can_telecomm(src,node)
return 0
-/obj/item/integrated_circuit/illegal/EPv2_Discoverer/New()
- ..()
+/obj/item/integrated_circuit/illegal/EPv2_Discoverer/Initialize(mapload)
+ . = ..()
exonet = new(src)
exonet.make_address("EPv2_Discovery_circuit-\ref[src]")
desc += "
This circuit's EPv2 address is: [exonet.address]"
@@ -118,4 +118,4 @@
set_pin_data(IC_OUTPUT, 1, addresses)
push_data()
- activate_pin(2)
\ No newline at end of file
+ activate_pin(2)
diff --git a/code/modules/integrated_electronics/subtypes/input.dm b/code/modules/integrated_electronics/subtypes/input.dm
index f80f0f4650..4fe4863c55 100644
--- a/code/modules/integrated_electronics/subtypes/input.dm
+++ b/code/modules/integrated_electronics/subtypes/input.dm
@@ -455,8 +455,8 @@
return can_telecomm(src,node)
return 0
-/obj/item/integrated_circuit/input/EPv2/New()
- ..()
+/obj/item/integrated_circuit/input/EPv2/Initialize(mapload)
+ . = ..()
exonet = new(src)
exonet.make_address("EPv2_circuit-\ref[src]")
desc += "
This circuit's EPv2 address is: [exonet.address]"
diff --git a/code/modules/mob/freelook/chunk.dm b/code/modules/mob/freelook/chunk.dm
index 8886207e81..6f1b12568a 100644
--- a/code/modules/mob/freelook/chunk.dm
+++ b/code/modules/mob/freelook/chunk.dm
@@ -62,9 +62,7 @@
if(visible || update_now)
if(!updating)
updating = 1
- spawn(UPDATE_BUFFER) // Batch large changes, such as many doors opening or closing at once
- update()
- updating = 0
+ addtimer(CALLBACK(src, PROC_REF(update)), UPDATE_BUFFER, TIMER_DELETE_ME) // Batch large changes, such as many doors opening or closing at once
else
changed = 1
@@ -112,6 +110,7 @@
var/client/client = m.GetViewerClient()
if(client)
client.images += t.obfuscations[obfuscation.type]
+ updating = 0
/datum/chunk/proc/acquireVisibleTurfs(var/list/visible)
diff --git a/code/modules/mob/freelook/update_triggers.dm b/code/modules/mob/freelook/update_triggers.dm
index fae1cf8d79..7252cc5443 100644
--- a/code/modules/mob/freelook/update_triggers.dm
+++ b/code/modules/mob/freelook/update_triggers.dm
@@ -34,8 +34,8 @@
updateVisibility(src)
return ..()
-/obj/structure/New()
- ..()
+/obj/structure/Initialize(mapload)
+ . = ..()
updateVisibility(src)
// EFFECTS
diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_rig.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_rig.dm
index 762ece39cb..4e47cafd07 100644
--- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_rig.dm
+++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_rig.dm
@@ -46,7 +46,7 @@
/obj/item/rig/protean/ex_act(severity)
return
-/obj/item/rig/protean/New(var/newloc, var/mob/living/carbon/human/P)
+/obj/item/rig/protean/Initialize(mapload, var/mob/living/carbon/human/P)
if(P)
var/datum/species/protean/S = P.species
S.OurRig = src
@@ -55,7 +55,7 @@
myprotean = P
else
to_chat(P, span_notice("You should have spawned with a backpack to assimilate into your RIG. Try clicking it with a backpack."))
- ..(newloc)
+ . = ..()
/obj/item/rig/protean/Destroy()
if(myprotean)
diff --git a/code/modules/nifsoft/nif_tgui.dm b/code/modules/nifsoft/nif_tgui.dm
index 7c32c935aa..5916ce105e 100644
--- a/code/modules/nifsoft/nif_tgui.dm
+++ b/code/modules/nifsoft/nif_tgui.dm
@@ -81,7 +81,7 @@
*/
/mob/living/carbon/human/proc/nif_menu()
set name = "NIF Menu"
- set category = "IC.Nif"
+ set category = "IC.NIF"
set desc = "Open the NIF user interface."
var/obj/item/nif/N = nif
diff --git a/code/modules/nifsoft/software/13_soulcatcher.dm b/code/modules/nifsoft/software/13_soulcatcher.dm
index ec26997849..fbe6f5862c 100644
--- a/code/modules/nifsoft/software/13_soulcatcher.dm
+++ b/code/modules/nifsoft/software/13_soulcatcher.dm
@@ -542,7 +542,7 @@
/mob/proc/nsay(message as text)
set name = "NSay"
set desc = "Speak into your NIF's Soulcatcher."
- set category = "IC.NiF"
+ set category = "IC.NIF"
src.nsay_act(message)
@@ -572,7 +572,7 @@
/mob/proc/nme(message as message)
set name = "NMe"
set desc = "Emote into your NIF's Soulcatcher."
- set category = "IC.NiF"
+ set category = "IC.NIF"
src.nme_act(message)
diff --git a/code/modules/reagents/reagent_containers/_reagent_containers.dm b/code/modules/reagents/reagent_containers/_reagent_containers.dm
index 6a23abbde0..8dffbf3ad2 100644
--- a/code/modules/reagents/reagent_containers/_reagent_containers.dm
+++ b/code/modules/reagents/reagent_containers/_reagent_containers.dm
@@ -17,7 +17,7 @@
if(N)
amount_per_transfer_from_this = N
-/obj/item/reagent_containers/Initialize()
+/obj/item/reagent_containers/Initialize(mapload)
. = ..()
if(!possible_transfer_amounts)
src.verbs -= /obj/item/reagent_containers/verb/set_APTFT
diff --git a/maps/redgate/falls/atoll_objs.dm b/maps/redgate/falls/atoll_objs.dm
index 340b3c034a..ac24d846d5 100644
--- a/maps/redgate/falls/atoll_objs.dm
+++ b/maps/redgate/falls/atoll_objs.dm
@@ -208,7 +208,8 @@
/obj/structure/monolith/fifth/update_icon()
add_overlay("5")
-/obj/structure/monolith/Initialize()
+/obj/structure/monolith/Initialize(mapload)
+ . = ..()
update_icon()
soundloop = new(list(src), TRUE)