From eff079f27da1f19009f38d0a8229cc3330ab7bd3 Mon Sep 17 00:00:00 2001 From: Sir Winters <7543955+Owai-Seek@users.noreply.github.com> Date: Tue, 16 Dec 2025 16:27:17 -0500 Subject: [PATCH] Robodrobe updates (#4963) ## About The Pull Request ## Why It's Good For The Game ## Proof Of Testing image image image image ## Changelog :cl: add: Categories to the RoboDrobe (Now RoboVend) add: Added ONE spare set of Liquid Solder, Nanite Slurry (Organ Reboot), and System Cleaner Pills to the RoboVend. add: Added two packs of Blood Packs (Oil) to RoboVend. add: Added ONE set of Protean Organs to the RoboVend. qol: Slightly updated, renamed, and placed Synthetic Care Pamphlets in the RoboVend /:cl: --- .../code/modules/jobs/job_types/roboticist.dm | 10 ++- .../code/modules/vending/wardrobe.dm | 84 +++++++++++++------ 2 files changed, 65 insertions(+), 29 deletions(-) diff --git a/modular_zubbers/code/modules/jobs/job_types/roboticist.dm b/modular_zubbers/code/modules/jobs/job_types/roboticist.dm index ddfa3b8914e..d5118827502 100644 --- a/modular_zubbers/code/modules/jobs/job_types/roboticist.dm +++ b/modular_zubbers/code/modules/jobs/job_types/roboticist.dm @@ -44,16 +44,18 @@ backpack_contents[/obj/item/paper/pamphlet/roboticist_reminder] = 1 /obj/item/paper/pamphlet/roboticist_reminder - name = "pamphlet - 'Reminder of roboticist duties'" - default_raw_text = "Don't forget that your duties include treating the synthetic lifeforms aboard the station! Heres some tips and tricks to get you started...

\n\ + name = "synthetic care pamphlet" + default_raw_text = "Your duties include treating the synthetic and protean lifeforms aboard the station! Heres some tips and tricks to get you started...

\n\ You can buy health analyzers from your vendor, as well as burn wound treatment chems! Generally, you'll be using the coolant bottles.
\n\ Make sure to use the health analyzers in hand to activate wound mode if you're ever confused about a wound! Blunt wounds even show \ the current treatment step!
\n\ - Your departmental order console includes things like synthetic medicine crates!
\n\ + Your departmental order console includes things like synthetic medicine and protean organ crates!
\n\ Epipens are an effective treatment method for synthetic slash/pierce wounds!
\n\ Nanite Slurry is used to heal minor synthetic brute and burn damage. \ overdose is at 10u. Overdose heals synthetic organ damage in exchange of overheating and brute damage.
\n\ Critical system repair pills inside your medkit are used to purposely inflict an overdose of nanite slurry to heal ~ 240 organ damage per pill. (You need to manage their brute and burn!)
\n\ Liquid Solder is used to heal positronic damage
\n\ System Cleaner is used to heal synthetic toxin damage
\n\ - Dinitrogen Plasmide is used to treat synthetic overheating wounds safely." + Dinitrogen Plasmide is used to treat synthetic overheating wounds safely.
\n\ + Blank Synthetic Shells can be produced at the exofab for practice if mining has been gathering resources.
\n\ + Oil functions as a synthetic creatures blood. It can be obtained from Chemistry, or if you're crafty, scooped off the floor." diff --git a/modular_zubbers/code/modules/vending/wardrobe.dm b/modular_zubbers/code/modules/vending/wardrobe.dm index 610f2149f14..6381cc3e4bc 100644 --- a/modular_zubbers/code/modules/vending/wardrobe.dm +++ b/modular_zubbers/code/modules/vending/wardrobe.dm @@ -82,35 +82,69 @@ ) /obj/machinery/vending/wardrobe/robo_wardrobe - zubbers_products = list( - /obj/item/bonesetter = 2, // for dislocations - /obj/item/clothing/glasses/welding/steampunk_goggles = 2, - /obj/item/clothing/gloves/color/black = 2, // fire resistant, allows the robo to painlessly mold metal. also its down here because its a treatment item - /obj/item/clothing/head/beret/science/fancy/robo = 2, - /obj/item/clothing/head/playbunnyears/roboticist = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/clothing/neck/tie/bunnytie/roboticist = 2, - /obj/item/clothing/suit/toggle/jacket/zubber/bomber/science/robotics = 2, - /obj/item/clothing/suit/toggle/labcoat/roboticist/doctor_tailcoat = 2, - /obj/item/clothing/under/rank/rnd/roboticist/skyrat/sleek = 2, - /obj/item/clothing/under/rank/rnd/scientist/roboticist_bunnysuit = 2, - /obj/item/healthanalyzer/no_medibot = 2, // disallows medibot use so its not wasted immediately on medibots - /obj/item/healthanalyzer/simple = 2, - /obj/item/reagent_containers/cup/bottle/morphine = 2, - /obj/item/reagent_containers/spray/dinitrogen_plasmide = 2, - /obj/item/reagent_containers/spray/hercuri/chilled = 2, - /obj/item/reagent_containers/syringe = 2, - /obj/item/stack/medical/gauze = 4, // for ALL wounds - /obj/item/storage/backpack/duffelbag/science/robo = 2, - /obj/item/storage/backpack/messenger/science/robo = 2, - /obj/item/storage/backpack/satchel/science/robo = 2, - /obj/item/storage/backpack/science/robo = 2, - /obj/item/tank/internals/anesthetic = 2, + product_categories = list( + list( + "name" = "Clothing", + "icon" = FA_ICON_SHIRT, + "products" = list( + /obj/item/clothing/glasses/welding/steampunk_goggles = 2, + /obj/item/clothing/gloves/color/black = 2, // fire resistant, allows the robo to painlessly mold metal. also its down here because its a treatment item + /obj/item/clothing/head/beret/science/fancy/robo = 2, + /obj/item/clothing/head/playbunnyears/roboticist = 2, + /obj/item/clothing/neck/tie/bunnytie/roboticist = 2, + /obj/item/clothing/suit/toggle/jacket/zubber/bomber/science/robotics = 2, + /obj/item/clothing/suit/toggle/labcoat/roboticist/doctor_tailcoat = 2, + /obj/item/clothing/under/rank/rnd/roboticist/skyrat/sleek = 2, + /obj/item/clothing/under/rank/rnd/scientist/roboticist_bunnysuit = 2, + /obj/item/storage/backpack/duffelbag/science/robo = 2, + /obj/item/storage/backpack/messenger/science/robo = 2, + /obj/item/storage/backpack/satchel/science/robo = 2, + /obj/item/storage/backpack/science/robo = 2, + ), + ), + list( + "name" = "Surgery", + "icon" = FA_ICON_VIAL, + "products" = list( + /obj/item/bonesetter = 2, // for dislocations + /obj/item/clothing/mask/breath = 2, + /obj/item/tank/internals/anesthetic = 2, + /obj/item/reagent_containers/syringe = 2, + /obj/item/reagent_containers/cup/bottle/morphine = 2, + /obj/item/reagent_containers/spray/dinitrogen_plasmide = 2, + /obj/item/reagent_containers/spray/hercuri/chilled = 2, + /obj/item/stack/medical/gauze = 4, // for ALL wounds + /obj/item/healthanalyzer/no_medibot = 2, // disallows medibot use so its not wasted immediately on medibots + /obj/item/healthanalyzer/simple = 2, + /obj/item/storage/pill_bottle/liquid_solder = 1, + /obj/item/storage/pill_bottle/nanite_slurry = 1, + /obj/item/storage/pill_bottle/system_cleaner = 1, + /obj/item/reagent_containers/blood/oil = 2, + /obj/item/paper/pamphlet/roboticist_reminder = 4, + ), + ) ) - zubbers_contraband = list( +/obj/machinery/vending/wardrobe/robo_wardrobe // I don't know why but if I don't put this in here again, contraband and premium don't want to work. + name = "RoboVend" + desc = "A vending machine designed to dispense clothing and tools for roboticists." + contraband = list( /obj/item/organ/tongue/lizard/robot = 2, /obj/item/storage/box/purity_seal_box = 2, // purity seals for any techpriests working in robotics! ) + premium = list( + /obj/item/organ/stomach/protean = 1, + /obj/item/organ/heart/protean = 1, + ) + extra_price = PAYCHECK_COMMAND * 2.0 // This ensures the protean organs are ~200 credits each. + +/obj/machinery/vending/wardrobe/robo_wardrobe/Initialize(mapload) + product_categories[1]["products"] += products + + products.Cut() + . = ..() + +/obj/item/vending_refill/wardrobe/robo_wardrobe + machine_name = "RoboVend" /obj/machinery/vending/wardrobe/gene_wardrobe zubbers_products = list(