From 075de00420a4338125ead894ea22af2f4e18f1cf Mon Sep 17 00:00:00 2001 From: Krysonism <49783092+Krysonism@users.noreply.github.com> Date: Thu, 2 Oct 2025 20:12:46 +0200 Subject: [PATCH] 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!... image ### 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 :cl: 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. /:cl: --- .../SpaceRuins/hauntedtradingpost.dmm | 5 - code/_globalvars/lists/maintenance_loot.dm | 2 +- .../effects/spawners/random/engineering.dm | 114 +++++++++++++++++- .../machines/machine_circuitboards.dm | 23 +--- .../research/designs/machine_designs.dm | 10 -- .../research/techweb/nodes/syndicate_nodes.dm | 1 - code/modules/vending/assist.dm | 1 - code/modules/vending/autodrobe.dm | 1 - code/modules/vending/boozeomat.dm | 1 - code/modules/vending/cartridge.dm | 1 - code/modules/vending/cigarette.dm | 11 +- code/modules/vending/clothesmate.dm | 1 - code/modules/vending/coffee.dm | 1 - code/modules/vending/cola.dm | 8 +- code/modules/vending/custom.dm | 1 - code/modules/vending/cytopro.dm | 1 - code/modules/vending/donk.dm | 1 - code/modules/vending/drinnerware.dm | 1 - code/modules/vending/engineering.dm | 3 +- code/modules/vending/engivend.dm | 1 - code/modules/vending/games.dm | 1 - code/modules/vending/liberation.dm | 5 + code/modules/vending/liberation_toy.dm | 2 +- code/modules/vending/magivend.dm | 5 + code/modules/vending/medical.dm | 1 - code/modules/vending/medical_wall.dm | 1 - code/modules/vending/modularpc.dm | 1 - code/modules/vending/nutrimax.dm | 1 - code/modules/vending/plasmaresearch.dm | 5 + code/modules/vending/robotics.dm | 1 - code/modules/vending/runic_vendor.dm | 2 +- code/modules/vending/security.dm | 1 - code/modules/vending/snack.dm | 1 - code/modules/vending/sovietsoda.dm | 1 - code/modules/vending/subtype.dm | 1 + code/modules/vending/sustenance.dm | 1 - code/modules/vending/syndichem.dm | 5 + code/modules/vending/toys.dm | 1 - code/modules/vending/vendor/_vending.dm | 2 +- code/modules/vending/wardrobes.dm | 20 +-- code/modules/vending/youtool.dm | 1 - icons/obj/vending_restock.dmi | Bin 2474 -> 8437 bytes .../93028_circuitboard_vending_donk.txt | 2 + 43 files changed, 157 insertions(+), 92 deletions(-) create mode 100644 tools/UpdatePaths/Scripts/93028_circuitboard_vending_donk.txt diff --git a/_maps/RandomRuins/SpaceRuins/hauntedtradingpost.dmm b/_maps/RandomRuins/SpaceRuins/hauntedtradingpost.dmm index 03a5efc398f..7acaedcc50c 100644 --- a/_maps/RandomRuins/SpaceRuins/hauntedtradingpost.dmm +++ b/_maps/RandomRuins/SpaceRuins/hauntedtradingpost.dmm @@ -879,7 +879,6 @@ }, /obj/item/coin/gold, /obj/item/vending_refill/donksnackvendor, -/obj/item/circuitboard/machine/vending/donksnackvendor, /turf/open/floor/catwalk_floor/iron_dark, /area/ruin/space/has_grav/hauntedtradingpost/public) "hL" = ( @@ -4345,10 +4344,6 @@ /turf/open/floor/wood, /area/ruin/space/has_grav/hauntedtradingpost/public/corridor) "LI" = ( -/obj/item/circuitboard/machine/vending/donksofttoyvendor{ - pixel_y = -2; - pixel_x = -6 - }, /obj/effect/decal/cleanable/glass, /turf/open/floor/carpet/donk, /area/ruin/space/has_grav/hauntedtradingpost/employees) diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index 6997f90aab5..b9abc260dc8 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -111,7 +111,7 @@ GLOBAL_LIST_INIT(common_loot, list( //common: basic items /obj/item/stack/sheet/iron/twenty = 1, /obj/item/stack/sheet/mineral/plasma = 1, /obj/item/stock_parts/power_store/cell = 1, - + /obj/effect/spawner/random/engineering/vending_restock = 1, //assemblies /obj/item/assembly/health = 1, /obj/item/assembly/igniter = 1, diff --git a/code/game/objects/effects/spawners/random/engineering.dm b/code/game/objects/effects/spawners/random/engineering.dm index 8075b5fc8af..0b628f3ee33 100644 --- a/code/game/objects/effects/spawners/random/engineering.dm +++ b/code/game/objects/effects/spawners/random/engineering.dm @@ -118,8 +118,118 @@ /obj/effect/spawner/random/engineering/vending_restock name = "vending restock spawner" icon_state = "vending_restock" - loot_subtype_path = /obj/item/vending_refill - loot = list() + loot = list( + /obj/effect/spawner/random/engineering/vending_restock/common = 935, + /obj/effect/spawner/random/engineering/vending_restock/rare = 60, + /obj/effect/spawner/random/engineering/vending_restock/oddity = 5, + ) + +/obj/effect/spawner/random/engineering/vending_restock/wardrobe + name = "wardrobe vending restock spawner" + icon_state = "vending_restock" + loot = list( + /obj/item/vending_refill/wardrobe/det_wardrobe = 1, + /obj/item/vending_refill/wardrobe/medi_wardrobe = 1, + /obj/item/vending_refill/wardrobe/chem_wardrobe = 1, + /obj/item/vending_refill/wardrobe/viro_wardrobe = 1, + /obj/item/vending_refill/wardrobe/sec_wardrobe = 1, + /obj/item/vending_refill/wardrobe/science_wardrobe = 1, + /obj/item/vending_refill/wardrobe/robo_wardrobe = 1, + /obj/item/vending_refill/wardrobe/gene_wardrobe = 1, + /obj/item/vending_refill/wardrobe/engi_wardrobe = 1, + /obj/item/vending_refill/wardrobe/atmos_wardrobe = 1, + /obj/item/vending_refill/wardrobe/cargo_wardrobe = 1, + /obj/item/vending_refill/wardrobe/hydro_wardrobe = 1, + /obj/item/vending_refill/wardrobe/chap_wardrobe = 1, + /obj/item/vending_refill/wardrobe/chef_wardrobe = 1, + /obj/item/vending_refill/wardrobe/chap_wardrobe = 1, + /obj/item/vending_refill/wardrobe/curator_wardrobe= 1, + /obj/item/vending_refill/wardrobe/jani_wardrobe = 1, + /obj/item/vending_refill/wardrobe/law_wardrobe = 1, + + ) + + +/obj/effect/spawner/random/engineering/vending_restock/food_and_drink + name = "food & drink vending restock spawner" + icon_state = "vending_restock" + loot = list( + /obj/item/vending_refill/cigarette = 1, + /obj/item/vending_refill/cola = 1, + /obj/item/vending_refill/coffee = 1, + /obj/item/vending_refill/snack = 1, + /obj/item/vending_refill/boozeomat = 1, + /obj/item/vending_refill/sustenance = 1, + /obj/item/vending_refill/sovietsoda = 1, + /obj/item/vending_refill/cola/shamblers = 1, + ) + +/obj/effect/spawner/random/engineering/vending_restock/medical + name = "medical vending restock spawner" + icon_state = "vending_restock" + loot = list( + /obj/item/vending_refill/wallmed = 1, + /obj/item/vending_refill/medical = 1, + /obj/item/vending_refill/drugs = 1, + ) + +/obj/effect/spawner/random/engineering/vending_restock/engineering + name = "engineering vending restock spawner" + icon_state = "vending_restock" + loot = list( + /obj/item/vending_refill/engivend = 1, + /obj/item/vending_refill/engineering = 1, + /obj/item/vending_refill/youtool = 1, + /obj/item/vending_refill/modularpc = 1, + /obj/item/vending_refill/robotics = 1, + /obj/item/vending_refill/assist = 1, + ) + +//common everyday vendors +/obj/effect/spawner/random/engineering/vending_restock/common + name = "common vending restock spawner" + icon_state = "vending_restock" + loot = list( + /obj/effect/spawner/random/engineering/vending_restock/wardrobe = 8, //roughtly reduced to half weight due to lameness of drobe contents + /obj/effect/spawner/random/engineering/vending_restock/food_and_drink = 8, + /obj/effect/spawner/random/engineering/vending_restock/engineering = 6, + /obj/effect/spawner/random/engineering/vending_restock/medical = 3, + /obj/item/vending_refill/cart = 1, + /obj/item/vending_refill/clothing = 1, + /obj/item/vending_refill/autodrobe = 1, + /obj/item/vending_refill/security = 1, + /obj/item/vending_refill/custom = 1, + /obj/item/vending_refill/dinnerware = 1, + /obj/item/vending_refill/cytopro = 1, + /obj/item/vending_refill/hydronutrients = 1, + /obj/item/vending_refill/hydroseeds = 1, + /obj/item/vending_refill/games = 1, + ) + +//vendors that should feel rare and special but are unlikely to warp the shift too much +/obj/effect/spawner/random/engineering/vending_restock/rare + name = "rare vending restock spawner" + icon_state = "vending_restock" + loot = list( + /obj/item/vending_refill/syndichem = 1, + /obj/item/vending_refill/cigarette/syndicate = 1, + /obj/item/vending_refill/plasmaresearch = 1, + /obj/item/vending_refill/donksnackvendor = 1, + /obj/item/vending_refill/donksoft = 1, + /obj/item/vending_refill/hotdog = 1, + ) + +//high chance to derail the shift, use cautiously +/obj/effect/spawner/random/engineering/vending_restock/oddity + name = "oddity vending restock spawner" + icon_state = "vending_restock" + loot = list( + + /obj/item/vending_refill/magivend = 1, + /obj/item/vending_refill/liberation = 1, + /obj/item/vending_refill/wardrobe/cent_wardrobe = 1, + + ) /obj/effect/spawner/random/engineering/atmospherics_portable name = "portable atmospherics machine spawner" diff --git a/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm index ededd868fb7..9391da3c072 100644 --- a/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm +++ b/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm @@ -659,7 +659,7 @@ if(!valid_vendor_names_paths) valid_vendor_names_paths = list() for(var/obj/machinery/vending/vendor_type as anything in subtypesof(/obj/machinery/vending)) - if(vendor_type::allow_custom) + if(vendor_type::allow_custom && vendor_type::refill_canister) valid_vendor_names_paths[vendor_type::name] = vendor_type /obj/item/circuitboard/machine/vendor/screwdriver_act(mob/living/user, obj/item/tool) @@ -688,27 +688,6 @@ set_type(machine.type) return ..() -/obj/item/circuitboard/machine/vending/donksofttoyvendor - name = "Donksoft Toy Vendor" - build_path = /obj/machinery/vending/donksofttoyvendor - req_components = list( - /obj/item/stack/sheet/glass = 1, - /obj/item/vending_refill/donksoft = 1) - -/obj/item/circuitboard/machine/vending/syndicatedonksofttoyvendor - name = "Syndicate Donksoft Toy Vendor" - build_path = /obj/machinery/vending/toyliberationstation - req_components = list( - /obj/item/stack/sheet/glass = 1, - /obj/item/vending_refill/donksoft = 1) - -/obj/item/circuitboard/machine/vending/donksnackvendor - name = "Donk Co Snack Vendor" - build_path = /obj/machinery/vending/donksnack - req_components = list( - /obj/item/stack/sheet/glass = 1, - /obj/item/vending_refill/donksnackvendor = 1) - /obj/item/circuitboard/machine/bountypad name = "Civilian Bounty Pad" greyscale_colors = CIRCUIT_COLOR_GENERIC diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm index 086b4ca947b..b93186480ac 100644 --- a/code/modules/research/designs/machine_designs.dm +++ b/code/modules/research/designs/machine_designs.dm @@ -891,16 +891,6 @@ ) departmental_flags = DEPARTMENT_BITFLAG_SERVICE -/datum/design/board/donksofttoyvendor - name = "Donksoft Toy Vendor Board" - desc = "The circuit board for a Donksoft Toy Vendor." - id = "donksofttoyvendor" - build_path = /obj/item/circuitboard/machine/vending/donksofttoyvendor - category = list( - RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_SERVICE - ) - departmental_flags = DEPARTMENT_BITFLAG_SERVICE - /datum/design/board/cell_charger name = "Cell Charger Board" desc = "The circuit board for a cell charger." diff --git a/code/modules/research/techweb/nodes/syndicate_nodes.dm b/code/modules/research/techweb/nodes/syndicate_nodes.dm index 7743b9442f8..f4317669597 100644 --- a/code/modules/research/techweb/nodes/syndicate_nodes.dm +++ b/code/modules/research/techweb/nodes/syndicate_nodes.dm @@ -8,7 +8,6 @@ "ai_cam_upgrade", "borg_syndicate_module", "donksoft_refill", - "donksofttoyvendor", "largecrossbow", "mag_autorifle", "mag_autorifle_ap", diff --git a/code/modules/vending/assist.dm b/code/modules/vending/assist.dm index aff6ed1958c..9e5a3c4d8ec 100644 --- a/code/modules/vending/assist.dm +++ b/code/modules/vending/assist.dm @@ -34,7 +34,6 @@ /obj/item/universal_scanner = 3, /obj/item/vending_refill/custom = 3, ) - allow_custom = TRUE refill_canister = /obj/item/vending_refill/assist product_ads = "Only the finest!;Have some tools.;The most robust equipment.;The finest gear in space!" diff --git a/code/modules/vending/autodrobe.dm b/code/modules/vending/autodrobe.dm index 8ed868b0391..ffdf0bd5aa0 100644 --- a/code/modules/vending/autodrobe.dm +++ b/code/modules/vending/autodrobe.dm @@ -234,7 +234,6 @@ GLOBAL_VAR_INIT(all_autodrobe_items, (autodrobe_costumes_items +\ extra_price = PAYCHECK_COMMAND payment_department = ACCOUNT_SRV light_mask = "theater-light-mask" - allow_custom = TRUE /obj/machinery/vending/autodrobe/Initialize(mapload) product_categories = list( diff --git a/code/modules/vending/boozeomat.dm b/code/modules/vending/boozeomat.dm index 9f867f9f97b..759ac253e92 100644 --- a/code/modules/vending/boozeomat.dm +++ b/code/modules/vending/boozeomat.dm @@ -90,7 +90,6 @@ extra_price = PAYCHECK_COMMAND payment_department = ACCOUNT_SRV light_mask = "boozeomat-light-mask" - allow_custom = TRUE /obj/machinery/vending/boozeomat/syndicate age_restrictions = FALSE diff --git a/code/modules/vending/cartridge.dm b/code/modules/vending/cartridge.dm index 852c88452ad..ccc13b7de72 100644 --- a/code/modules/vending/cartridge.dm +++ b/code/modules/vending/cartridge.dm @@ -20,7 +20,6 @@ extra_price = PAYCHECK_COMMAND * 2.5 payment_department = ACCOUNT_SRV light_mask = "cart-light-mask" - allow_custom = TRUE /obj/item/vending_refill/cart machine_name = "PTech" diff --git a/code/modules/vending/cigarette.dm b/code/modules/vending/cigarette.dm index 8925d7ecd2a..4fd003c98df 100644 --- a/code/modules/vending/cigarette.dm +++ b/code/modules/vending/cigarette.dm @@ -35,9 +35,11 @@ extra_price = PAYCHECK_COMMAND payment_department = ACCOUNT_SRV light_mask = "cigs-light-mask" - allow_custom = TRUE /obj/machinery/vending/cigarette/syndicate + name = "\improper Waffle Co Breakfast Cigarettes" + product_slogans = "Start your day the right way!;Breakfast of champions!;Smokes that mean business!;Omnizine, your uplink to smooth taste!" + product_ads = "Waffle Co's science advisory: omnizine may prevent most forms of smoking-related illness!*;New study: Rival corporations more trusting of men who smoke!;A Waffle Co cigarette makes yellow star feel like black orbit!" products = list( /obj/item/storage/fancy/cigarettes/cigpack_syndicate = 7, /obj/item/storage/fancy/cigarettes/cigpack_uplift = 3, @@ -51,7 +53,12 @@ /obj/item/storage/fancy/rollingpapers = 5, ) initial_language_holder = /datum/language_holder/syndicate - allow_custom = FALSE + refill_canister = /obj/item/vending_refill/cigarette/syndicate + +/obj/item/vending_refill/cigarette/syndicate + machine_name = "Waffle Co Breakfast Cigarettes" + icon_state = "refill_syndismoke" + /obj/machinery/vending/cigarette/beach //Used in the lavaland_biodome_beach.dmm ruin name = "\improper ShadyCigs Ultra" diff --git a/code/modules/vending/clothesmate.dm b/code/modules/vending/clothesmate.dm index b9acfe563e9..9ad6ff54dfd 100644 --- a/code/modules/vending/clothesmate.dm +++ b/code/modules/vending/clothesmate.dm @@ -232,7 +232,6 @@ payment_department = NO_FREEBIES light_mask = "wardrobe-light-mask" light_color = LIGHT_COLOR_ELECTRIC_GREEN - allow_custom = TRUE /obj/item/vending_refill/clothing machine_name = "ClothesMate" diff --git a/code/modules/vending/coffee.dm b/code/modules/vending/coffee.dm index e75cc4f47ce..10b895d1367 100644 --- a/code/modules/vending/coffee.dm +++ b/code/modules/vending/coffee.dm @@ -19,7 +19,6 @@ payment_department = ACCOUNT_SRV light_mask = "coffee-light-mask" light_color = COLOR_DARK_MODERATE_ORANGE - allow_custom = TRUE /obj/item/vending_refill/coffee machine_name = "Solar's Best Hot Drinks" diff --git a/code/modules/vending/cola.dm b/code/modules/vending/cola.dm index 53aa82f8e12..aab8ab39e8a 100644 --- a/code/modules/vending/cola.dm +++ b/code/modules/vending/cola.dm @@ -35,7 +35,6 @@ default_price = PAYCHECK_CREW * 0.7 extra_price = PAYCHECK_CREW payment_department = ACCOUNT_SRV - allow_custom = TRUE var/static/list/spiking_booze = list( // Your "common" spiking booze @@ -152,8 +151,13 @@ product_slogans = "~Shake me up some of that Shambler's Juice!~" product_ads = "Refreshing!;Thirsty for DNA? Satiate your craving!;Over 1 trillion souls drank!;Made with real DNA!;The hivemind demands your thirst!;Drink up!;Absorb your thirst." light_mask = "shamblers-light-mask" + refill_canister = /obj/item/vending_refill/cola/shamblers light_color = COLOR_MOSTLY_PURE_PINK - allow_custom = FALSE + + +/obj/item/vending_refill/cola/shamblers + machine_name = "Shambler's Vendor" + icon_state = "refill_shamblers" /obj/machinery/vending/cola/shamblers/Initialize(mapload) . = ..() diff --git a/code/modules/vending/custom.dm b/code/modules/vending/custom.dm index 3637ff84a68..10025d394ef 100644 --- a/code/modules/vending/custom.dm +++ b/code/modules/vending/custom.dm @@ -9,7 +9,6 @@ payment_department = NO_FREEBIES light_mask = "custom-light-mask" panel_type = "panel20" - allow_custom = TRUE refill_canister = /obj/item/vending_refill/custom fish_source_path = /datum/fish_source/vending/custom diff --git a/code/modules/vending/cytopro.dm b/code/modules/vending/cytopro.dm index c27b9e537b2..ce351be7769 100644 --- a/code/modules/vending/cytopro.dm +++ b/code/modules/vending/cytopro.dm @@ -29,7 +29,6 @@ default_price = PAYCHECK_CREW * 1 extra_price = PAYCHECK_COMMAND * 0.5 payment_department = ACCOUNT_SCI - allow_custom = TRUE /obj/item/vending_refill/cytopro machine_name = "CytoPro" diff --git a/code/modules/vending/donk.dm b/code/modules/vending/donk.dm index e3851bee7f1..4172c8450cd 100644 --- a/code/modules/vending/donk.dm +++ b/code/modules/vending/donk.dm @@ -6,7 +6,6 @@ icon_state = "snackdonk" panel_type = "panel18" light_mask = "donksoft-light-mask" - circuit = /obj/item/circuitboard/machine/vending/donksnackvendor products = list( /obj/item/food/donkpocket = 6, /obj/item/food/donkpocket/berry = 6, diff --git a/code/modules/vending/drinnerware.dm b/code/modules/vending/drinnerware.dm index 648d5762f9e..c37750a2d3d 100644 --- a/code/modules/vending/drinnerware.dm +++ b/code/modules/vending/drinnerware.dm @@ -69,7 +69,6 @@ extra_price = PAYCHECK_CREW * 2.4 payment_department = ACCOUNT_SRV light_mask = "dinnerware-light-mask" - allow_custom = TRUE /obj/item/vending_refill/dinnerware machine_name = "Plasteel Chef's Dinnerware Vendor" diff --git a/code/modules/vending/engineering.dm b/code/modules/vending/engineering.dm index 9b4999161df..5288e2efc85 100644 --- a/code/modules/vending/engineering.dm +++ b/code/modules/vending/engineering.dm @@ -35,8 +35,7 @@ extra_price = PAYCHECK_COMMAND * 1.5 payment_department = ACCOUNT_ENG light_mask = "engi-light-mask" - allow_custom = TRUE /obj/item/vending_refill/engineering machine_name = "Robco Tool Maker" - icon_state = "refill_engi" + icon_state = "refill_roroco" diff --git a/code/modules/vending/engivend.dm b/code/modules/vending/engivend.dm index 256ea76870f..13e30e1783f 100644 --- a/code/modules/vending/engivend.dm +++ b/code/modules/vending/engivend.dm @@ -32,7 +32,6 @@ extra_price = PAYCHECK_COMMAND * 1.5 payment_department = ACCOUNT_ENG light_mask = "engivend-light-mask" - allow_custom = TRUE /obj/item/vending_refill/engivend machine_name = "Engi-Vend" diff --git a/code/modules/vending/games.dm b/code/modules/vending/games.dm index a5b38b8fa0d..1b5722dbc12 100644 --- a/code/modules/vending/games.dm +++ b/code/modules/vending/games.dm @@ -115,7 +115,6 @@ extra_price = PAYCHECK_COMMAND * 1.25 payment_department = ACCOUNT_SRV light_mask = "games-light-mask" - allow_custom = TRUE /obj/item/vending_refill/games machine_name = "\improper Good Clean Fun" diff --git a/code/modules/vending/liberation.dm b/code/modules/vending/liberation.dm index a23ea87c4ef..a2875c3b9b6 100644 --- a/code/modules/vending/liberation.dm +++ b/code/modules/vending/liberation.dm @@ -35,6 +35,7 @@ ) //U S A armor_type = /datum/armor/vending_liberationstation resistance_flags = FIRE_PROOF + refill_canister = /obj/item/vending_refill/liberation default_price = PAYCHECK_COMMAND * 2.5 extra_price = PAYCHECK_COMMAND * 2.5 payment_department = ACCOUNT_SEC @@ -47,3 +48,7 @@ energy = 100 fire = 100 acid = 50 + +/obj/item/vending_refill/liberation + machine_name = "Liberation Station" + icon_state = "refill_patriot" diff --git a/code/modules/vending/liberation_toy.dm b/code/modules/vending/liberation_toy.dm index e5697793703..9ddb14e78c9 100644 --- a/code/modules/vending/liberation_toy.dm +++ b/code/modules/vending/liberation_toy.dm @@ -6,7 +6,6 @@ product_slogans = "Get your cool toys today!;Trigger a valid hunter today!;Quality toy weapons for cheap prices!;Give them to HoPs for all access!;Give them to HoS to get permabrigged!" product_ads = "Feel robust with your toys!;Express your inner child today!;Toy weapons don't kill people, but valid hunters do!;Who needs responsibilities when you have toy weapons?;Make your next murder FUN!" vend_reply = "Come back for more!" - circuit = /obj/item/circuitboard/machine/vending/syndicatedonksofttoyvendor products = list( /obj/item/card/emagfake = 4, /obj/item/hot_potato/harmless/toy = 4, @@ -37,6 +36,7 @@ extra_price = PAYCHECK_COMMAND payment_department = NO_FREEBIES light_mask = "donksoft-light-mask" + allow_custom = FALSE /datum/armor/vending_toyliberationstation melee = 100 diff --git a/code/modules/vending/magivend.dm b/code/modules/vending/magivend.dm index 51aac98fdfa..4482186d50b 100644 --- a/code/modules/vending/magivend.dm +++ b/code/modules/vending/magivend.dm @@ -21,6 +21,7 @@ contraband = list(/obj/item/reagent_containers/cup/bottle/wizarditis = 1) //No one can get to the machine to hack it anyways; for the lulz - Microwave armor_type = /datum/armor/vending_magivend resistance_flags = FIRE_PROOF + refill_canister = /obj/item/vending_refill/magivend default_price = 0 //Just in case, since its primary use is storage. extra_price = PAYCHECK_COMMAND payment_department = ACCOUNT_SRV @@ -33,3 +34,7 @@ energy = 100 fire = 100 acid = 50 + +/obj/item/vending_refill/magivend + machine_name = "MagiVend" + icon_state = "refill_magivend" diff --git a/code/modules/vending/medical.dm b/code/modules/vending/medical.dm index c94bc440663..919e285fb72 100644 --- a/code/modules/vending/medical.dm +++ b/code/modules/vending/medical.dm @@ -39,7 +39,6 @@ extra_price = PAYCHECK_COMMAND payment_department = ACCOUNT_MED light_mask = "med-light-mask" - allow_custom = TRUE /obj/item/vending_refill/medical machine_name = "NanoMed Plus" diff --git a/code/modules/vending/medical_wall.dm b/code/modules/vending/medical_wall.dm index 0b7bc91aac2..612493db94f 100644 --- a/code/modules/vending/medical_wall.dm +++ b/code/modules/vending/medical_wall.dm @@ -27,7 +27,6 @@ payment_department = ACCOUNT_MED tiltable = FALSE light_mask = "wallmed-light-mask" - allow_custom = TRUE /obj/machinery/vending/wallmed/directional allow_custom = FALSE diff --git a/code/modules/vending/modularpc.dm b/code/modules/vending/modularpc.dm index 0e894147e22..415329366c7 100644 --- a/code/modules/vending/modularpc.dm +++ b/code/modules/vending/modularpc.dm @@ -19,7 +19,6 @@ default_price = PAYCHECK_CREW extra_price = PAYCHECK_COMMAND payment_department = ACCOUNT_SCI - allow_custom = TRUE /obj/item/vending_refill/modularpc machine_name = "Deluxe Silicate Selections" diff --git a/code/modules/vending/nutrimax.dm b/code/modules/vending/nutrimax.dm index 7438dedcfc3..d7b3a0aaa5c 100644 --- a/code/modules/vending/nutrimax.dm +++ b/code/modules/vending/nutrimax.dm @@ -28,7 +28,6 @@ default_price = PAYCHECK_CREW * 0.8 extra_price = PAYCHECK_COMMAND * 0.8 payment_department = ACCOUNT_SRV - allow_custom = TRUE /obj/item/vending_refill/hydronutrients machine_name = "NutriMax" diff --git a/code/modules/vending/plasmaresearch.dm b/code/modules/vending/plasmaresearch.dm index fbe8f00dcde..bd9a11ef0a4 100644 --- a/code/modules/vending/plasmaresearch.dm +++ b/code/modules/vending/plasmaresearch.dm @@ -13,6 +13,11 @@ /obj/item/transfer_valve = 6, ) contraband = list(/obj/item/assembly/health = 3) + refill_canister = /obj/item/vending_refill/plasmaresearch default_price = PAYCHECK_CREW extra_price = PAYCHECK_CREW payment_department = ACCOUNT_SCI + +/obj/item/vending_refill/plasmaresearch + machine_name = "Bombuddy 3000" + icon_state = "refill_bombuddy" diff --git a/code/modules/vending/robotics.dm b/code/modules/vending/robotics.dm index 7e813d78e08..84964041953 100644 --- a/code/modules/vending/robotics.dm +++ b/code/modules/vending/robotics.dm @@ -26,7 +26,6 @@ refill_canister = /obj/item/vending_refill/robotics default_price = PAYCHECK_COMMAND payment_department = ACCOUNT_SCI - allow_custom = TRUE /obj/item/vending_refill/robotics machine_name = "Robotech Deluxe" diff --git a/code/modules/vending/runic_vendor.dm b/code/modules/vending/runic_vendor.dm index 3e6d21c708f..4e53e9bef72 100644 --- a/code/modules/vending/runic_vendor.dm +++ b/code/modules/vending/runic_vendor.dm @@ -14,7 +14,7 @@ var/time_to_decay = 30 SECONDS /// Area around the vendor that will pushback nearby mobs. var/pulse_distance = PULSE_DISTANCE_RANGE - + allow_custom = FALSE /obj/machinery/vending/runic_vendor/Initialize(mapload) if(mapload) diff --git a/code/modules/vending/security.dm b/code/modules/vending/security.dm index 5004a8749d5..bf0b9dbee38 100644 --- a/code/modules/vending/security.dm +++ b/code/modules/vending/security.dm @@ -37,7 +37,6 @@ default_price = PAYCHECK_CREW extra_price = PAYCHECK_COMMAND * 1.5 payment_department = ACCOUNT_SEC - allow_custom = TRUE /obj/machinery/vending/security/pre_throw(obj/item/thrown_item) if(isgrenade(thrown_item)) diff --git a/code/modules/vending/snack.dm b/code/modules/vending/snack.dm index 95c932b8999..8c85066ead9 100644 --- a/code/modules/vending/snack.dm +++ b/code/modules/vending/snack.dm @@ -45,7 +45,6 @@ default_price = PAYCHECK_CREW * 0.6 extra_price = PAYCHECK_CREW payment_department = ACCOUNT_SRV - allow_custom = TRUE /obj/item/vending_refill/snack machine_name = "Getmore Chocolate Corp" diff --git a/code/modules/vending/sovietsoda.dm b/code/modules/vending/sovietsoda.dm index 5031a68ad64..aaf631c1055 100644 --- a/code/modules/vending/sovietsoda.dm +++ b/code/modules/vending/sovietsoda.dm @@ -18,7 +18,6 @@ payment_department = NO_FREEBIES light_color = COLOR_PALE_ORANGE initial_language_holder = /datum/language_holder/spinwarder - allow_custom = TRUE /obj/item/vending_refill/sovietsoda machine_name = "BODA" diff --git a/code/modules/vending/subtype.dm b/code/modules/vending/subtype.dm index d189435e18c..f6b37f79c32 100644 --- a/code/modules/vending/subtype.dm +++ b/code/modules/vending/subtype.dm @@ -13,6 +13,7 @@ all_products_free = TRUE /// Spawns coders by default var/type_to_vend = /obj/item/food/grown/citrus + allow_custom = FALSE /obj/machinery/vending/subtype_vendor/Initialize(mapload, type_to_vend) if(type_to_vend) diff --git a/code/modules/vending/sustenance.dm b/code/modules/vending/sustenance.dm index 0ad7eadc354..05f71b4eb6b 100644 --- a/code/modules/vending/sustenance.dm +++ b/code/modules/vending/sustenance.dm @@ -25,7 +25,6 @@ default_price = PAYCHECK_LOWER extra_price = PAYCHECK_LOWER * 0.6 payment_department = NO_FREEBIES - allow_custom = TRUE /obj/machinery/vending/sustenance/interact(mob/living/living_user) if(!isliving(living_user)) diff --git a/code/modules/vending/syndichem.dm b/code/modules/vending/syndichem.dm index 896198f65a6..02607956348 100644 --- a/code/modules/vending/syndichem.dm +++ b/code/modules/vending/syndichem.dm @@ -19,3 +19,8 @@ ) product_slogans = "It's not pyromania if you're getting paid!;You smell that? Plasma, son. Nothing else in the world smells like that.;I love the smell of Plasma in the morning." resistance_flags = FIRE_PROOF + refill_canister = /obj/item/vending_refill/syndichem + +/obj/item/vending_refill/syndichem + machine_name = "SyndiChem" + icon_state = "refill_syndichem" diff --git a/code/modules/vending/toys.dm b/code/modules/vending/toys.dm index 8f92e438b51..fae9bbc5d46 100644 --- a/code/modules/vending/toys.dm +++ b/code/modules/vending/toys.dm @@ -7,7 +7,6 @@ product_ads = "Feel robust with your toys!;Express your inner child today!;Toy weapons don't kill people, but valid hunters do!;Who needs responsibilities when you have toy weapons?;Make your next murder FUN!" vend_reply = "Come back for more!" light_mask = "donksoft-light-mask" - circuit = /obj/item/circuitboard/machine/vending/donksofttoyvendor products = list( /obj/item/card/emagfake = 4, /obj/item/hot_potato/harmless/toy = 4, diff --git a/code/modules/vending/vendor/_vending.dm b/code/modules/vending/vendor/_vending.dm index 1a97b034fa8..3df88989705 100644 --- a/code/modules/vending/vendor/_vending.dm +++ b/code/modules/vending/vendor/_vending.dm @@ -72,7 +72,7 @@ ///Icon for the maintenance panel overlay var/panel_type = "panel1" ///Whether this vendor can be selected when building a custom vending machine - var/allow_custom = FALSE + var/allow_custom = TRUE /** * List of products this machine sells diff --git a/code/modules/vending/wardrobes.dm b/code/modules/vending/wardrobes.dm index cbfb1113fb9..b37a42c4294 100644 --- a/code/modules/vending/wardrobes.dm +++ b/code/modules/vending/wardrobes.dm @@ -72,7 +72,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) refill_canister = /obj/item/vending_refill/wardrobe/sec_wardrobe payment_department = ACCOUNT_SEC light_color = COLOR_MOSTLY_PURE_RED - allow_custom = TRUE /obj/item/vending_refill/wardrobe/sec_wardrobe machine_name = "SecDrobe" @@ -119,7 +118,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/medi_wardrobe payment_department = ACCOUNT_MED - allow_custom = TRUE /obj/item/vending_refill/wardrobe/medi_wardrobe machine_name = "MediDrobe" @@ -150,7 +148,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) refill_canister = /obj/item/vending_refill/wardrobe/engi_wardrobe payment_department = ACCOUNT_ENG light_color = COLOR_VIVID_YELLOW - allow_custom = TRUE /obj/item/vending_refill/wardrobe/engi_wardrobe machine_name = "EngiDrobe" @@ -176,7 +173,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) refill_canister = /obj/item/vending_refill/wardrobe/atmos_wardrobe payment_department = ACCOUNT_ENG light_color = COLOR_VIVID_YELLOW - allow_custom = TRUE /obj/item/vending_refill/wardrobe/atmos_wardrobe machine_name = "AtmosDrobe" @@ -220,7 +216,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/cargo_wardrobe payment_department = ACCOUNT_CAR - allow_custom = TRUE /obj/item/vending_refill/wardrobe/cargo_wardrobe machine_name = "CargoDrobe" @@ -255,7 +250,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) refill_canister = /obj/item/vending_refill/wardrobe/robo_wardrobe extra_price = PAYCHECK_COMMAND * 1.2 payment_department = ACCOUNT_SCI - allow_custom = TRUE /obj/item/vending_refill/wardrobe/robo_wardrobe machine_name = "RoboDrobe" @@ -285,7 +279,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/science_wardrobe payment_department = ACCOUNT_SCI - allow_custom = TRUE /obj/item/vending_refill/wardrobe/science_wardrobe machine_name = "SciDrobe" @@ -314,7 +307,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) refill_canister = /obj/item/vending_refill/wardrobe/hydro_wardrobe payment_department = ACCOUNT_SRV light_color = LIGHT_COLOR_ELECTRIC_GREEN - allow_custom = TRUE /obj/item/vending_refill/wardrobe/hydro_wardrobe machine_name = "HyDrobe" @@ -348,7 +340,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/curator_wardrobe payment_department = ACCOUNT_SRV - allow_custom = TRUE /obj/item/vending_refill/wardrobe/curator_wardrobe machine_name = "CuraDrobe" @@ -398,7 +389,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/coroner_wardrobe payment_department = ACCOUNT_MED - allow_custom = TRUE /obj/item/vending_refill/wardrobe/coroner_wardrobe machine_name = "MortiDrobe" @@ -436,7 +426,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) refill_canister = /obj/item/vending_refill/wardrobe/bar_wardrobe payment_department = ACCOUNT_MED extra_price = PAYCHECK_COMMAND - allow_custom = TRUE /obj/item/vending_refill/wardrobe/bar_wardrobe machine_name = "BarDrobe" @@ -467,7 +456,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/chef_wardrobe payment_department = ACCOUNT_SRV - allow_custom = TRUE /obj/item/vending_refill/wardrobe/chef_wardrobe machine_name = "ChefDrobe" @@ -507,7 +495,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) extra_price = PAYCHECK_COMMAND * 0.8 payment_department = ACCOUNT_SRV light_color = COLOR_STRONG_MAGENTA - allow_custom = TRUE /obj/item/vending_refill/wardrobe/jani_wardrobe machine_name = "JaniDrobe" @@ -550,7 +537,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/law_wardrobe payment_department = ACCOUNT_SRV - allow_custom = TRUE /obj/item/vending_refill/wardrobe/law_wardrobe machine_name = "LawDrobe" @@ -597,7 +583,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/chap_wardrobe payment_department = ACCOUNT_SRV - allow_custom = TRUE /obj/item/vending_refill/wardrobe/chap_wardrobe machine_name = "DeusVend" @@ -629,7 +614,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/chem_wardrobe payment_department = ACCOUNT_MED - allow_custom = TRUE /obj/item/vending_refill/wardrobe/chem_wardrobe machine_name = "ChemDrobe" @@ -655,7 +639,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/gene_wardrobe payment_department = ACCOUNT_SCI - allow_custom = TRUE /obj/item/vending_refill/wardrobe/gene_wardrobe machine_name = "GeneDrobe" @@ -683,7 +666,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) ) refill_canister = /obj/item/vending_refill/wardrobe/viro_wardrobe payment_department = ACCOUNT_MED - allow_custom = TRUE /obj/item/vending_refill/wardrobe/viro_wardrobe machine_name = "ViroDrobe" @@ -730,7 +712,6 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) refill_canister = /obj/item/vending_refill/wardrobe/det_wardrobe extra_price = PAYCHECK_COMMAND * 1.75 payment_department = ACCOUNT_SEC - allow_custom = TRUE /obj/item/vending_refill/wardrobe/det_wardrobe machine_name = "DetDrobe" @@ -763,6 +744,7 @@ GLOBAL_VAR_INIT(roaches_deployed, FALSE) /obj/item/vending_refill/wardrobe/cent_wardrobe machine_name = "CentDrobe" + icon_state = "refill_centdrobe" light_color = LIGHT_COLOR_ELECTRIC_GREEN #undef MOTHROACH_START_CHANCE diff --git a/code/modules/vending/youtool.dm b/code/modules/vending/youtool.dm index b73b183fad2..819ddbe2208 100644 --- a/code/modules/vending/youtool.dm +++ b/code/modules/vending/youtool.dm @@ -33,7 +33,6 @@ default_price = PAYCHECK_CREW extra_price = PAYCHECK_COMMAND * 1.5 payment_department = ACCOUNT_ENG - allow_custom = TRUE /obj/item/vending_refill/youtool machine_name = "YouTool" diff --git a/icons/obj/vending_restock.dmi b/icons/obj/vending_restock.dmi index ca8e40349c406bebc970e8f3d665d90d3426ac5b..25c786f2153c5babeb67493a66f535ca144a966f 100644 GIT binary patch literal 8437 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 literal 2474 zcmV;b303xqP)C0005tP)t-s#l^)l zA|hfO9IvgZQ%6wq^Yf-zS(lfW)lf@_CnsjiGyebp00000Gc%b00MgLVi)9_6004jh z075i4kslw!A0OP+J*+Y^GXVepnKNc)GnJK<0RJ<~#=dtVBE(Qkb8T{2R9Jx^AX`Ec z|Nk?_adF9#Dch+{+|8}#+r$9>1u!x#R8&-(9st0=z+WK)Y$pXsNJ!C(0PDB_|HuH4 zFaXSE0ObGxd`dEOMlfV#Wc~j8K|w*9nwkJ&#C?5z0A~MNTU#L$2>?lxrb->UTrU6r z|9^jfrKP2kl9IO8nE(6#mBVXBXe~@kOh!gVb8~Zrg@u%qlt3{7N;v^CF)hTEV6ux+ z>|QwknE+^49$``)|7QQl4L8HTui_3WWM5x+K|yg!O4-@jtE;O%K0d7rFaz;k~^Yf*kpr)ar_2uPnL_`)WRSEfM4)zrc!nMT$XW*)dPj9uOF}ZGc@Pqu5gF+swQ{Bk&T#E<9 zWHHEt+^^Omds;*N)a%n$C%}pXjFqL_P);f1d9tX%pW^7E;@F_*wHmQ#kDtFaBZT|^SMLnA#r*4+2LXj#%kr*vjokhcNK{pLyw8j zb2Ws{vST-=+?Nkaet2B%3xK~#90?V5{M6Gs%rNywv^rN{<} z_K~VktFn147#?*IpNoPDm;eKLsndgzGeZ`0x z8{;i$1&91e&OkKdtBDBm^A*6{NEuBb23VHHcsj%YFOcu5P8Gt_QqPGiyvs9y&jK(& z{{IxK0aT#fkQspUKjD=)t~P+r0%~CQo;`bZuWbP`K=Lyg#GuhEGXU40_*xGr4Zv^F z0HpT~h+9AnqC4IyCA&hoNt6%gg`!<377(}Ad3VpgefyGD zXnd)cDAyIn`>68yFy234_Yd?J`FNbar-wJt^`b9Yp4|T4lB3{|e{fL2i-my#7jN+# z@^^DQumC$Mw?E7P<7S@U0?dp3c8CGSd%Ahv;3PR&rCiccaWg-tKV!#2%?(09^+>1Ec0B<6;jG11CTpN7n(uUDtO2eB`9s0Q7*w zz-Zs7spx@V1qS35aJ>qQoIHgMkn00n19Rk6)&u14WD6J~|!b7-0P5 zDFKY1o32l=qn)haQmd;o)JA7v$?x5svf20b>Dyfg0Q~Yw%j}_{|bs zO8<5K$Uh9!;#yi-T3T9KkA-T@?~k0X4{qZVXU?1%w?cWjVwWrB$xuEu{nGT*v^xH* zBA(`-n6Se5%sG4J+)QOMj8DBh1^K6y@n?nj^~sqC@{g_4!}N&~abHHm@G9p3JpU6D^~58-vW&R!{NKKFH^czr zkYD-z0vs>!+so*|C7R#w+_jbSJ!yiC#KRV-?+@Iylj`~3SXA;_@ym#_+3g;YH#`ap z@bf+H0nF|D57hkjvS{GmJ=b-q18P7rT&^zw`33HOd!F$755)TmE1n1!&H`$Hq<0_A z0Q7)pU~q8FzynEq(136jcm_xbn1NPPX#n;>R)IlKXIT8o%AfSd+XB(Rs_U+`DfWAMVrS(77-$MSV&C)kdDgXcg07*qoM6N<$f{A^^UH||9 diff --git a/tools/UpdatePaths/Scripts/93028_circuitboard_vending_donk.txt b/tools/UpdatePaths/Scripts/93028_circuitboard_vending_donk.txt new file mode 100644 index 00000000000..91ce45c2d65 --- /dev/null +++ b/tools/UpdatePaths/Scripts/93028_circuitboard_vending_donk.txt @@ -0,0 +1,2 @@ +/obj/item/circuitboard/machine/vending/donksnackvendor : @DELETE +/obj/item/circuitboard/machine/vending/donksofttoyvendor : @DELETE