Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cream & Yoghurt additions/reworks #16288

Merged
merged 14 commits into from
Dec 21, 2023
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
9 changes: 9 additions & 0 deletions code/modules/chemistry/Chemistry-Recipes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -781,6 +781,15 @@
boutput(M, "<span class='alert'>A horrible smell assaults your nose! What in space is it?</span>")
return

yoghurt
name = "Yoghurt"
id = "yoghurt"
result = "yoghurt"
required_reagents = list("milk" = 1, "yuck" = 1)
result_amount = 1
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
mix_phrase = "The mixture curdles up slightly."
mix_sound = 'sound/effects/splort.ogg'

lemonade
name = "Lemonade"
id = "lemonade"
Expand Down
40 changes: 40 additions & 0 deletions code/modules/chemistry/Reagents-FoodDrink.dm
Original file line number Diff line number Diff line change
Expand Up @@ -189,6 +189,46 @@ datum
var/mob/living/L = M
L.contract_disease(/datum/ailment/disease/food_poisoning, null, null, 1)

fooddrink/yoghurt
name = "yoghurt"
id = "yoghurt"
description = "A gloopy food made of fermented milk."
reagent_state = SOLID
fluid_r = 255
fluid_b = 200
fluid_g = 255
transparency = 255
hunger_value = 0.5
taste = "slightly sour"
viscosity = 0.4
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
on_mob_life(var/mob/M, var/mult = 1)
if (ishuman(M))
var/mob/living/carbon/human/H = M
H.organHolder.heal_organ(1 * mult, 1 * mult, 1 * mult, "intestines")
..()

fooddrink/cream
name = "cream"
id = "cream"
description = "A thick white liquid made from processed milk fats."
reagent_state = LIQUID
fluid_r = 255
fluid_b = 230
fluid_g = 255
transparency = 255
taste = "creamy"
thirst_value = 0.3
hunger_value = 0.3
bladder_value = -0.2
viscosity = 0.1
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved

on_mob_life(var/mob/M, var/mult = 1)
if(prob(25))
M.reagents.add_reagent(("milk"), 1 * mult)
M.reagents.add_reagent(("cholesterol"), 1 * mult)
..()


fooddrink/cocktail_fruit_punch
name = "fruit punch"
id = "fruit_punch"
Expand Down
2 changes: 1 addition & 1 deletion code/modules/food_and_drink/cakes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -568,7 +568,7 @@
desc = "Mmm! A delicious-looking cream sponge cake!"
heal_amt = 2
initial_volume = 50
initial_reagents = list("sugar"=30)
initial_reagents = list("sugar"=20, "cream"=10)

New()
..()
Expand Down
7 changes: 6 additions & 1 deletion code/modules/food_and_drink/condiments.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,10 @@ ABSTRACT_TYPE(/obj/item/reagent_containers/food/snacks/condiment)
boutput(M, "<span class='alert'>It's just not good enough on its own...</span>")

afterattack(atom/target, mob/user, flag)
if (!src.reagents || src.qdeled || src.disposed) return //how
if (!src.reagents || !src.reagents?.total_volume || QDELETED(src)) return //how
if (istype(target, /obj/item/reagent_containers/food/snacks/condiment))
boutput(user, "<span class='alert'>You can't flavour a condiment!</span>")
return

if (istype(target, /obj/item/reagent_containers/food/snacks/))
user.visible_message("<span class='notice'>[user] adds [src] to \the [target].</span>", "<span class='notice'>You add [src] to \the [target].</span>")
Expand Down Expand Up @@ -101,6 +104,8 @@ ABSTRACT_TYPE(/obj/item/reagent_containers/food/snacks/condiment)
desc = "Not related to any kind of crop."
icon_state = "cream" //ITS NOT A GODDAMN COOKIE
food_color = "#F8F8F8"
initial_volume = 10
initial_reagents = list("cream"=10)

/obj/item/reagent_containers/food/snacks/condiment/custard
name = "custard"
Expand Down
2 changes: 1 addition & 1 deletion code/modules/food_and_drink/drinks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -488,7 +488,7 @@
icon_state = "milk"
heal_amt = 1
initial_volume = 50
initial_reagents = list("milk"=25,"toxin"=25)
initial_reagents = list("yoghurt"=25,"yuck"=25)

/obj/item/reagent_containers/food/drinks/milk/clownspider
name = "Honkey Gibbersons - Clownspider Milk"
Expand Down
11 changes: 8 additions & 3 deletions code/modules/food_and_drink/ice_cream.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
var/flavor_name = null
var/image/cream_image = null
initial_volume = 40
initial_reagents = list("cream" = 10)
food_effects = list("food_cold")
use_bite_mask = FALSE

Expand Down Expand Up @@ -100,12 +101,16 @@
icon = 'icons/obj/foodNdrink/food_snacks.dmi'
icon_state = "yoghurt"
required_utensil = REQUIRED_UTENSIL_SPOON
bites_left = 6
bites_left = 4
heal_amt = 1
initial_volume = 10
initial_reagents = list("yoghurt"=10)
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
food_effects = list("food_disease_resist")

/obj/item/reagent_containers/food/snacks/yoghurt/frozen
name = "frozen yoghurt"
desc = "A delightful tub of frozen yoghurt."
heal_amt = 2
initial_volume = 30
initial_reagents = list("cryostylane"=30)
initial_volume = 10
initial_reagents = list("yoghurt"=10)
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
food_effects = list("food_cold", "food_disease_resist")
1 change: 1 addition & 0 deletions code/modules/food_and_drink/pies.dm
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,7 @@ ABSTRACT_TYPE(/obj/item/reagent_containers/food/snacks/pieslice)
force = 0
bites_left = 2
heal_amt = 6
initial_reagents = list("cream"=10)

/obj/item/reagent_containers/food/snacks/pie/anything
name = "anything pie"
Expand Down
40 changes: 27 additions & 13 deletions code/modules/food_and_drink/snacks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -317,6 +317,8 @@
bites_left = 1
heal_amt = 1
fill_amt = 0.5
initial_volume = 15
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 15)
var/frosted = 0
food_color = "#CC9966"
festivity = 1
Expand Down Expand Up @@ -348,14 +350,16 @@
heal_amt = 0
icon_state = "cookie-metal"
food_effects = list("food_hp_up")
initial_volume = 20
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 10, "iron" = 10)

chocolate_chip
name = "chocolate-chip cookie"
desc = "Invented during the Great Depression, this chocolate-laced cookie was a key element of FDR's New Deal policies."
icon_state = "cookie-chips"
heal_amt = 2
initial_volume = 15
initial_reagents = list("chocolate"=10)
initial_volume = 20
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 15, "chocolate" = 5)

oatmeal
name = "oatmeal cookie"
Expand All @@ -367,39 +371,39 @@
name = "bacon cookie"
desc = "A cookie made out of bacon. Is this intended to be savory or a sweet candied bacon sort of thing? Whatever it is, it's pretty dumb."
icon_state = "cookie-bacon"
initial_volume = 50
initial_reagents = list("porktonium"=25)
initial_volume = 20
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 10, "porktonium"=10)
food_effects = list("food_sweaty")

jaffa
name = "jaffa cake"
desc = "Legally a cake, this edible consists of precision layers of chocolate, sponge cake, and orange jelly."
icon_state = "cookie-jaffa"
initial_volume = 20
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 10, "chocolate"=5, "juice_orange"=5)

spooky
name = "spookie"
desc = "Two ounces of pure terror."
icon_state = "cookie-spooky"
frosted = 1
initial_volume = 25
initial_reagents = list("ectoplasm"=10)
initial_volume = 20
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 10, "ectoplasm"=10)
meal_time_flags = MEAL_TIME_FORBIDDEN_TREAT

butter
name = "butter cookie"
desc = "Little bite-sized heart attacks." //no kidding
icon_state = "cookie-butter"
frosted = 1
initial_volume = 25
initial_reagents = list("butter"=10)
initial_volume = 20
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 10, "butter"=10)

peanut
name = "peanut butter cookie"
desc = "It's delicious and nutritious... probably."
icon_state = "cookie-peanut"
frosted = 1
initial_volume = 25
initial_reagents = list("sugar"=20)
food_effects = list("food_deep_burp")

dog
Expand Down Expand Up @@ -437,6 +441,8 @@
icon_state = "moonpie-sugar"
bites_left = 1
heal_amt = 6
initial_volume = 40
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 30, "cream" = 10)
var/frosted = 0
food_effects = list("food_refreshed")
meal_time_flags = MEAL_TIME_SNACK
Expand Down Expand Up @@ -465,13 +471,17 @@
icon_state = "moonpie-metal"
heal_amt = 0
food_effects = list("food_hp_up_big")
initial_volume = 50
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 20, "iron" = 20, "cream" = 10)

chocolate_chip
name = "chocolate-chip moon pie"
desc = "The confection commonly credited with winning the Korean, Gulf, and Unfolder wars."
icon_state = "moonpie-chips"
heal_amt = 7
food_effects = list("food_refreshed_big")
initial_volume = 50
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 30, "chocolate" = 10, "cream" = 10)

oatmeal
name = "oatmeal moon pie"
Expand All @@ -486,21 +496,25 @@
icon_state = "moonpie-bacon"
heal_amt = 5
initial_volume = 50
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = "porktonium"
initial_reagents = list("sugar" = 20, "porktonium" = 20, "cream" = 10)
food_effects = list("food_sweaty_big")

jaffa
name = "jaffa moon cobbler"
desc = "This dish was named in an attempt to dodge sales taxes on pie production. However, it is actually legally considered a form of crumble."
icon_state = "moonpie-jaffa"
heal_amt = 8
initial_volume = 50
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 20, "chocolate" = 10, "juice_orange" = 10, "cream" = 10)
food_effects = list("food_refreshed_big")

chocolate
name = "whoopie pie"
desc = "A confection infamous for being especially terrible for you, in a culture noted for having nothing but foods that are terrible for you."
icon_state = "moonpie-chocolate"
heal_amt = 25 //oh jesus
initial_volume = 60
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 20, "chocolate" = 30, "cream" = 10)
food_effects = list("food_refreshed_big")

spooky
Expand All @@ -509,8 +523,8 @@
icon_state = "moonpie-spooky"
heal_amt = 6
frosted = 1
initial_volume = 25
initial_reagents = list("ectoplasm"=10)
initial_volume = 50
CrystalClover marked this conversation as resolved.
Show resolved Hide resolved
initial_reagents = list("sugar" = 20, "ectoplasm"=20, "cream" = 10)
food_effects = list("food_refreshed_big")
meal_time_flags = MEAL_TIME_FORBIDDEN_TREAT

Expand Down
29 changes: 16 additions & 13 deletions code/obj/submachine/cooking.dm
Original file line number Diff line number Diff line change
Expand Up @@ -966,6 +966,21 @@ TYPEINFO(/obj/submachine/foodprocessor)
sleep(rand(30,70))
// Dispense processed stuff
for(var/obj/item/P in src.contents)
if (istype(P,/obj/item/reagent_containers/food/drinks))
var/milk_amount = P.reagents.get_reagent_amount("milk")
var/yoghurt_amount = P.reagents.get_reagent_amount("yoghurt")
if (milk_amount < 10 && yoghurt_amount < 10)
continue

var/cream_output = roundfloor(milk_amount / 10)
var/yoghurt_output = roundfloor(yoghurt_amount / 10)
P.reagents.remove_reagent("milk", cream_output * 10)
P.reagents.remove_reagent("yoghurt", yoghurt_output * 10)
for (var/i in 1 to cream_output)
new/obj/item/reagent_containers/food/snacks/condiment/cream(src.loc)
for (var/i in 1 to yoghurt_output)
new/obj/item/reagent_containers/food/snacks/yoghurt(src.loc)

switch( P.type )
if (/obj/item/reagent_containers/food/snacks/ingredient/meat/humanmeat)
var/obj/item/reagent_containers/food/snacks/meatball/F = new(src.loc)
Expand Down Expand Up @@ -1054,24 +1069,12 @@ TYPEINFO(/obj/submachine/foodprocessor)
if (/obj/item/reagent_containers/food/snacks/plant/coffeeberry/latte)
var/datum/plantgenes/DNA = P:plantgenes
var/obj/item/reagent_containers/food/snacks/condiment/cream/F = new(src.loc)
F.reagents.add_reagent("milk", DNA?.get_effective_value("potency"))
F.reagents.add_reagent("cream", DNA?.get_effective_value("potency"))
qdel( P )
if (/obj/item/plant/sugar)
var/obj/item/reagent_containers/food/snacks/ingredient/sugar/F = new(src.loc)
F.reagents.add_reagent("sugar", 20)
qdel( P )
if (/obj/item/reagent_containers/food/drinks/milk)
if (P.reagents.get_reagent_amount("milk") >= MIN_FLUID_INGREDIENT_LEVEL)
new/obj/item/reagent_containers/food/snacks/condiment/cream(src.loc)
qdel( P )
if (/obj/item/reagent_containers/food/drinks/milk/soy)
//so soy milk is just milk it seems, veganism is a lie
if (P.reagents.get_reagent_amount("milk") >= MIN_FLUID_INGREDIENT_LEVEL)
new/obj/item/reagent_containers/food/snacks/condiment/cream(src.loc)
qdel( P )
if (/obj/item/reagent_containers/food/drinks/milk/rancid)
new/obj/item/reagent_containers/food/snacks/yoghurt(src.loc)
qdel( P )
if (/obj/item/reagent_containers/food/snacks/condiment/cream)
new/obj/item/reagent_containers/food/snacks/ingredient/butter(src.loc)
qdel( P )
Expand Down