mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-05 22:43:46 +00:00
About The Pull Request I didn't like how the wardrobe replaced lockers but you couldn't clean up after yourself say once you switched to the nurse's outfit as a doctor. Now, anyone can put clothes in a wardrobe so long as that clothing is a vendable product of said wardrobe (No engineering jumpsuits in science vendor, etc.). Building off the previous snack machine vendor, this lays the framework for ALL vendors to allow all sorts of items to be inputted into vendors, all you have to do is change canLoadItem(obj/item/I,mob/user) to TRUE for the items you want the vendor to accept! It also has an option to restrict loading by changing canload_access_list. NOTE: having any of the access permits input instead of all access is needed to input (important distinction!) ECONOMY: This will make it so any clothes you put in becomes a sellable product. It does NOT make it free unless you can already access the vendor's contents for free. Code improvement + minor QoL with minute balance implications. If you want to discuss how making it easier to clean up your unused clothes makes it more difficult for antags to sneak then I'm in trouble lol. Why It's Good For The Game Changelog cl ExcessiveUseOfVending tweak: Wardrobe Vendors will now accept clothing types they sell. Now you can clean up after getting that cool alternate uniform! code: see PR #43964 on how to easily setup a vending machine to accept items! /cl
149 lines
6.5 KiB
Plaintext
149 lines
6.5 KiB
Plaintext
/obj/machinery/vending/autodrobe
|
|
name = "\improper AutoDrobe"
|
|
desc = "A vending machine for costumes."
|
|
icon_state = "theater"
|
|
icon_deny = "theater-deny"
|
|
req_access = list(ACCESS_THEATRE)
|
|
product_slogans = "Dress for success!;Suited and booted!;It's show time!;Why leave style up to fate? Use AutoDrobe!"
|
|
vend_reply = "Thank you for using AutoDrobe!"
|
|
products = list(/obj/item/clothing/suit/chickensuit = 1,
|
|
/obj/item/clothing/head/chicken = 1,
|
|
/obj/item/clothing/under/rank/blueclown = 1,
|
|
/obj/item/clothing/under/rank/greenclown = 1,
|
|
/obj/item/clothing/under/rank/yellowclown = 1,
|
|
/obj/item/clothing/under/rank/orangeclown = 1,
|
|
/obj/item/clothing/under/rank/purpleclown = 1,
|
|
/obj/item/clothing/under/gladiator = 1,
|
|
/obj/item/clothing/head/helmet/gladiator = 1,
|
|
/obj/item/clothing/under/gimmick/rank/captain/suit = 1,
|
|
/obj/item/clothing/head/flatcap = 1,
|
|
/obj/item/clothing/suit/toggle/labcoat/mad = 1,
|
|
/obj/item/clothing/shoes/jackboots = 1,
|
|
/obj/item/clothing/under/schoolgirl = 1,
|
|
/obj/item/clothing/under/schoolgirl/red = 1,
|
|
/obj/item/clothing/under/schoolgirl/green = 1,
|
|
/obj/item/clothing/under/schoolgirl/orange = 1,
|
|
/obj/item/clothing/head/kitty = 1,
|
|
/obj/item/clothing/under/skirt/black = 1,
|
|
/obj/item/clothing/head/beret = 1,
|
|
/obj/item/clothing/accessory/waistcoat = 1,
|
|
/obj/item/clothing/under/suit_jacket = 1,
|
|
/obj/item/clothing/head/that = 1,
|
|
/obj/item/clothing/under/kilt = 1,
|
|
/obj/item/clothing/head/beret = 1,
|
|
/obj/item/clothing/head/beret/vintage = 1,
|
|
/obj/item/clothing/head/beret/archaic = 1,
|
|
/obj/item/clothing/accessory/waistcoat = 1,
|
|
/obj/item/clothing/glasses/monocle =1,
|
|
/obj/item/clothing/head/bowler = 1,
|
|
/obj/item/cane = 1,
|
|
/obj/item/clothing/under/sl_suit = 1,
|
|
/obj/item/clothing/mask/fakemoustache = 1,
|
|
/obj/item/clothing/suit/bio_suit/plaguedoctorsuit = 1,
|
|
/obj/item/clothing/head/plaguedoctorhat = 1,
|
|
/obj/item/clothing/mask/gas/plaguedoctor = 1,
|
|
/obj/item/clothing/suit/toggle/owlwings = 1,
|
|
/obj/item/clothing/under/owl = 1,
|
|
/obj/item/clothing/mask/gas/owl_mask = 1,
|
|
/obj/item/clothing/suit/toggle/owlwings/griffinwings = 1,
|
|
/obj/item/clothing/under/griffin = 1,
|
|
/obj/item/clothing/shoes/griffin = 1,
|
|
/obj/item/clothing/head/griffin = 1,
|
|
/obj/item/clothing/suit/apron = 1,
|
|
/obj/item/clothing/under/waiter = 1,
|
|
/obj/item/clothing/suit/jacket/miljacket = 1,
|
|
/obj/item/clothing/under/pirate = 1,
|
|
/obj/item/clothing/suit/pirate = 1,
|
|
/obj/item/clothing/head/pirate = 1,
|
|
/obj/item/clothing/head/bandana = 1,
|
|
/obj/item/clothing/head/bandana = 1,
|
|
/obj/item/clothing/under/soviet = 1,
|
|
/obj/item/clothing/head/ushanka = 1,
|
|
/obj/item/clothing/suit/imperium_monk = 1,
|
|
/obj/item/clothing/mask/gas/cyborg = 1,
|
|
/obj/item/clothing/suit/chaplainsuit/holidaypriest = 1,
|
|
/obj/item/clothing/suit/chaplainsuit/whiterobe = 1,
|
|
/obj/item/clothing/head/wizard/marisa/fake = 1,
|
|
/obj/item/clothing/suit/wizrobe/marisa/fake = 1,
|
|
/obj/item/clothing/under/sundress = 1,
|
|
/obj/item/clothing/head/witchwig = 1,
|
|
/obj/item/staff/broom = 1,
|
|
/obj/item/clothing/suit/wizrobe/fake = 1,
|
|
/obj/item/clothing/head/wizard/fake = 1,
|
|
/obj/item/staff = 3,
|
|
/obj/item/clothing/mask/gas/sexyclown = 1,
|
|
/obj/item/clothing/under/rank/clown/sexy = 1,
|
|
/obj/item/clothing/mask/gas/sexymime = 1,
|
|
/obj/item/clothing/under/sexymime = 1,
|
|
/obj/item/clothing/mask/rat/bat = 1,
|
|
/obj/item/clothing/mask/rat/bee = 1,
|
|
/obj/item/clothing/mask/rat/bear = 1,
|
|
/obj/item/clothing/mask/rat/raven = 1,
|
|
/obj/item/clothing/mask/rat/jackal = 1,
|
|
/obj/item/clothing/mask/rat/fox = 1,
|
|
/obj/item/clothing/mask/frog = 1,
|
|
/obj/item/clothing/mask/rat/tribal = 1,
|
|
/obj/item/clothing/mask/rat = 1,
|
|
/obj/item/clothing/suit/apron/overalls = 1,
|
|
/obj/item/clothing/head/rabbitears =1,
|
|
/obj/item/clothing/head/sombrero = 1,
|
|
/obj/item/clothing/head/sombrero/green = 1,
|
|
/obj/item/clothing/suit/poncho = 1,
|
|
/obj/item/clothing/suit/poncho/green = 1,
|
|
/obj/item/clothing/suit/poncho/red = 1,
|
|
/obj/item/clothing/under/maid = 1,
|
|
/obj/item/clothing/under/janimaid = 1,
|
|
/obj/item/clothing/glasses/cold=1,
|
|
/obj/item/clothing/glasses/heat=1,
|
|
/obj/item/clothing/suit/whitedress = 1,
|
|
/obj/item/clothing/under/jester = 1,
|
|
/obj/item/clothing/head/jester = 1,
|
|
/obj/item/clothing/under/villain = 1,
|
|
/obj/item/clothing/shoes/singery = 1,
|
|
/obj/item/clothing/under/singery = 1,
|
|
/obj/item/clothing/shoes/singerb = 1,
|
|
/obj/item/clothing/under/singerb = 1,
|
|
/obj/item/clothing/suit/hooded/carp_costume = 1,
|
|
/obj/item/clothing/suit/hooded/ian_costume = 1,
|
|
/obj/item/clothing/suit/hooded/bee_costume = 1,
|
|
/obj/item/clothing/suit/snowman = 1,
|
|
/obj/item/clothing/head/snowman = 1,
|
|
/obj/item/clothing/mask/joy = 1,
|
|
/obj/item/clothing/head/cueball = 1,
|
|
/obj/item/clothing/under/scratch = 1,
|
|
/obj/item/clothing/under/sailor = 1,
|
|
/obj/item/clothing/ears/headphones = 2,
|
|
/obj/item/clothing/head/wig/random = 3)
|
|
contraband = list(/obj/item/clothing/suit/judgerobe = 1,
|
|
/obj/item/clothing/head/powdered_wig = 1,
|
|
/obj/item/gun/magic/wand = 2,
|
|
/obj/item/clothing/glasses/sunglasses/garb = 2,
|
|
/obj/item/clothing/glasses/blindfold = 1,
|
|
/obj/item/clothing/mask/muzzle = 2)
|
|
premium = list(/obj/item/clothing/suit/pirate/captain = 2,
|
|
/obj/item/clothing/head/pirate/captain = 2,
|
|
/obj/item/clothing/under/rank/rainbowclown = 1,
|
|
/obj/item/clothing/head/helmet/roman/fake = 1,
|
|
/obj/item/clothing/head/helmet/roman/legionnaire/fake = 1,
|
|
/obj/item/clothing/under/roman = 1,
|
|
/obj/item/clothing/shoes/roman = 1,
|
|
/obj/item/shield/riot/roman/fake = 1,
|
|
/obj/item/clothing/suit/chaplainsuit/clownpriest = 1,
|
|
/obj/item/clothing/head/clownmitre = 1,
|
|
/obj/item/skub = 1,)
|
|
|
|
/obj/machinery/vending/autodrobe/canLoadItem(obj/item/I,mob/user)
|
|
return (I.type in products)
|
|
|
|
refill_canister = /obj/item/vending_refill/autodrobe
|
|
default_price = 50
|
|
extra_price = 75
|
|
payment_department = ACCOUNT_SRV
|
|
/obj/machinery/vending/autodrobe/all_access
|
|
desc = "A vending machine for costumes. This model appears to have no access restrictions."
|
|
req_access = null
|
|
|
|
/obj/item/vending_refill/autodrobe
|
|
machine_name = "AutoDrobe"
|
|
icon_state = "refill_costume"
|