From 6f6cb7d76033786739c0bcbf74071179319fe43f Mon Sep 17 00:00:00 2001 From: CHOMPStation2StaffMirrorBot <94713762+CHOMPStation2StaffMirrorBot@users.noreply.github.com> Date: Thu, 9 Oct 2025 06:26:11 -0700 Subject: [PATCH] [MIRROR] Tea brewing uses distilling (#11802) Co-authored-by: Will <7099514+Willburd@users.noreply.github.com> --- code/modules/food/food/drinks.dm | 2 +- .../materials/materials/metals/steel.dm | 1 + .../reactions/distilling/hot_drinks.dm | 112 ++++++++++++++++++ .../reagents/reactions/instant/drinks.dm | 98 --------------- .../reagents/reactions/instant/food.dm | 7 -- .../reagents/reagent_containers/glass.dm | 13 ++ code/modules/reagents/reagents/food_drinks.dm | 2 +- vorestation.dme | 1 + 8 files changed, 129 insertions(+), 107 deletions(-) create mode 100644 code/modules/reagents/reactions/distilling/hot_drinks.dm diff --git a/code/modules/food/food/drinks.dm b/code/modules/food/food/drinks.dm index a211a6c106..b7cd1c5f20 100644 --- a/code/modules/food/food/drinks.dm +++ b/code/modules/food/food/drinks.dm @@ -429,7 +429,7 @@ /obj/item/reagent_containers/food/drinks/dry_ramen name = "Cup Ramen" - desc = "Just add 10ml water, self heats! A taste that reminds you of your school years." + desc = "Just add 10ml water and boil! A taste that reminds you of your school years." description_fluff = "Konohagakure Brand Ramen has been an instant meal staple for centuries. Cheap, quick and available in over two hundred varieties - though most taste like artifical chicken." icon_state = "ramen" trash = /obj/item/trash/ramen diff --git a/code/modules/materials/materials/metals/steel.dm b/code/modules/materials/materials/metals/steel.dm index fb2e7f1225..19d64d4707 100644 --- a/code/modules/materials/materials/metals/steel.dm +++ b/code/modules/materials/materials/metals/steel.dm @@ -152,6 +152,7 @@ new /datum/stack_recipe("big floor lamp fixture frame", /obj/machinery/light_construct/bigfloorlamp, 3, recycle_material = "[name]"), new /datum/stack_recipe("apc frame", /obj/item/frame/apc, 2, recycle_material = "[name]"), new /datum/stack_recipe("desk bell", /obj/item/deskbell, 1, on_floor = 1, supplied_material = "[name]"), + new /datum/stack_recipe("steel kettle", /obj/item/reagent_containers/glass/kettle, 1, on_floor = 1, supplied_material = "[name]"), new /datum/stack_recipe("bunsen burner", /obj/machinery/bunsen_burner, 1, time = 25, on_floor = 1, supplied_material = "[name]"), new /datum/stack_recipe("tanning rack", /obj/structure/tanning_rack, 3, one_per_turf = TRUE, time = 20, on_floor = TRUE, supplied_material = "[name]"), new /datum/stack_recipe("steel hull sheet", /obj/item/stack/material/steel/hull, 2, 1, 5, time = 20, one_per_turf = 0, on_floor = 1, recycle_material = "[name]") diff --git a/code/modules/reagents/reactions/distilling/hot_drinks.dm b/code/modules/reagents/reactions/distilling/hot_drinks.dm new file mode 100644 index 0000000000..c02f7d92b0 --- /dev/null +++ b/code/modules/reagents/reactions/distilling/hot_drinks.dm @@ -0,0 +1,112 @@ +// The curse of hot_water reagent lives on! +/decl/chemical_reaction/distilling/drinks + name = REAGENT_DEVELOPER_WARNING // Unit test ignore + temp_range = list(T0C + 100, T0C + 500) // These all imply a boiled drink anyway + wiki_flag = WIKI_DRINK + +/decl/chemical_reaction/distilling/drinks/coffee + name = REAGENT_COFFEE + id = REAGENT_ID_COFFEE + result = REAGENT_ID_COFFEE + required_reagents = list(REAGENT_ID_WATER = 5, REAGENT_ID_COFFEEPOWDER = 1) + result_amount = 5 + +/decl/chemical_reaction/distilling/drinks/tea + name = "Black tea" + id = REAGENT_ID_TEA + result = REAGENT_ID_TEA + required_reagents = list(REAGENT_ID_WATER = 5, REAGENT_ID_TEAPOWDER = 1) + result_amount = 5 + +/decl/chemical_reaction/distilling/drinks/decaftea + name = REAGENT_TEADECAF + id = REAGENT_ID_TEADECAF + result = REAGENT_ID_TEADECAF + required_reagents = list(REAGENT_ID_WATER = 5, REAGENT_ID_DECAFTEAPOWDER = 1) + result_amount = 5 + +/decl/chemical_reaction/distilling/drinks/hot_coco + name = "Hot Coco" + id = REAGENT_ID_HOTCOCO + result = REAGENT_ID_HOTCOCO + required_reagents = list(REAGENT_ID_WATER = 5, REAGENT_ID_COCO = 1) + result_amount = 5 + +/decl/chemical_reaction/distilling/drinks/minttea + name = REAGENT_MINTTEA + id = REAGENT_ID_MINTTEA + result = REAGENT_ID_MINTTEA + required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_MINT = 1) + result_amount = 6 + +/decl/chemical_reaction/distilling/drinks/minttea_decaf + name = REAGENT_MINTTEADECAF + id = REAGENT_ID_MINTTEADECAF + result = REAGENT_ID_MINTTEADECAF + required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_MINT = 1) + result_amount = 6 + +/decl/chemical_reaction/distilling/drinks/lemontea + name = REAGENT_LEMONTEA + id = REAGENT_ID_LEMONTEA + result = REAGENT_ID_LEMONTEA + required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_LEMONJUICE = 1) + result_amount = 6 + +/decl/chemical_reaction/distilling/drinks/lemontea_decaf + name = REAGENT_LEMONTEADECAF + id = REAGENT_ID_LEMONTEADECAF + result = REAGENT_ID_LEMONTEADECAF + required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_LEMONJUICE = 1) + result_amount = 6 + +/decl/chemical_reaction/distilling/drinks/limetea + name = REAGENT_LIMETEA + id = REAGENT_ID_LIMETEA + result = REAGENT_ID_LIMETEA + required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_LIMEJUICE = 1) + result_amount = 6 + +/decl/chemical_reaction/distilling/drinks/limetea_decaf + name = REAGENT_LIMETEADECAF + id = REAGENT_ID_LIMETEADECAF + result = REAGENT_ID_LIMETEADECAF + required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_LIMEJUICE = 1) + result_amount = 6 + +/decl/chemical_reaction/distilling/drinks/orangetea + name = REAGENT_ORANGETEA + id = REAGENT_ID_ORANGETEA + result = REAGENT_ID_ORANGETEA + required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_ORANGEJUICE = 1) + result_amount = 6 + +/decl/chemical_reaction/distilling/drinks/orangetea_decaf + name = "Decaf Orange Tea" + id = REAGENT_ID_ORANGETEADECAF + result = REAGENT_ID_ORANGETEADECAF + required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_ORANGEJUICE = 1) + result_amount = 6 + +/decl/chemical_reaction/distilling/drinks/berrytea + name = REAGENT_BERRYTEA + id = REAGENT_ID_BERRYTEA + result = REAGENT_ID_BERRYTEA + required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_BERRYJUICE = 1) + result_amount = 6 + +/decl/chemical_reaction/distilling/drinks/berrytea_decaf + name = REAGENT_BERRYTEADECAF + id = REAGENT_ID_BERRYTEADECAF + result = REAGENT_ID_BERRYTEADECAF + required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_BERRYJUICE = 1) + result_amount = 6 + +// Not drinks, but we may as well +/decl/chemical_reaction/distilling/drinks/hot_ramen + name = REAGENT_HOTRAMEN + id = REAGENT_ID_HOTRAMEN + result = REAGENT_ID_HOTRAMEN + required_reagents = list(REAGENT_ID_WATER = 1, REAGENT_ID_DRYRAMEN = 3) + result_amount = 3 + wiki_flag = WIKI_FOOD diff --git a/code/modules/reagents/reactions/instant/drinks.dm b/code/modules/reagents/reactions/instant/drinks.dm index fa04bbabc1..6f081df25a 100644 --- a/code/modules/reagents/reactions/instant/drinks.dm +++ b/code/modules/reagents/reactions/instant/drinks.dm @@ -1,34 +1,6 @@ /decl/chemical_reaction/instant/drinks name = REAGENT_DEVELOPER_WARNING // Unit test ignore -/decl/chemical_reaction/instant/drinks/coffee - name = REAGENT_COFFEE - id = REAGENT_ID_COFFEE - result = REAGENT_ID_COFFEE - required_reagents = list(REAGENT_ID_WATER = 5, REAGENT_ID_COFFEEPOWDER = 1) - result_amount = 5 - -/decl/chemical_reaction/instant/drinks/tea - name = "Black tea" - id = REAGENT_ID_TEA - result = REAGENT_ID_TEA - required_reagents = list(REAGENT_ID_WATER = 5, REAGENT_ID_TEAPOWDER = 1) - result_amount = 5 - -/decl/chemical_reaction/instant/drinks/decaftea - name = "Decaf tea" - id = REAGENT_ID_TEADECAF - result = REAGENT_ID_TEADECAF - required_reagents = list(REAGENT_ID_WATER = 5, REAGENT_ID_DECAFTEAPOWDER = 1) - result_amount = 5 - -/decl/chemical_reaction/instant/drinks/hot_coco - name = "Hot Coco" - id = REAGENT_ID_HOTCOCO - result = REAGENT_ID_HOTCOCO - required_reagents = list(REAGENT_ID_WATER = 5, REAGENT_ID_COCO = 1) - result_amount = 5 - /decl/chemical_reaction/instant/drinks/grapejuice name = REAGENT_GRAPEJUICE id = REAGENT_ID_GRAPEJUICE @@ -853,76 +825,6 @@ required_reagents = list(REAGENT_ID_ICETEA = 1, REAGENT_ID_LEMONADE = 1) result_amount = 2 -/decl/chemical_reaction/instant/drinks/minttea - name = REAGENT_MINTTEA - id = REAGENT_ID_MINTTEA - result = REAGENT_ID_MINTTEA - required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_MINT = 1) - result_amount = 6 - -/decl/chemical_reaction/instant/drinks/minttea_decaf - name = REAGENT_MINTTEADECAF - id = "decafminttea" - result = REAGENT_ID_MINTTEADECAF - required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_MINT = 1) - result_amount = 6 - -/decl/chemical_reaction/instant/drinks/lemontea - name = REAGENT_LEMONTEA - id = REAGENT_ID_LEMONTEA - result = REAGENT_ID_LEMONTEA - required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_LEMONJUICE = 1) - result_amount = 6 - -/decl/chemical_reaction/instant/drinks/lemontea_decaf - name = REAGENT_LEMONTEADECAF - id = "decaflemontea" - result = REAGENT_ID_LEMONTEADECAF - required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_LEMONJUICE = 1) - result_amount = 6 - -/decl/chemical_reaction/instant/drinks/limetea - name = REAGENT_LIMETEA - id = REAGENT_ID_LIMETEA - result = REAGENT_ID_LIMETEA - required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_LIMEJUICE = 1) - result_amount = 6 - -/decl/chemical_reaction/instant/drinks/limetea_decaf - name = REAGENT_LIMETEADECAF - id = "decaflimetea" - result = REAGENT_ID_LIMETEADECAF - required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_LIMEJUICE = 1) - result_amount = 6 - -/decl/chemical_reaction/instant/drinks/orangetea - name = REAGENT_ORANGETEA - id = REAGENT_ID_ORANGETEA - result = REAGENT_ID_ORANGETEA - required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_ORANGEJUICE = 1) - result_amount = 6 - -/decl/chemical_reaction/instant/drinks/orangetea_decaf - name = "Decaf Orange Tea" - id = "decaforangetea" - result = REAGENT_ID_ORANGETEADECAF - required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_ORANGEJUICE = 1) - result_amount = 6 - -/decl/chemical_reaction/instant/drinks/berrytea - name = REAGENT_BERRYTEA - id = REAGENT_ID_BERRYTEA - result = REAGENT_ID_BERRYTEA - required_reagents = list(REAGENT_ID_TEA = 5, REAGENT_ID_BERRYJUICE = 1) - result_amount = 6 - -/decl/chemical_reaction/instant/drinks/berrytea_decaf - name = REAGENT_BERRYTEADECAF - id = "decafberrytea" - result = REAGENT_ID_BERRYTEADECAF - required_reagents = list(REAGENT_ID_TEADECAF = 5, REAGENT_ID_BERRYJUICE = 1) - result_amount = 6 - /decl/chemical_reaction/instant/drinks/sakebomb name = REAGENT_SAKEBOMB id = REAGENT_ID_SAKEBOMB diff --git a/code/modules/reagents/reactions/instant/food.dm b/code/modules/reagents/reactions/instant/food.dm index 7c6a4b4a2e..f9bbc234d3 100644 --- a/code/modules/reagents/reactions/instant/food.dm +++ b/code/modules/reagents/reactions/instant/food.dm @@ -2,13 +2,6 @@ name = REAGENT_DEVELOPER_WARNING // Unit test ignore wiki_flag = WIKI_FOOD -/decl/chemical_reaction/instant/food/hot_ramen - name = REAGENT_HOTRAMEN - id = REAGENT_ID_HOTRAMEN - result = REAGENT_ID_HOTRAMEN - required_reagents = list(REAGENT_ID_WATER = 1, REAGENT_ID_DRYRAMEN = 3) - result_amount = 3 - /decl/chemical_reaction/instant/food/hell_ramen name = REAGENT_HELLRAMEN id = REAGENT_ID_HELLRAMEN diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index a5a2b4c9e6..71bf0d3c19 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -437,3 +437,16 @@ /obj/item/reagent_containers/glass/beaker/vial/sustenance name = "vial (artificial sustenance)" prefill = list(REAGENT_ID_ASUSTENANCE = 30) + +/obj/item/reagent_containers/glass/kettle + name = "kettle" + desc = "A simple kettle for brewing drinks." + icon_state = "kettle" + amount_per_transfer_from_this = 10 + max_transfer_amount = 20 + volume = 60 + w_class = ITEMSIZE_SMALL + flags = OPENCONTAINER + matter = list(MAT_STEEL = 50) + drop_sound = 'sound/items/drop/crowbar.ogg' + pickup_sound = 'sound/items/pickup/drinkglass.ogg' diff --git a/code/modules/reagents/reagents/food_drinks.dm b/code/modules/reagents/reagents/food_drinks.dm index 6fdc8a7a98..26baf2f917 100644 --- a/code/modules/reagents/reagents/food_drinks.dm +++ b/code/modules/reagents/reagents/food_drinks.dm @@ -2565,7 +2565,7 @@ /datum/reagent/drink/dry_ramen name = REAGENT_DRYRAMEN id = REAGENT_ID_DRYRAMEN - description = "Space age food, since August 25, 1958. Contains dried noodles, vegetables, and chemicals that boil in contact with water." + description = "Space age food, since August 25, 1958. Contains dried noodles, vegetables, boil in water before serving." taste_description = "dry cheap noodles" reagent_state = SOLID nutrition = 1 diff --git a/vorestation.dme b/vorestation.dme index 436dd59621..8bafc80f38 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -4409,6 +4409,7 @@ #include "code\modules\reagents\reactions\_reactions.dm" #include "code\modules\reagents\reactions\distilling\distilling.dm" #include "code\modules\reagents\reactions\distilling\gas_condensing.dm" +#include "code\modules\reagents\reactions\distilling\hot_drinks.dm" #include "code\modules\reagents\reactions\fusion\fusion.dm" #include "code\modules\reagents\reactions\instant\drinks.dm" #include "code\modules\reagents\reactions\instant\drinks_vr.dm"