diff --git a/code/game/objects/items/weapons/cigs.dm b/code/game/objects/items/weapons/cigs.dm index 9aa0eeb4789..f789c869865 100644 --- a/code/game/objects/items/weapons/cigs.dm +++ b/code/game/objects/items/weapons/cigs.dm @@ -40,8 +40,8 @@ LIGHTERS ARE IN LIGHTERS.DM "Grey" = 'icons/mob/clothing/species/grey/mask.dmi') -/obj/item/clothing/mask/cigarette/New() - ..() +/obj/item/clothing/mask/cigarette/Initialize(mapload) + . = ..() create_reagents(chem_volume) // making the cigarrete a chemical holder with a maximum volume of 30 reagents.set_reacting(FALSE) // so it doesn't react until you light it if(list_reagents) @@ -261,8 +261,8 @@ LIGHTERS ARE IN LIGHTERS.DM throw_speed = 0.5 item_state = "spliffoff" -/obj/item/clothing/mask/cigarette/rollie/New() - ..() +/obj/item/clothing/mask/cigarette/rollie/Initialize(mapload) + . = ..() pixel_x = rand(-5, 5) pixel_y = rand(-5, 5) @@ -275,8 +275,8 @@ LIGHTERS ARE IN LIGHTERS.DM desc = "A manky old roach, or for non-stoners, a used rollup." icon_state = "roach" -/obj/item/cigbutt/roach/New() - ..() +/obj/item/cigbutt/roach/Initialize(mapload) + . = ..() pixel_x = rand(-5, 5) pixel_y = rand(-5, 5) @@ -322,8 +322,8 @@ LIGHTERS ARE IN LIGHTERS.DM w_class = WEIGHT_CLASS_TINY throwforce = 1 -/obj/item/cigbutt/New() - ..() +/obj/item/cigbutt/Initialize(mapload) + . = ..() pixel_x = rand(-10,10) pixel_y = rand(-10,10) transform = turn(transform,rand(0,360)) diff --git a/code/modules/antagonists/changeling/powers/mutations.dm b/code/modules/antagonists/changeling/powers/mutations.dm index 135842141b6..e98cb47de1e 100644 --- a/code/modules/antagonists/changeling/powers/mutations.dm +++ b/code/modules/antagonists/changeling/powers/mutations.dm @@ -364,8 +364,8 @@ var/remaining_uses //Set by the changeling ability. -/obj/item/shield/changeling/New() - ..() +/obj/item/shield/changeling/Initialize(mapload) + . = ..() if(ismob(loc)) loc.visible_message("The end of [loc.name]\'s hand inflates rapidly, forming a huge shield-like mass!", "We inflate our hand into a strong shield.", "You hear organic matter ripping and tearing!") @@ -409,8 +409,8 @@ allowed = list(/obj/item/flashlight, /obj/item/tank/internals) armor = list(MELEE = 0, BULLET = 0, LASER = 0, ENERGY = 0, BOMB = 0, BIO = 0, RAD = 0, FIRE = 90, ACID = 90) //No armor at all -/obj/item/clothing/suit/space/changeling/New() - ..() +/obj/item/clothing/suit/space/changeling/Initialize(mapload) + . = ..() if(ismob(loc)) loc.visible_message("[loc.name]\'s flesh rapidly inflates, forming a bloated mass around [loc.p_their()] body!", "We inflate our flesh, creating a spaceproof suit!", "You hear organic matter ripping and tearing!") START_PROCESSING(SSobj, src) @@ -458,8 +458,8 @@ heat_protection = 0 sprite_sheets = null -/obj/item/clothing/suit/armor/changeling/New() - ..() +/obj/item/clothing/suit/armor/changeling/Initialize(mapload) + . = ..() if(ismob(loc)) loc.visible_message("[loc.name]\'s flesh turns black, quickly transforming into a hard, chitinous mass!", "We harden our flesh, creating a suit of armor!", "You hear organic matter ripping and tearing!") diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index fe2a9ffaa53..50ff83049ce 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -702,10 +702,10 @@ BLIND // can't see anything var/rolled_down = FALSE var/basecolor -/obj/item/clothing/under/rank/New() +/obj/item/clothing/under/rank/Initialize(mapload) + . = ..() if(random_sensor) sensor_mode = pick(SENSOR_OFF, SENSOR_LIVING, SENSOR_VITALS, SENSOR_COORDS) - ..() /obj/item/clothing/under/Destroy() QDEL_LIST(accessories) diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index 54d0e0193b4..799e8ab5315 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -1,4 +1,4 @@ -/obj/item/clothing/glasses/New() +/obj/item/clothing/glasses/Initialize(mapload) . = ..() if(prescription_upgradable && prescription) // Pre-upgraded upgradable glasses diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index 8c12be1b1e0..b80d346bf30 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -65,16 +65,16 @@ item_color="yellow" resistance_flags = NONE -/obj/item/clothing/gloves/color/fyellow/New() - ..() +/obj/item/clothing/gloves/color/fyellow/Initialize(mapload) + . = ..() siemens_coefficient = pick(0,0.5,0.5,0.5,0.5,0.75,1.5) /obj/item/clothing/gloves/color/fyellow/old name = "worn out insulated gloves" desc = "Old and worn out insulated gloves, hopefully they still work." -/obj/item/clothing/gloves/color/fyellow/old/New() - ..() +/obj/item/clothing/gloves/color/fyellow/old/Initialize(mapload) + . = ..() siemens_coefficient = pick(0,0,0,0.5,0.5,0.5,0.75) /obj/item/clothing/gloves/color/black diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index 62fdb63a927..0dd5c01c5e0 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -91,8 +91,8 @@ /obj/item/clothing/gloves/color/yellow/stun/get_cell() return cell -/obj/item/clothing/gloves/color/yellow/stun/New() - ..() +/obj/item/clothing/gloves/color/yellow/stun/Initialize(mapload) + . = ..() update_icon(UPDATE_OVERLAYS) /obj/item/clothing/gloves/color/yellow/stun/Destroy() diff --git a/code/modules/clothing/gloves/rings.dm b/code/modules/clothing/gloves/rings.dm index 1a608b31af7..1de30c936a8 100644 --- a/code/modules/clothing/gloves/rings.dm +++ b/code/modules/clothing/gloves/rings.dm @@ -11,8 +11,8 @@ var/stud = 0 var/ring_color = "iron" -/obj/item/clothing/gloves/ring/New() - ..() +/obj/item/clothing/gloves/ring/Initialize(mapload) + . = ..() update_icon(UPDATE_ICON_STATE) /obj/item/clothing/gloves/ring/update_icon_state() @@ -73,10 +73,10 @@ icon_state = "redring" ring_color = "red" -/obj/item/clothing/gloves/ring/plastic/random/New() +/obj/item/clothing/gloves/ring/plastic/random/Initialize(mapload) ring_color = pick("white","blue","red") name = "[ring_color] plastic ring" - ..() + . = ..() // weird /obj/item/clothing/gloves/ring/glass diff --git a/code/modules/clothing/spacesuits/ert.dm b/code/modules/clothing/spacesuits/ert.dm index 16af8fca4f5..b5aec5bc931 100644 --- a/code/modules/clothing/spacesuits/ert.dm +++ b/code/modules/clothing/spacesuits/ert.dm @@ -244,8 +244,8 @@ ) hide_tail_by_species = list("Unathi, Tajaran, Vox, Vulpkanin") -/obj/item/clothing/suit/space/hardsuit/ert/paranormal/New() - ..() +/obj/item/clothing/suit/space/hardsuit/ert/paranormal/Initialize(mapload) + . = ..() new /obj/item/nullrod(src) /obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal/inquisitor diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 4030d17e10a..3e3c3ad0ae2 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -172,10 +172,28 @@ "Vulpkanin" = 'icons/obj/clothing/species/vulpkanin/suits.dmi' ) -/obj/item/clothing/suit/space/hardsuit/New() - if(jetpack && ispath(jetpack)) +/obj/item/clothing/suit/space/hardsuit/Initialize(mapload) + . = ..() + MakeHelmet() + if(ispath(jetpack)) jetpack = new jetpack(src) - ..() + +/obj/item/clothing/suit/space/hardsuit/Destroy() + QDEL_NULL(helmet) + QDEL_NULL(jetpack) + return ..() + +/obj/item/clothing/head/helmet/space/hardsuit/Destroy() + suit = null + return ..() + +/obj/item/clothing/suit/space/hardsuit/proc/MakeHelmet() + if(!helmettype) + return + if(!helmet) + var/obj/item/clothing/head/helmet/space/hardsuit/W = new helmettype(src) + W.suit = src + helmet = W /obj/item/clothing/suit/space/hardsuit/attack_self(mob/user) user.changeNext_move(CLICK_CD_MELEE) @@ -344,11 +362,15 @@ /obj/item/clothing/head/helmet/space/hardsuit/syndi/update_icon_state() icon_state = "hardsuit[on]-[item_color]" -/obj/item/clothing/head/helmet/space/hardsuit/syndi/New() - ..() +/obj/item/clothing/head/helmet/space/hardsuit/syndi/Initialize(mapload) + . = ..() if(istype(loc, /obj/item/clothing/suit/space/hardsuit/syndi)) linkedsuit = loc +/obj/item/clothing/head/helmet/space/hardsuit/syndi/Destroy() + linkedsuit = null + return ..() + /obj/item/clothing/head/helmet/space/hardsuit/syndi/attack_self(mob/user) //Toggle Helmet if(!isturf(user.loc)) to_chat(user, "You cannot toggle your helmet while in this [user.loc]!" ) diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm index a871eb5171a..c8f9cc3124f 100644 --- a/code/modules/clothing/spacesuits/plasmamen.dm +++ b/code/modules/clothing/spacesuits/plasmamen.dm @@ -24,8 +24,8 @@ species_restricted = list("Plasmaman") sprite_sheets = list("Plasmaman" = 'icons/mob/clothing/species/plasmaman/helmet.dmi') -/obj/item/clothing/head/helmet/space/plasmaman/New() - ..() +/obj/item/clothing/head/helmet/space/plasmaman/Initialize(mapload) + . = ..() visor_toggling() update_icon() diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 64b924dfe24..7c7e796463a 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -181,8 +181,8 @@ name = "\improper super-hero E-N suit" icon_state = "ensuit" -/obj/item/clothing/suit/corgisuit/super_hero/en/New() - ..() +/obj/item/clothing/suit/corgisuit/super_hero/en/Initialize(mapload) + . = ..() START_PROCESSING(SSobj, src) /obj/item/clothing/suit/corgisuit/super_hero/en/Destroy() diff --git a/code/modules/clothing/suits/storage.dm b/code/modules/clothing/suits/storage.dm index 6d198a28b1e..cca318674d4 100644 --- a/code/modules/clothing/suits/storage.dm +++ b/code/modules/clothing/suits/storage.dm @@ -2,8 +2,8 @@ var/obj/item/storage/internal/pockets w_class = WEIGHT_CLASS_NORMAL //we don't want these to be able to fit in their own pockets. -/obj/item/clothing/suit/storage/New() - ..() +/obj/item/clothing/suit/storage/Initialize(mapload) + . = ..() pockets = new/obj/item/storage/internal(src) pockets.storage_slots = 2 //two slots pockets.max_w_class = WEIGHT_CLASS_SMALL //fit only pocket sized items diff --git a/code/modules/clothing/suits/toggles.dm b/code/modules/clothing/suits/toggles.dm index 398ea9d959b..422674268a1 100644 --- a/code/modules/clothing/suits/toggles.dm +++ b/code/modules/clothing/suits/toggles.dm @@ -1,27 +1,5 @@ //Hardsuit toggle code -/obj/item/clothing/suit/space/hardsuit/New() - MakeHelmet() - ..() -/obj/item/clothing/suit/space/hardsuit/Destroy() - if(helmet) - helmet.suit = null - QDEL_NULL(helmet) - QDEL_NULL(jetpack) - return ..() - -/obj/item/clothing/head/helmet/space/hardsuit/Destroy() - if(suit) - suit.helmet = null - return ..() - -/obj/item/clothing/suit/space/hardsuit/proc/MakeHelmet() - if(!helmettype) - return - if(!helmet) - var/obj/item/clothing/head/helmet/space/hardsuit/W = new helmettype(src) - W.suit = src - helmet = W /obj/item/clothing/suit/space/hardsuit/ui_action_click() ..() diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index 0e4a4b110d0..db8bbdfa676 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -12,8 +12,8 @@ var/image/inv_overlay = null //overlay used when attached to clothing. var/allow_duplicates = TRUE // Allow accessories of the same type. -/obj/item/clothing/accessory/New() - ..() +/obj/item/clothing/accessory/Initialize(mapload) + . = ..() inv_overlay = image("icon" = 'icons/obj/clothing/ties_overlay.dmi', "icon_state" = "[item_color? "[item_color]" : "[icon_state]"]") /obj/item/clothing/accessory/Moved(atom/OldLoc, Dir, Forced) diff --git a/code/modules/clothing/under/accessories/storage.dm b/code/modules/clothing/under/accessories/storage.dm index dc15bd65d88..7d11d12d73f 100644 --- a/code/modules/clothing/under/accessories/storage.dm +++ b/code/modules/clothing/under/accessories/storage.dm @@ -9,8 +9,8 @@ actions_types = list(/datum/action/item_action/accessory/storage) w_class = WEIGHT_CLASS_NORMAL // so it doesn't fit in pockets -/obj/item/clothing/accessory/storage/New() - ..() +/obj/item/clothing/accessory/storage/Initialize(mapload) + . = ..() hold = new/obj/item/storage/internal(src) hold.storage_slots = slots @@ -104,8 +104,8 @@ item_color = "unathiharness2" slots = 2 -/obj/item/clothing/accessory/storage/knifeharness/New() - ..() +/obj/item/clothing/accessory/storage/knifeharness/Initialize(mapload) + . = ..() hold.max_combined_w_class = 4 hold.can_hold = list(/obj/item/hatchet/unathiknife, /obj/item/kitchen/knife) diff --git a/code/modules/clothing/under/color.dm b/code/modules/clothing/under/color.dm index 1d2cf1b2da9..8d4631655e2 100644 --- a/code/modules/clothing/under/color.dm +++ b/code/modules/clothing/under/color.dm @@ -2,8 +2,8 @@ desc = "A standard issue colored jumpsuit. Variety is the spice of life!" dyeable = TRUE -/obj/item/clothing/under/color/random/New() - ..() +/obj/item/clothing/under/color/random/Initialize(mapload) + . = ..() var/list/excluded = list(/obj/item/clothing/under/color/random, /obj/item/clothing/under/color/blackf, /obj/item/clothing/under/color/blue/dodgeball, /obj/item/clothing/under/color/orange/prison, /obj/item/clothing/under/color/red/dodgeball, /obj/item/clothing/under/color/red/jersey, /obj/item/clothing/under/color/blue/jersey) var/obj/item/clothing/under/color/C = pick(subtypesof(/obj/item/clothing/under/color) - excluded) name = initial(C.name) diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index 877e44f00ba..ff758db20cb 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -159,8 +159,8 @@ item_color = "officer" displays_id = FALSE -/obj/item/clothing/under/rank/centcom/representative/New() - ..() +/obj/item/clothing/under/rank/centcom/representative/Initialize(mapload) + . = ..() desc = "Gold trim on space-black cloth, this uniform bears [station_name()] on the left shoulder." /obj/item/clothing/under/rank/centcom/magistrate @@ -171,8 +171,8 @@ item_color = "officer" displays_id = FALSE -/obj/item/clothing/under/rank/centcom/magistrate/New() - ..() +/obj/item/clothing/under/rank/centcom/magistrate/Initialize(mapload) + . = ..() desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Magistrate\" and bears [station_name()] on the left shoulder." /obj/item/clothing/under/rank/centcom/diplomatic diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index db464598e0c..4074f32e452 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -85,8 +85,8 @@ ink.icon += rgb(tattoo_r, tattoo_g, tattoo_b, 190) . += ink -/obj/item/fluff/tattoo_gun/New() - ..() +/obj/item/fluff/tattoo_gun/Initialize(mapload) + . = ..() update_icon() /obj/item/fluff/tattoo_gun/elliot_cybernetic_tat @@ -635,8 +635,8 @@ icon_state = "pirate" item_state = "pirate" -/obj/item/clothing/head/pirate/fluff/stumpy/New() - ..() +/obj/item/clothing/head/pirate/fluff/stumpy/Initialize(mapload) + . = ..() START_PROCESSING(SSobj, src) /obj/item/clothing/head/pirate/fluff/stumpy/Destroy() diff --git a/code/modules/mining/equipment/explorer_gear.dm b/code/modules/mining/equipment/explorer_gear.dm index ccdbcf4d885..0abd614d4fa 100644 --- a/code/modules/mining/equipment/explorer_gear.dm +++ b/code/modules/mining/equipment/explorer_gear.dm @@ -55,15 +55,19 @@ armor = list(MELEE = 70, BULLET = 40, LASER = 10, ENERGY = 10, BOMB = 50, BIO = 100, RAD = 100, FIRE = 100, ACID = 100) allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe, /obj/item/melee/spellblade) -/obj/item/clothing/suit/space/hostile_environment/New() - ..() - AddComponent(/datum/component/spraycan_paintable) + +/obj/item/clothing/suit/space/hostile_environment/Initialize(mapload) + . = ..() START_PROCESSING(SSobj, src) /obj/item/clothing/suit/space/hostile_environment/Destroy() STOP_PROCESSING(SSobj, src) return ..() +/obj/item/clothing/suit/space/hostile_environment/ComponentInitialize() + ..() + AddComponent(/datum/component/spraycan_paintable) + /obj/item/clothing/suit/space/hostile_environment/process() var/mob/living/carbon/C = loc if(istype(C) && prob(2)) //cursed by bubblegum @@ -83,10 +87,13 @@ armor = list(MELEE = 70, BULLET = 40, LASER = 10, ENERGY = 10, BOMB = 50, BIO = 100, RAD = 100, FIRE = 100, ACID = 100) resistance_flags = FIRE_PROOF | LAVA_PROOF -/obj/item/clothing/head/helmet/space/hostile_environment/New() +/obj/item/clothing/head/helmet/space/hostile_environment/Initialize(mapload) + . = ..() + update_icon() + +/obj/item/clothing/head/helmet/space/hostile_environment/ComponentInitialize() ..() AddComponent(/datum/component/spraycan_paintable) - update_icon() /obj/item/clothing/head/helmet/space/hostile_environment/update_overlays() . = ..()