diff --git a/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm index 48b92d10f3f..e079da137f9 100644 --- a/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm +++ b/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm @@ -660,88 +660,37 @@ build_path = /obj/machinery/vending/custom req_components = list(/obj/item/vending_refill/custom = 1) - var/static/list/vending_names_paths = list( - /obj/machinery/vending/assist = "Part-Mart", - /obj/machinery/vending/autodrobe = "AutoDrobe", - /obj/machinery/vending/boozeomat = "Booze-O-Mat", - /obj/machinery/vending/cart = "PTech", - /obj/machinery/vending/cigarette = "ShadyCigs Deluxe", - /obj/machinery/vending/clothing = "ClothesMate", - /obj/machinery/vending/coffee = "Solar's Best Hot Drinks", - /obj/machinery/vending/cola = "Robust Softdrinks", - /obj/machinery/vending/custom = "Custom Vendor", - /obj/machinery/vending/cytopro = "CytoPro", - /obj/machinery/vending/dinnerware = "Plasteel Chef's Dinnerware Vendor", - /obj/machinery/vending/drugs = "NanoDrug Plus", - /obj/machinery/vending/engineering = "Robco Tool Maker", - /obj/machinery/vending/engivend = "Engi-Vend", - /obj/machinery/vending/games = "\improper Good Clean Fun", - /obj/machinery/vending/hydronutrients = "NutriMax", - /obj/machinery/vending/hydroseeds = "MegaSeed Servitor", - /obj/machinery/vending/medical = "NanoMed Plus", - /obj/machinery/vending/modularpc = "Deluxe Silicate Selections", - /obj/machinery/vending/robotics = "Robotech Deluxe", - /obj/machinery/vending/security = "SecTech", - /obj/machinery/vending/snack = "Getmore Chocolate Corp", - /obj/machinery/vending/sovietsoda = "BODA", - /obj/machinery/vending/sustenance = "Sustenance Vendor", - /obj/machinery/vending/tool = "YouTool", - /obj/machinery/vending/wallmed = "NanoMed", - /obj/machinery/vending/wardrobe/atmos_wardrobe = "AtmosDrobe", - /obj/machinery/vending/wardrobe/bar_wardrobe = "BarDrobe", - /obj/machinery/vending/wardrobe/cargo_wardrobe = "CargoDrobe", - /obj/machinery/vending/wardrobe/chap_wardrobe = "ChapDrobe", - /obj/machinery/vending/wardrobe/chef_wardrobe = "ChefDrobe", - /obj/machinery/vending/wardrobe/chem_wardrobe = "ChemDrobe", - /obj/machinery/vending/wardrobe/coroner_wardrobe = "MortiDrobe", - /obj/machinery/vending/wardrobe/curator_wardrobe = "CuraDrobe", - /obj/machinery/vending/wardrobe/det_wardrobe = "DetDrobe", - /obj/machinery/vending/wardrobe/engi_wardrobe = "EngiDrobe", - /obj/machinery/vending/wardrobe/gene_wardrobe = "GeneDrobe", - /obj/machinery/vending/wardrobe/hydro_wardrobe = "HyDrobe", - /obj/machinery/vending/wardrobe/jani_wardrobe = "JaniDrobe", - /obj/machinery/vending/wardrobe/law_wardrobe = "LawDrobe", - /obj/machinery/vending/wardrobe/medi_wardrobe = "MediDrobe", - /obj/machinery/vending/wardrobe/robo_wardrobe = "RoboDrobe", - /obj/machinery/vending/wardrobe/science_wardrobe = "SciDrobe", - /obj/machinery/vending/wardrobe/sec_wardrobe = "SecDrobe", - /obj/machinery/vending/wardrobe/viro_wardrobe = "ViroDrobe", - // SKYRAT STUFF AT THE BOTTOM I SUPPOSE FOR SIMPLICITY'S SAKE - /obj/machinery/vending/access/command = "Command Outfitting Station", //SKYRAT EDIT ADDITION - /obj/machinery/vending/barbervend = "Fab-O-Vend", //SKYRAT EDIT ADDITION - /obj/machinery/vending/dorms = "LustWish", //SKYRAT EDIT CHANGE - ERP UPDATE - ORIGINAL: /obj/machinery/vending/dorms = "KinkVend" - /obj/machinery/vending/imported = "NT Sustenance Supplier", //SKYRAT EDIT ADDITION - /obj/machinery/vending/imported/mothic = "Nomad Fleet Ration Chit Exchange", //SKYRAT EDIT ADDITION - /obj/machinery/vending/imported/tiziran = "Tiziran Imported Delicacies", //SKYRAT EDIT ADDITION - /obj/machinery/vending/imported/yangyu = "Fudobenda", //SKYRAT EDIT ADDITION - /obj/machinery/vending/security = "Armadyne Peacekeeper Equipment Vendor", //SKYRAT EDIT CHANGE - SEC_HUAL - ORIGINAL: /obj/machinery/vending/security = "SecTech", - /obj/machinery/vending/deforest_medvend = "DeForest Med-Vend", //SKYRAT PORT ADDITION - ) + ///Assoc list (machine name = machine typepath) of all vendors that can be chosen when the circuit is screwdrivered + var/static/list/valid_vendor_names_paths + +/obj/item/circuitboard/machine/vendor/Initialize(mapload) + . = ..() + 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) + valid_vendor_names_paths[vendor_type::name] = vendor_type /obj/item/circuitboard/machine/vendor/screwdriver_act(mob/living/user, obj/item/tool) - var/static/list/display_vending_names_paths - if(!display_vending_names_paths) - display_vending_names_paths = list() - for(var/path in vending_names_paths) - display_vending_names_paths[vending_names_paths[path]] = path - var/choice = tgui_input_list(user, "Choose a new brand", "Select an Item", sort_list(display_vending_names_paths)) + var/choice = tgui_input_list(user, "Choose a new brand", "Select an Item", sort_list(valid_vendor_names_paths)) if(isnull(choice)) return - if(isnull(display_vending_names_paths[choice])) + if(isnull(valid_vendor_names_paths[choice])) return - set_type(display_vending_names_paths[choice]) + set_type(valid_vendor_names_paths[choice]) return TRUE /obj/item/circuitboard/machine/vendor/proc/set_type(obj/machinery/vending/typepath) build_path = typepath - name = "[vending_names_paths[build_path]] Vendor" + name = "[typepath::name] Vendor" req_components = list(initial(typepath.refill_canister) = 1) flatpack_components = list(initial(typepath.refill_canister)) /obj/item/circuitboard/machine/vendor/apply_default_parts(obj/machinery/machine) - for(var/typepath in vending_names_paths) - if(istype(machine, typepath)) - set_type(typepath) + for(var/key in valid_vendor_names_paths) + // == instead of istype so subtypes don't pass check for their supertypes + if(machine.type == valid_vendor_names_paths[key]) + set_type(valid_vendor_names_paths[key]) break return ..() diff --git a/code/modules/vending/_vending.dm b/code/modules/vending/_vending.dm index 418175f9a9f..3d07df1ae82 100644 --- a/code/modules/vending/_vending.dm +++ b/code/modules/vending/_vending.dm @@ -220,6 +220,9 @@ GLOBAL_LIST_EMPTY(vending_machines_to_restock) //the path of the fish_source datum to use for the fishing_spot component var/fish_source_path = /datum/fish_source/vending + ///Whether this vendor can be selected when building a custom vending machine + var/allow_custom = FALSE + /datum/armor/machinery_vending melee = 20 fire = 50 @@ -1726,6 +1729,7 @@ GLOBAL_LIST_EMPTY(vending_machines_to_restock) /// Base64 cache of custom icons. var/list/base64_cache = list() panel_type = "panel20" + allow_custom = TRUE /obj/machinery/vending/custom/compartmentLoadAccessCheck(mob/user) . = FALSE @@ -1888,6 +1892,7 @@ GLOBAL_LIST_EMPTY(vending_machines_to_restock) /obj/machinery/vending/custom/unbreakable name = "Indestructible Vendor" resistance_flags = INDESTRUCTIBLE + allow_custom = FALSE /obj/item/vending_refill/custom machine_name = "Custom Vendor" @@ -1902,6 +1907,7 @@ GLOBAL_LIST_EMPTY(vending_machines_to_restock) max_loaded_items = 40 light_mask = "greed-light-mask" custom_materials = list(/datum/material/gold = SHEET_MATERIAL_AMOUNT * 5) + allow_custom = FALSE /obj/machinery/vending/custom/greed/Initialize(mapload) . = ..() diff --git a/code/modules/vending/assist.dm b/code/modules/vending/assist.dm index 9e5a3c4d8ec..aff6ed1958c 100644 --- a/code/modules/vending/assist.dm +++ b/code/modules/vending/assist.dm @@ -34,6 +34,7 @@ /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 ffdf0bd5aa0..8ed868b0391 100644 --- a/code/modules/vending/autodrobe.dm +++ b/code/modules/vending/autodrobe.dm @@ -234,6 +234,7 @@ 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 f05dcb3e9f1..9f867f9f97b 100644 --- a/code/modules/vending/boozeomat.dm +++ b/code/modules/vending/boozeomat.dm @@ -90,10 +90,12 @@ extra_price = PAYCHECK_COMMAND payment_department = ACCOUNT_SRV light_mask = "boozeomat-light-mask" + allow_custom = TRUE /obj/machinery/vending/boozeomat/syndicate age_restrictions = FALSE initial_language_holder = /datum/language_holder/syndicate + allow_custom = FALSE /obj/item/vending_refill/boozeomat machine_name = "Booze-O-Mat" diff --git a/code/modules/vending/cartridge.dm b/code/modules/vending/cartridge.dm index ccc13b7de72..852c88452ad 100644 --- a/code/modules/vending/cartridge.dm +++ b/code/modules/vending/cartridge.dm @@ -20,6 +20,7 @@ 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 05c939bbcb8..8925d7ecd2a 100644 --- a/code/modules/vending/cigarette.dm +++ b/code/modules/vending/cigarette.dm @@ -35,6 +35,7 @@ extra_price = PAYCHECK_COMMAND payment_department = ACCOUNT_SRV light_mask = "cigs-light-mask" + allow_custom = TRUE /obj/machinery/vending/cigarette/syndicate products = list( @@ -50,6 +51,7 @@ /obj/item/storage/fancy/rollingpapers = 5, ) initial_language_holder = /datum/language_holder/syndicate + allow_custom = FALSE /obj/machinery/vending/cigarette/beach //Used in the lavaland_biodome_beach.dmm ruin name = "\improper ShadyCigs Ultra" @@ -73,6 +75,7 @@ /obj/item/lighter = 3, ) initial_language_holder = /datum/language_holder/beachbum + allow_custom = FALSE /obj/item/vending_refill/cigarette machine_name = "ShadyCigs Deluxe" diff --git a/code/modules/vending/clothesmate.dm b/code/modules/vending/clothesmate.dm index d1ab957dc76..70d27dd98c4 100644 --- a/code/modules/vending/clothesmate.dm +++ b/code/modules/vending/clothesmate.dm @@ -235,6 +235,7 @@ 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 10b895d1367..e75cc4f47ce 100644 --- a/code/modules/vending/coffee.dm +++ b/code/modules/vending/coffee.dm @@ -19,6 +19,7 @@ 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 9352c0c8b10..53aa82f8e12 100644 --- a/code/modules/vending/cola.dm +++ b/code/modules/vending/cola.dm @@ -35,6 +35,7 @@ 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 @@ -81,10 +82,12 @@ icon_state = "Cola_Machine" light_mask = "cola-light-mask" light_color = COLOR_MODERATE_BLUE + allow_custom = FALSE /obj/machinery/vending/cola/black icon_state = "cola_black" light_mask = "cola-light-mask" + allow_custom = FALSE /obj/machinery/vending/cola/red icon_state = "red_cola" @@ -93,6 +96,7 @@ product_slogans = "Cola in space!" light_mask = "red_cola-light-mask" light_color = COLOR_DARK_RED + allow_custom = FALSE /obj/machinery/vending/cola/space_up icon_state = "space_up" @@ -101,6 +105,7 @@ product_slogans = "Space-up! Like a hull breach in your mouth." light_mask = "space_up-light-mask" light_color = COLOR_DARK_MODERATE_LIME_GREEN + allow_custom = FALSE /obj/machinery/vending/cola/starkist icon_state = "starkist" @@ -110,12 +115,14 @@ panel_type = "panel7" light_mask = "starkist-light-mask" light_color = COLOR_LIGHT_ORANGE + allow_custom = FALSE /obj/machinery/vending/cola/sodie icon_state = "soda" panel_type = "panel7" light_mask = "soda-light-mask" light_color = COLOR_WHITE + allow_custom = FALSE /obj/machinery/vending/cola/pwr_game icon_state = "pwr_game" @@ -124,6 +131,7 @@ product_slogans = "The POWER that gamers crave! PWR GAME!" light_mask = "pwr_game-light-mask" light_color = COLOR_STRONG_VIOLET + allow_custom = FALSE /obj/machinery/vending/cola/shamblers name = "\improper Shambler's Vendor" @@ -145,6 +153,7 @@ 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" light_color = COLOR_MOSTLY_PURE_PINK + allow_custom = FALSE /obj/machinery/vending/cola/shamblers/Initialize(mapload) . = ..() diff --git a/code/modules/vending/cytopro.dm b/code/modules/vending/cytopro.dm index ce351be7769..c27b9e537b2 100644 --- a/code/modules/vending/cytopro.dm +++ b/code/modules/vending/cytopro.dm @@ -29,6 +29,7 @@ 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/drinnerware.dm b/code/modules/vending/drinnerware.dm index c37750a2d3d..648d5762f9e 100644 --- a/code/modules/vending/drinnerware.dm +++ b/code/modules/vending/drinnerware.dm @@ -69,6 +69,7 @@ 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 f360b89a07f..9b4999161df 100644 --- a/code/modules/vending/engineering.dm +++ b/code/modules/vending/engineering.dm @@ -35,6 +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" diff --git a/code/modules/vending/engivend.dm b/code/modules/vending/engivend.dm index 13e30e1783f..256ea76870f 100644 --- a/code/modules/vending/engivend.dm +++ b/code/modules/vending/engivend.dm @@ -32,6 +32,7 @@ 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 1b5722dbc12..a5b38b8fa0d 100644 --- a/code/modules/vending/games.dm +++ b/code/modules/vending/games.dm @@ -115,6 +115,7 @@ 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/medical.dm b/code/modules/vending/medical.dm index 9000e019566..1dc1fb6e3c3 100644 --- a/code/modules/vending/medical.dm +++ b/code/modules/vending/medical.dm @@ -40,6 +40,7 @@ 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" @@ -48,6 +49,7 @@ /obj/machinery/vending/medical/syndicate name = "\improper SyndiMed Plus" initial_language_holder = /datum/language_holder/syndicate + allow_custom = FALSE /obj/machinery/vending/medical/infested_frigate products = list( @@ -65,6 +67,8 @@ /obj/item/cane/white = 2, /obj/item/clothing/glasses/eyepatch/medical = 2, ) + allow_custom = FALSE + //Created out of a necessity to get these dumb chems out of the medical tools vendor. /obj/machinery/vending/drugs name = "\improper NanoDrug Plus" @@ -103,6 +107,7 @@ extra_price = 100 payment_department = ACCOUNT_MED refill_canister = /obj/item/vending_refill/drugs + allow_custom = TRUE /obj/item/vending_refill/drugs machine_name = "NanoDrug Plus" diff --git a/code/modules/vending/medical_wall.dm b/code/modules/vending/medical_wall.dm index d853010d15b..53027e5b7df 100644 --- a/code/modules/vending/medical_wall.dm +++ b/code/modules/vending/medical_wall.dm @@ -26,6 +26,10 @@ payment_department = ACCOUNT_MED tiltable = FALSE light_mask = "wallmed-light-mask" + allow_custom = TRUE + +/obj/machinery/vending/wallmed/directional + allow_custom = FALSE MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/vending/wallmed, 32) diff --git a/code/modules/vending/megaseed.dm b/code/modules/vending/megaseed.dm index 130a0921a43..1be33c56ca2 100644 --- a/code/modules/vending/megaseed.dm +++ b/code/modules/vending/megaseed.dm @@ -105,6 +105,7 @@ default_price = PAYCHECK_LOWER extra_price = PAYCHECK_CREW payment_department = ACCOUNT_SRV + allow_custom = TRUE /obj/item/vending_refill/hydroseeds machine_name = "MegaSeed Servitor" diff --git a/code/modules/vending/modularpc.dm b/code/modules/vending/modularpc.dm index 415329366c7..0e894147e22 100644 --- a/code/modules/vending/modularpc.dm +++ b/code/modules/vending/modularpc.dm @@ -19,6 +19,7 @@ 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 d7b3a0aaa5c..7438dedcfc3 100644 --- a/code/modules/vending/nutrimax.dm +++ b/code/modules/vending/nutrimax.dm @@ -28,6 +28,7 @@ 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/robotics.dm b/code/modules/vending/robotics.dm index 84964041953..7e813d78e08 100644 --- a/code/modules/vending/robotics.dm +++ b/code/modules/vending/robotics.dm @@ -26,6 +26,7 @@ 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/security.dm b/code/modules/vending/security.dm index bf0b9dbee38..5004a8749d5 100644 --- a/code/modules/vending/security.dm +++ b/code/modules/vending/security.dm @@ -37,6 +37,7 @@ 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 1e81679135b..95c932b8999 100644 --- a/code/modules/vending/snack.dm +++ b/code/modules/vending/snack.dm @@ -45,18 +45,23 @@ 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" /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 diff --git a/code/modules/vending/sovietsoda.dm b/code/modules/vending/sovietsoda.dm index b489fce7128..ffeb9a86a7b 100644 --- a/code/modules/vending/sovietsoda.dm +++ b/code/modules/vending/sovietsoda.dm @@ -18,6 +18,7 @@ payment_department = NO_FREEBIES light_color = COLOR_PALE_ORANGE initial_language_holder = /datum/language_holder/panslavic //bubber edit; spinwarder to panslavic + allow_custom = TRUE /obj/item/vending_refill/sovietsoda machine_name = "BODA" diff --git a/code/modules/vending/sustenance.dm b/code/modules/vending/sustenance.dm index 8667e5d978f..d274d0b7fdf 100644 --- a/code/modules/vending/sustenance.dm +++ b/code/modules/vending/sustenance.dm @@ -25,6 +25,7 @@ default_price = PAYCHECK_LOWER extra_price = PAYCHECK_LOWER * 0.6 payment_department = NO_FREEBIES + allow_custom = TRUE /obj/item/vending_refill/sustenance machine_name = "Sustenance Vendor" @@ -39,6 +40,7 @@ all_products_free = FALSE displayed_currency_icon = "digging" displayed_currency_name = " LP" + allow_custom = FALSE /obj/machinery/vending/sustenance/interact(mob/user) if(!isliving(user)) diff --git a/code/modules/vending/wardrobes.dm b/code/modules/vending/wardrobes.dm index 5d385f32c8e..0437cbf1355 100644 --- a/code/modules/vending/wardrobes.dm +++ b/code/modules/vending/wardrobes.dm @@ -73,6 +73,7 @@ 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,6 +120,7 @@ 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" @@ -149,6 +151,7 @@ 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" @@ -174,6 +177,7 @@ 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" @@ -217,6 +221,7 @@ 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" @@ -251,6 +256,7 @@ 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" @@ -280,6 +286,7 @@ 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" @@ -308,6 +315,7 @@ 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" @@ -341,6 +349,7 @@ 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" @@ -391,6 +400,7 @@ 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" @@ -428,6 +438,8 @@ 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" @@ -457,6 +469,7 @@ 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" @@ -496,6 +509,7 @@ 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" @@ -538,6 +552,7 @@ 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" @@ -584,6 +599,7 @@ 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" @@ -615,6 +631,7 @@ 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" @@ -640,6 +657,7 @@ 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" @@ -667,6 +685,7 @@ 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" @@ -713,6 +732,7 @@ 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" diff --git a/code/modules/vending/youtool.dm b/code/modules/vending/youtool.dm index 819ddbe2208..b73b183fad2 100644 --- a/code/modules/vending/youtool.dm +++ b/code/modules/vending/youtool.dm @@ -33,6 +33,7 @@ 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"