From 0eaec89adbce6e19046c4d2c8c225de5b6e322a6 Mon Sep 17 00:00:00 2001 From: SabreML <57483089+SabreML@users.noreply.github.com> Date: Thu, 15 Apr 2021 22:04:24 +0100 Subject: [PATCH] Soup Drinking (and custom soups!) (#15620) * SOUP * Space stuff it compiled before I swear * = --- .../map_files/RandomRuins/SpaceRuins/ussp.dmm | 2 +- _maps/map_files/RandomZLevels/spacebattle.dmm | 2 +- _maps/map_files/RandomZLevels/wildwest.dmm | 2 +- code/game/machinery/vending.dm | 1 + .../game/objects/effects/spawners/lootdrop.dm | 10 +-- code/game/objects/items/trash.dm | 4 +- .../food_and_drinks/food/customizables.dm | 10 +-- .../food_and_drinks/food/foods/soups.dm | 71 ++++++++----------- .../recipes/recipes_microwave.dm | 30 ++++---- code/modules/station_goals/bluespace_tap.dm | 8 +-- 10 files changed, 63 insertions(+), 77 deletions(-) diff --git a/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm b/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm index 3a657a7e054..1ba82c992a5 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm @@ -6735,7 +6735,7 @@ }) "nS" = ( /obj/structure/table/wood, -/obj/item/reagent_containers/food/snacks/beetsoup, +/obj/item/reagent_containers/food/snacks/soup/beetsoup, /turf/simulated/floor/plasteel{ icon_state = "bar" }, diff --git a/_maps/map_files/RandomZLevels/spacebattle.dmm b/_maps/map_files/RandomZLevels/spacebattle.dmm index 82ff15e5bd5..41249533907 100644 --- a/_maps/map_files/RandomZLevels/spacebattle.dmm +++ b/_maps/map_files/RandomZLevels/spacebattle.dmm @@ -666,7 +666,7 @@ /area/awaymission/spacebattle/cruiser) "cS" = ( /obj/structure/table/reinforced, -/obj/item/reagent_containers/food/snacks/stew, +/obj/item/reagent_containers/food/snacks/soup/stew, /turf/simulated/floor/plasteel{ icon_state = "cafeteria"; dir = 2 diff --git a/_maps/map_files/RandomZLevels/wildwest.dmm b/_maps/map_files/RandomZLevels/wildwest.dmm index 5ceeeac6383..50a7074a7a9 100644 --- a/_maps/map_files/RandomZLevels/wildwest.dmm +++ b/_maps/map_files/RandomZLevels/wildwest.dmm @@ -1217,7 +1217,7 @@ }, /area/awaymission/wwgov) "dy" = ( -/obj/item/reagent_containers/food/snacks/stew, +/obj/item/reagent_containers/food/snacks/soup/stew, /turf/simulated/floor/plasteel{ tag = "icon-stage_bleft"; icon_state = "stage_bleft" diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 5be9f9996c4..9f18c35c4b7 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -1581,6 +1581,7 @@ products = list(/obj/item/storage/bag/tray = 8, /obj/item/kitchen/utensil/fork = 6, /obj/item/trash/plate = 20, + /obj/item/trash/bowl = 20, /obj/item/kitchen/knife = 3, /obj/item/kitchen/rollingpin = 2, /obj/item/kitchen/sushimat = 3, diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm index d237c2c2c90..90fcb842684 100644 --- a/code/game/objects/effects/spawners/lootdrop.dm +++ b/code/game/objects/effects/spawners/lootdrop.dm @@ -388,11 +388,11 @@ lootcount = 3 lootdoubles = FALSE var/soups = list( - /obj/item/reagent_containers/food/snacks/beetsoup, - /obj/item/reagent_containers/food/snacks/stew, - /obj/item/reagent_containers/food/snacks/hotchili, - /obj/item/reagent_containers/food/snacks/nettlesoup, - /obj/item/reagent_containers/food/snacks/meatballsoup) + /obj/item/reagent_containers/food/snacks/soup/beetsoup, + /obj/item/reagent_containers/food/snacks/soup/stew, + /obj/item/reagent_containers/food/snacks/soup/hotchili, + /obj/item/reagent_containers/food/snacks/soup/nettlesoup, + /obj/item/reagent_containers/food/snacks/soup/meatballsoup) var/salads = list( /obj/item/reagent_containers/food/snacks/herbsalad, /obj/item/reagent_containers/food/snacks/validsalad, diff --git a/code/game/objects/items/trash.dm b/code/game/objects/items/trash.dm index 80dd45d1b02..c2ff3879968 100644 --- a/code/game/objects/items/trash.dm +++ b/code/game/objects/items/trash.dm @@ -52,12 +52,12 @@ icon_state = "waffles" /obj/item/trash/plate - name = "Plate" + name = "plate" icon_state = "plate" resistance_flags = NONE /obj/item/trash/snack_bowl - name = "Snack bowl" + name = "snack bowl" icon_state = "snack_bowl" /obj/item/trash/fried_vox diff --git a/code/modules/food_and_drinks/food/customizables.dm b/code/modules/food_and_drinks/food/customizables.dm index ef2ad5f777b..e08e5e243be 100644 --- a/code/modules/food_and_drinks/food/customizables.dm +++ b/code/modules/food_and_drinks/food/customizables.dm @@ -41,14 +41,13 @@ /obj/item/trash/bowl name = "bowl" desc = "An empty bowl. Put some food in it to start making a soup." - icon = 'icons/obj/food/food.dmi' + icon = 'icons/obj/food/custom.dmi' icon_state = "soup" -/obj/item/trash/bowl/attackby(obj/item/W, mob/user, params) - - if(istype(W, /obj/item/reagent_containers/food/snacks) && !(W.flags & NODROP)) +/obj/item/trash/bowl/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/reagent_containers/food/snacks) && !(I.flags & NODROP)) var/obj/item/reagent_containers/food/snacks/customizable/soup/S = new(get_turf(user)) - S.attackby(W,user, params) + S.attackby(I, user, params) qdel(src) else ..() @@ -313,6 +312,7 @@ icon_state = "soup" baseicon = "soup" basename = "soup" + consume_sound = 'sound/items/drink.ogg' snack_overlays = 0 trash = /obj/item/trash/bowl top = 0 diff --git a/code/modules/food_and_drinks/food/foods/soups.dm b/code/modules/food_and_drinks/food/foods/soups.dm index 17b70a26308..16048147fb3 100644 --- a/code/modules/food_and_drinks/food/foods/soups.dm +++ b/code/modules/food_and_drinks/food/foods/soups.dm @@ -3,143 +3,132 @@ // Soups // ////////////////////// -/obj/item/reagent_containers/food/snacks/meatballsoup +// Base object for soups, should never appear ingame. +/obj/item/reagent_containers/food/snacks/soup + name = "impossible soup" + desc = "This soup is so good, it shouldn't even exist!" + icon_state = "beans" // If you don't have a sprite, you get beans. + consume_sound = 'sound/items/drink.ogg' + trash = /obj/item/trash/snack_bowl + bitesize = 5 + +/obj/item/reagent_containers/food/snacks/soup/meatballsoup name = "meatball soup" desc = "You've got balls kid, BALLS!" icon_state = "meatballsoup" - trash = /obj/item/trash/snack_bowl filling_color = "#785210" - bitesize = 5 list_reagents = list("nutriment" = 8, "water" = 5, "vitamin" = 4) tastes = list("meatball" = 1) -/obj/item/reagent_containers/food/snacks/slimesoup +/obj/item/reagent_containers/food/snacks/soup/slimesoup name = "slime soup" desc = "If no water is available, you may substitute tears." icon_state = "slimesoup" filling_color = "#C4DBA0" - bitesize = 5 list_reagents = list("nutriment" = 5, "slimejelly" = 5, "water" = 5, "vitamin" = 4) tastes = list("slime" = 1) -/obj/item/reagent_containers/food/snacks/bloodsoup +/obj/item/reagent_containers/food/snacks/soup/bloodsoup name = "tomato soup" desc = "Smells like copper." icon_state = "tomatosoup" filling_color = "#FF0000" - bitesize = 5 list_reagents = list("nutriment" = 2, "blood" = 10, "water" = 5, "vitamin" = 4) tastes = list("iron" = 1) -/obj/item/reagent_containers/food/snacks/clownstears +/obj/item/reagent_containers/food/snacks/soup/clownstears name = "clown's tears" desc = "Not very funny." icon_state = "clownstears" filling_color = "#C4FBFF" - bitesize = 5 list_reagents = list("nutriment" = 4, "banana" = 5, "water" = 5, "vitamin" = 8) tastes = list("a bad joke" = 1) -/obj/item/reagent_containers/food/snacks/vegetablesoup +/obj/item/reagent_containers/food/snacks/soup/vegetablesoup name = "vegetable soup" desc = "A true vegan meal." //TODO icon_state = "vegetablesoup" - trash = /obj/item/trash/snack_bowl filling_color = "#AFC4B5" - bitesize = 5 list_reagents = list("nutriment" = 8, "water" = 5, "vitamin" = 4) tastes = list("vegetables" = 1) -/obj/item/reagent_containers/food/snacks/nettlesoup +/obj/item/reagent_containers/food/snacks/soup/nettlesoup name = "nettle soup" desc = "To think, the botanist would've beaten you to death with one of these." icon_state = "nettlesoup" - trash = /obj/item/trash/snack_bowl filling_color = "#AFC4B5" - bitesize = 5 list_reagents = list("nutriment" = 8, "water" = 5, "vitamin" = 4) tastes = list("nettles" = 1) -/obj/item/reagent_containers/food/snacks/mysterysoup +/obj/item/reagent_containers/food/snacks/soup/mysterysoup name = "mystery soup" desc = "The mystery is, why aren't you eating it?" icon_state = "mysterysoup" var/extra_reagent = null - bitesize = 5 list_reagents = list("nutriment" = 6) tastes = list("chaos" = 1) -/obj/item/reagent_containers/food/snacks/mysterysoup/New() +/obj/item/reagent_containers/food/snacks/soup/mysterysoup/New() ..() extra_reagent = pick("capsaicin", "frostoil", "omnizine", "banana", "blood", "slimejelly", "toxin", "banana", "carbon", "oculine") reagents.add_reagent("[extra_reagent]", 5) -/obj/item/reagent_containers/food/snacks/wishsoup +/obj/item/reagent_containers/food/snacks/soup/wishsoup name = "wish soup" desc = "I wish this was soup." icon_state = "wishsoup" - trash = /obj/item/trash/snack_bowl filling_color = "#D1F4FF" - bitesize = 5 list_reagents = list("water" = 10) tastes = list("wishes" = 1) -/obj/item/reagent_containers/food/snacks/wishsoup/New() +/obj/item/reagent_containers/food/snacks/soup/wishsoup/New() ..() if(prob(25)) desc = "A wish come true!" // hue reagents.add_reagent("nutriment", 9) reagents.add_reagent("vitamin", 1) -/obj/item/reagent_containers/food/snacks/tomatosoup +/obj/item/reagent_containers/food/snacks/soup/tomatosoup name = "tomato soup" desc = "Drinking this feels like being a vampire! A tomato vampire..." icon_state = "tomatosoup" - trash = /obj/item/trash/snack_bowl filling_color = "#D92929" - bitesize = 5 list_reagents = list("nutriment" = 5, "tomatojuice" = 10, "vitamin" = 3) tastes = list("tomato" = 1) -/obj/item/reagent_containers/food/snacks/misosoup +/obj/item/reagent_containers/food/snacks/soup/misosoup name = "miso soup" desc = "The universe's best soup! Yum!!!" icon_state = "misosoup" - trash = /obj/item/trash/snack_bowl - bitesize = 5 list_reagents = list("nutriment" = 7, "vitamin" = 2) tastes = list("miso" = 1) -/obj/item/reagent_containers/food/snacks/mushroomsoup +/obj/item/reagent_containers/food/snacks/soup/mushroomsoup name = "chantrelle soup" desc = "A delicious and hearty mushroom soup." icon_state = "mushroomsoup" - trash = /obj/item/trash/snack_bowl filling_color = "#E386BF" - bitesize = 5 list_reagents = list("nutriment" = 8, "vitamin" = 4) tastes = list("mushroom" = 1) -/obj/item/reagent_containers/food/snacks/beetsoup +/obj/item/reagent_containers/food/snacks/soup/beetsoup name = "beet soup" desc = "Wait, how do you spell it again..?" icon_state = "beetsoup" - trash = /obj/item/trash/snack_bowl - bitesize = 5 filling_color = "#FAC9FF" list_reagents = list("nutriment" = 7, "vitamin" = 2) tastes = list("beet" = 1) -/obj/item/reagent_containers/food/snacks/beetsoup/New() +/obj/item/reagent_containers/food/snacks/soup/beetsoup/New() ..() - name = pick("borsch","bortsch","borstch","borsh","borshch","borscht") + name = pick("borsch", "bortsch", "borstch", "borsh", "borshch", "borscht") ////////////////////// // Stews // ////////////////////// -/obj/item/reagent_containers/food/snacks/stew +/obj/item/reagent_containers/food/snacks/soup/stew name = "stew" desc = "A nice and warm stew. Healthy and strong." icon_state = "stew" @@ -161,22 +150,18 @@ // Chili // ////////////////////// -/obj/item/reagent_containers/food/snacks/hotchili +/obj/item/reagent_containers/food/snacks/soup/hotchili name = "hot chili" desc = "A five alarm Texan Chili!" icon_state = "hotchili" - trash = /obj/item/trash/snack_bowl filling_color = "#FF3C00" - bitesize = 5 list_reagents = list("nutriment" = 5, "capsaicin" = 1, "tomatojuice" = 2, "vitamin" = 2) tastes = list("hot peppers" = 1, "tomato" = 1) -/obj/item/reagent_containers/food/snacks/coldchili +/obj/item/reagent_containers/food/snacks/soup/coldchili name = "cold chili" desc = "This slush is barely a liquid!" icon_state = "coldchili" filling_color = "#2B00FF" - trash = /obj/item/trash/snack_bowl - bitesize = 5 list_reagents = list("nutriment" = 5, "frostoil" = 1, "tomatojuice" = 2, "vitamin" = 2) tastes = list("tomato" = 1, "mint" = 1) diff --git a/code/modules/food_and_drinks/recipes/recipes_microwave.dm b/code/modules/food_and_drinks/recipes/recipes_microwave.dm index 2214e44b772..a54ef40918a 100644 --- a/code/modules/food_and_drinks/recipes/recipes_microwave.dm +++ b/code/modules/food_and_drinks/recipes/recipes_microwave.dm @@ -227,30 +227,30 @@ /datum/recipe/microwave/meatballsoup reagents = list("water" = 10) items = list(/obj/item/reagent_containers/food/snacks/meatball, /obj/item/reagent_containers/food/snacks/grown/potato, /obj/item/reagent_containers/food/snacks/grown/carrot) - result = /obj/item/reagent_containers/food/snacks/meatballsoup + result = /obj/item/reagent_containers/food/snacks/soup/meatballsoup /datum/recipe/microwave/vegetablesoup reagents = list("water" = 10) items = list(/obj/item/reagent_containers/food/snacks/grown/potato, /obj/item/reagent_containers/food/snacks/grown/carrot, /obj/item/reagent_containers/food/snacks/grown/corn, /obj/item/reagent_containers/food/snacks/grown/eggplant) - result = /obj/item/reagent_containers/food/snacks/vegetablesoup + result = /obj/item/reagent_containers/food/snacks/soup/vegetablesoup /datum/recipe/microwave/nettlesoup reagents = list("water" = 10) items = list(/obj/item/reagent_containers/food/snacks/egg, /obj/item/grown/nettle/basic, /obj/item/reagent_containers/food/snacks/grown/potato) - result = /obj/item/reagent_containers/food/snacks/nettlesoup + result = /obj/item/reagent_containers/food/snacks/soup/nettlesoup /datum/recipe/microwave/wishsoup reagents = list("water" = 20) - result= /obj/item/reagent_containers/food/snacks/wishsoup + result = /obj/item/reagent_containers/food/snacks/soup/wishsoup /datum/recipe/microwave/hotchili items = list(/obj/item/reagent_containers/food/snacks/meat, /obj/item/reagent_containers/food/snacks/grown/chili, /obj/item/reagent_containers/food/snacks/grown/tomato) - result = /obj/item/reagent_containers/food/snacks/hotchili + result = /obj/item/reagent_containers/food/snacks/soup/hotchili /datum/recipe/microwave/coldchili items = list(/obj/item/reagent_containers/food/snacks/meat, /obj/item/reagent_containers/food/snacks/grown/icepepper, /obj/item/reagent_containers/food/snacks/grown/tomato) - result = /obj/item/reagent_containers/food/snacks/coldchili + result = /obj/item/reagent_containers/food/snacks/soup/coldchili /datum/recipe/microwave/spellburger items = list( @@ -314,14 +314,14 @@ /datum/recipe/microwave/tomatosoup reagents = list("water" = 10) items = list(/obj/item/reagent_containers/food/snacks/grown/tomato, /obj/item/reagent_containers/food/snacks/grown/tomato) - result = /obj/item/reagent_containers/food/snacks/tomatosoup + result = /obj/item/reagent_containers/food/snacks/soup/tomatosoup /datum/recipe/microwave/stew reagents = list("water" = 10) items= list(/obj/item/reagent_containers/food/snacks/grown/tomato, /obj/item/reagent_containers/food/snacks/grown/potato, /obj/item/reagent_containers/food/snacks/grown/carrot, /obj/item/reagent_containers/food/snacks/grown/eggplant, /obj/item/reagent_containers/food/snacks/grown/mushroom, /obj/item/reagent_containers/food/snacks/meat) - result = /obj/item/reagent_containers/food/snacks/stew + result = /obj/item/reagent_containers/food/snacks/soup/stew /datum/recipe/microwave/slimetoast reagents = list("slimejelly" = 5) @@ -345,7 +345,7 @@ /obj/item/reagent_containers/food/snacks/tofu, /obj/item/reagent_containers/food/snacks/tofu, ) - result = /obj/item/reagent_containers/food/snacks/misosoup + result = /obj/item/reagent_containers/food/snacks/soup/misosoup /datum/recipe/microwave/stewedsoymeat items = list(/obj/item/reagent_containers/food/snacks/soydope, /obj/item/reagent_containers/food/snacks/soydope, @@ -463,11 +463,11 @@ /datum/recipe/microwave/bloodsoup reagents = list("blood" = 10) items = list(/obj/item/reagent_containers/food/snacks/grown/tomato/blood, /obj/item/reagent_containers/food/snacks/grown/tomato/blood) - result = /obj/item/reagent_containers/food/snacks/bloodsoup + result = /obj/item/reagent_containers/food/snacks/soup/bloodsoup /datum/recipe/microwave/slimesoup reagents = list("water" = 10, "slimejelly" = 5) - result = /obj/item/reagent_containers/food/snacks/slimesoup + result = /obj/item/reagent_containers/food/snacks/soup/slimesoup /datum/recipe/microwave/clownstears reagents = list("water" = 10) @@ -475,7 +475,7 @@ /obj/item/stack/ore/bananium, /obj/item/reagent_containers/food/snacks/grown/banana ) - result = /obj/item/reagent_containers/food/snacks/clownstears + result = /obj/item/reagent_containers/food/snacks/soup/clownstears /datum/recipe/microwave/boiledslimeextract reagents = list("water" = 5) @@ -503,12 +503,12 @@ /obj/item/reagent_containers/food/snacks/egg, /obj/item/reagent_containers/food/snacks/cheesewedge, ) - result = /obj/item/reagent_containers/food/snacks/mysterysoup + result = /obj/item/reagent_containers/food/snacks/soup/mysterysoup /datum/recipe/microwave/mushroomsoup reagents = list("water" = 5, "milk" = 5) items = list(/obj/item/reagent_containers/food/snacks/grown/mushroom) - result = /obj/item/reagent_containers/food/snacks/mushroomsoup + result = /obj/item/reagent_containers/food/snacks/soup/mushroomsoup /datum/recipe/microwave/chawanmushi reagents = list("water" = 5, "soysauce" = 5) @@ -522,7 +522,7 @@ /datum/recipe/microwave/beetsoup reagents = list("water" = 10) items = list(/obj/item/reagent_containers/food/snacks/grown/whitebeet, /obj/item/reagent_containers/food/snacks/grown/cabbage) - result = /obj/item/reagent_containers/food/snacks/beetsoup + result = /obj/item/reagent_containers/food/snacks/soup/beetsoup /datum/recipe/microwave/herbsalad items = list(/obj/item/reagent_containers/food/snacks/grown/ambrosia/vulgaris, /obj/item/reagent_containers/food/snacks/grown/ambrosia/vulgaris, diff --git a/code/modules/station_goals/bluespace_tap.dm b/code/modules/station_goals/bluespace_tap.dm index 5bca3129d0f..6eb4cb9572e 100644 --- a/code/modules/station_goals/bluespace_tap.dm +++ b/code/modules/station_goals/bluespace_tap.dm @@ -156,10 +156,10 @@ /obj/item/reagent_containers/food/snacks/sliceable/cheesecake, /obj/item/reagent_containers/food/snacks/sliceable/bananacake, /obj/item/reagent_containers/food/snacks/sliceable/chocolatecake, - /obj/item/reagent_containers/food/snacks/meatballsoup, - /obj/item/reagent_containers/food/snacks/mysterysoup, - /obj/item/reagent_containers/food/snacks/stew, - /obj/item/reagent_containers/food/snacks/hotchili, + /obj/item/reagent_containers/food/snacks/soup/meatballsoup, + /obj/item/reagent_containers/food/snacks/soup/mysterysoup, + /obj/item/reagent_containers/food/snacks/soup/stew, + /obj/item/reagent_containers/food/snacks/soup/hotchili, /obj/item/reagent_containers/food/snacks/burrito, /obj/item/reagent_containers/food/snacks/fishburger, /obj/item/reagent_containers/food/snacks/cubancarp,