Files
vgstation13/code/datums/supplypacks.dm
Cael_Aislinn bdeb96b7e5 Merge branch 'incremental_tg' r5514 (11/1/2013) into bs12_with_tgport
Conflicts:
	baystation12.dme
	code/ATMOSPHERICS/components/unary/vent_pump.dm
	code/ATMOSPHERICS/components/unary/vent_scrubber.dm
	code/__HELPERS/game.dm
	code/controllers/shuttle_controller.dm
	code/datums/datumvars.dm
	code/datums/supplypacks.dm
	code/defines/obj/storage.dm
	code/defines/obj/vending.dm
	code/defines/obj/weapon.dm
	code/defines/procs/command_alert.dm
	code/game/area/Space Station 13 areas.dm
	code/game/atoms.dm
	code/game/gamemodes/changeling/modularchangling.dm
	code/game/gamemodes/cult/runes.dm
	code/game/gamemodes/events.dm
	code/game/gamemodes/events/dust.dm
	code/game/gamemodes/events/miniblob.dm
	code/game/gamemodes/events/ninja_equipment.dm
	code/game/gamemodes/factions.dm
	code/game/gamemodes/game_mode.dm
	code/game/gamemodes/gameticker.dm
	code/game/jobs/access.dm
	code/game/jobs/job/assistant.dm
	code/game/jobs/job/captain.dm
	code/game/jobs/job/civilian.dm
	code/game/jobs/job/engineering.dm
	code/game/jobs/job/medical.dm
	code/game/jobs/job/science.dm
	code/game/jobs/job/security.dm
	code/game/jobs/job_controller.dm
	code/game/machinery/alarm.dm
	code/game/machinery/atmo_control.dm
	code/game/machinery/atmoalter/area_atmos_computer.dm
	code/game/machinery/bots/medbot.dm
	code/game/machinery/computer/HolodeckControl.dm
	code/game/machinery/computer/ai_core.dm
	code/game/machinery/computer/atmos_alert.dm
	code/game/machinery/computer/card.dm
	code/game/machinery/computer/cloning.dm
	code/game/machinery/computer/computer.dm
	code/game/machinery/computer/message.dm
	code/game/machinery/computer/pod.dm
	code/game/machinery/computer/prisoner.dm
	code/game/machinery/computer/syndicate_shuttle.dm
	code/game/machinery/constructable_frame.dm
	code/game/machinery/doors/door.dm
	code/game/machinery/doors/firedoor.dm
	code/game/machinery/newscaster.dm
	code/game/machinery/recharger.dm
	code/game/machinery/spaceheater.dm
	code/game/machinery/telecomms/broadcaster.dm
	code/game/machinery/telecomms/logbrowser.dm
	code/game/machinery/telecomms/machine_interactions.dm
	code/game/machinery/teleporter.dm
	code/game/machinery/wishgranter.dm
	code/game/mecha/mech_fabricator.dm
	code/game/mecha/working/ripley.dm
	code/game/objects/items.dm
	code/game/objects/items/blueprints.dm
	code/game/objects/items/devices/flashlight.dm
	code/game/objects/items/devices/radio/encryptionkey.dm
	code/game/objects/items/devices/uplinks.dm
	code/game/objects/items/stacks/medical.dm
	code/game/objects/items/weapons/cards_ids.dm
	code/game/objects/items/weapons/gift_wrappaper.dm
	code/game/objects/items/weapons/hydroponics.dm
	code/game/objects/items/weapons/manuals.dm
	code/game/objects/items/weapons/secstorage/secstorage.dm
	code/game/objects/items/weapons/storage/backpack.dm
	code/game/objects/items/weapons/storage/firstaid.dm
	code/game/objects/items/weapons/storage/kit.dm
	code/game/objects/items/weapons/storage/storage.dm
	code/game/objects/items/weapons/storage/toolbox.dm
	code/game/objects/items/weapons/storage/uplink_kits.dm
	code/game/objects/items/weapons/stunbaton.dm
	code/game/objects/items/weapons/surgery_tools.dm
	code/game/objects/items/weapons/tools.dm
	code/game/objects/structures/crates_lockers/closets/secure/cargo.dm
	code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm
	code/game/objects/structures/crates_lockers/closets/secure/scientist.dm
	code/game/objects/structures/crates_lockers/closets/secure/security.dm
	code/game/objects/structures/electricchair.dm
	code/game/objects/structures/extinguisher.dm
	code/game/objects/structures/watercloset.dm
	code/game/objects/weapons.dm
	code/game/turfs/turf.dm
	code/game/vehicles/airtight/airtight.dm
	code/game/vehicles/vehicle.dm
	code/global.dm
	code/modules/DetectiveWork/evidence.dm
	code/modules/admin/IsBanned.dm
	code/modules/admin/player_panel.dm
	code/modules/admin/verbs/diagnostics.dm
	code/modules/admin/verbs/getlogs.dm
	code/modules/client/preferences.dm
	code/modules/clothing/masks/miscellaneous.dm
	code/modules/clothing/spacesuits/rig.dm
	code/modules/clothing/suits/miscellaneous.dm
	code/modules/critters/critter_defenses.dm
	code/modules/detectivework/scanner.dm
	code/modules/flufftext/Hallucination.dm
	code/modules/food/recipes_microwave.dm
	code/modules/mining/mine_items.dm
	code/modules/mining/mine_turfs.dm
	code/modules/mining/satchel_ore_boxdm.dm
	code/modules/mob/dead/observer/observer.dm
	code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm
	code/modules/mob/living/carbon/alien/special/facehugger.dm
	code/modules/mob/living/carbon/carbon.dm
	code/modules/mob/living/carbon/carbon_defines.dm
	code/modules/mob/living/carbon/human/human.dm
	code/modules/mob/living/carbon/human/human_attackhand.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/carbon/human/say.dm
	code/modules/mob/living/carbon/human/update_icons.dm
	code/modules/mob/living/carbon/metroid/metroid.dm
	code/modules/mob/living/living.dm
	code/modules/mob/living/silicon/ai/life.dm
	code/modules/mob/living/silicon/robot/robot.dm
	code/modules/mob/mob_cleanup.dm
	code/modules/mob/mob_defines.dm
	code/modules/mob/mob_transformation_simple.dm
	code/modules/paperwork/clipboard.dm
	code/modules/paperwork/folders.dm
	code/modules/paperwork/paper.dm
	code/modules/paperwork/paperbin.dm
	code/modules/paperwork/pen.dm
	code/modules/power/cable.dm
	code/modules/projectiles/guns/energy/special.dm
	code/modules/projectiles/guns/projectile/revolver.dm
	code/modules/projectiles/projectile/change.dm
	code/modules/projectiles/projectile/special.dm
	code/modules/reagents/Chemistry-Reagents.dm
	code/modules/reagents/reagent_containers/glass.dm
	code/modules/reagents/reagent_containers/hypospray.dm
	code/modules/recycling/sortingmachinery.dm
	code/modules/research/designs.dm
	config/config.txt
	html/changelog.html
	icons/mob/head.dmi
	icons/mob/hud.dmi
	icons/mob/items_lefthand.dmi
	icons/mob/items_righthand.dmi
	icons/mob/mask.dmi
	icons/mob/suit.dmi
	icons/mob/ties.dmi
	icons/mob/uniform.dmi
	icons/obj/clothing/hats.dmi
	icons/obj/clothing/masks.dmi
	icons/obj/clothing/suits.dmi
	icons/obj/clothing/ties.dmi
	icons/obj/grenade.dmi
	icons/obj/projectiles.dmi

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2013-01-11 22:12:31 +10:00

744 lines
27 KiB
Plaintext
Executable File

//SUPPLY PACKS
//NOTE: only secure crate types use the access var (and are lockable)
//NOTE: hidden packs only show up when the computer has been hacked.
//ANOTER NOTE: Contraband is obtainable through modified supplycomp circuitboards.
//BIG NOTE: Don't add living things to crates, that's bad, it will break the shuttle.
//NEW NOTE: Do NOT set the price of any crates below 7 points. Doing so allows infinite points.
/datum/supply_packs
var/name = null
var/list/contains = list()
var/manifest = ""
var/amount = null
var/cost = null
var/containertype = null
var/containername = null
var/access = null
var/hidden = 0
var/contraband = 0
var/group
/datum/supply_packs/New()
manifest += "<ul>"
for(var/path in contains)
if(!path) continue
var/atom/movable/AM = new path()
manifest += "<li>[AM.name]</li>"
AM.loc = null //just to make sure they're deleted by the garbage collector
manifest += "</ul>"
/datum/supply_packs/specialops
name = "Special Ops supplies"
contains = list(/obj/item/weapon/storage/box/emps,
/obj/item/weapon/grenade/smokebomb,
/obj/item/weapon/grenade/smokebomb,
/obj/item/weapon/grenade/smokebomb,
/obj/item/weapon/pen/paralysis,
/obj/item/weapon/grenade/chem_grenade/incendiary)
cost = 20
containertype = /obj/structure/closet/crate
containername = "Special Ops crate"
hidden = 1
/datum/supply_packs/food
name = "Food crate"
contains = list(/obj/item/weapon/reagent_containers/food/drinks/flour,
/obj/item/weapon/reagent_containers/food/drinks/milk,
/obj/item/weapon/reagent_containers/food/drinks/milk,
/obj/item/weapon/storage/fancy/egg_box,
/obj/item/weapon/reagent_containers/food/condiment/enzyme,
/obj/item/weapon/reagent_containers/food/snacks/grown/banana,
/obj/item/weapon/reagent_containers/food/snacks/grown/banana,
/obj/item/weapon/reagent_containers/food/snacks/grown/banana)
cost = 10
containertype = /obj/structure/closet/crate/freezer
containername = "Food crate"
/datum/supply_packs/monkey
name = "Monkey crate"
contains = list (/obj/item/weapon/storage/box/monkeycubes)
cost = 20
containertype = /obj/structure/closet/crate/freezer
containername = "Monkey crate"
/datum/supply_packs/beanbagammo
name = "Beanbag shells"
contains = list(/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag)
cost = 10
containertype = /obj/structure/closet/crate
containername = "Beanbag shells"
/datum/supply_packs/toner
name = "Toner Cartridges"
contains = list(/obj/item/device/toner,
/obj/item/device/toner,
/obj/item/device/toner,
/obj/item/device/toner,
/obj/item/device/toner,
/obj/item/device/toner)
cost = 10
containertype = /obj/structure/closet/crate
containername = "Toner Cartridges"
/datum/supply_packs/party
name = "Party equipment"
contains = list(/obj/item/weapon/storage/box/drinkingglasses,
/obj/item/weapon/reagent_containers/food/drinks/shaker,
/obj/item/weapon/reagent_containers/food/drinks/bottle/patron,
/obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager,
/obj/item/weapon/reagent_containers/food/drinks/ale,
/obj/item/weapon/reagent_containers/food/drinks/ale,
/obj/item/weapon/reagent_containers/food/drinks/beer,
/obj/item/weapon/reagent_containers/food/drinks/beer,
/obj/item/weapon/reagent_containers/food/drinks/beer,
/obj/item/weapon/reagent_containers/food/drinks/beer,
/obj/item/weapon/cigpacket/dromedaryco,
/obj/item/weapon/lipstick/random)
cost = 20
containertype = /obj/structure/closet/crate
containername = "Party equipment"
/datum/supply_packs/internals
name = "Internals crate"
contains = list(/obj/item/clothing/mask/gas,
/obj/item/clothing/mask/gas,
/obj/item/clothing/mask/gas,
/obj/item/weapon/tank/air,
/obj/item/weapon/tank/air,
/obj/item/weapon/tank/air)
cost = 10
containertype = /obj/structure/closet/crate/internals
containername = "Internals crate"
/datum/supply_packs/evacuation
name = "Emergency equipment"
contains = list(/obj/machinery/bot/floorbot,
/obj/machinery/bot/floorbot,
/obj/machinery/bot/medbot,
/obj/machinery/bot/medbot,
/obj/item/weapon/tank/air,
/obj/item/weapon/tank/air,
/obj/item/weapon/tank/air,
/obj/item/weapon/tank/air,
/obj/item/weapon/tank/air,
/obj/item/clothing/mask/gas,
/obj/item/clothing/mask/gas,
/obj/item/clothing/mask/gas,
/obj/item/clothing/mask/gas,
/obj/item/clothing/mask/gas)
cost = 35
containertype = /obj/structure/closet/crate/internals
containername = "Emergency Crate"
/datum/supply_packs/janitor
name = "Janitorial supplies"
contains = list(/obj/item/weapon/reagent_containers/glass/bucket,
/obj/item/weapon/reagent_containers/glass/bucket,
/obj/item/weapon/reagent_containers/glass/bucket,
/obj/item/weapon/mop,
/obj/item/weapon/caution,
/obj/item/weapon/caution,
/obj/item/weapon/caution,
/obj/item/weapon/reagent_containers/spray/cleaner,
/obj/item/weapon/reagent_containers/glass/rag,
/obj/item/weapon/grenade/chem_grenade/cleaner,
/obj/item/weapon/grenade/chem_grenade/cleaner,
/obj/item/weapon/grenade/chem_grenade/cleaner,
/obj/structure/mopbucket)
cost = 10
containertype = /obj/structure/closet/crate
containername = "Janitorial supplies"
/datum/supply_packs/lightbulbs
name = "Replacement lights"
contains = list(/obj/item/weapon/storage/box/lights/mixed,
/obj/item/weapon/storage/box/lights/mixed,
/obj/item/weapon/storage/box/lights/mixed)
cost = 10
containertype = /obj/structure/closet/crate
containername = "Replacement lights"
//BS12 EDIT
/*
/datum/supply_packs/costume
name = "Standard Costume crate"
contains = list(/obj/item/weapon/storage/backpack/clown,
/obj/item/clothing/shoes/clown_shoes,
/obj/item/clothing/mask/gas/clown_hat,
/obj/item/clothing/under/rank/clown,
/obj/item/weapon/bikehorn,
/obj/item/clothing/under/mime,
/obj/item/clothing/shoes/black,
/obj/item/clothing/gloves/white,
/obj/item/clothing/mask/gas/mime,
/obj/item/clothing/head/beret,
/obj/item/clothing/suit/suspenders,
/obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing)
cost = 10
containertype = /obj/structure/closet/crate/secure
containername = "Standard Costumes"
access = access_theatre
*/
/datum/supply_packs/wizard
name = "Wizard costume"
contains = list(/obj/item/weapon/staff,
/obj/item/clothing/suit/wizrobe/fake,
/obj/item/clothing/shoes/sandal,
/obj/item/clothing/head/wizard/fake)
cost = 20
containertype = /obj/structure/closet/crate
containername = "Wizard costume crate"
/datum/supply_packs/mule
name = "MULEbot Crate"
contains = list(/obj/machinery/bot/mulebot)
cost = 20
containertype = /obj/structure/largecrate/mule
containername = "MULEbot Crate"
/datum/supply_packs/lisa
name = "Corgi Crate"
contains = list()
cost = 50
containertype = /obj/structure/largecrate/lisa
containername = "Corgi Crate"
/datum/supply_packs/hydroponics // -- Skie
name = "Hydroponics Supply Crate"
contains = list(/obj/item/weapon/reagent_containers/spray/plantbgone,
/obj/item/weapon/reagent_containers/spray/plantbgone,
/obj/item/weapon/reagent_containers/glass/bottle/ammonia,
/obj/item/weapon/reagent_containers/glass/bottle/ammonia,
/obj/item/weapon/hatchet,
/obj/item/weapon/minihoe,
/obj/item/device/analyzer/plant_analyzer,
/obj/item/clothing/gloves/botanic_leather,
/obj/item/clothing/suit/apron) // Updated with new things
cost = 15
containertype = /obj/structure/closet/crate/hydroponics
containername = "Hydroponics crate"
access = access_hydroponics
/datum/supply_packs/seeds
name = "Seeds Crate"
contains = list(/obj/item/seeds/chiliseed,
/obj/item/seeds/berryseed,
/obj/item/seeds/cornseed,
/obj/item/seeds/eggplantseed,
/obj/item/seeds/tomatoseed,
/obj/item/seeds/soyaseed,
/obj/item/seeds/wheatseed,
/obj/item/seeds/carrotseed,
/obj/item/seeds/sunflowerseed,
/obj/item/seeds/chantermycelium,
/obj/item/seeds/potatoseed,
/obj/item/seeds/sugarcaneseed)
cost = 10
containertype = /obj/structure/closet/crate/hydroponics
containername = "Seeds crate"
access = access_hydroponics
/datum/supply_packs/weedcontrol
name = "Weed Control Crate"
contains = list(/obj/item/weapon/scythe,
/obj/item/clothing/mask/gas,
/obj/item/weapon/grenade/chem_grenade/antiweed,
/obj/item/weapon/grenade/chem_grenade/antiweed)
cost = 20
containertype = /obj/structure/closet/crate/secure/hydrosec
containername = "Weed control crate"
access = access_hydroponics
/datum/supply_packs/exoticseeds
name = "Exotic Seeds Crate"
contains = list(/obj/item/seeds/nettleseed,
/obj/item/seeds/replicapod,
/obj/item/seeds/replicapod,
/obj/item/seeds/replicapod,
/obj/item/seeds/plumpmycelium,
/obj/item/seeds/libertymycelium,
/obj/item/seeds/amanitamycelium,
/obj/item/seeds/reishimycelium,
/obj/item/seeds/bananaseed,
/obj/item/seeds/eggyseed)
cost = 15
containertype = /obj/structure/closet/crate/hydroponics
containername = "Exotic Seeds crate"
access = access_hydroponics
/datum/supply_packs/medical
name = "Medical crate"
contains = list(/obj/item/weapon/storage/firstaid/regular,
/obj/item/weapon/storage/firstaid/fire,
/obj/item/weapon/storage/firstaid/toxin,
/obj/item/weapon/storage/firstaid/o2,
/obj/item/weapon/reagent_containers/glass/bottle/antitoxin,
/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,
/obj/item/weapon/reagent_containers/glass/bottle/stoxin,
/obj/item/weapon/storage/box/syringes)
cost = 10
containertype = /obj/structure/closet/crate/medical
containername = "Medical crate"
/datum/supply_packs/virus
name = "Virus crate"
contains = list(/obj/item/weapon/reagent_containers/glass/bottle/flu_virion,
/obj/item/weapon/reagent_containers/glass/bottle/cold,
/obj/item/weapon/reagent_containers/glass/bottle/epiglottis_virion,
/obj/item/weapon/reagent_containers/glass/bottle/liver_enhance_virion,
/obj/item/weapon/reagent_containers/glass/bottle/fake_gbs,
/obj/item/weapon/reagent_containers/glass/bottle/magnitis,
/obj/item/weapon/reagent_containers/glass/bottle/pierrot_throat,
/obj/item/weapon/reagent_containers/glass/bottle/brainrot,
/obj/item/weapon/reagent_containers/glass/bottle/hullucigen_virion,
/obj/item/weapon/storage/box/syringes,
/obj/item/weapon/storage/box/beakers,
/obj/item/weapon/reagent_containers/glass/bottle/mutagen)
containername = "Virus crate"
access = access_cmo
/datum/supply_packs/metal50
name = "50 Metal Sheets"
contains = list(/obj/item/stack/sheet/metal)
amount = 50
cost = 10
containertype = /obj/structure/closet/crate
containername = "Metal sheets crate"
/datum/supply_packs/glass50
name = "50 Glass Sheets"
contains = list(/obj/item/stack/sheet/glass)
amount = 50
cost = 10
containertype = /obj/structure/closet/crate
containername = "Glass sheets crate"
/datum/supply_packs/electrical
name = "Electrical maintenance crate"
contains = list(/obj/item/weapon/storage/toolbox/electrical,
/obj/item/weapon/storage/toolbox/electrical,
/obj/item/clothing/gloves/yellow,
/obj/item/clothing/gloves/yellow,
/obj/item/weapon/cell,
/obj/item/weapon/cell,
/obj/item/weapon/cell/high,
/obj/item/weapon/cell/high)
cost = 15
containertype = /obj/structure/closet/crate
containername = "Electrical maintenance crate"
/datum/supply_packs/mechanical
name = "Mechanical maintenance crate"
contains = list(/obj/item/weapon/storage/belt/utility/full,
/obj/item/weapon/storage/belt/utility/full,
/obj/item/weapon/storage/belt/utility/full,
/obj/item/clothing/suit/storage/hazardvest,
/obj/item/clothing/suit/storage/hazardvest,
/obj/item/clothing/suit/storage/hazardvest,
/obj/item/clothing/head/welding,
/obj/item/clothing/head/welding,
/obj/item/clothing/head/hardhat)
cost = 10
containertype = /obj/structure/closet/crate
containername = "Mechanical maintenance crate"
/datum/supply_packs/watertank
name = "Water tank crate"
contains = list(/obj/structure/reagent_dispensers/watertank)
cost = 8
containertype = /obj/structure/largecrate
containername = "water tank crate"
/datum/supply_packs/fueltank
name = "Fuel tank crate"
contains = list(/obj/structure/reagent_dispensers/fueltank)
cost = 8
containertype = /obj/structure/largecrate
containername = "fuel tank crate"
/datum/supply_packs/solar
name = "Solar Pack crate"
contains = list(/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly,
/obj/item/solar_assembly, // 21 Solar Assemblies. 1 Extra for the controller
/obj/item/weapon/circuitboard/solar_control,
/obj/item/weapon/tracker_electronics,
/obj/item/weapon/paper/solar)
cost = 20
containertype = /obj/structure/closet/crate
containername = "solar pack crate"
/datum/supply_packs/engine
name = "Emitter crate"
contains = list(/obj/machinery/power/emitter,
/obj/machinery/power/emitter)
cost = 10
containertype = /obj/structure/closet/crate/secure
containername = "Emitter crate"
access = access_ce
/datum/supply_packs/engine/field_gen
name = "Field Generator crate"
contains = list(/obj/machinery/field_generator,
/obj/machinery/field_generator)
containertype = /obj/structure/closet/crate/secure
containername = "Field Generator crate"
access = access_ce
/datum/supply_packs/engine/sing_gen
name = "Singularity Generator crate"
contains = list(/obj/machinery/the_singularitygen)
containertype = /obj/structure/closet/crate/secure
containername = "Singularity Generator crate"
access = access_ce
/datum/supply_packs/engine/collector
name = "Collector crate"
contains = list(/obj/machinery/power/rad_collector,
/obj/machinery/power/rad_collector,
/obj/machinery/power/rad_collector)
containername = "Collector crate"
/datum/supply_packs/engine/PA
name = "Particle Accelerator crate"
cost = 40
contains = list(/obj/structure/particle_accelerator/fuel_chamber,
/obj/machinery/particle_accelerator/control_box,
/obj/structure/particle_accelerator/particle_emitter/center,
/obj/structure/particle_accelerator/particle_emitter/left,
/obj/structure/particle_accelerator/particle_emitter/right,
/obj/structure/particle_accelerator/power_box,
/obj/structure/particle_accelerator/end_cap)
containertype = /obj/structure/closet/crate/secure
containername = "Particle Accelerator crate"
access = access_ce
/datum/supply_packs/mecha_ripley
name = "Circuit Crate (\"Ripley\" APLU)"
contains = list(/obj/item/weapon/book/manual/ripley_build_and_repair,
/obj/item/weapon/circuitboard/mecha/ripley/main, //TEMPORARY due to lack of circuitboard printer
/obj/item/weapon/circuitboard/mecha/ripley/peripherals) //TEMPORARY due to lack of circuitboard printer
cost = 30
containertype = /obj/structure/closet/crate/secure
containername = "APLU \"Ripley\" Circuit Crate"
access = access_robotics
/datum/supply_packs/mecha_odysseus
name = "Circuit Crate (\"Odysseus\")"
contains = list(/obj/item/weapon/circuitboard/mecha/odysseus/peripherals, //TEMPORARY due to lack of circuitboard printer
/obj/item/weapon/circuitboard/mecha/odysseus/main) //TEMPORARY due to lack of circuitboard printer
cost = 25
containertype = /obj/structure/closet/crate/secure
containername = "\"Odysseus\" Circuit Crate"
access = access_robotics
/datum/supply_packs/robotics
name = "Robotics Assembly Crate"
contains = list(/obj/item/device/assembly/prox_sensor,
/obj/item/device/assembly/prox_sensor,
/obj/item/device/assembly/prox_sensor,
/obj/item/weapon/storage/toolbox/electrical,
/obj/item/device/flash,
/obj/item/device/flash,
/obj/item/device/flash,
/obj/item/device/flash,
/obj/item/weapon/cell/high,
/obj/item/weapon/cell/high)
cost = 10
containertype = /obj/structure/closet/crate/secure/gear
containername = "Robotics Assembly"
access = access_robotics
/datum/supply_packs/plasma
name = "Plasma assembly crate"
contains = list(/obj/item/weapon/tank/plasma,
/obj/item/weapon/tank/plasma,
/obj/item/weapon/tank/plasma,
/obj/item/device/assembly/igniter,
/obj/item/device/assembly/igniter,
/obj/item/device/assembly/igniter,
/obj/item/device/assembly/prox_sensor,
/obj/item/device/assembly/prox_sensor,
/obj/item/device/assembly/prox_sensor,
/obj/item/device/assembly/timer,
/obj/item/device/assembly/timer,
/obj/item/device/assembly/timer)
cost = 10
containertype = /obj/structure/closet/crate/secure/plasma
containername = "Plasma assembly crate"
access = access_tox_storage
/datum/supply_packs/weapons
name = "Weapons crate"
contains = list(/obj/item/weapon/melee/baton,
/obj/item/weapon/melee/baton,
/obj/item/weapon/gun/energy/laser,
/obj/item/weapon/gun/energy/laser,
/obj/item/weapon/gun/energy/taser,
/obj/item/weapon/gun/energy/taser,
/obj/item/weapon/storage/box/flashbangs,
/obj/item/weapon/storage/box/flashbangs)
cost = 30
containertype = /obj/structure/closet/crate/secure/weapon
containername = "Weapons crate"
access = access_security
/datum/supply_packs/eweapons
name = "Experimental weapons crate"
contains = list(/obj/item/weapon/flamethrower/full,
/obj/item/weapon/tank/plasma,
/obj/item/weapon/tank/plasma,
/obj/item/weapon/tank/plasma,
/obj/item/weapon/grenade/chem_grenade/incendiary,
/obj/item/weapon/grenade/chem_grenade/incendiary,
/obj/item/weapon/grenade/chem_grenade/incendiary)
cost = 25
containertype = /obj/structure/closet/crate/secure/weapon
containername = "Experimental weapons crate"
access = access_heads
/datum/supply_packs/armor
name = "Armor crate"
contains = list(/obj/item/clothing/head/helmet,
/obj/item/clothing/head/helmet,
/obj/item/clothing/suit/armor/vest,
/obj/item/clothing/suit/armor/vest)
cost = 15
containertype = /obj/structure/closet/crate/secure
containername = "Armor crate"
access = access_security
/datum/supply_packs/riot
name = "Riot gear crate"
contains = list(/obj/item/weapon/melee/baton,
/obj/item/weapon/melee/baton,
/obj/item/weapon/melee/baton,
/obj/item/weapon/shield/riot,
/obj/item/weapon/shield/riot,
/obj/item/weapon/shield/riot,
/obj/item/weapon/storage/box/flashbangs,
/obj/item/weapon/storage/box/flashbangs,
/obj/item/weapon/storage/box/flashbangs,
/obj/item/weapon/handcuffs,
/obj/item/weapon/handcuffs,
/obj/item/weapon/handcuffs,
/obj/item/clothing/head/helmet/riot,
/obj/item/clothing/suit/armor/riot,
/obj/item/clothing/head/helmet/riot,
/obj/item/clothing/suit/armor/riot,
/obj/item/clothing/head/helmet/riot,
/obj/item/clothing/suit/armor/riot)
cost = 60
containertype = /obj/structure/closet/crate/secure
containername = "Riot gear crate"
access = access_armory
/datum/supply_packs/loyalty
name = "Loyalty implant crate"
contains = list (/obj/item/weapon/storage/lockbox/loyalty)
cost = 60
containertype = /obj/structure/closet/crate/secure
containername = "Loyalty implant crate"
access = access_armory
/datum/supply_packs/ballistic
name = "Ballistic gear crate"
contains = list(/obj/item/clothing/suit/armor/bulletproof,
/obj/item/clothing/suit/armor/bulletproof,
/obj/item/weapon/gun/projectile/shotgun/pump/combat,
/obj/item/weapon/gun/projectile/shotgun/pump/combat)
cost = 50
containertype = /obj/structure/closet/crate/secure
containername = "Ballistic gear crate"
access = access_armory
/datum/supply_packs/expenergy
name = "Experimental energy gear crate"
contains = list(/obj/item/clothing/suit/armor/laserproof,
/obj/item/clothing/suit/armor/laserproof,
/obj/item/weapon/gun/energy/gun,
/obj/item/weapon/gun/energy/gun)
cost = 50
containertype = /obj/structure/closet/crate/secure
containername = "Experimental energy gear crate"
access = access_armory
/datum/supply_packs/exparmor
name = "Experimental armor crate"
contains = list(/obj/item/clothing/suit/armor/laserproof,
/obj/item/clothing/suit/armor/bulletproof,
/obj/item/clothing/head/helmet/riot,
/obj/item/clothing/suit/armor/riot)
cost = 35
containertype = /obj/structure/closet/crate/secure
containername = "Experimental armor crate"
access = access_armory
/datum/supply_packs/securitybarriers
name = "Security Barriers"
contains = list(/obj/machinery/deployable/barrier,
/obj/machinery/deployable/barrier,
/obj/machinery/deployable/barrier,
/obj/machinery/deployable/barrier)
cost = 20
containertype = /obj/structure/closet/crate/secure/gear
containername = "Security Barriers crate"
/datum/supply_packs/securitybarriers
name = "Shield Generators"
contains = list(/obj/machinery/shieldwallgen,
/obj/machinery/shieldwallgen,
/obj/machinery/shieldwallgen,
/obj/machinery/shieldwallgen)
cost = 20
containertype = /obj/structure/closet/crate/secure
containername = "Shield Generators crate"
access = access_teleporter
/datum/supply_packs/randomised
var/num_contained = 3 //number of items picked to be contained in a randomised crate
contains = list(/obj/item/clothing/head/collectable/chef,
/obj/item/clothing/head/collectable/paper,
/obj/item/clothing/head/collectable/tophat,
/obj/item/clothing/head/collectable/captain,
/obj/item/clothing/head/collectable/beret,
/obj/item/clothing/head/collectable/welding,
/obj/item/clothing/head/collectable/flatcap,
/obj/item/clothing/head/collectable/pirate,
/obj/item/clothing/head/collectable/kitty,
/obj/item/clothing/head/collectable/rabbitears,
/obj/item/clothing/head/collectable/wizard,
/obj/item/clothing/head/collectable/hardhat,
/obj/item/clothing/head/collectable/HoS,
/obj/item/clothing/head/collectable/thunderdome,
/obj/item/clothing/head/collectable/swat,
/obj/item/clothing/head/collectable/slime,
/obj/item/clothing/head/collectable/police,
/obj/item/clothing/head/collectable/slime,
/obj/item/clothing/head/collectable/xenom,
/obj/item/clothing/head/collectable/petehat)
name = "Collectable hat crate!"
cost = 200
containertype = /obj/structure/closet/crate
containername = "Collectable hats crate! Brought to you by Bass.inc!"
/datum/supply_packs/randomised/New()
manifest += "Contains any [num_contained] of:"
..()
/datum/supply_packs/artscrafts
name = "Arts and Crafts supplies"
contains = list(/obj/item/weapon/storage/crayonbox,
/obj/item/device/camera,
/obj/item/device/camera_film,
/obj/item/device/camera_film,
/obj/item/weapon/storage/photo_album,
/obj/item/weapon/packageWrap,
/obj/item/weapon/reagent_containers/glass/paint/red,
/obj/item/weapon/reagent_containers/glass/paint/green,
/obj/item/weapon/reagent_containers/glass/paint/blue,
/obj/item/weapon/reagent_containers/glass/paint/yellow,
/obj/item/weapon/reagent_containers/glass/paint/violet,
/obj/item/weapon/reagent_containers/glass/paint/black,
/obj/item/weapon/reagent_containers/glass/paint/white,
/obj/item/weapon/reagent_containers/glass/paint/remover,
/obj/item/weapon/wrapping_paper,
/obj/item/weapon/wrapping_paper,
/obj/item/weapon/wrapping_paper,
/obj/item/weapon/contraband/poster)
cost = 5
containertype = "/obj/structure/closet/crate"
containername = "Arts and Crafts crate"
/datum/supply_packs/randomised/contraband
num_contained = 5
contains = list(/obj/item/weapon/contraband/poster,
/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,
/obj/item/weapon/lipstick/random,
/obj/item/seeds/bloodtomatoseed,
/obj/item/weapon/storage/pill_bottle/zoom,
/obj/item/weapon/storage/pill_bottle/happy,
/obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe)
name = "Contraband crate"
cost = 30
containertype = /obj/structure/closet/crate
containername = "Unlabeled crate"
contraband = 1
/datum/supply_packs/boxes
name = "Empty Box supplies"
contains = list(/obj/item/weapon/storage/box,
/obj/item/weapon/storage/box,
/obj/item/weapon/storage/box,
/obj/item/weapon/storage/box,
/obj/item/weapon/storage/box,
/obj/item/weapon/storage/box,
/obj/item/weapon/storage/box,
/obj/item/weapon/storage/box,
/obj/item/weapon/storage/box,
/obj/item/weapon/storage/box)
cost = 5
containertype = "/obj/structure/closet/crate"
containername = "Empty Box crate"
/datum/supply_packs/surgery
name = "Surgery crate"
contains = list(/obj/item/weapon/cautery,
/obj/item/weapon/surgicaldrill,
/obj/item/clothing/mask/breath/medical,
/obj/item/weapon/tank/anesthetic,
/obj/item/weapon/FixOVein,
/obj/item/weapon/hemostat,
/obj/item/weapon/scalpel,
/obj/item/weapon/bonegel,
/obj/item/weapon/retractor,
/obj/item/weapon/bonesetter,
/obj/item/weapon/circular_saw)
cost = 25
containertype = "/obj/structure/closet/crate/secure"
containername = "Surgery crate"
access = access_medical
group = "Medical / Science"
/datum/supply_packs/sterile
name = "Sterile equipment crate"
contains = list(/obj/item/clothing/under/rank/medical/green,
/obj/item/clothing/under/rank/medical/green,
/obj/item/weapon/storage/stma_kit,
/obj/item/weapon/storage/lglo_kit)
cost = 10
containertype = "/obj/structure/closet/crate"
containername = "Sterile equipment crate"
group = "Medical / Science"