Files
Krysonism 075de00420 Chekov's Canister! Adds missing resupply canisters, makes them constructable & spawn in maint,. (#93028)
## About The Pull Request

This is was created because I found several rare and exciting canisters
in game and then finding out there is no way to actually construct the
vendor they belong to!...

<img width="768" height="385" alt="image"
src="https://github.com/user-attachments/assets/70261cea-daaf-41df-a212-21cef6d6bd0c"
/>

### This PR:

* Makes all noteable vendors constructable, if you have the canister. 
* Adds canisters to syndismokes, syndiechem, liberation station,
magivend, shambler's juice and bombuddy
* Replaces the old tptally random canisters spawner, with a variety of
spawners weighted for power and split according to different themes.
* Adds the new main canister spawner to maint. 

### Spawner weights

The random canister spawner from maintenance has a:

* **93,5%** chance to spawn a common station vendor refill(with weights
for wardrobes being somewhat reduced.)
* **6%** chance to spawn a rare and special vendor refill.
* **0.5%** chance to spawn a oddity level., super powerful vendor
refill.

## Why It's Good For The Game

One must never place a filled canister in maint if it isn't going to be
constructed It's wrong to make promises you don't mean to keep.

## Changelog

🆑
add: Nearly all notable vendors are now constructable if you have the
canister.
add Added refill canisters for syndiesmokes, liberation station,
magivend, bombuddy 3000, shambler's juice and syndichem.
add: Random vending refill canisters now have a chance to spawn in
maint.
image: Robco Toolmaker and Centdrobe canisters have new sprites.
/🆑
2025-10-02 20:12:46 +02:00

67 lines
2.1 KiB
Plaintext

/obj/machinery/vending/snack
name = "\improper Getmore Chocolate Corp"
desc = "A snack machine courtesy of the Getmore Chocolate Corporation, based out of Mars."
product_slogans = "Try our new nougat bar!;Twice the calories for half the price!"
product_ads = "The healthiest!;Award-winning chocolate bars!;Mmm! So good!;Oh my god it's so juicy!;Have a snack.;Snacks are good for you!;Have some more Getmore!;Best quality snacks straight from mars.;We love chocolate!;Try our new jerky!"
icon_state = "snack"
panel_type = "panel2"
light_mask = "snack-light-mask"
products = list(
/obj/item/food/spacetwinkie = 6,
/obj/item/food/cheesiehonkers = 6,
/obj/item/food/candy = 6,
/obj/item/food/chips = 6,
/obj/item/food/chips/shrimp = 6,
/obj/item/food/sosjerky = 6,
/obj/item/food/cornchips/random = 6,
/obj/item/food/sosjerky = 6,
/obj/item/food/no_raisin = 6,
/obj/item/food/peanuts = 6,
/obj/item/food/peanuts/random = 3,
/obj/item/food/cnds = 6,
/obj/item/food/cnds/random = 3,
/obj/item/food/semki = 6,
/obj/item/reagent_containers/cup/glass/dry_ramen = 3,
/obj/item/storage/box/gum = 3,
/obj/item/food/energybar = 6,
/obj/item/food/hot_shots = 6,
/obj/item/food/sticko = 6,
/obj/item/food/sticko/random = 3,
/obj/item/food/shok_roks = 6,
/obj/item/food/shok_roks/random = 3,
)
contraband = list(
/obj/item/food/syndicake = 6,
/obj/item/food/peanuts/ban_appeal = 3,
/obj/item/food/candy/bronx = 1,
)
premium = list(
/obj/item/food/spacers_sidekick = 3,
/obj/item/food/pistachios = 3,
/obj/item/food/swirl_lollipop = 3,
)
refill_canister = /obj/item/vending_refill/snack
req_access = list(ACCESS_KITCHEN)
default_price = PAYCHECK_CREW * 0.6
extra_price = PAYCHECK_CREW
payment_department = ACCOUNT_SRV
/obj/item/vending_refill/snack
machine_name = "Getmore Chocolate Corp"
/obj/machinery/vending/snack/blue
icon_state = "snackblue"
allow_custom = FALSE
/obj/machinery/vending/snack/orange
icon_state = "snackorange"
allow_custom = FALSE
/obj/machinery/vending/snack/green
icon_state = "snackgreen"
allow_custom = FALSE
/obj/machinery/vending/snack/teal
icon_state = "snackteal"
allow_custom = FALSE