diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm
index 45e7eec2673..f05a0528f8d 100644
--- a/code/datums/supplypacks.dm
+++ b/code/datums/supplypacks.dm
@@ -768,7 +768,8 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee
/obj/item/weapon/gun/energy/taser,
/obj/item/weapon/storage/box/flashbangs,
/obj/item/weapon/storage/box/flashbangs,
- /obj/item/ammo_magazine/tranq)
+ /obj/item/ammo_magazine/tranq,
+ /obj/item/weapon/storage/box/zipties)
cost = 60
containertype = /obj/structure/closet/crate/secure/weapon
containername = "Weapons crate"
diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm
index 7c91d4cf6d1..a20817aed7c 100644
--- a/code/game/objects/items/weapons/handcuffs.dm
+++ b/code/game/objects/items/weapons/handcuffs.dm
@@ -169,3 +169,4 @@ var/last_chew = 0
icon_state = "ziptie"
breakouttime = 600
cuff_sound = 'sound/weapons/cablecuff.ogg'
+ elastic = 1
diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm
index 5f1ab245f9d..0a20c8a3448 100644
--- a/code/game/objects/items/weapons/storage/boxes.dm
+++ b/code/game/objects/items/weapons/storage/boxes.dm
@@ -129,31 +129,30 @@
desc = "Contains sterile gloves."
icon_state = "latex"
- New()
- ..()
- new /obj/item/clothing/gloves/latex(src)
- new /obj/item/clothing/gloves/latex(src)
- new /obj/item/clothing/gloves/latex(src)
- new /obj/item/clothing/gloves/latex(src)
- new /obj/item/clothing/gloves/latex/nitrile(src)
- new /obj/item/clothing/gloves/latex/nitrile(src)
- new /obj/item/clothing/gloves/latex/nitrile(src)
+/obj/item/weapon/storage/box/gloves/New()
+ ..()
+ new /obj/item/clothing/gloves/latex(src)
+ new /obj/item/clothing/gloves/latex(src)
+ new /obj/item/clothing/gloves/latex(src)
+ new /obj/item/clothing/gloves/latex(src)
+ new /obj/item/clothing/gloves/latex/nitrile(src)
+ new /obj/item/clothing/gloves/latex/nitrile(src)
+ new /obj/item/clothing/gloves/latex/nitrile(src)
/obj/item/weapon/storage/box/masks
name = "box of sterile masks"
desc = "This box contains masks of sterility."
icon_state = "sterile"
- New()
- ..()
- new /obj/item/clothing/mask/surgical(src)
- new /obj/item/clothing/mask/surgical(src)
- new /obj/item/clothing/mask/surgical(src)
- new /obj/item/clothing/mask/surgical(src)
- new /obj/item/clothing/mask/surgical(src)
- new /obj/item/clothing/mask/surgical(src)
- new /obj/item/clothing/mask/surgical(src)
-
+/obj/item/weapon/storage/box/masks/New()
+ ..()
+ new /obj/item/clothing/mask/surgical(src)
+ new /obj/item/clothing/mask/surgical(src)
+ new /obj/item/clothing/mask/surgical(src)
+ new /obj/item/clothing/mask/surgical(src)
+ new /obj/item/clothing/mask/surgical(src)
+ new /obj/item/clothing/mask/surgical(src)
+ new /obj/item/clothing/mask/surgical(src)
/obj/item/weapon/storage/box/syringes
name = "box of syringes"
@@ -175,214 +174,212 @@
desc = "A box full of compressed gas cartridges."
icon_state = "syringe"
- New()
- ..()
- new /obj/item/weapon/syringe_cartridge( src )
- new /obj/item/weapon/syringe_cartridge( src )
- new /obj/item/weapon/syringe_cartridge( src )
- new /obj/item/weapon/syringe_cartridge( src )
- new /obj/item/weapon/syringe_cartridge( src )
- new /obj/item/weapon/syringe_cartridge( src )
- new /obj/item/weapon/syringe_cartridge( src )
+/obj/item/weapon/storage/box/syringes/New()
+ ..()
+ new /obj/item/weapon/syringe_cartridge( src )
+ new /obj/item/weapon/syringe_cartridge( src )
+ new /obj/item/weapon/syringe_cartridge( src )
+ new /obj/item/weapon/syringe_cartridge( src )
+ new /obj/item/weapon/syringe_cartridge( src )
+ new /obj/item/weapon/syringe_cartridge( src )
+ new /obj/item/weapon/syringe_cartridge( src )
/obj/item/weapon/storage/box/beakers
name = "box of beakers"
icon_state = "beaker"
- New()
- ..()
- new /obj/item/weapon/reagent_containers/glass/beaker( src )
- new /obj/item/weapon/reagent_containers/glass/beaker( src )
- new /obj/item/weapon/reagent_containers/glass/beaker( src )
- new /obj/item/weapon/reagent_containers/glass/beaker( src )
- new /obj/item/weapon/reagent_containers/glass/beaker( src )
- new /obj/item/weapon/reagent_containers/glass/beaker( src )
- new /obj/item/weapon/reagent_containers/glass/beaker( src )
+/obj/item/weapon/storage/box/beakers/New()
+ ..()
+ new /obj/item/weapon/reagent_containers/glass/beaker( src )
+ new /obj/item/weapon/reagent_containers/glass/beaker( src )
+ new /obj/item/weapon/reagent_containers/glass/beaker( src )
+ new /obj/item/weapon/reagent_containers/glass/beaker( src )
+ new /obj/item/weapon/reagent_containers/glass/beaker( src )
+ new /obj/item/weapon/reagent_containers/glass/beaker( src )
+ new /obj/item/weapon/reagent_containers/glass/beaker( src )
/obj/item/weapon/storage/box/injectors
name = "box of DNA injectors"
desc = "This box contains injectors it seems."
- New()
- ..()
- new /obj/item/weapon/dnainjector/h2m(src)
- new /obj/item/weapon/dnainjector/h2m(src)
- new /obj/item/weapon/dnainjector/h2m(src)
- new /obj/item/weapon/dnainjector/m2h(src)
- new /obj/item/weapon/dnainjector/m2h(src)
- new /obj/item/weapon/dnainjector/m2h(src)
-
+/obj/item/weapon/storage/box/injectors/New()
+ ..()
+ new /obj/item/weapon/dnainjector/h2m(src)
+ new /obj/item/weapon/dnainjector/h2m(src)
+ new /obj/item/weapon/dnainjector/h2m(src)
+ new /obj/item/weapon/dnainjector/m2h(src)
+ new /obj/item/weapon/dnainjector/m2h(src)
+ new /obj/item/weapon/dnainjector/m2h(src)
/obj/item/weapon/storage/box/blanks
name = "box of blank shells"
desc = "It has a picture of a gun and several warning symbols on the front."
- New()
- ..()
- new /obj/item/ammo_casing/shotgun/blank(src)
- new /obj/item/ammo_casing/shotgun/blank(src)
- new /obj/item/ammo_casing/shotgun/blank(src)
- new /obj/item/ammo_casing/shotgun/blank(src)
- new /obj/item/ammo_casing/shotgun/blank(src)
- new /obj/item/ammo_casing/shotgun/blank(src)
- new /obj/item/ammo_casing/shotgun/blank(src)
+/obj/item/weapon/storage/box/blanks/New()
+ ..()
+ new /obj/item/ammo_casing/shotgun/blank(src)
+ new /obj/item/ammo_casing/shotgun/blank(src)
+ new /obj/item/ammo_casing/shotgun/blank(src)
+ new /obj/item/ammo_casing/shotgun/blank(src)
+ new /obj/item/ammo_casing/shotgun/blank(src)
+ new /obj/item/ammo_casing/shotgun/blank(src)
+ new /obj/item/ammo_casing/shotgun/blank(src)
/obj/item/weapon/storage/box/beanbags
name = "box of beanbag shells"
desc = "It has a picture of a gun and several warning symbols on the front.
WARNING: Live ammunition. Misuse may result in serious injury or death."
- New()
- ..()
- new /obj/item/ammo_casing/shotgun/beanbag(src)
- new /obj/item/ammo_casing/shotgun/beanbag(src)
- new /obj/item/ammo_casing/shotgun/beanbag(src)
- new /obj/item/ammo_casing/shotgun/beanbag(src)
- new /obj/item/ammo_casing/shotgun/beanbag(src)
- new /obj/item/ammo_casing/shotgun/beanbag(src)
- new /obj/item/ammo_casing/shotgun/beanbag(src)
+/obj/item/weapon/storage/box/beanbags/New()
+ ..()
+ new /obj/item/ammo_casing/shotgun/beanbag(src)
+ new /obj/item/ammo_casing/shotgun/beanbag(src)
+ new /obj/item/ammo_casing/shotgun/beanbag(src)
+ new /obj/item/ammo_casing/shotgun/beanbag(src)
+ new /obj/item/ammo_casing/shotgun/beanbag(src)
+ new /obj/item/ammo_casing/shotgun/beanbag(src)
+ new /obj/item/ammo_casing/shotgun/beanbag(src)
/obj/item/weapon/storage/box/shotgunammo
name = "box of shotgun slugs"
desc = "It has a picture of a gun and several warning symbols on the front.
WARNING: Live ammunition. Misuse may result in serious injury or death."
- New()
- ..()
- new /obj/item/ammo_casing/shotgun(src)
- new /obj/item/ammo_casing/shotgun(src)
- new /obj/item/ammo_casing/shotgun(src)
- new /obj/item/ammo_casing/shotgun(src)
- new /obj/item/ammo_casing/shotgun(src)
- new /obj/item/ammo_casing/shotgun(src)
- new /obj/item/ammo_casing/shotgun(src)
+/obj/item/weapon/storage/box/shotgunammo/New()
+ ..()
+ new /obj/item/ammo_casing/shotgun(src)
+ new /obj/item/ammo_casing/shotgun(src)
+ new /obj/item/ammo_casing/shotgun(src)
+ new /obj/item/ammo_casing/shotgun(src)
+ new /obj/item/ammo_casing/shotgun(src)
+ new /obj/item/ammo_casing/shotgun(src)
+ new /obj/item/ammo_casing/shotgun(src)
/obj/item/weapon/storage/box/shotgunshells
name = "box of shotgun shells"
desc = "It has a picture of a gun and several warning symbols on the front.
WARNING: Live ammunition. Misuse may result in serious injury or death."
- New()
- ..()
- new /obj/item/ammo_casing/shotgun/pellet(src)
- new /obj/item/ammo_casing/shotgun/pellet(src)
- new /obj/item/ammo_casing/shotgun/pellet(src)
- new /obj/item/ammo_casing/shotgun/pellet(src)
- new /obj/item/ammo_casing/shotgun/pellet(src)
- new /obj/item/ammo_casing/shotgun/pellet(src)
- new /obj/item/ammo_casing/shotgun/pellet(src)
+/obj/item/weapon/storage/box/shotgunshells/New()
+ ..()
+ new /obj/item/ammo_casing/shotgun/pellet(src)
+ new /obj/item/ammo_casing/shotgun/pellet(src)
+ new /obj/item/ammo_casing/shotgun/pellet(src)
+ new /obj/item/ammo_casing/shotgun/pellet(src)
+ new /obj/item/ammo_casing/shotgun/pellet(src)
+ new /obj/item/ammo_casing/shotgun/pellet(src)
+ new /obj/item/ammo_casing/shotgun/pellet(src)
/obj/item/weapon/storage/box/flashshells
name = "box of illumination shells"
desc = "It has a picture of a gun and several warning symbols on the front.
WARNING: Live ammunition. Misuse may result in serious injury or death."
- New()
- ..()
- new /obj/item/ammo_casing/shotgun/flash(src)
- new /obj/item/ammo_casing/shotgun/flash(src)
- new /obj/item/ammo_casing/shotgun/flash(src)
- new /obj/item/ammo_casing/shotgun/flash(src)
- new /obj/item/ammo_casing/shotgun/flash(src)
- new /obj/item/ammo_casing/shotgun/flash(src)
- new /obj/item/ammo_casing/shotgun/flash(src)
+/obj/item/weapon/storage/box/flashshells/New()
+ ..()
+ new /obj/item/ammo_casing/shotgun/flash(src)
+ new /obj/item/ammo_casing/shotgun/flash(src)
+ new /obj/item/ammo_casing/shotgun/flash(src)
+ new /obj/item/ammo_casing/shotgun/flash(src)
+ new /obj/item/ammo_casing/shotgun/flash(src)
+ new /obj/item/ammo_casing/shotgun/flash(src)
+ new /obj/item/ammo_casing/shotgun/flash(src)
/obj/item/weapon/storage/box/stunshells
name = "box of stun shells"
desc = "It has a picture of a gun and several warning symbols on the front.
WARNING: Live ammunition. Misuse may result in serious injury or death."
- New()
- ..()
- new /obj/item/ammo_casing/shotgun/stunshell(src)
- new /obj/item/ammo_casing/shotgun/stunshell(src)
- new /obj/item/ammo_casing/shotgun/stunshell(src)
- new /obj/item/ammo_casing/shotgun/stunshell(src)
- new /obj/item/ammo_casing/shotgun/stunshell(src)
- new /obj/item/ammo_casing/shotgun/stunshell(src)
- new /obj/item/ammo_casing/shotgun/stunshell(src)
+/obj/item/weapon/storage/box/stunshells/New()
+ ..()
+ new /obj/item/ammo_casing/shotgun/stunshell(src)
+ new /obj/item/ammo_casing/shotgun/stunshell(src)
+ new /obj/item/ammo_casing/shotgun/stunshell(src)
+ new /obj/item/ammo_casing/shotgun/stunshell(src)
+ new /obj/item/ammo_casing/shotgun/stunshell(src)
+ new /obj/item/ammo_casing/shotgun/stunshell(src)
+ new /obj/item/ammo_casing/shotgun/stunshell(src)
/obj/item/weapon/storage/box/practiceshells
name = "box of practice shells"
desc = "It has a picture of a gun and several warning symbols on the front.
WARNING: Live ammunition. Misuse may result in serious injury or death."
- New()
- ..()
- new /obj/item/ammo_casing/shotgun/practice(src)
- new /obj/item/ammo_casing/shotgun/practice(src)
- new /obj/item/ammo_casing/shotgun/practice(src)
- new /obj/item/ammo_casing/shotgun/practice(src)
- new /obj/item/ammo_casing/shotgun/practice(src)
- new /obj/item/ammo_casing/shotgun/practice(src)
- new /obj/item/ammo_casing/shotgun/practice(src)
+/obj/item/weapon/storage/box/practiceshells/New()
+ ..()
+ new /obj/item/ammo_casing/shotgun/practice(src)
+ new /obj/item/ammo_casing/shotgun/practice(src)
+ new /obj/item/ammo_casing/shotgun/practice(src)
+ new /obj/item/ammo_casing/shotgun/practice(src)
+ new /obj/item/ammo_casing/shotgun/practice(src)
+ new /obj/item/ammo_casing/shotgun/practice(src)
+ new /obj/item/ammo_casing/shotgun/practice(src)
/obj/item/weapon/storage/box/sniperammo
name = "box of 14.5mm shells"
desc = "It has a picture of a gun and several warning symbols on the front.
WARNING: Live ammunition. Misuse may result in serious injury or death."
- New()
- ..()
- new /obj/item/ammo_casing/a145(src)
- new /obj/item/ammo_casing/a145(src)
- new /obj/item/ammo_casing/a145(src)
- new /obj/item/ammo_casing/a145(src)
- new /obj/item/ammo_casing/a145(src)
- new /obj/item/ammo_casing/a145(src)
- new /obj/item/ammo_casing/a145(src)
+/obj/item/weapon/storage/box/sniperammo/New()
+ ..()
+ new /obj/item/ammo_casing/a145(src)
+ new /obj/item/ammo_casing/a145(src)
+ new /obj/item/ammo_casing/a145(src)
+ new /obj/item/ammo_casing/a145(src)
+ new /obj/item/ammo_casing/a145(src)
+ new /obj/item/ammo_casing/a145(src)
+ new /obj/item/ammo_casing/a145(src)
/obj/item/weapon/storage/box/flashbangs
name = "box of flashbangs"
desc = "A box containing 7 antipersonnel flashbang grenades.
WARNING: These devices are extremely dangerous and can cause blindness or deafness in repeated use."
icon_state = "flashbang"
- New()
- ..()
- new /obj/item/weapon/grenade/flashbang(src)
- new /obj/item/weapon/grenade/flashbang(src)
- new /obj/item/weapon/grenade/flashbang(src)
- new /obj/item/weapon/grenade/flashbang(src)
- new /obj/item/weapon/grenade/flashbang(src)
- new /obj/item/weapon/grenade/flashbang(src)
- new /obj/item/weapon/grenade/flashbang(src)
-
+/obj/item/weapon/storage/box/flashbangs/New()
+ ..()
+ new /obj/item/weapon/grenade/flashbang(src)
+ new /obj/item/weapon/grenade/flashbang(src)
+ new /obj/item/weapon/grenade/flashbang(src)
+ new /obj/item/weapon/grenade/flashbang(src)
+ new /obj/item/weapon/grenade/flashbang(src)
+ new /obj/item/weapon/grenade/flashbang(src)
+ new /obj/item/weapon/grenade/flashbang(src)
/obj/item/weapon/storage/box/teargas
name = "box of pepperspray grenades"
desc = "A box containing 7 tear gas grenades. A gas mask is printed on the label.
WARNING: Exposure carries risk of serious injury or death. Keep away from persons with lung conditions."
icon_state = "flashbang"
- New()
- ..()
- new /obj/item/weapon/grenade/chem_grenade/teargas(src)
- new /obj/item/weapon/grenade/chem_grenade/teargas(src)
- new /obj/item/weapon/grenade/chem_grenade/teargas(src)
- new /obj/item/weapon/grenade/chem_grenade/teargas(src)
- new /obj/item/weapon/grenade/chem_grenade/teargas(src)
- new /obj/item/weapon/grenade/chem_grenade/teargas(src)
+/obj/item/weapon/storage/box/teargas/New()
+ ..()
+ new /obj/item/weapon/grenade/chem_grenade/teargas(src)
+ new /obj/item/weapon/grenade/chem_grenade/teargas(src)
+ new /obj/item/weapon/grenade/chem_grenade/teargas(src)
+ new /obj/item/weapon/grenade/chem_grenade/teargas(src)
+ new /obj/item/weapon/grenade/chem_grenade/teargas(src)
+ new /obj/item/weapon/grenade/chem_grenade/teargas(src)
/obj/item/weapon/storage/box/smokebombs
name = "box of smoke grenades"
desc = "A box full of smoke grenades, used by special law enforcement teams and military organisations. Provides cover, confusion, and distraction."
icon_state = "flashbang"
- New()
- ..()
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
+/obj/item/weapon/storage/box/smokebombs/New()
+ ..()
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
/obj/item/weapon/storage/box/emps
name = "box of emp grenades"
desc = "A box containing 5 military grade EMP grenades.
WARNING: Do not use near unshielded electronics or biomechanical augmentations, death or permanent paralysis may occur."
icon_state = "flashbang"
- New()
- ..()
- new /obj/item/weapon/grenade/empgrenade(src)
- new /obj/item/weapon/grenade/empgrenade(src)
- new /obj/item/weapon/grenade/empgrenade(src)
- new /obj/item/weapon/grenade/empgrenade(src)
- new /obj/item/weapon/grenade/empgrenade(src)
+/obj/item/weapon/storage/box/emps/New()
+ ..()
+ new /obj/item/weapon/grenade/empgrenade(src)
+ new /obj/item/weapon/grenade/empgrenade(src)
+ new /obj/item/weapon/grenade/empgrenade(src)
+ new /obj/item/weapon/grenade/empgrenade(src)
+ new /obj/item/weapon/grenade/empgrenade(src)
/obj/item/weapon/storage/box/smokes
name = "box of smoke bombs"
@@ -390,12 +387,12 @@
icon_state = "flashbang"
/obj/item/weapon/storage/box/smokes/New()
- ..()
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
- new /obj/item/weapon/grenade/smokebomb(src)
+ ..()
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
+ new /obj/item/weapon/grenade/smokebomb(src)
/obj/item/weapon/storage/box/anti_photons
name = "box of anti-photon grenades"
@@ -403,85 +400,83 @@
icon_state = "flashbang"
/obj/item/weapon/storage/box/anti_photons/New()
- ..()
- new /obj/item/weapon/grenade/anti_photon(src)
- new /obj/item/weapon/grenade/anti_photon(src)
- new /obj/item/weapon/grenade/anti_photon(src)
- new /obj/item/weapon/grenade/anti_photon(src)
- new /obj/item/weapon/grenade/anti_photon(src)
+ ..()
+ new /obj/item/weapon/grenade/anti_photon(src)
+ new /obj/item/weapon/grenade/anti_photon(src)
+ new /obj/item/weapon/grenade/anti_photon(src)
+ new /obj/item/weapon/grenade/anti_photon(src)
+ new /obj/item/weapon/grenade/anti_photon(src)
/obj/item/weapon/storage/box/frags
name = "box of frag grenades"
desc = "A box containing 5 military grade fragmentation grenades.
WARNING: Live explosives. Misuse may result in serious injury or death."
icon_state = "flashbang"
- New()
- ..()
- new /obj/item/weapon/grenade/frag(src)
- new /obj/item/weapon/grenade/frag(src)
- new /obj/item/weapon/grenade/frag(src)
- new /obj/item/weapon/grenade/frag(src)
- new /obj/item/weapon/grenade/frag(src)
+/obj/item/weapon/storage/box/frags/New()
+ ..()
+ new /obj/item/weapon/grenade/frag(src)
+ new /obj/item/weapon/grenade/frag(src)
+ new /obj/item/weapon/grenade/frag(src)
+ new /obj/item/weapon/grenade/frag(src)
+ new /obj/item/weapon/grenade/frag(src)
/obj/item/weapon/storage/box/trackimp
name = "boxed tracking implant kit"
desc = "Box full of scum-bag tracking utensils."
icon_state = "implant"
- New()
- ..()
- new /obj/item/weapon/implantcase/tracking(src)
- new /obj/item/weapon/implantcase/tracking(src)
- new /obj/item/weapon/implantcase/tracking(src)
- new /obj/item/weapon/implantcase/tracking(src)
- new /obj/item/weapon/implanter(src)
- new /obj/item/weapon/implantpad(src)
- new /obj/item/weapon/locator(src)
+/obj/item/weapon/storage/box/trackimp/New()
+ ..()
+ new /obj/item/weapon/implantcase/tracking(src)
+ new /obj/item/weapon/implantcase/tracking(src)
+ new /obj/item/weapon/implantcase/tracking(src)
+ new /obj/item/weapon/implantcase/tracking(src)
+ new /obj/item/weapon/implanter(src)
+ new /obj/item/weapon/implantpad(src)
+ new /obj/item/weapon/locator(src)
/obj/item/weapon/storage/box/chemimp
name = "boxed chemical implant kit"
desc = "Box of stuff used to implant chemicals."
icon_state = "implant"
- New()
- ..()
- new /obj/item/weapon/implantcase/chem(src)
- new /obj/item/weapon/implantcase/chem(src)
- new /obj/item/weapon/implantcase/chem(src)
- new /obj/item/weapon/implantcase/chem(src)
- new /obj/item/weapon/implantcase/chem(src)
- new /obj/item/weapon/implanter(src)
- new /obj/item/weapon/implantpad(src)
-
-
+/obj/item/weapon/storage/box/chemimp/New()
+ ..()
+ new /obj/item/weapon/implantcase/chem(src)
+ new /obj/item/weapon/implantcase/chem(src)
+ new /obj/item/weapon/implantcase/chem(src)
+ new /obj/item/weapon/implantcase/chem(src)
+ new /obj/item/weapon/implantcase/chem(src)
+ new /obj/item/weapon/implanter(src)
+ new /obj/item/weapon/implantpad(src)
/obj/item/weapon/storage/box/rxglasses
name = "box of prescription glasses"
desc = "This box contains nerd glasses."
icon_state = "glasses"
- New()
- ..()
- new /obj/item/clothing/glasses/regular(src)
- new /obj/item/clothing/glasses/regular(src)
- new /obj/item/clothing/glasses/regular(src)
- new /obj/item/clothing/glasses/regular(src)
- new /obj/item/clothing/glasses/regular(src)
- new /obj/item/clothing/glasses/regular(src)
- new /obj/item/clothing/glasses/regular(src)
+/obj/item/weapon/storage/box/rxglasses/New()
+ ..()
+ new /obj/item/clothing/glasses/regular(src)
+ new /obj/item/clothing/glasses/regular(src)
+ new /obj/item/clothing/glasses/regular(src)
+ new /obj/item/clothing/glasses/regular(src)
+ new /obj/item/clothing/glasses/regular(src)
+ new /obj/item/clothing/glasses/regular(src)
+ new /obj/item/clothing/glasses/regular(src)
/obj/item/weapon/storage/box/drinkingglasses
name = "box of drinking glasses"
desc = "It has a picture of drinking glasses on it."
- New()
- ..()
- new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
- new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
- new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
- new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
- new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
- new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
+/obj/item/weapon/storage/box/drinkingglasses/New()
+ ..()
+ new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
+ new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
/obj/item/weapon/storage/box/cdeathalarm_kit
name = "death alarm kit"
@@ -489,72 +484,70 @@
icon_state = "implant"
item_state = "syringe_kit"
- New()
- ..()
- new /obj/item/weapon/implanter(src)
- new /obj/item/weapon/implantcase/death_alarm(src)
- new /obj/item/weapon/implantcase/death_alarm(src)
- new /obj/item/weapon/implantcase/death_alarm(src)
- new /obj/item/weapon/implantcase/death_alarm(src)
- new /obj/item/weapon/implantcase/death_alarm(src)
- new /obj/item/weapon/implantcase/death_alarm(src)
+/obj/item/weapon/storage/box/cdeathalarm_kit/New()
+ ..()
+ new /obj/item/weapon/implanter(src)
+ new /obj/item/weapon/implantcase/death_alarm(src)
+ new /obj/item/weapon/implantcase/death_alarm(src)
+ new /obj/item/weapon/implantcase/death_alarm(src)
+ new /obj/item/weapon/implantcase/death_alarm(src)
+ new /obj/item/weapon/implantcase/death_alarm(src)
+ new /obj/item/weapon/implantcase/death_alarm(src)
/obj/item/weapon/storage/box/condimentbottles
name = "box of condiment bottles"
desc = "It has a large ketchup smear on it."
- New()
- ..()
- new /obj/item/weapon/reagent_containers/food/condiment(src)
- new /obj/item/weapon/reagent_containers/food/condiment(src)
- new /obj/item/weapon/reagent_containers/food/condiment(src)
- new /obj/item/weapon/reagent_containers/food/condiment(src)
- new /obj/item/weapon/reagent_containers/food/condiment(src)
- new /obj/item/weapon/reagent_containers/food/condiment(src)
-
-
+/obj/item/weapon/storage/box/condimentbottles/New()
+ ..()
+ new /obj/item/weapon/reagent_containers/food/condiment(src)
+ new /obj/item/weapon/reagent_containers/food/condiment(src)
+ new /obj/item/weapon/reagent_containers/food/condiment(src)
+ new /obj/item/weapon/reagent_containers/food/condiment(src)
+ new /obj/item/weapon/reagent_containers/food/condiment(src)
+ new /obj/item/weapon/reagent_containers/food/condiment(src)
/obj/item/weapon/storage/box/cups
name = "box of paper cups"
desc = "It has pictures of paper cups on the front."
- New()
- ..()
- new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
- new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
- new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
- new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
- new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
- new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
- new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
-
+
+/obj/item/weapon/storage/box/cups/New()
+ ..()
+ new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
+ new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
+ new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
+ new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
+ new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
+ new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
+ new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
/obj/item/weapon/storage/box/donkpockets
name = "box of donk-pockets"
desc = "Instructions: Heat in microwave. Product will cool if not eaten within seven minutes."
icon_state = "donk_kit"
- New()
- ..()
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
+/obj/item/weapon/storage/box/donkpockets/New()
+ ..()
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
/obj/item/weapon/storage/box/sinpockets
name = "box of sin-pockets"
desc = "Instructions: Crush bottom of package to initiate chemical heating. Wait for 20 seconds before consumption. Product will cool if not eaten within seven minutes."
icon_state = "donk_kit"
- New()
- ..()
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
- new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
+/obj/item/weapon/storage/box/sinpockets/New()
+ ..()
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket(src)
/obj/item/weapon/storage/box/monkeycubes
name = "monkey cube box"
@@ -562,127 +555,141 @@
icon = 'icons/obj/food.dmi'
icon_state = "monkeycubebox"
can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube)
- New()
- ..()
- if(src.type == /obj/item/weapon/storage/box/monkeycubes)
- for(var/i = 1; i <= 5; i++)
- new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped(src)
+
+/obj/item/weapon/storage/box/monkeycubes/New()
+ ..()
+ if(src.type == /obj/item/weapon/storage/box/monkeycubes)
+ for(var/i = 1; i <= 5; i++)
+ new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped(src)
/obj/item/weapon/storage/box/monkeycubes/farwacubes
name = "farwa cube box"
desc = "Drymate brand farwa cubes, shipped from Adhomai. Just add water!"
- New()
- ..()
- for(var/i = 1; i <= 5; i++)
- new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/farwacube(src)
+
+/obj/item/weapon/storage/box/monkeycubes/farwacubes/New()
+ ..()
+ for(var/i = 1; i <= 5; i++)
+ new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/farwacube(src)
/obj/item/weapon/storage/box/monkeycubes/stokcubes
name = "stok cube box"
desc = "Drymate brand stok cubes, shipped from Moghes. Just add water!"
- New()
- ..()
- for(var/i = 1; i <= 5; i++)
- new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/stokcube(src)
+
+/obj/item/weapon/storage/box/monkeycubes/stokcubes/New()
+ ..()
+ for(var/i = 1; i <= 5; i++)
+ new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/stokcube(src)
/obj/item/weapon/storage/box/monkeycubes/neaeracubes
name = "neaera cube box"
desc = "Drymate brand neaera cubes, shipped from Jargon 4. Just add water!"
- New()
- ..()
- for(var/i = 1; i <= 5; i++)
- new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/neaeracube(src)
+
+/obj/item/weapon/storage/box/monkeycubes/neaeracubes/New()
+ ..()
+ for(var/i = 1; i <= 5; i++)
+ new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/neaeracube(src)
/obj/item/weapon/storage/box/ids
name = "box of spare IDs"
desc = "Has so many empty IDs."
icon_state = "id"
- New()
- ..()
- new /obj/item/weapon/card/id(src)
- new /obj/item/weapon/card/id(src)
- new /obj/item/weapon/card/id(src)
- new /obj/item/weapon/card/id(src)
- new /obj/item/weapon/card/id(src)
- new /obj/item/weapon/card/id(src)
- new /obj/item/weapon/card/id(src)
-
+/obj/item/weapon/storage/box/ids/New()
+ ..()
+ new /obj/item/weapon/card/id(src)
+ new /obj/item/weapon/card/id(src)
+ new /obj/item/weapon/card/id(src)
+ new /obj/item/weapon/card/id(src)
+ new /obj/item/weapon/card/id(src)
+ new /obj/item/weapon/card/id(src)
+ new /obj/item/weapon/card/id(src)
/obj/item/weapon/storage/box/seccarts
name = "box of spare R.O.B.U.S.T. Cartridges"
desc = "A box full of R.O.B.U.S.T. Cartridges, used by Security."
icon_state = "pda"
- New()
- ..()
- new /obj/item/weapon/cartridge/security(src)
- new /obj/item/weapon/cartridge/security(src)
- new /obj/item/weapon/cartridge/security(src)
- new /obj/item/weapon/cartridge/security(src)
- new /obj/item/weapon/cartridge/security(src)
- new /obj/item/weapon/cartridge/security(src)
- new /obj/item/weapon/cartridge/security(src)
-
+/obj/item/weapon/storage/box/seccarts/New()
+ ..()
+ new /obj/item/weapon/cartridge/security(src)
+ new /obj/item/weapon/cartridge/security(src)
+ new /obj/item/weapon/cartridge/security(src)
+ new /obj/item/weapon/cartridge/security(src)
+ new /obj/item/weapon/cartridge/security(src)
+ new /obj/item/weapon/cartridge/security(src)
+ new /obj/item/weapon/cartridge/security(src)
/obj/item/weapon/storage/box/handcuffs
name = "box of spare handcuffs"
desc = "A box full of handcuffs."
icon_state = "handcuff"
- New()
- ..()
- new /obj/item/weapon/handcuffs(src)
- new /obj/item/weapon/handcuffs(src)
- new /obj/item/weapon/handcuffs(src)
- new /obj/item/weapon/handcuffs(src)
- new /obj/item/weapon/handcuffs(src)
- new /obj/item/weapon/handcuffs(src)
- new /obj/item/weapon/handcuffs(src)
+/obj/item/weapon/storage/box/handcuffs/New()
+ ..()
+ new /obj/item/weapon/handcuffs(src)
+ new /obj/item/weapon/handcuffs(src)
+ new /obj/item/weapon/handcuffs(src)
+ new /obj/item/weapon/handcuffs(src)
+ new /obj/item/weapon/handcuffs(src)
+ new /obj/item/weapon/handcuffs(src)
+ new /obj/item/weapon/handcuffs(src)
+
+/obj/item/weapon/storage/box/zipties
+ name = "box of zipties"
+ desc = "A box full of zipties."
+ icon_state = "handcuff"
+/obj/item/weapon/storage/box/handcuffs/New()
+ ..()
+ new /obj/item/weapon/handcuffs/ziptie(src)
+ new /obj/item/weapon/handcuffs/ziptie(src)
+ new /obj/item/weapon/handcuffs/ziptie(src)
+ new /obj/item/weapon/handcuffs/ziptie(src)
+ new /obj/item/weapon/handcuffs/ziptie(src)
+ new /obj/item/weapon/handcuffs/ziptie(src)
+ new /obj/item/weapon/handcuffs/ziptie(src)
/obj/item/weapon/storage/box/mousetraps
name = "box of Pest-B-Gon mousetraps"
desc = "WARNING: Keep out of reach of children."
icon_state = "mousetraps"
- New()
- ..()
- new /obj/item/device/assembly/mousetrap( src )
- new /obj/item/device/assembly/mousetrap( src )
- new /obj/item/device/assembly/mousetrap( src )
- new /obj/item/device/assembly/mousetrap( src )
- new /obj/item/device/assembly/mousetrap( src )
- new /obj/item/device/assembly/mousetrap( src )
+/obj/item/weapon/storage/box/mousetraps/New()
+ ..()
+ new /obj/item/device/assembly/mousetrap( src )
+ new /obj/item/device/assembly/mousetrap( src )
+ new /obj/item/device/assembly/mousetrap( src )
+ new /obj/item/device/assembly/mousetrap( src )
+ new /obj/item/device/assembly/mousetrap( src )
+ new /obj/item/device/assembly/mousetrap( src )
/obj/item/weapon/storage/box/pillbottles
name = "box of pill bottles"
desc = "It has pictures of pill bottles on its front."
- New()
- ..()
- new /obj/item/weapon/storage/pill_bottle( src )
- new /obj/item/weapon/storage/pill_bottle( src )
- new /obj/item/weapon/storage/pill_bottle( src )
- new /obj/item/weapon/storage/pill_bottle( src )
- new /obj/item/weapon/storage/pill_bottle( src )
- new /obj/item/weapon/storage/pill_bottle( src )
- new /obj/item/weapon/storage/pill_bottle( src )
-
+/obj/item/weapon/storage/box/pillbottles/New()
+ ..()
+ new /obj/item/weapon/storage/pill_bottle( src )
+ new /obj/item/weapon/storage/pill_bottle( src )
+ new /obj/item/weapon/storage/pill_bottle( src )
+ new /obj/item/weapon/storage/pill_bottle( src )
+ new /obj/item/weapon/storage/pill_bottle( src )
+ new /obj/item/weapon/storage/pill_bottle( src )
+ new /obj/item/weapon/storage/pill_bottle( src )
/obj/item/weapon/storage/box/spraybottles
name = "box of spray bottles"
desc = "It has pictures of spray bottles on its front."
- New()
- ..()
- new /obj/item/weapon/reagent_containers/spray( src )
- new /obj/item/weapon/reagent_containers/spray( src )
- new /obj/item/weapon/reagent_containers/spray( src )
- new /obj/item/weapon/reagent_containers/spray( src )
- new /obj/item/weapon/reagent_containers/spray( src )
- new /obj/item/weapon/reagent_containers/spray( src )
- new /obj/item/weapon/reagent_containers/spray( src )
-
-
+
+/obj/item/weapon/storage/box/spraybottles/New()
+ ..()
+ new /obj/item/weapon/reagent_containers/spray( src )
+ new /obj/item/weapon/reagent_containers/spray( src )
+ new /obj/item/weapon/reagent_containers/spray( src )
+ new /obj/item/weapon/reagent_containers/spray( src )
+ new /obj/item/weapon/reagent_containers/spray( src )
+ new /obj/item/weapon/reagent_containers/spray( src )
+ new /obj/item/weapon/reagent_containers/spray( src )
/obj/item/weapon/storage/box/snappops
name = "snap pop box"
@@ -690,11 +697,12 @@
icon = 'icons/obj/toy.dmi'
icon_state = "spbox"
can_hold = list(/obj/item/toy/snappop)
- New()
- ..()
- for(var/i=1; i <= 8; i++)
- new /obj/item/toy/snappop(src)
-
+
+/obj/item/weapon/storage/box/snappops/New()
+ ..()
+ for(var/i=1; i <= 8; i++)
+ new /obj/item/toy/snappop(src)
+
/obj/item/weapon/storage/box/matches
name = "matchbox"
desc = "A small box of 'Space-Proof' premium matches."
@@ -705,28 +713,29 @@
slot_flags = SLOT_BELT
can_hold = list(/obj/item/weapon/flame/match)
- New()
- ..()
- for(var/i=1; i <= 10; i++)
- new /obj/item/weapon/flame/match(src)
+/obj/item/weapon/storage/box/matches/New()
+ ..()
+ for(var/i=1; i <= 10; i++)
+ new /obj/item/weapon/flame/match(src)
- attackby(obj/item/weapon/flame/match/W as obj, mob/user as mob)
- if(istype(W) && !W.lit && !W.burnt)
- W.lit = 1
- W.damtype = "burn"
- W.icon_state = "match_lit"
- processing_objects.Add(W)
- W.update_icon()
- return
+/obj/item/weapon/storage/box/matches/attackby(obj/item/weapon/flame/match/W as obj, mob/user as mob)
+ if(istype(W) && !W.lit && !W.burnt)
+ W.lit = 1
+ W.damtype = "burn"
+ W.icon_state = "match_lit"
+ processing_objects.Add(W)
+ W.update_icon()
+ return
/obj/item/weapon/storage/box/autoinjectors
name = "box of injectors"
desc = "Contains autoinjectors."
icon_state = "syringe"
- New()
- ..()
- for (var/i; i < 7; i++)
- new /obj/item/weapon/reagent_containers/hypospray/autoinjector(src)
+
+/obj/item/weapon/storage/box/autoinjectors/New()
+ ..()
+ for (var/i; i < 7; i++)
+ new /obj/item/weapon/reagent_containers/hypospray/autoinjector(src)
/obj/item/weapon/storage/box/lights
name = "box of replacement bulbs"
@@ -795,8 +804,6 @@
new type(src)
..()
-
-
/obj/item/weapon/storage/box/snack
name = "rations box"
desc = "Contains a random assortment of preserved foods. Guaranteed to remain edible* in room-temperature longterm storage for centuries!"