mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2025-12-29 19:52:12 +00:00
Standardization of the object tree and some modified functionality. Moved a lot of storage/*_kit and similar boxes to storage/box/* ; most of these can now be found in boxes.dm. First aid kits remain a separate item type. Replacement Light boxes pick up lights (for example broken ones) when used on them Moved weapon/secstorage to storage/secure Moved plant bags, ore satchel, trash bag, and sheet snatcher to storage/bag, in bags.dm Fixed reagent_containers and snacks to pass through attackby() so the use_to_pickup code works. This affects plant bags, trash bags, and pill bottles. Dice packs are now pill bottles, and all pill bottles can pick up dice. Added error handling to uplink/generate_menu() so that one mistyped string doesn't bork the whole syndie uplink menu, since strings cannot be type-checked at compile time. Cigarette packs and crayon boxes are now storage/fancy, however they retain existing update_icon() code. Added a comment to storage.dm so that future people know where to look for use_to_pickup and allow_quick_gather code. Updated all maps. I've tried to test this thoroughly but I wouldn't be surprised if there were a few lingering issues. Try not to panic if you encounter any. Full (i think) list of changed paths: /obj/item/weapon/storage/flashbang_kit > /obj/item/weapon/storage/box/flashbangs /obj/item/weapon/storage/body_bag_box > /obj/item/weapon/storage/box/bodybags /obj/item/weapon/storage/chemimp_kit > /obj/item/weapon/storage/box/chemimp /obj/item/weapon/storage/trackimp_kit > /obj/item/weapon/storage/box/trackimp /obj/item/weapon/storage/seccart_kit > /obj/item/weapon/storage/box/seccarts /obj/item/weapon/storage/handcuff_kit > /obj/item/weapon/storage/box/handcuffs /obj/item/weapon/cigpacket > /obj/item/weapon/storage/fancy/cigarettes /obj/item/weapon/storage/mousetraps > /obj/item/weapon/storage/box/mousetraps /obj/item/weapon/storage/PDAbox > /obj/item/weapon/storage/box/PDAs /obj/item/weapon/storage/id_kit > /obj/item/weapon/storage/box/ids /obj/item/weapon/storage/lightbox/mixed > /obj/item/weapon/storage/box/lights/mixed /obj/item/weapon/storage/donkpocket_kit > /obj/item/weapon/storage/box/donkpockets /obj/item/weapon/storage/beakerbox > /obj/item/weapon/storage/box/beakers /obj/item/weapon/storage/syringes > /obj/item/weapon/storage/box/syringes /obj/item/weapon/storage/gl_kit > /obj/item/weapon/storage/box/rxglasses /obj/item/weapon/storage/diskbox > /obj/item/weapon/storage/box/disks /obj/item/weapon/storage/stma_kit > /obj/item/weapon/storage/box/masks /obj/item/weapon/storage/lglo_kit > /obj/item/weapon/storage/box/gloves /obj/item/weapon/storage/lightbox/bulbs > /obj/item/weapon/storage/box/lights/bulbs /obj/item/weapon/plantbag > /obj/item/weapon/storage/bag/plants /obj/item/weapon/storage/satchel > /obj/item/weapon/storage/bag/ore /obj/item/weapon/trashbag > /obj/item/weapon/storage/bag/trash git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5494 316c924e-a436-60f5-8080-3fe189b3f50e
429 lines
14 KiB
Plaintext
429 lines
14 KiB
Plaintext
/*
|
|
* Everything derived from the common cardboard box.
|
|
* Basically everything except the original is a kit (starts full).
|
|
*
|
|
* Contains:
|
|
* Empty box, starter boxes (survival/engineer),
|
|
* Latex glove and sterile mask boxes,
|
|
* Syringe, beaker, dna injector boxes,
|
|
* Blanks, flashbangs, and EMP grenade boxes,
|
|
* Tracking and chemical implant boxes,
|
|
* Prescription glasses and drinking glass boxes,
|
|
* Condiment bottle and silly cup boxes,
|
|
* Donkpocket and monkeycube boxes,
|
|
* ID and security PDA cart boxes,
|
|
* Handcuff, mousetrap, and pillbottle boxes,
|
|
* Snap-pops and matchboxes,
|
|
* Replacement light boxes.
|
|
*
|
|
* For syndicate call-ins see uplink_kits.dm
|
|
*/
|
|
|
|
/obj/item/weapon/storage/box
|
|
name = "box"
|
|
desc = "It's just an ordinary box."
|
|
icon_state = "box"
|
|
item_state = "syringe_kit"
|
|
foldable = /obj/item/stack/sheet/cardboard //BubbleWrap
|
|
|
|
/obj/item/weapon/storage/box/survival/
|
|
New()
|
|
..()
|
|
contents = list()
|
|
sleep(1)
|
|
new /obj/item/clothing/mask/breath( src )
|
|
new /obj/item/weapon/tank/emergency_oxygen( src )
|
|
return
|
|
|
|
/obj/item/weapon/storage/box/engineer/
|
|
New()
|
|
..()
|
|
contents = list()
|
|
sleep(1)
|
|
new /obj/item/clothing/mask/breath( src )
|
|
new /obj/item/weapon/tank/emergency_oxygen/engi( src )
|
|
return
|
|
|
|
|
|
/obj/item/weapon/storage/box/gloves
|
|
name = "box of latex gloves"
|
|
desc = "Contains white 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(src)
|
|
new /obj/item/clothing/gloves/latex(src)
|
|
new /obj/item/clothing/gloves/latex(src)
|
|
|
|
/obj/item/weapon/storage/box/masks
|
|
name = "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/syringes
|
|
name = "syringes"
|
|
desc = "A box full of syringes."
|
|
desc = "A biohazard alert warning is printed on the box"
|
|
icon_state = "syringe"
|
|
|
|
New()
|
|
..()
|
|
new /obj/item/weapon/reagent_containers/syringe( src )
|
|
new /obj/item/weapon/reagent_containers/syringe( src )
|
|
new /obj/item/weapon/reagent_containers/syringe( src )
|
|
new /obj/item/weapon/reagent_containers/syringe( src )
|
|
new /obj/item/weapon/reagent_containers/syringe( src )
|
|
new /obj/item/weapon/reagent_containers/syringe( src )
|
|
new /obj/item/weapon/reagent_containers/syringe( src )
|
|
|
|
/obj/item/weapon/storage/box/beakers
|
|
name = "beaker box"
|
|
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/injectors
|
|
name = "\improper 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/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/flashbangs
|
|
name = "box of flashbangs (WARNING)"
|
|
desc = "<B>WARNING: These devices are extremely dangerous and can cause blindness or deafness in repeated use.</B>"
|
|
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/emps
|
|
name = "emp grenades"
|
|
desc = "A box with 5 emp grenades."
|
|
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/trackimp
|
|
name = "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/chemimp
|
|
name = "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/rxglasses
|
|
name = "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/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/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/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/donkpockets
|
|
name = "box of donk-pockets"
|
|
desc = "<B>Instructions:</B> <I>Heat in microwave. Product will cool if not eaten within seven minutes.</I>"
|
|
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/monkeycubes
|
|
name = "monkey cube box"
|
|
desc = "Drymate brand monkey cubes. Just add water!"
|
|
icon = 'icons/obj/food.dmi'
|
|
icon_state = "monkeycubebox"
|
|
storage_slots = 7
|
|
can_hold = list("/obj/item/weapon/reagent_containers/food/snacks/monkeycube")
|
|
New()
|
|
..()
|
|
for(var/i = 1; i <= 5; i++)
|
|
new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped(src)
|
|
|
|
|
|
/obj/item/weapon/storage/box/ids
|
|
name = "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/seccarts
|
|
name = "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/handcuffs
|
|
name = "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/mousetraps
|
|
name = "box of Pest-B-Gon Mousetraps"
|
|
desc = "<B><FONT=red>WARNING:</FONT></B> <I>Keep out of reach of children</I>."
|
|
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/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/snappops
|
|
name = "snap pop box"
|
|
desc = "Eight wrappers of fun! Ages 8 and up. Not suitable for children."
|
|
icon = 'icons/obj/toy.dmi'
|
|
icon_state = "spbox"
|
|
storage_slots = 8
|
|
can_hold = list("/obj/item/toy/snappop")
|
|
New()
|
|
..()
|
|
for(var/i=1; i <= storage_slots; i++)
|
|
new /obj/item/toy/snappop(src)
|
|
|
|
/obj/item/weapon/storage/box/matches
|
|
name = "matchbox"
|
|
desc = "A small box of Almost But Not Quite Plasma Premium Matches."
|
|
icon = 'icons/obj/cigarettes.dmi'
|
|
icon_state = "matchbox"
|
|
item_state = "zippo"
|
|
storage_slots = 10
|
|
w_class = 1
|
|
flags = TABLEPASS
|
|
slot_flags = SLOT_BELT
|
|
|
|
New()
|
|
..()
|
|
for(var/i=1; i <= storage_slots; i++)
|
|
new /obj/item/weapon/match(src)
|
|
|
|
attackby(obj/item/weapon/match/W as obj, mob/user as mob)
|
|
if(istype(W, /obj/item/weapon/match) && W.lit == 0)
|
|
W.lit = 1
|
|
W.icon_state = "match_lit"
|
|
processing_objects.Add(W)
|
|
W.update_icon()
|
|
return
|
|
|
|
|
|
/obj/item/weapon/storage/box/lights
|
|
name = "replacement bulbs"
|
|
icon = 'icons/obj/storage.dmi'
|
|
icon_state = "light"
|
|
desc = "This box is shaped on the inside so that only light tubes and bulbs fit."
|
|
item_state = "syringe_kit"
|
|
foldable = /obj/item/stack/sheet/cardboard //BubbleWrap
|
|
storage_slots=21
|
|
can_hold = list("/obj/item/weapon/light/tube", "/obj/item/weapon/light/bulb")
|
|
max_combined_w_class = 21
|
|
use_to_pickup = 1 // for picking up broken bulbs, not that most people will try
|
|
|
|
/obj/item/weapon/storage/box/lights/bulbs/New()
|
|
..()
|
|
for(var/i = 0; i < 21; i++)
|
|
new /obj/item/weapon/light/bulb(src)
|
|
|
|
/obj/item/weapon/storage/box/lights/tubes
|
|
name = "replacement tubes"
|
|
icon_state = "lighttube"
|
|
|
|
/obj/item/weapon/storage/box/lights/tubes/New()
|
|
..()
|
|
for(var/i = 0; i < 21; i++)
|
|
new /obj/item/weapon/light/tube(src)
|
|
|
|
/obj/item/weapon/storage/box/lights/mixed
|
|
name = "replacement lights"
|
|
icon_state = "lightmixed"
|
|
|
|
/obj/item/weapon/storage/box/lights/mixed/New()
|
|
..()
|
|
for(var/i = 0; i < 14; i++)
|
|
new /obj/item/weapon/light/tube(src)
|
|
for(var/i = 0; i < 7; i++)
|
|
new /obj/item/weapon/light/bulb(src) |