diff --git a/code/game/objects/items/random_items.dm b/code/game/objects/items/random_items.dm index f90f40dee57..2c3b51d4454 100644 --- a/code/game/objects/items/random_items.dm +++ b/code/game/objects/items/random_items.dm @@ -162,8 +162,7 @@ desc = "Crate full of chemicals of unknown type and value from a 'trusted' source." req_one_access = list(ACCESS_CHEMISTRY,ACCESS_RESEARCH,ACCESS_QM) // the qm knows a guy, you see. -/obj/structure/closet/crate/secure/unknownchemicals/New() - ..() +/obj/structure/closet/crate/secure/unknownchemicals/populate_contents() for(var/i in 1 to 7) new/obj/item/reagent_containers/glass/bottle/random_base_chem(src) for(var/i in 1 to 3) @@ -180,8 +179,7 @@ desc = "Full of basic chemistry supplies." req_one_access = list(ACCESS_CHEMISTRY,ACCESS_RESEARCH) -/obj/structure/closet/crate/secure/chemicals/New() - ..() +/obj/structure/closet/crate/secure/chemicals/populate_contents() for(var/chem in GLOB.standard_chemicals) var/obj/item/reagent_containers/glass/bottle/B = new(src) B.reagents.add_reagent(chem, B.volume) @@ -241,8 +239,7 @@ icon_broken = "cabinetdetective_broken" icon_off = "cabinetdetective_broken" -/obj/structure/closet/secure_closet/random_drinks/New() - ..() +/obj/structure/closet/secure_closet/random_drinks/populate_contents() for(var/i in 1 to 5) new/obj/item/reagent_containers/food/drinks/bottle/random_drink(src) while(prob(25)) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 124fb69f8d3..9f0daed2fbe 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -21,17 +21,32 @@ var/material_drop = /obj/item/stack/sheet/metal var/material_drop_amount = 2 -/obj/structure/closet/New() - ..() - spawn(1) - if(!opened) // if closed, any item at the crate's loc is put in the contents - var/itemcount = 0 - for(var/obj/item/I in loc) - if(I.density || I.anchored || I == src) continue - I.forceMove(src) - // Ensure the storage cap is respected - if(++itemcount >= storage_capacity) - break +// Please dont override this unless you absolutely have to +/obj/structure/closet/Initialize(mapload) + . = ..() + if(!opened) + // Youre probably asking, why is this a 0 seconds timer AA? + // Well, I will tell you. One day, all /obj/effect/spawner will use Initialize + // This includes maint loot spawners. The problem with that is if a closet loads before a spawner, + // the loot will just be in a pile. Adding a timer with 0 delay will cause it to only take in contents once the MC has loaded, + // therefore solving the issue on mapload. During rounds, everything will happen as normal + addtimer(CALLBACK(src, .proc/take_contents), 0) + update_icon() // Set it to the right icon if needed + populate_contents() // Spawn all its stuff + +// Override this to spawn your things in. This lets you use probabilities, and also doesnt cause init overrides +/obj/structure/closet/proc/populate_contents() + return + +// This is called on Initialize to add contents on the tile +/obj/structure/closet/proc/take_contents() + var/itemcount = 0 + for(var/obj/item/I in loc) + if(I.density || I.anchored || I == src) continue + I.forceMove(src) + // Ensure the storage cap is respected + if(++itemcount >= storage_capacity) + break // Fix for #383 - C4 deleting fridges with corpses /obj/structure/closet/Destroy() diff --git a/code/game/objects/structures/crates_lockers/closets/fitness.dm b/code/game/objects/structures/crates_lockers/closets/fitness.dm index af8c3e46348..62013452d23 100644 --- a/code/game/objects/structures/crates_lockers/closets/fitness.dm +++ b/code/game/objects/structures/crates_lockers/closets/fitness.dm @@ -4,8 +4,7 @@ icon_state = "mixed" icon_closed = "mixed" -/obj/structure/closet/athletic_mixed/New() - ..() +/obj/structure/closet/athletic_mixed/populate_contents() new /obj/item/clothing/under/shorts/grey(src) new /obj/item/clothing/under/shorts/black(src) new /obj/item/clothing/under/shorts/red(src) @@ -22,8 +21,7 @@ name = "boxing gloves" desc = "It's a storage unit for gloves for use in the boxing ring." -/obj/structure/closet/boxinggloves/New() - ..() +/obj/structure/closet/boxinggloves/populate_contents() new /obj/item/clothing/gloves/boxing/blue(src) new /obj/item/clothing/gloves/boxing/green(src) new /obj/item/clothing/gloves/boxing/yellow(src) @@ -34,8 +32,7 @@ name = "mask closet" desc = "IT'S A STORAGE UNIT FOR FIGHTER MASKS OLE!" -/obj/structure/closet/masks/New() - ..() +/obj/structure/closet/masks/populate_contents() new /obj/item/clothing/mask/luchador(src) new /obj/item/clothing/mask/luchador/rudos(src) new /obj/item/clothing/mask/luchador/tecnicos(src) @@ -47,8 +44,7 @@ icon_state = "red" icon_closed = "red" -/obj/structure/closet/lasertag/red/New() - ..() +/obj/structure/closet/lasertag/red/populate_contents() new /obj/item/gun/energy/laser/tag/red(src) new /obj/item/gun/energy/laser/tag/red(src) new /obj/item/gun/energy/laser/tag/red(src) @@ -63,8 +59,7 @@ icon_state = "blue" icon_closed = "blue" -/obj/structure/closet/lasertag/blue/New() - ..() +/obj/structure/closet/lasertag/blue/populate_contents() new /obj/item/gun/energy/laser/tag/blue(src) new /obj/item/gun/energy/laser/tag/blue(src) new /obj/item/gun/energy/laser/tag/blue(src) diff --git a/code/game/objects/structures/crates_lockers/closets/gimmick.dm b/code/game/objects/structures/crates_lockers/closets/gimmick.dm index e570128383a..eba0dff4086 100644 --- a/code/game/objects/structures/crates_lockers/closets/gimmick.dm +++ b/code/game/objects/structures/crates_lockers/closets/gimmick.dm @@ -36,8 +36,7 @@ icon_closed = "syndicate1" icon_opened = "syndicate1open" -/obj/structure/closet/gimmick/russian/New() - ..() +/obj/structure/closet/gimmick/russian/populate_contents() new /obj/item/clothing/head/ushanka(src) new /obj/item/clothing/head/ushanka(src) new /obj/item/clothing/head/ushanka(src) @@ -57,8 +56,7 @@ icon_closed = "syndicate1" icon_opened = "syndicate1open" -/obj/structure/closet/gimmick/tacticool/New() - ..() +/obj/structure/closet/gimmick/tacticool/populate_contents() new /obj/item/clothing/glasses/eyepatch(src) new /obj/item/clothing/glasses/sunglasses(src) new /obj/item/clothing/gloves/combat(src) @@ -86,8 +84,7 @@ /obj/structure/closet/thunderdome/tdred name = "red-team Thunderdome closet" -/obj/structure/closet/thunderdome/tdred/New() - ..() +/obj/structure/closet/thunderdome/tdred/populate_contents() new /obj/item/clothing/suit/armor/tdome/red(src) new /obj/item/clothing/suit/armor/tdome/red(src) new /obj/item/clothing/suit/armor/tdome/red(src) @@ -113,8 +110,7 @@ icon_closed = "syndicate1" icon_opened = "syndicate1open" -/obj/structure/closet/thunderdome/tdgreen/New() - ..() +/obj/structure/closet/thunderdome/tdgreen/populate_contents() new /obj/item/clothing/suit/armor/tdome/green(src) new /obj/item/clothing/suit/armor/tdome/green(src) new /obj/item/clothing/suit/armor/tdome/green(src) diff --git a/code/game/objects/structures/crates_lockers/closets/job_closets.dm b/code/game/objects/structures/crates_lockers/closets/job_closets.dm index 35daeff58e9..7af65b16270 100644 --- a/code/game/objects/structures/crates_lockers/closets/job_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/job_closets.dm @@ -14,8 +14,7 @@ icon_state = "black" icon_closed = "black" -/obj/structure/closet/gmcloset/New() - ..() +/obj/structure/closet/gmcloset/populate_contents() new /obj/item/clothing/head/that(src) new /obj/item/clothing/head/that(src) new /obj/item/radio/headset/headset_service(src) @@ -42,8 +41,7 @@ icon_state = "black" icon_closed = "black" -/obj/structure/closet/chefcloset/New() - ..() +/obj/structure/closet/chefcloset/populate_contents() new /obj/item/clothing/under/waiter(src) new /obj/item/clothing/under/waiter(src) new /obj/item/radio/headset/headset_service(src) @@ -70,8 +68,7 @@ icon_state = "mixed" icon_closed = "mixed" -/obj/structure/closet/jcloset/New() - ..() +/obj/structure/closet/jcloset/populate_contents() new /obj/item/flashlight(src) new /obj/item/flashlight(src) new /obj/item/melee/flyswatter(src) @@ -111,8 +108,7 @@ icon_state = "blue" icon_closed = "blue" -/obj/structure/closet/lawcloset/New() - ..() +/obj/structure/closet/lawcloset/populate_contents() new /obj/item/storage/box/tapes(src) new /obj/item/book/manual/faxes(src) new /obj/item/clothing/under/lawyer/female(src) @@ -138,8 +134,7 @@ icon_closed = "blue" -/obj/structure/closet/paramedic/New() - . = ..() +/obj/structure/closet/paramedic/populate_contents() new /obj/item/clothing/under/rank/medical/paramedic(src) new /obj/item/clothing/under/rank/medical/paramedic(src) new /obj/item/radio/headset/headset_med(src) diff --git a/code/game/objects/structures/crates_lockers/closets/l3closet.dm b/code/game/objects/structures/crates_lockers/closets/l3closet.dm index e29ce1bb11c..fc72cfa1dc1 100644 --- a/code/game/objects/structures/crates_lockers/closets/l3closet.dm +++ b/code/game/objects/structures/crates_lockers/closets/l3closet.dm @@ -5,8 +5,7 @@ icon_closed = "bio" icon_opened = "bioopen" -/obj/structure/closet/l3closet/New() - ..() +/obj/structure/closet/l3closet/populate_contents() new /obj/item/storage/bag/bio( src ) new /obj/item/clothing/suit/bio_suit/general( src ) new /obj/item/clothing/head/bio_hood/general( src ) @@ -17,9 +16,7 @@ icon_closed = "bio_general" icon_opened = "bio_generalopen" -/obj/structure/closet/l3closet/general/New() - ..() - contents = list() +/obj/structure/closet/l3closet/general/populate_contents() new /obj/item/clothing/suit/bio_suit/general( src ) new /obj/item/clothing/head/bio_hood/general( src ) @@ -29,9 +26,7 @@ icon_closed = "bio_virology" icon_opened = "bio_virologyopen" -/obj/structure/closet/l3closet/virology/New() - ..() - contents = list() +/obj/structure/closet/l3closet/virology/populate_contents() new /obj/item/storage/bag/bio( src ) new /obj/item/clothing/suit/bio_suit/virology( src ) new /obj/item/clothing/head/bio_hood/virology( src ) @@ -44,9 +39,7 @@ icon_closed = "bio_security" icon_opened = "bio_securityopen" -/obj/structure/closet/l3closet/security/New() - ..() - contents = list() +/obj/structure/closet/l3closet/security/populate_contents() new /obj/item/clothing/suit/bio_suit/security( src ) new /obj/item/clothing/head/bio_hood/security( src ) @@ -56,9 +49,7 @@ icon_closed = "bio_janitor" icon_opened = "bio_janitoropen" -/obj/structure/closet/l3closet/janitor/New() - ..() - contents = list() +/obj/structure/closet/l3closet/janitor/populate_contents() new /obj/item/clothing/suit/bio_suit/janitor( src ) new /obj/item/clothing/head/bio_hood/janitor( src ) @@ -68,9 +59,7 @@ icon_closed = "bio_scientist" icon_opened = "bio_scientistopen" -/obj/structure/closet/l3closet/scientist/New() - ..() - contents = list() +/obj/structure/closet/l3closet/scientist/populate_contents() new /obj/item/storage/bag/bio( src ) new /obj/item/clothing/suit/bio_suit/scientist( src ) new /obj/item/clothing/head/bio_hood/scientist( src ) diff --git a/code/game/objects/structures/crates_lockers/closets/malfunction.dm b/code/game/objects/structures/crates_lockers/closets/malfunction.dm index 957fc6ef623..fcd763292e6 100644 --- a/code/game/objects/structures/crates_lockers/closets/malfunction.dm +++ b/code/game/objects/structures/crates_lockers/closets/malfunction.dm @@ -5,8 +5,7 @@ icon_closed = "syndicate" icon_opened = "syndicateopen" -/obj/structure/closet/malf/suits/New() - ..() +/obj/structure/closet/malf/suits/populate_contents() new /obj/item/tank/jetpack/void(src) new /obj/item/clothing/mask/breath(src) new /obj/effect/nasavoidsuitspawner(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/bar.dm b/code/game/objects/structures/crates_lockers/closets/secure/bar.dm index 33d5c5fe97a..7e66da3be62 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/bar.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/bar.dm @@ -10,18 +10,17 @@ resistance_flags = FLAMMABLE max_integrity = 70 -/obj/structure/closet/secure_closet/bar/New() - ..() - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) - new /obj/item/reagent_containers/food/drinks/cans/beer( src ) +/obj/structure/closet/secure_closet/bar/populate_contents() + new /obj/item/reagent_containers/food/drinks/cans/beer(src) + new /obj/item/reagent_containers/food/drinks/cans/beer(src) + new /obj/item/reagent_containers/food/drinks/cans/beer(src) + new /obj/item/reagent_containers/food/drinks/cans/beer(src) + new /obj/item/reagent_containers/food/drinks/cans/beer(src) + new /obj/item/reagent_containers/food/drinks/cans/beer(src) + new /obj/item/reagent_containers/food/drinks/cans/beer(src) + new /obj/item/reagent_containers/food/drinks/cans/beer(src) + new /obj/item/reagent_containers/food/drinks/cans/beer(src) + new /obj/item/reagent_containers/food/drinks/cans/beer(src) /obj/structure/closet/secure_closet/bar/update_icon() if(broken) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm b/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm index 28dbb53326e..157f0b18a85 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm @@ -8,8 +8,7 @@ icon_broken = "securecargobroken" icon_off = "securecargooff" -/obj/structure/closet/secure_closet/cargotech/New() - ..() +/obj/structure/closet/secure_closet/cargotech/populate_contents() new /obj/item/clothing/under/rank/cargotech(src) new /obj/item/clothing/under/rank/cargotech/skirt(src) new /obj/item/clothing/shoes/black(src) @@ -29,8 +28,7 @@ icon_broken = "secureqmbroken" icon_off = "secureqmoff" -/obj/structure/closet/secure_closet/quartermaster/New() - ..() +/obj/structure/closet/secure_closet/quartermaster/populate_contents() new /obj/item/clothing/under/rank/cargo(src) new /obj/item/clothing/under/rank/cargo/skirt(src) new /obj/item/clothing/shoes/brown(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/chaplain.dm b/code/game/objects/structures/crates_lockers/closets/secure/chaplain.dm index 1edebe36cf0..ef80d50371a 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/chaplain.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/chaplain.dm @@ -9,8 +9,7 @@ icon_broken = "chaplainsecurebroken" icon_off = "chaplainsecureoff" -/obj/structure/closet/secure_closet/chaplain/New() - ..() +/obj/structure/closet/secure_closet/chaplain/populate_contents() new /obj/item/clothing/under/rank/chaplain(src) new /obj/item/clothing/shoes/black(src) new /obj/item/clothing/suit/hooded/nun(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/depot.dm b/code/game/objects/structures/crates_lockers/closets/secure/depot.dm index 439f75d090c..18cdb50d685 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/depot.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/depot.dm @@ -9,11 +9,6 @@ var/is_armory = FALSE var/ignore_use = FALSE - -/obj/structure/closet/secure_closet/syndicate/depot/New() - . = ..() - update_icon() - /obj/structure/closet/secure_closet/syndicate/depot/emag_act() . = ..() loot_pickup() diff --git a/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm b/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm index f0a7336389b..39b6a0a0096 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm @@ -8,8 +8,7 @@ icon_broken = "securecebroken" icon_off = "secureceoff" -/obj/structure/closet/secure_closet/engineering_chief/New() - ..() +/obj/structure/closet/secure_closet/engineering_chief/populate_contents() if(prob(50)) new /obj/item/storage/backpack/industrial(src) else @@ -53,8 +52,7 @@ icon_broken = "secureengelecbroken" icon_off = "secureengelecoff" -/obj/structure/closet/secure_closet/engineering_electrical/New() - ..() +/obj/structure/closet/secure_closet/engineering_electrical/populate_contents() new /obj/item/clothing/gloves/color/yellow(src) new /obj/item/clothing/gloves/color/yellow(src) new /obj/item/storage/toolbox/electrical(src) @@ -79,8 +77,7 @@ icon_broken = "secureengweldbroken" icon_off = "secureengweldoff" -/obj/structure/closet/secure_closet/engineering_welding/New() - ..() +/obj/structure/closet/secure_closet/engineering_welding/populate_contents() new /obj/item/clothing/head/welding(src) new /obj/item/clothing/head/welding(src) new /obj/item/clothing/head/welding(src) @@ -99,8 +96,7 @@ icon_broken = "secureengbroken" icon_off = "secureengoff" -/obj/structure/closet/secure_closet/engineering_personal/New() - ..() +/obj/structure/closet/secure_closet/engineering_personal/populate_contents() if(prob(50)) new /obj/item/storage/backpack/industrial(src) else @@ -128,8 +124,7 @@ icon_broken = "secureatmbroken" icon_off = "secureatmoff" -/obj/structure/closet/secure_closet/atmos_personal/New() - ..() +/obj/structure/closet/secure_closet/atmos_personal/populate_contents() new /obj/item/radio/headset/headset_eng(src) new /obj/item/cartridge/atmos(src) new /obj/item/storage/toolbox/mechanical(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm b/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm index e8f7cd3edbe..7b8494a01ba 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm @@ -28,8 +28,7 @@ name = "kitchen cabinet" req_access = list(ACCESS_KITCHEN) -/obj/structure/closet/secure_closet/freezer/kitchen/New() - ..() +/obj/structure/closet/secure_closet/freezer/kitchen/populate_contents() for(var/i in 1 to 3) new /obj/item/reagent_containers/food/condiment/flour(src) new /obj/item/reagent_containers/food/condiment/rice(src) @@ -44,8 +43,7 @@ desc = "This refrigerator looks quite dusty, is there anything edible still inside?" req_access = list() -/obj/structure/closet/secure_closet/freezer/kitchen/maintenance/New() - ..() +/obj/structure/closet/secure_closet/freezer/kitchen/maintenance/populate_contents() for(var/i = 0, i < 5, i++) new /obj/item/reagent_containers/food/condiment/milk(src) for(var/i = 0, i < 5, i++) @@ -62,8 +60,7 @@ icon_broken = "fridgebroken" icon_off = "fridge1" -/obj/structure/closet/secure_closet/freezer/meat/New() - ..() +/obj/structure/closet/secure_closet/freezer/meat/populate_contents() for(var/i in 1 to 4) new /obj/item/reagent_containers/food/snacks/meat/monkey(src) @@ -80,8 +77,7 @@ icon_broken = "fridgebroken" icon_off = "fridge1" -/obj/structure/closet/secure_closet/freezer/fridge/New() - ..() +/obj/structure/closet/secure_closet/freezer/fridge/populate_contents() for(var/i in 1 to 5) new /obj/item/reagent_containers/food/condiment/milk(src) new /obj/item/reagent_containers/food/condiment/soymilk(src) @@ -102,8 +98,7 @@ icon_off = "fridge1" req_access = list(ACCESS_HEADS_VAULT) -/obj/structure/closet/secure_closet/freezer/money/New() - ..() +/obj/structure/closet/secure_closet/freezer/money/populate_contents() for(var/i in 1 to 3) new /obj/item/stack/spacecash/c1000(src) for(var/i in 1 to 5) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm b/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm index bb3a50c38b7..581fe469a7e 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/guncabinet.dm @@ -9,12 +9,6 @@ icon_broken = "base" icon_off = "base" -/obj/structure/closet/secure_closet/guncabinet/New() - ..() - update_icon() - - - /obj/structure/closet/secure_closet/guncabinet/toggle() ..() update_icon() diff --git a/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm b/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm index 29664c65626..00b21ce1f58 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm @@ -9,8 +9,7 @@ icon_off = "hydrosecureoff" -/obj/structure/closet/secure_closet/hydroponics/New() - ..() +/obj/structure/closet/secure_closet/hydroponics/populate_contents() switch(rand(1,2)) if(1) new /obj/item/clothing/suit/apron(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index dfca5f0fa70..6a0885cf1d1 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -9,8 +9,7 @@ icon_off = "medicaloff" req_access = list(ACCESS_MEDICAL) -/obj/structure/closet/secure_closet/medical1/New() - ..() +/obj/structure/closet/secure_closet/medical1/populate_contents() new /obj/item/storage/box/autoinjectors(src) new /obj/item/storage/box/syringes(src) new /obj/item/storage/box/pillbottles(src) @@ -37,8 +36,7 @@ icon_off = "medicaloff" req_access = list(ACCESS_SURGERY) -/obj/structure/closet/secure_closet/medical2/New() - ..() +/obj/structure/closet/secure_closet/medical2/populate_contents() new /obj/item/tank/anesthetic(src) new /obj/item/tank/anesthetic(src) new /obj/item/tank/anesthetic(src) @@ -57,8 +55,7 @@ icon_broken = "securemedbroken" icon_off = "securemedoff" -/obj/structure/closet/secure_closet/medical3/New() - ..() +/obj/structure/closet/secure_closet/medical3/populate_contents() if(prob(50)) new /obj/item/storage/backpack/medic(src) else @@ -89,8 +86,7 @@ icon_off = "medicaloff" req_access = list(ACCESS_MEDICAL) -/obj/structure/closet/secure_closet/exam/New() - ..() +/obj/structure/closet/secure_closet/exam/populate_contents() new /obj/item/storage/box/syringes(src) new /obj/item/reagent_containers/dropper(src) new /obj/item/storage/belt/medical(src) @@ -113,6 +109,7 @@ desc = "Contains various pills to calm or sedate patients." wrapper_color = COLOR_PALE_BTL_GREEN +// Why the hell is this in the closets folder? /obj/item/storage/pill_bottle/psychiatrist/New() ..() new /obj/item/reagent_containers/food/pill/haloperidol(src) @@ -137,8 +134,7 @@ icon_broken = "securemedbroken" icon_off = "securemedoff" -/obj/structure/closet/secure_closet/psychiatrist/New() - ..() +/obj/structure/closet/secure_closet/psychiatrist/populate_contents() new /obj/item/clothing/suit/straight_jacket(src) new /obj/item/reagent_containers/syringe(src) new /obj/item/reagent_containers/glass/bottle/ether(src) @@ -161,8 +157,7 @@ icon_broken = "cmosecurebroken" icon_off = "cmosecureoff" -/obj/structure/closet/secure_closet/CMO/New() - ..() +/obj/structure/closet/secure_closet/CMO/populate_contents() if(prob(50)) new /obj/item/storage/backpack/medic(src) else @@ -202,8 +197,7 @@ name = "animal control locker" req_access = list(ACCESS_SURGERY) -/obj/structure/closet/secure_closet/animal/New() - ..() +/obj/structure/closet/secure_closet/animal/populate_contents() new /obj/item/assembly/signaler(src) new /obj/item/radio/electropack(src) new /obj/item/radio/electropack(src) @@ -221,8 +215,7 @@ icon_off = "medicaloff" req_access = list(ACCESS_CHEMISTRY) -/obj/structure/closet/secure_closet/chemical/New() - ..() +/obj/structure/closet/secure_closet/chemical/populate_contents() new /obj/item/storage/box/pillbottles(src) new /obj/item/storage/box/pillbottles(src) new /obj/item/storage/box/patch_packs(src) @@ -266,8 +259,7 @@ icon_off = "medicaloff" req_access = list(ACCESS_PARAMEDIC) -/obj/structure/closet/secure_closet/paramedic/New() - ..() +/obj/structure/closet/secure_closet/paramedic/populate_contents() new /obj/item/clothing/suit/space/eva/paramedic(src) new /obj/item/clothing/head/helmet/space/eva/paramedic(src) new /obj/item/sensor_device(src) @@ -286,8 +278,7 @@ icon_off = "chemicaloff" req_access = list(ACCESS_CHEMISTRY) -/obj/structure/closet/secure_closet/reagents/New() - ..() +/obj/structure/closet/secure_closet/reagents/populate_contents() new /obj/item/reagent_containers/glass/bottle/reagent/phenol(src) new /obj/item/reagent_containers/glass/bottle/reagent/ammonia(src) new /obj/item/reagent_containers/glass/bottle/reagent/oil(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/miscjobs.dm b/code/game/objects/structures/crates_lockers/closets/secure/miscjobs.dm index 89f4a371ca3..94289f8df75 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/miscjobs.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/miscjobs.dm @@ -8,8 +8,7 @@ icon_broken = "clownsecurebroken" icon_off = "clownsecureoff" -/obj/structure/closet/secure_closet/clown/New() - ..() +/obj/structure/closet/secure_closet/clown/populate_contents() new /obj/item/storage/backpack/clown(src) new /obj/item/clothing/under/rank/clown(src) new /obj/item/clothing/shoes/clown_shoes(src) @@ -34,8 +33,7 @@ icon_broken = "mimesecurebroken" icon_off = "mimesecureoff" -/obj/structure/closet/secure_closet/mime/New() - ..() +/obj/structure/closet/secure_closet/mime/populate_contents() new /obj/item/clothing/head/beret(src) new /obj/item/clothing/mask/gas/mime(src) new /obj/item/radio/headset/headset_service(src) @@ -52,8 +50,7 @@ name = "officer's locker" req_access = list(ACCESS_SYNDICATE_COMMAND) -/obj/structure/closet/secure_closet/syndicate_officer/New() - ..() +/obj/structure/closet/secure_closet/syndicate_officer/populate_contents() new /obj/item/clothing/suit/space/hardsuit/syndi/elite(src) new /obj/item/gun/projectile/automatic/sniper_rifle/syndicate(src) new /obj/item/ammo_box/magazine/sniper_rounds/penetrator(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm index 7eab5858772..7ba28e6a4a0 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm @@ -4,8 +4,7 @@ req_access = list(ACCESS_ALL_PERSONAL_LOCKERS) var/registered_name = null -/obj/structure/closet/secure_closet/personal/New() - ..() +/obj/structure/closet/secure_closet/personal/populate_contents() if(prob(50)) new /obj/item/storage/backpack/duffel(src) if(prob(50)) @@ -18,9 +17,7 @@ /obj/structure/closet/secure_closet/personal/patient name = "patient's closet" -/obj/structure/closet/secure_closet/personal/patient/New() - ..() - contents.Cut() +/obj/structure/closet/secure_closet/personal/patient/populate_contents() new /obj/item/clothing/under/color/white( src ) new /obj/item/clothing/shoes/white( src ) @@ -48,9 +45,7 @@ else icon_state = icon_opened -/obj/structure/closet/secure_closet/personal/cabinet/New() - ..() - contents.Cut() +/obj/structure/closet/secure_closet/personal/cabinet/populate_contents() new /obj/item/storage/backpack/satchel/withwallet( src ) new /obj/item/radio/headset( src ) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm b/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm index 311bc4a38c7..125dae94f87 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm @@ -8,8 +8,7 @@ icon_broken = "secureresbroken" icon_off = "secureresoff" -/obj/structure/closet/secure_closet/scientist/New() - ..() +/obj/structure/closet/secure_closet/scientist/populate_contents() new /obj/item/storage/backpack/science(src) new /obj/item/storage/backpack/satchel_tox(src) new /obj/item/clothing/under/rank/scientist(src) @@ -33,8 +32,7 @@ icon_broken = "secureresbroken" icon_off = "secureresoff" -/obj/structure/closet/secure_closet/roboticist/New() - ..() +/obj/structure/closet/secure_closet/roboticist/populate_contents() new /obj/item/storage/backpack(src) new /obj/item/storage/backpack(src) new /obj/item/storage/backpack/satchel_norm(src) @@ -56,8 +54,7 @@ icon_broken = "rdsecurebroken" icon_off = "rdsecureoff" -/obj/structure/closet/secure_closet/RD/New() - ..() +/obj/structure/closet/secure_closet/RD/populate_contents() new /obj/item/clothing/suit/bio_suit/scientist(src) new /obj/item/clothing/head/bio_hood/scientist(src) new /obj/item/clothing/under/rank/research_director(src) @@ -88,8 +85,7 @@ icon_off = "rchemicaloff" req_access = list(ACCESS_TOX_STORAGE) -/obj/structure/closet/secure_closet/research_reagents/New() - ..() +/obj/structure/closet/secure_closet/research_reagents/populate_contents() new /obj/item/reagent_containers/glass/bottle/reagent/morphine(src) new /obj/item/reagent_containers/glass/bottle/reagent/morphine(src) new /obj/item/reagent_containers/glass/bottle/reagent/morphine(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index ac5be74f96d..1a6cf561f78 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -8,8 +8,7 @@ icon_broken = "capsecurebroken" icon_off = "capsecureoff" -/obj/structure/closet/secure_closet/captains/New() - ..() +/obj/structure/closet/secure_closet/captains/populate_contents() if(prob(50)) new /obj/item/storage/backpack/captain(src) else @@ -46,8 +45,7 @@ icon_broken = "hopsecurebroken" icon_off = "hopsecureoff" -/obj/structure/closet/secure_closet/hop/New() - ..() +/obj/structure/closet/secure_closet/hop/populate_contents() new /obj/item/clothing/glasses/hud/skills/sunglasses(src) new /obj/item/clothing/head/hopcap(src) new /obj/item/cartridge/hop(src) @@ -72,8 +70,7 @@ icon_broken = "hopsecurebroken" icon_off = "hopsecureoff" -/obj/structure/closet/secure_closet/hop2/New() - ..() +/obj/structure/closet/secure_closet/hop2/populate_contents() new /obj/item/clothing/under/rank/head_of_personnel(src) new /obj/item/clothing/suit/mantle/armor/head_of_personnel(src) new /obj/item/clothing/under/dress/dress_hop(src) @@ -99,8 +96,7 @@ icon_broken = "hossecurebroken" icon_off = "hossecureoff" -/obj/structure/closet/secure_closet/hos/New() - ..() +/obj/structure/closet/secure_closet/hos/populate_contents() if(prob(50)) new /obj/item/storage/backpack/security(src) else @@ -140,8 +136,7 @@ icon_broken = "wardensecurebroken" icon_off = "wardensecureoff" -/obj/structure/closet/secure_closet/warden/New() - ..() +/obj/structure/closet/secure_closet/warden/populate_contents() if(prob(50)) new /obj/item/storage/backpack/security(src) else @@ -178,8 +173,7 @@ icon_broken = "secbroken" icon_off = "secoff" -/obj/structure/closet/secure_closet/security/New() - ..() +/obj/structure/closet/secure_closet/security/populate_contents() if(prob(50)) new /obj/item/storage/backpack/security(src) else @@ -209,8 +203,7 @@ icon_broken = "securemedbroken" icon_off = "securemedoff" -/obj/structure/closet/secure_closet/brigdoc/New() - ..() +/obj/structure/closet/secure_closet/brigdoc/populate_contents() if(prob(50)) new /obj/item/storage/backpack/medic(src) else @@ -239,8 +232,7 @@ icon_broken = "bssecurebroken" icon_off = "bssecureoff" -/obj/structure/closet/secure_closet/blueshield/New() - ..() +/obj/structure/closet/secure_closet/blueshield/populate_contents() new /obj/item/storage/briefcase(src) new /obj/item/storage/firstaid/adv(src) new /obj/item/pinpointer/crew(src) @@ -274,8 +266,7 @@ icon_broken = "ntsecurebroken" icon_off = "ntsecureoff" -/obj/structure/closet/secure_closet/ntrep/New() - ..() +/obj/structure/closet/secure_closet/ntrep/populate_contents() new /obj/item/book/manual/faxes(src) new /obj/item/storage/briefcase(src) new /obj/item/paicard(src) @@ -295,32 +286,28 @@ /obj/structure/closet/secure_closet/security/cargo -/obj/structure/closet/secure_closet/security/cargo/New() - ..() +/obj/structure/closet/secure_closet/security/cargo/populate_contents() new /obj/item/clothing/accessory/armband/cargo(src) new /obj/item/encryptionkey/headset_cargo(src) /obj/structure/closet/secure_closet/security/engine -/obj/structure/closet/secure_closet/security/engine/New() - ..() +/obj/structure/closet/secure_closet/security/engine/populate_contents() new /obj/item/clothing/accessory/armband/engine(src) new /obj/item/encryptionkey/headset_eng(src) /obj/structure/closet/secure_closet/security/science -/obj/structure/closet/secure_closet/security/science/New() - ..() +/obj/structure/closet/secure_closet/security/science/populate_contents() new /obj/item/clothing/accessory/armband/science(src) new /obj/item/encryptionkey/headset_sci(src) /obj/structure/closet/secure_closet/security/med -/obj/structure/closet/secure_closet/security/med/New() - ..() +/obj/structure/closet/secure_closet/security/med/populate_contents() new /obj/item/clothing/accessory/armband/medgreen(src) new /obj/item/encryptionkey/headset_med(src) @@ -337,8 +324,7 @@ resistance_flags = FLAMMABLE max_integrity = 70 -/obj/structure/closet/secure_closet/detective/New() - ..() +/obj/structure/closet/secure_closet/detective/populate_contents() new /obj/item/clothing/under/det(src) new /obj/item/clothing/suit/storage/det_suit(src) new /obj/item/clothing/suit/storage/det_suit/forensics/blue(src) @@ -379,8 +365,7 @@ name = "lethal injections locker" req_access = list(ACCESS_SECURITY) -/obj/structure/closet/secure_closet/injection/New() - ..() +/obj/structure/closet/secure_closet/injection/populate_contents() new /obj/item/reagent_containers/syringe/lethal(src) new /obj/item/reagent_containers/syringe/lethal(src) @@ -391,8 +376,7 @@ anchored = 1 var/id = null -/obj/structure/closet/secure_closet/brig/New() - ..() +/obj/structure/closet/secure_closet/brig/populate_contents() new /obj/item/clothing/under/color/orange/prison(src) new /obj/item/clothing/shoes/orange(src) new /obj/item/card/id/prisoner/random(src) @@ -403,8 +387,7 @@ name = "courtroom locker" req_access = list(ACCESS_COURT) -/obj/structure/closet/secure_closet/courtroom/New() - ..() +/obj/structure/closet/secure_closet/courtroom/populate_contents() new /obj/item/clothing/shoes/brown(src) new /obj/item/paper/Court (src) new /obj/item/paper/Court (src) @@ -451,8 +434,7 @@ icon_broken = "magistratesecurebroken" icon_off = "magistratesecureoff" -/obj/structure/closet/secure_closet/magistrate/New() - ..() +/obj/structure/closet/secure_closet/magistrate/populate_contents() new /obj/item/book/manual/faxes(src) new /obj/item/storage/secure/briefcase(src) new /obj/item/flash(src) diff --git a/code/game/objects/structures/crates_lockers/closets/statue.dm b/code/game/objects/structures/crates_lockers/closets/statue.dm index e285c6a0ae9..b0a8101e4a7 100644 --- a/code/game/objects/structures/crates_lockers/closets/statue.dm +++ b/code/game/objects/structures/crates_lockers/closets/statue.dm @@ -12,8 +12,8 @@ var/intialOxy = 0 var/timer = 240 //eventually the person will be freed -/obj/structure/closet/statue/New(loc, var/mob/living/L) - +/obj/structure/closet/statue/Initialize(mapload, var/mob/living/L) + . = ..() if(ishuman(L) || iscorgi(L)) if(L.buckled) L.buckled = 0 @@ -42,7 +42,6 @@ return START_PROCESSING(SSobj, src) - ..() /obj/structure/closet/statue/process() timer-- diff --git a/code/game/objects/structures/crates_lockers/closets/syndicate.dm b/code/game/objects/structures/crates_lockers/closets/syndicate.dm index 8f812397ef9..ccc27c18589 100644 --- a/code/game/objects/structures/crates_lockers/closets/syndicate.dm +++ b/code/game/objects/structures/crates_lockers/closets/syndicate.dm @@ -9,8 +9,7 @@ /obj/structure/closet/syndicate/personal desc = "It's a storage unit for operative gear." -/obj/structure/closet/syndicate/personal/New() - ..() +/obj/structure/closet/syndicate/personal/populate_contents() new /obj/item/clothing/under/syndicate(src) new /obj/item/clothing/shoes/black(src) new /obj/item/ammo_box/magazine/m10mm(src) @@ -21,8 +20,7 @@ /obj/structure/closet/syndicate/suits desc = "It's a storage unit for operative space gear." -/obj/structure/closet/syndicate/suits/New() - ..() +/obj/structure/closet/syndicate/suits/populate_contents() new /obj/item/clothing/mask/gas/syndicate(src) new /obj/item/clothing/suit/space/hardsuit/syndi(src) new /obj/item/tank/jetpack/oxygen/harness(src) @@ -30,8 +28,7 @@ /obj/structure/closet/syndicate/nuclear desc = "It's a storage unit for a Syndicate boarding party." -/obj/structure/closet/syndicate/nuclear/New() - ..() +/obj/structure/closet/syndicate/nuclear/populate_contents() new /obj/item/ammo_box/magazine/m10mm(src) new /obj/item/ammo_box/magazine/m10mm(src) new /obj/item/ammo_box/magazine/m10mm(src) @@ -50,8 +47,7 @@ /obj/structure/closet/syndicate/sst desc = "It's a storage unit for an elite syndicate strike team's gear." -/obj/structure/closet/syndicate/sst/New() - ..() +/obj/structure/closet/syndicate/sst/populate_contents() new /obj/item/ammo_box/magazine/mm556x45(src) new /obj/item/gun/projectile/automatic/l6_saw(src) new /obj/item/tank/jetpack/oxygen/harness(src) @@ -64,8 +60,7 @@ /obj/structure/closet/syndicate/resources desc = "An old, dusty locker." -/obj/structure/closet/syndicate/resources/New() - ..() +/obj/structure/closet/syndicate/resources/populate_contents() var/common_min = 30 //Minimum amount of minerals in the stack for common minerals var/common_max = 50 //Maximum amount of HONK in the stack for HONK common minerals var/rare_min = 5 //Minimum HONK of HONK in the stack HONK HONK rare minerals @@ -126,8 +121,7 @@ /obj/structure/closet/syndicate/resources/everything desc = "It's an emergency storage closet for repairs." -/obj/structure/closet/syndicate/resources/everything/New() - ..() +/obj/structure/closet/syndicate/resources/everything/populate_contents() var/list/resources = list( /obj/item/stack/sheet/metal, /obj/item/stack/sheet/glass, diff --git a/code/game/objects/structures/crates_lockers/closets/utility_closets.dm b/code/game/objects/structures/crates_lockers/closets/utility_closets.dm index 82fc0f04d1c..75dde9a7e9f 100644 --- a/code/game/objects/structures/crates_lockers/closets/utility_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/utility_closets.dm @@ -22,9 +22,7 @@ /obj/structure/closet/emcloset/anchored anchored = TRUE -/obj/structure/closet/emcloset/New() - ..() - +/obj/structure/closet/emcloset/populate_contents() switch(pickweight(list("small" = 55, "aid" = 25, "tank" = 10, "both" = 10, "nothing" = 0, "delete" = 0))) if("small") new /obj/item/tank/emergency_oxygen(src) @@ -58,8 +56,7 @@ new /obj/structure/closet/firecloset(src.loc) qdel(src)*/ -/obj/structure/closet/emcloset/legacy/New() - . = ..() +/obj/structure/closet/emcloset/legacy/populate_contents() new /obj/item/tank/oxygen(src) new /obj/item/clothing/mask/gas(src) @@ -73,19 +70,14 @@ icon_closed = "firecloset" icon_opened = "fireclosetopen" -/obj/structure/closet/firecloset/New() - ..() - +/obj/structure/closet/firecloset/populate_contents() new /obj/item/clothing/suit/fire/firefighter(src) new /obj/item/clothing/mask/gas(src) new /obj/item/tank/oxygen/red(src) new /obj/item/extinguisher(src) new /obj/item/clothing/head/hardhat/red(src) -/obj/structure/closet/firecloset/full/New() - ..() - contents.Cut() - +/obj/structure/closet/firecloset/full/populate_contents() new /obj/item/clothing/suit/fire/firefighter(src) new /obj/item/clothing/mask/gas(src) new /obj/item/flashlight(src) @@ -104,8 +96,7 @@ icon_closed = "toolcloset" icon_opened = "toolclosetopen" -/obj/structure/closet/toolcloset/New() - ..() +/obj/structure/closet/toolcloset/populate_contents() if(prob(40)) new /obj/item/clothing/suit/storage/hazardvest(src) if(prob(70)) @@ -148,8 +139,7 @@ icon_opened = "toolclosetopen" icon_closed = "radsuitcloset" -/obj/structure/closet/radiation/New() - ..() +/obj/structure/closet/radiation/populate_contents() new /obj/item/clothing/suit/radiation(src) new /obj/item/clothing/head/radiation(src) @@ -163,8 +153,7 @@ icon_closed = "bombsuit" icon_opened = "bombsuitopen" -/obj/structure/closet/bombcloset/New() - ..() +/obj/structure/closet/bombcloset/populate_contents() new /obj/item/clothing/suit/bomb_suit( src ) new /obj/item/clothing/under/color/black( src ) new /obj/item/clothing/shoes/black( src ) @@ -178,8 +167,7 @@ icon_closed = "bombsuitsec" icon_opened = "bombsuitsecopen" -/obj/structure/closet/bombclosetsecurity/New() - ..() +/obj/structure/closet/bombclosetsecurity/populate_contents() new /obj/item/clothing/suit/bomb_suit/security( src ) new /obj/item/clothing/under/rank/security( src ) new /obj/item/clothing/shoes/brown( src ) @@ -198,8 +186,7 @@ density = 0 wall_mounted = 1 -/obj/structure/closet/hydrant/New() - ..() +/obj/structure/closet/hydrant/populate_contents() new /obj/item/clothing/suit/fire/firefighter(src) new /obj/item/clothing/mask/gas(src) new /obj/item/flashlight(src) diff --git a/code/game/objects/structures/crates_lockers/closets/wardrobe.dm b/code/game/objects/structures/crates_lockers/closets/wardrobe.dm index 72326757687..d9096b01ba5 100644 --- a/code/game/objects/structures/crates_lockers/closets/wardrobe.dm +++ b/code/game/objects/structures/crates_lockers/closets/wardrobe.dm @@ -7,8 +7,7 @@ /obj/structure/closet/wardrobe/generic // Identical to the base wardrobe, aside from containing some stuff. -/obj/structure/closet/wardrobe/generic/New() - ..() +/obj/structure/closet/wardrobe/generic/populate_contents() new /obj/item/clothing/under/color/blue(src) new /obj/item/clothing/under/color/blue(src) new /obj/item/clothing/under/color/blue(src) @@ -25,8 +24,7 @@ icon_state = "red" icon_closed = "red" -/obj/structure/closet/wardrobe/red/New() - ..() +/obj/structure/closet/wardrobe/populate_contents() new /obj/item/storage/backpack/duffel/security(src) new /obj/item/storage/backpack/duffel/security(src) new /obj/item/clothing/mask/bandana/red(src) @@ -62,8 +60,7 @@ icon_state = "red" icon_closed = "red" -/obj/structure/closet/redcorp/New() - ..() +/obj/structure/closet/redcorp/populate_contents() new /obj/item/clothing/under/rank/security/corp(src) new /obj/item/clothing/under/rank/security/corp(src) new /obj/item/clothing/under/rank/security/corp(src) @@ -76,8 +73,7 @@ icon_state = "pink" icon_closed = "pink" -/obj/structure/closet/wardrobe/pink/New() - ..() +/obj/structure/closet/wardrobe/pink/populate_contents() new /obj/item/clothing/under/color/pink(src) new /obj/item/clothing/under/color/pink(src) new /obj/item/clothing/under/color/pink(src) @@ -90,8 +86,7 @@ icon_state = "black" icon_closed = "black" -/obj/structure/closet/wardrobe/black/New() - ..() +/obj/structure/closet/wardrobe/black/populate_contents() new /obj/item/clothing/under/color/black(src) new /obj/item/clothing/under/color/black(src) new /obj/item/clothing/under/color/black(src) @@ -112,8 +107,7 @@ icon_state = "green" icon_closed = "green" -/obj/structure/closet/wardrobe/green/New() - ..() +/obj/structure/closet/wardrobe/green/populate_contents() new /obj/item/clothing/under/color/green(src) new /obj/item/clothing/under/color/green(src) new /obj/item/clothing/under/color/green(src) @@ -126,8 +120,7 @@ icon_state = "green" icon_closed = "green" -/obj/structure/closet/wardrobe/xenos/New() - ..() +/obj/structure/closet/wardrobe/xenos/populate_contents() new /obj/item/clothing/suit/unathi/mantle(src) new /obj/item/clothing/suit/unathi/robe(src) new /obj/item/clothing/shoes/sandal(src) @@ -144,8 +137,7 @@ icon_state = "orange" icon_closed = "orange" -/obj/structure/closet/wardrobe/orange/New() - ..() +/obj/structure/closet/wardrobe/orange/populate_contents() new /obj/item/clothing/under/color/orange/prison(src) new /obj/item/clothing/under/color/orange/prison(src) new /obj/item/clothing/under/color/orange/prison(src) @@ -159,8 +151,7 @@ icon_state = "yellow" icon_closed = "yellow" -/obj/structure/closet/wardrobe/yellow/New() - ..() +/obj/structure/closet/wardrobe/yellow/populate_contents() new /obj/item/clothing/under/color/yellow(src) new /obj/item/clothing/under/color/yellow(src) new /obj/item/clothing/under/color/yellow(src) @@ -174,8 +165,7 @@ icon_state = "atmostech" icon_closed = "atmostech" -/obj/structure/closet/wardrobe/atmospherics_yellow/New() - ..() +/obj/structure/closet/wardrobe/atmospherics_yellow/populate_contents() new /obj/item/clothing/under/rank/atmospheric_technician(src) new /obj/item/clothing/under/rank/atmospheric_technician(src) new /obj/item/clothing/under/rank/atmospheric_technician(src) @@ -199,8 +189,7 @@ icon_state = "engineer" icon_closed = "engineer" -/obj/structure/closet/wardrobe/engineering_yellow/New() - ..() +/obj/structure/closet/wardrobe/engineering_yellow/populate_contents() new /obj/item/clothing/under/rank/engineer(src) new /obj/item/clothing/under/rank/engineer(src) new /obj/item/clothing/under/rank/engineer(src) @@ -223,8 +212,7 @@ icon_state = "white" icon_closed = "white" -/obj/structure/closet/wardrobe/white/New() - ..() +/obj/structure/closet/wardrobe/white/populate_contents() new /obj/item/clothing/under/color/white(src) new /obj/item/clothing/under/color/white(src) new /obj/item/clothing/under/color/white(src) @@ -237,8 +225,7 @@ icon_state = "white" icon_closed = "white" -/obj/structure/closet/wardrobe/medical_white/New() - ..() +/obj/structure/closet/wardrobe/medical_white/populate_contents() new /obj/item/clothing/under/rank/nursesuit (src) new /obj/item/clothing/head/nursehat (src) new /obj/item/clothing/under/rank/nurse(src) @@ -267,8 +254,7 @@ icon_state = "white" icon_closed = "white" -/obj/structure/closet/wardrobe/pjs/New() - ..() +/obj/structure/closet/wardrobe/pjs/populate_contents() new /obj/item/clothing/under/pj/red(src) new /obj/item/clothing/under/pj/red(src) new /obj/item/clothing/under/pj/blue(src) @@ -284,8 +270,7 @@ icon_state = "white" icon_closed = "white" -/obj/structure/closet/wardrobe/toxins_white/New() - ..() +/obj/structure/closet/wardrobe/toxins_white/populate_contents() new /obj/item/clothing/under/rank/scientist(src) new /obj/item/clothing/under/rank/scientist(src) new /obj/item/clothing/under/rank/scientist(src) @@ -308,8 +293,7 @@ icon_state = "black" icon_closed = "black" -/obj/structure/closet/wardrobe/robotics_black/New() - ..() +/obj/structure/closet/wardrobe/robotics_black/populate_contents() new /obj/item/clothing/under/rank/roboticist(src) new /obj/item/clothing/under/rank/roboticist(src) new /obj/item/clothing/under/rank/roboticist/skirt(src) @@ -327,8 +311,7 @@ icon_state = "white" icon_closed = "white" -/obj/structure/closet/wardrobe/chemistry_white/New() - ..() +/obj/structure/closet/wardrobe/chemistry_white/populate_contents() new /obj/item/clothing/under/rank/chemist(src) new /obj/item/clothing/under/rank/chemist(src) new /obj/item/clothing/under/rank/chemist/skirt(src) @@ -352,8 +335,7 @@ icon_state = "white" icon_closed = "white" -/obj/structure/closet/wardrobe/genetics_white/New() - ..() +/obj/structure/closet/wardrobe/genetics_white/populate_contents() new /obj/item/clothing/under/rank/geneticist(src) new /obj/item/clothing/under/rank/geneticist(src) new /obj/item/clothing/shoes/white(src) @@ -371,8 +353,7 @@ icon_state = "white" icon_closed = "white" -/obj/structure/closet/wardrobe/virology_white/New() - ..() +/obj/structure/closet/wardrobe/virology_white/populate_contents() new /obj/item/clothing/under/rank/virologist(src) new /obj/item/clothing/under/rank/virologist(src) new /obj/item/clothing/under/rank/virologist/skirt(src) @@ -394,8 +375,7 @@ icon_state = "white" icon_closed = "white" -/obj/structure/closet/wardrobe/medic_white/New() - ..() +/obj/structure/closet/wardrobe/medic_white/populate_contents() new /obj/item/clothing/under/rank/medical(src) new /obj/item/clothing/under/rank/medical(src) new /obj/item/clothing/under/rank/medical/skirt(src) @@ -422,8 +402,7 @@ icon_state = "grey" icon_closed = "grey" -/obj/structure/closet/wardrobe/grey/New() - ..() +/obj/structure/closet/wardrobe/grey/populate_contents() new /obj/item/clothing/under/color/grey(src) new /obj/item/clothing/under/color/grey(src) new /obj/item/clothing/under/color/grey(src) @@ -446,8 +425,7 @@ icon_state = "mixed" icon_closed = "mixed" -/obj/structure/closet/wardrobe/mixed/New() - ..() +/obj/structure/closet/wardrobe/mixed/populate_contents() new /obj/item/clothing/under/color/blue(src) new /obj/item/clothing/under/color/yellow(src) new /obj/item/clothing/under/color/green(src) @@ -468,8 +446,7 @@ icon_state = "black" icon_closed = "black" -/obj/structure/closet/wardrobe/coroner/New() - ..() +/obj/structure/closet/wardrobe/coroner/populate_contents() if(prob(50)) new /obj/item/storage/backpack/medic(src) else diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index f9403f630b2..353262d123d 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -12,10 +12,6 @@ // A list of beacon names that the crate will announce the arrival of, when delivered. var/list/announce_beacons = list() -/obj/structure/closet/crate/New() - ..() - update_icon() - /obj/structure/closet/crate/update_icon() ..() overlays.Cut() @@ -335,8 +331,7 @@ icon_opened = "crateopen" icon_closed = "crate" -/obj/structure/closet/crate/rcd/New() - ..() +/obj/structure/closet/crate/rcd/populate_contents() new /obj/item/rcd_ammo(src) new /obj/item/rcd_ammo(src) new /obj/item/rcd_ammo(src) @@ -390,8 +385,7 @@ icon_opened = "radiationopen" icon_closed = "radiation" -/obj/structure/closet/crate/radiation/New() - ..() +/obj/structure/closet/crate/radiation/populate_contents() new /obj/item/clothing/suit/radiation(src) new /obj/item/clothing/head/radiation(src) new /obj/item/clothing/suit/radiation(src) @@ -509,8 +503,7 @@ //This exists so the prespawned hydro crates spawn with their contents. // Do I need the definition above? Who knows! -/obj/structure/closet/crate/hydroponics/prespawned/New() - ..() +/obj/structure/closet/crate/hydroponics/prespawned/populate_contents() new /obj/item/reagent_containers/glass/bucket(src) new /obj/item/reagent_containers/glass/bucket(src) new /obj/item/screwdriver(src) @@ -561,14 +554,12 @@ icon_opened = "electricalcrateopen" icon_closed = "electricalcrate" -/obj/structure/closet/crate/tape/New() +/obj/structure/closet/crate/tape/populate_contents() if(prob(10)) new /obj/item/bikehorn/rubberducky(src) - ..() //crates of gear in the free golem ship -/obj/structure/closet/crate/golemgear/New() - ..() +/obj/structure/closet/crate/golemgear/populate_contents() new /obj/item/storage/backpack/industrial(src) new /obj/item/shovel(src) new /obj/item/pickaxe(src) diff --git a/code/game/objects/structures/crates_lockers/crittercrate.dm b/code/game/objects/structures/crates_lockers/crittercrate.dm index 7629fc62918..dfc0e9b50ce 100644 --- a/code/game/objects/structures/crates_lockers/crittercrate.dm +++ b/code/game/objects/structures/crates_lockers/crittercrate.dm @@ -35,10 +35,9 @@ name = "corgi crate" content_mob = /mob/living/simple_animal/pet/dog/corgi -/obj/structure/closet/critter/corgi/New() +/obj/structure/closet/critter/corgi/populate_contents() if(prob(50)) content_mob = /mob/living/simple_animal/pet/dog/corgi/Lisa - ..() /obj/structure/closet/critter/cow name = "cow crate" @@ -60,18 +59,16 @@ name = "chicken crate" content_mob = /mob/living/simple_animal/chick -/obj/structure/closet/critter/chick/New() +/obj/structure/closet/critter/chick/populate_contents() amount = rand(1, 3) - ..() /obj/structure/closet/critter/cat name = "cat crate" content_mob = /mob/living/simple_animal/pet/cat -/obj/structure/closet/critter/cat/New() +/obj/structure/closet/critter/cat/populate_contents() if(prob(50)) content_mob = /mob/living/simple_animal/pet/cat/Proc - ..() /obj/structure/closet/critter/pug name = "pug crate" diff --git a/code/game/objects/structures/crates_lockers/walllocker.dm b/code/game/objects/structures/crates_lockers/walllocker.dm index 0e4925ea18b..733b34a0414 100644 --- a/code/game/objects/structures/crates_lockers/walllocker.dm +++ b/code/game/objects/structures/crates_lockers/walllocker.dm @@ -22,8 +22,7 @@ icon_closed = "emerg" icon_opened = "emergopen" -/obj/structure/closet/walllocker/emerglocker/New() - ..() +/obj/structure/closet/walllocker/emerglocker/populate_contents() new /obj/item/tank/emergency_oxygen(src) new /obj/item/tank/emergency_oxygen(src) new /obj/item/tank/emergency_oxygen(src) diff --git a/code/modules/antagonists/traitor/contractor/items/extraction_items.dm b/code/modules/antagonists/traitor/contractor/items/extraction_items.dm index 2b493fb6cd5..637a8037881 100644 --- a/code/modules/antagonists/traitor/contractor/items/extraction_items.dm +++ b/code/modules/antagonists/traitor/contractor/items/extraction_items.dm @@ -70,8 +70,8 @@ /// Structure: [/mob/living] => [/datum/syndicate_contract] var/list/prisoners = null -/obj/structure/closet/secure_closet/contractor/New() - ..() +/obj/structure/closet/secure_closet/contractor/Initialize(mapload) + . = ..() if(!GLOB.prisoner_belongings) GLOB.prisoner_belongings = src diff --git a/code/modules/awaymissions/exile.dm b/code/modules/awaymissions/exile.dm index 5f750c16144..0b8a777237c 100644 --- a/code/modules/awaymissions/exile.dm +++ b/code/modules/awaymissions/exile.dm @@ -34,8 +34,7 @@ name = "exile implants" req_access = list(ACCESS_ARMORY) -/obj/structure/closet/secure_closet/exile/New() - ..() +/obj/structure/closet/secure_closet/exile/populate_contents() new /obj/item/implanter/exile(src) new /obj/item/implantcase/exile(src) new /obj/item/implantcase/exile(src) diff --git a/code/modules/food_and_drinks/kitchen_machinery/juicer.dm b/code/modules/food_and_drinks/kitchen_machinery/juicer.dm index 3edc6a92e35..78676c065d8 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/juicer.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/juicer.dm @@ -166,8 +166,7 @@ if(beaker.reagents.total_volume >= beaker.reagents.maximum_volume) break -/obj/structure/closet/crate/juice/New() - ..() +/obj/structure/closet/crate/juice/populate_contents() new/obj/machinery/juicer(src) new/obj/item/reagent_containers/food/snacks/grown/tomato(src) new/obj/item/reagent_containers/food/snacks/grown/carrot(src) diff --git a/code/modules/mining/abandonedcrates.dm b/code/modules/mining/abandonedcrates.dm index 044b78a04bc..19773358277 100644 --- a/code/modules/mining/abandonedcrates.dm +++ b/code/modules/mining/abandonedcrates.dm @@ -10,8 +10,8 @@ var/codelen = 4 integrity_failure = 0 //no breaking open the crate -/obj/structure/closet/crate/secure/loot/New() - ..() +/obj/structure/closet/crate/secure/loot/Initialize(mapload) + . = ..() var/list/digits = list("1", "2", "3", "4", "5", "6", "7", "8", "9", "0") code = "" for(var/i = 0, i < codelen, i++) @@ -19,6 +19,7 @@ code += dig digits -= dig //Player can enter codes with matching digits, but there are never matching digits in the answer +/obj/structure/closet/crate/secure/loot/populate_contents() var/loot = rand(1,100) //100 different crates with varying chances of spawning switch(loot) if(1 to 5) //5% chance diff --git a/code/modules/mining/lavaland/loot/ashdragon_loot.dm b/code/modules/mining/lavaland/loot/ashdragon_loot.dm index 364a5b0e18e..16d42ce05fc 100644 --- a/code/modules/mining/lavaland/loot/ashdragon_loot.dm +++ b/code/modules/mining/lavaland/loot/ashdragon_loot.dm @@ -1,8 +1,7 @@ /obj/structure/closet/crate/necropolis/dragon name = "dragon chest" -/obj/structure/closet/crate/necropolis/dragon/New() - ..() +/obj/structure/closet/crate/necropolis/dragon/populate_contents() var/loot = rand(1,4) switch(loot) if(1) @@ -19,8 +18,8 @@ /obj/structure/closet/crate/necropolis/dragon/crusher name = "firey dragon chest" -/obj/structure/closet/crate/necropolis/dragon/crusher/New() - ..() +/obj/structure/closet/crate/necropolis/dragon/crusher/populate_contents() + . = ..() new /obj/item/crusher_trophy/tail_spike(src) diff --git a/code/modules/mining/lavaland/loot/bubblegum_loot.dm b/code/modules/mining/lavaland/loot/bubblegum_loot.dm index 8ec6e38ff0d..071a203fa9d 100644 --- a/code/modules/mining/lavaland/loot/bubblegum_loot.dm +++ b/code/modules/mining/lavaland/loot/bubblegum_loot.dm @@ -1,8 +1,7 @@ /obj/structure/closet/crate/necropolis/bubblegum name = "bubblegum chest" -/obj/structure/closet/crate/necropolis/bubblegum/New() - ..() +/obj/structure/closet/crate/necropolis/bubblegum/populate_contents() new /obj/item/clothing/suit/space/hostile_environment(src) new /obj/item/clothing/head/helmet/space/hostile_environment(src) new /obj/item/gun/magic/staff/spellblade(src) @@ -10,8 +9,8 @@ /obj/structure/closet/crate/necropolis/bubblegum/crusher name = "bloody bubblegum chest" -/obj/structure/closet/crate/necropolis/bubblegum/crusher/New() - ..() +/obj/structure/closet/crate/necropolis/bubblegum/crusher/populate_contents() + . = ..() new /obj/item/crusher_trophy/demon_claws(src) // Mayhem diff --git a/code/modules/mining/lavaland/loot/colossus_loot.dm b/code/modules/mining/lavaland/loot/colossus_loot.dm index 0835104cae6..546a4078574 100644 --- a/code/modules/mining/lavaland/loot/colossus_loot.dm +++ b/code/modules/mining/lavaland/loot/colossus_loot.dm @@ -2,8 +2,7 @@ /obj/structure/closet/crate/necropolis/colossus name = "colossus chest" -/obj/structure/closet/crate/necropolis/colossus/New() - ..() +/obj/structure/closet/crate/necropolis/colossus/populate_contents() var/list/choices = subtypesof(/obj/machinery/anomalous_crystal) var/random_crystal = pick(choices) new random_crystal(src) @@ -12,8 +11,8 @@ /obj/structure/closet/crate/necropolis/colossus/crusher name = "angelic colossus chest" -/obj/structure/closet/crate/necropolis/colossus/crusher/New() - ..() +/obj/structure/closet/crate/necropolis/colossus/crusher/populate_contents() + . = ..() new /obj/item/crusher_trophy/blaster_tubes(src) ///Anomolous Crystal/// @@ -361,8 +360,8 @@ holder_animal.gib() return -/obj/structure/closet/stasis/New() - ..() +/obj/structure/closet/stasis/Initialize(mapload) + . = ..() if(isanimal(loc)) holder_animal = loc START_PROCESSING(SSobj, src) diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index 8da61be44d3..0fb1c77b27d 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -11,12 +11,7 @@ /obj/structure/closet/crate/necropolis/tendril desc = "It's watching you suspiciously." -/obj/structure/closet/crate/necropolis/tendril/New(add_loot = TRUE) - ..() - - if(!add_loot) - return - +/obj/structure/closet/crate/necropolis/tendril/populate_contents() var/loot = rand(1, 27) switch(loot) if(1) @@ -87,9 +82,7 @@ /obj/structure/closet/crate/necropolis/puzzle name = "puzzling chest" -/obj/structure/closet/crate/necropolis/puzzle/New() - ..(FALSE) - +/obj/structure/closet/crate/necropolis/puzzle/populate_contents() var/loot = rand(1,3) switch(loot) if(1) diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index fd9bbc78ff3..dbec7e34324 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -25,9 +25,7 @@ icon_state = "mixed" icon_closed = "mixed" -/obj/structure/closet/wardrobe/miner/New() - ..() - contents = list() +/obj/structure/closet/wardrobe/miner/populate_contents() new /obj/item/storage/backpack/duffel(src) new /obj/item/storage/backpack/explorer(src) new /obj/item/storage/backpack/satchel/explorer(src) @@ -51,8 +49,7 @@ icon_off = "miningsecoff" req_access = list(ACCESS_MINING) -/obj/structure/closet/secure_closet/miner/New() - ..() +/obj/structure/closet/secure_closet/miner/populate_contents() new /obj/item/stack/sheet/mineral/sandbags(src, 5) new /obj/item/storage/box/emptysandbags(src) new /obj/item/shovel(src)