From b9fa8ad7306e2789ca5b4e898d55893843a38a0c Mon Sep 17 00:00:00 2001
From: granpawalton <36310010+granpawalton@users.noreply.github.com>
Date: Thu, 4 Jul 2019 22:15:07 -0500
Subject: [PATCH] Make breakfast foods give a positive moodie before 15 mins
(#44914)
Breakfast food now gives a minor but long lasting moodie when they are
eaten within roughly 15 minutes of the shift starting.
Affected foods:
- most egg based foods
- coffee
- bacon
- oatmeal
- orange juice
- milk
- pancakes
- waffles
- donuts
- toasts
- biscuits
- cereal
Buttered toast was moved in the code to where all the other toasts
are. Encourages chef to do more than fry his book and make a silly 10
foot meme sandwich. Coffee from vendors now has an additional use.
---
code/__DEFINES/food.dm | 3 ++-
code/datums/mood_events/needs_events.dm | 5 +++++
code/modules/food_and_drinks/drinks/drinks.dm | 5 +++--
.../food_and_drinks/drinks/drinks/bottle.dm | 2 +-
code/modules/food_and_drinks/food.dm | 6 +++++
.../food_and_drinks/food/snacks/meat.dm | 2 +-
.../food_and_drinks/food/snacks_bread.dm | 12 +---------
.../food_and_drinks/food/snacks_egg.dm | 8 +++----
.../food_and_drinks/food/snacks_meat.dm | 2 +-
.../food_and_drinks/food/snacks_other.dm | 2 +-
.../food_and_drinks/food/snacks_pastry.dm | 22 +++++++++----------
.../food_and_drinks/food/snacks_salad.dm | 2 +-
.../food/snacks_sandwichtoast.dm | 18 ++++++++++++---
.../recipes/tablecraft/recipes_bread.dm | 9 --------
.../recipes/tablecraft/recipes_misc.dm | 9 ++++++++
15 files changed, 61 insertions(+), 46 deletions(-)
diff --git a/code/__DEFINES/food.dm b/code/__DEFINES/food.dm
index 590be18be73..60f99c4c750 100644
--- a/code/__DEFINES/food.dm
+++ b/code/__DEFINES/food.dm
@@ -11,7 +11,8 @@
#define GROSS (1<<10)
#define TOXIC (1<<11)
#define PINEAPPLE (1<<12)
-#define CLOTH (1<<14)
+#define BREAKFAST (1<<13)
+#define CLOTH (1<<14)
#define DRINK_NICE 1
#define DRINK_GOOD 2
diff --git a/code/datums/mood_events/needs_events.dm b/code/datums/mood_events/needs_events.dm
index e987c7cda18..93ad08732e7 100644
--- a/code/datums/mood_events/needs_events.dm
+++ b/code/datums/mood_events/needs_events.dm
@@ -82,6 +82,11 @@
mood_change = -6
timeout = 4 MINUTES
+/datum/mood_event/breakfast
+ description = "Nothing like a hearty breakfast to start the shift.\n"
+ mood_change = 2
+ timeout = 10 MINUTES
+
/datum/mood_event/nice_shower
description = "I have recently had a nice shower.\n"
mood_change = 4
diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm
index 6e8a34c832f..e71e38b74b5 100644
--- a/code/modules/food_and_drinks/drinks/drinks.dm
+++ b/code/modules/food_and_drinks/drinks/drinks.dm
@@ -205,6 +205,7 @@
spillable = TRUE
resistance_flags = FREEZE_PROOF
isGlass = FALSE
+ foodtype = BREAKFAST
/obj/item/reagent_containers/food/drinks/ice
name = "ice cup"
@@ -321,12 +322,12 @@
icon_state = "orangebox"
name = "orange juice box"
desc = "A great source of vitamins. Stay healthy!"
- foodtype = FRUIT
+ foodtype = FRUIT | BREAKFAST
if(/datum/reagent/consumable/milk)
icon_state = "milkbox"
name = "carton of milk"
desc = "An excellent source of calcium for growing space explorers."
- foodtype = DAIRY
+ foodtype = DAIRY | BREAKFAST
if(/datum/reagent/consumable/applejuice)
icon_state = "juicebox"
name = "apple juice box"
diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm
index 9175ee7a4b1..41b46223cd8 100644
--- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm
+++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm
@@ -338,7 +338,7 @@
righthand_file = 'icons/mob/inhands/equipment/kitchen_righthand.dmi'
isGlass = FALSE
list_reagents = list(/datum/reagent/consumable/orangejuice = 100)
- foodtype = FRUIT
+ foodtype = FRUIT | BREAKFAST
/obj/item/reagent_containers/food/drinks/bottle/cream
name = "milk cream"
diff --git a/code/modules/food_and_drinks/food.dm b/code/modules/food_and_drinks/food.dm
index 132e0008932..d6c8287b823 100644
--- a/code/modules/food_and_drinks/food.dm
+++ b/code/modules/food_and_drinks/food.dm
@@ -5,6 +5,8 @@
/// the parent to the exclusion list in code/__HELPERS/unsorted.dm's
/// get_random_food proc.
////////////////////////////////////////////////////////////////////////////////
+#define STOP_SERVING_BREAKFAST (15 MINUTES)
+
/obj/item/reagent_containers/food
possible_transfer_amounts = list()
volume = 50 //Sets the default container amount for all food items.
@@ -40,4 +42,8 @@
if(foodtype & H.dna.species.toxic_food)
to_chat(H, "You don't feel so good...")
H.adjust_disgust(25 + 30 * fraction)
+ if((foodtype & BREAKFAST) && world.time - SSticker.round_start_time < STOP_SERVING_BREAKFAST)
+ SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "breakfast", /datum/mood_event/breakfast)
last_check_time = world.time
+
+#undef STOP_SERVING_BREAKFAST
diff --git a/code/modules/food_and_drinks/food/snacks/meat.dm b/code/modules/food_and_drinks/food/snacks/meat.dm
index 0362b873df6..8712bebf806 100644
--- a/code/modules/food_and_drinks/food/snacks/meat.dm
+++ b/code/modules/food_and_drinks/food/snacks/meat.dm
@@ -267,7 +267,7 @@
bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1, /datum/reagent/consumable/cooking_oil = 2)
filling_color = "#854817"
tastes = list("bacon" = 1)
- foodtype = MEAT
+ foodtype = MEAT | BREAKFAST
/obj/item/reagent_containers/food/snacks/meat/slab/gondola
name = "gondola meat"
diff --git a/code/modules/food_and_drinks/food/snacks_bread.dm b/code/modules/food_and_drinks/food/snacks_bread.dm
index 82b89556f80..9dc81d55d29 100644
--- a/code/modules/food_and_drinks/food/snacks_bread.dm
+++ b/code/modules/food_and_drinks/food/snacks_bread.dm
@@ -256,17 +256,6 @@
filling_color = color
foodtype |= FRIED
-/obj/item/reagent_containers/food/snacks/butteredtoast
- name = "buttered toast"
- desc = "Butter lightly spread over a piece of toast."
- icon = 'icons/obj/food/food.dmi'
- icon_state = "butteredtoast"
- bitesize = 3
- filling_color = "#FFA500"
- list_reagents = list(/datum/reagent/consumable/nutriment = 4)
- bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
- tastes = list("butter" = 1, "toast" = 1)
-
/obj/item/reagent_containers/food/snacks/butterbiscuit
name = "butter biscuit"
desc = "Well butter my biscuit!"
@@ -276,6 +265,7 @@
list_reagents = list(/datum/reagent/consumable/nutriment = 5)
bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
tastes = list("butter" = 1, "biscuit" = 1)
+ foodtype = GRAIN | BREAKFAST
/obj/item/reagent_containers/food/snacks/butterdog
name = "butterdog"
diff --git a/code/modules/food_and_drinks/food/snacks_egg.dm b/code/modules/food_and_drinks/food/snacks_egg.dm
index 3ac582499fa..c4fe3167e9e 100644
--- a/code/modules/food_and_drinks/food/snacks_egg.dm
+++ b/code/modules/food_and_drinks/food/snacks_egg.dm
@@ -99,7 +99,7 @@
filling_color = "#FFFFF0"
list_reagents = list(/datum/reagent/consumable/nutriment = 3)
tastes = list("egg" = 4, "salt" = 1, "pepper" = 1)
- foodtype = MEAT | FRIED
+ foodtype = MEAT | FRIED | BREAKFAST
/obj/item/reagent_containers/food/snacks/boiledegg
name = "boiled egg"
@@ -109,7 +109,7 @@
filling_color = "#FFFFF0"
list_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/nutriment/vitamin = 1)
tastes = list("egg" = 1)
- foodtype = MEAT
+ foodtype = MEAT | BREAKFAST
/obj/item/reagent_containers/food/snacks/omelette //FUCK THIS
name = "omelette du fromage"
@@ -121,7 +121,7 @@
bitesize = 1
w_class = WEIGHT_CLASS_NORMAL
tastes = list("egg" = 1, "cheese" = 1)
- foodtype = MEAT
+ foodtype = MEAT | BREAKFAST
/obj/item/reagent_containers/food/snacks/omelette/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/kitchen/fork))
@@ -151,4 +151,4 @@
list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 4)
tastes = list("egg" = 1, "bacon" = 1, "bun" = 1)
- foodtype = MEAT
+ foodtype = MEAT | BREAKFAST
diff --git a/code/modules/food_and_drinks/food/snacks_meat.dm b/code/modules/food_and_drinks/food/snacks_meat.dm
index fb498a8010b..0ec7e4863fc 100644
--- a/code/modules/food_and_drinks/food/snacks_meat.dm
+++ b/code/modules/food_and_drinks/food/snacks_meat.dm
@@ -118,7 +118,7 @@
bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 1)
tastes = list("meat" = 1)
- foodtype = MEAT
+ foodtype = MEAT | BREAKFAST
var/roasted = FALSE
/obj/item/reagent_containers/food/snacks/sausage/Initialize()
diff --git a/code/modules/food_and_drinks/food/snacks_other.dm b/code/modules/food_and_drinks/food/snacks_other.dm
index 1dd037b2bf4..280f30d0006 100644
--- a/code/modules/food_and_drinks/food/snacks_other.dm
+++ b/code/modules/food_and_drinks/food/snacks_other.dm
@@ -540,7 +540,7 @@
list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/nutriment/vitamin = 2, /datum/reagent/consumable/sodiumchloride = 5)
bonus_reagents = list(/datum/reagent/consumable/sodiumchloride = 10)
tastes = list("bran" = 4, "raisins" = 3, "salt" = 1)
- foodtype = GRAIN | FRUIT
+ foodtype = GRAIN | FRUIT | BREAKFAST
/obj/item/reagent_containers/food/snacks/butter
name = "stick of butter"
diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm
index 2cb5c6572d5..9f2c7fd2cbd 100644
--- a/code/modules/food_and_drinks/food/snacks_pastry.dm
+++ b/code/modules/food_and_drinks/food/snacks_pastry.dm
@@ -11,7 +11,7 @@
list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/sprinkles = 1, /datum/reagent/consumable/sugar = 2)
filling_color = "#D2691E"
tastes = list("donut" = 1)
- foodtype = JUNKFOOD | GRAIN | FRIED | SUGAR
+ foodtype = JUNKFOOD | GRAIN | FRIED | SUGAR | BREAKFAST
var/frosted_icon = "donut2"
var/is_frosted = FALSE
var/extra_reagent = null
@@ -65,7 +65,7 @@
bonus_reagents = list(/datum/reagent/consumable/sugar = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
extra_reagent = /datum/reagent/consumable/berryjuice
tastes = list("jelly" = 1, "donut" = 3)
- foodtype = JUNKFOOD | GRAIN | FRIED | FRUIT | SUGAR
+ foodtype = JUNKFOOD | GRAIN | FRIED | FRUIT | SUGAR | BREAKFAST
/obj/item/reagent_containers/food/snacks/donut/jelly/Initialize()
. = ..()
@@ -77,14 +77,14 @@
desc = "You jelly?"
icon_state = "jdonut1"
extra_reagent = /datum/reagent/toxin/slimejelly
- foodtype = JUNKFOOD | GRAIN | FRIED | TOXIC | SUGAR
+ foodtype = JUNKFOOD | GRAIN | FRIED | TOXIC | SUGAR | BREAKFAST
/obj/item/reagent_containers/food/snacks/donut/jelly/cherryjelly
name = "jelly donut"
desc = "You jelly?"
icon_state = "jdonut1"
extra_reagent = /datum/reagent/consumable/cherryjelly
- foodtype = JUNKFOOD | GRAIN | FRIED | FRUIT
+ foodtype = JUNKFOOD | GRAIN | FRIED | FRUIT | BREAKFAST
/obj/item/reagent_containers/food/snacks/donut/meat
name = "Meat Donut"
@@ -93,7 +93,7 @@
bonus_reagents = list(/datum/reagent/consumable/ketchup = 1)
list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/ketchup = 2)
tastes = list("meat" = 1)
- foodtype = JUNKFOOD | MEAT | GROSS | FRIED
+ foodtype = JUNKFOOD | MEAT | GROSS | FRIED | BREAKFAST
////////////////////////////////////////////MUFFINS////////////////////////////////////////////
@@ -106,14 +106,14 @@
list_reagents = list(/datum/reagent/consumable/nutriment = 6)
filling_color = "#F4A460"
tastes = list("muffin" = 1)
- foodtype = GRAIN | SUGAR
+ foodtype = GRAIN | SUGAR | BREAKFAST
/obj/item/reagent_containers/food/snacks/muffin/berry
name = "berry muffin"
icon_state = "berrymuffin"
desc = "A delicious and spongy little cake, with berries."
tastes = list("muffin" = 3, "berry" = 1)
- foodtype = GRAIN | FRUIT | SUGAR
+ foodtype = GRAIN | FRUIT | SUGAR | BREAKFAST
/obj/item/reagent_containers/food/snacks/muffin/booberry
name = "booberry muffin"
@@ -121,7 +121,7 @@
alpha = 125
desc = "My stomach is a graveyard! No living being can quench my bloodthirst!"
tastes = list("muffin" = 3, "spookiness" = 1)
- foodtype = GRAIN | FRUIT | SUGAR
+ foodtype = GRAIN | FRUIT | SUGAR | BREAKFAST
/obj/item/reagent_containers/food/snacks/chawanmushi
name = "chawanmushi"
@@ -144,7 +144,7 @@
list_reagents = list(/datum/reagent/consumable/nutriment = 8, /datum/reagent/consumable/nutriment/vitamin = 1)
filling_color = "#D2691E"
tastes = list("waffles" = 1)
- foodtype = GRAIN | SUGAR
+ foodtype = GRAIN | SUGAR | BREAKFAST
/obj/item/reagent_containers/food/snacks/soylentgreen
name = "\improper Soylent Green"
@@ -178,7 +178,7 @@
list_reagents = list(/datum/reagent/consumable/nutriment = 8, /datum/reagent/drug/mushroomhallucinogen = 2, /datum/reagent/consumable/nutriment/vitamin = 2)
filling_color = "#00BFFF"
tastes = list("waffle" = 1, "mushrooms" = 1)
- foodtype = GRAIN | VEGETABLES | TOXIC | SUGAR
+ foodtype = GRAIN | VEGETABLES | TOXIC | SUGAR | BREAKFAST
////////////////////////////////////////////OTHER////////////////////////////////////////////
@@ -384,7 +384,7 @@
list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/nutriment/vitamin = 1)
filling_color = "#D2691E"
tastes = list("pancakes" = 1)
- foodtype = GRAIN | SUGAR
+ foodtype = GRAIN | SUGAR | BREAKFAST
/obj/item/reagent_containers/food/snacks/pancakes/blueberry
name = "blueberry pancake"
diff --git a/code/modules/food_and_drinks/food/snacks_salad.dm b/code/modules/food_and_drinks/food/snacks_salad.dm
index 4de2500b144..c281c188390 100644
--- a/code/modules/food_and_drinks/food/snacks_salad.dm
+++ b/code/modules/food_and_drinks/food/snacks_salad.dm
@@ -47,7 +47,7 @@
bonus_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/nutriment/vitamin = 4)
list_reagents = list(/datum/reagent/consumable/nutriment = 7, /datum/reagent/consumable/milk = 10, /datum/reagent/consumable/nutriment/vitamin = 2)
tastes = list("oats" = 1, "milk" = 1)
- foodtype = DAIRY | GRAIN
+ foodtype = DAIRY | GRAIN | BREAKFAST
/obj/item/reagent_containers/food/snacks/salad/fruit
name = "fruit salad"
diff --git a/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm b/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm
index 3fe809431ce..a4823be09c6 100644
--- a/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm
+++ b/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm
@@ -81,17 +81,29 @@
trash = /obj/item/trash/plate
bitesize = 3
tastes = list("toast" = 1, "jelly" = 1)
- foodtype = GRAIN
+ foodtype = GRAIN | BREAKFAST
/obj/item/reagent_containers/food/snacks/jelliedtoast/cherry
bonus_reagents = list(/datum/reagent/consumable/cherryjelly = 5, /datum/reagent/consumable/nutriment/vitamin = 2)
list_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/cherryjelly = 5, /datum/reagent/consumable/nutriment/vitamin = 2)
- foodtype = GRAIN | FRUIT | SUGAR
+ foodtype = GRAIN | FRUIT | SUGAR | BREAKFAST
/obj/item/reagent_containers/food/snacks/jelliedtoast/slime
bonus_reagents = list(/datum/reagent/toxin/slimejelly = 5, /datum/reagent/consumable/nutriment/vitamin = 2)
list_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/toxin/slimejelly = 5, /datum/reagent/consumable/nutriment/vitamin = 2)
- foodtype = GRAIN | TOXIC | SUGAR
+ foodtype = GRAIN | TOXIC | SUGAR | BREAKFAST
+
+/obj/item/reagent_containers/food/snacks/butteredtoast
+ name = "buttered toast"
+ desc = "Butter lightly spread over a piece of toast."
+ icon = 'icons/obj/food/food.dmi'
+ icon_state = "butteredtoast"
+ bitesize = 3
+ filling_color = "#FFA500"
+ list_reagents = list(/datum/reagent/consumable/nutriment = 4)
+ bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
+ tastes = list("butter" = 1, "toast" = 1)
+ foodtype = GRAIN | BREAKFAST
/obj/item/reagent_containers/food/snacks/twobread
name = "two bread"
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
index ecbdac571cb..2d0fd2d2903 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
@@ -75,15 +75,6 @@
result = /obj/item/reagent_containers/food/snacks/store/bread/mimana
subcategory = CAT_BREAD
-/datum/crafting_recipe/food/butteredtoast
- name = "Buttered Toast"
- reqs = list(
- /obj/item/reagent_containers/food/snacks/breadslice/plain = 1,
- /obj/item/reagent_containers/food/snacks/butter = 1
- )
- result = /obj/item/reagent_containers/food/snacks/butteredtoast
- subcategory = CAT_BREAD
-
/datum/crafting_recipe/food/garlicbread
name = "Garlic Bread"
time = 40
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm
index 9e81cc897a7..77babbf6bf2 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm
@@ -125,6 +125,15 @@
result = /obj/item/reagent_containers/food/snacks/jelliedtoast/cherry
subcategory = CAT_MISCFOOD
+/datum/crafting_recipe/food/butteredtoast
+ name = "Buttered Toast"
+ reqs = list(
+ /obj/item/reagent_containers/food/snacks/breadslice/plain = 1,
+ /obj/item/reagent_containers/food/snacks/butter = 1
+ )
+ result = /obj/item/reagent_containers/food/snacks/butteredtoast
+ subcategory = CAT_MISCFOOD
+
/datum/crafting_recipe/food/twobread
name = "Two bread"
reqs = list(