diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm
index dadf077c8a..e632ccf297 100644
--- a/code/modules/hydroponics/grown.dm
+++ b/code/modules/hydroponics/grown.dm
@@ -19,7 +19,9 @@
/obj/item/reagent_containers/food/snacks/grown/Initialize(mapload, obj/item/seeds/new_seed)
. = ..()
- tastes = list("[name]" = 1) // apples taste of apple, silly.
+ if(!tastes)
+ tastes = list("[name]" = 1)
+
if(new_seed)
seed = new_seed.Copy()
else if(ispath(seed))
diff --git a/code/modules/hydroponics/grown/ambrosia.dm b/code/modules/hydroponics/grown/ambrosia.dm
index 4f24c19d6e..05cd54a9f0 100644
--- a/code/modules/hydroponics/grown/ambrosia.dm
+++ b/code/modules/hydroponics/grown/ambrosia.dm
@@ -8,6 +8,7 @@
filling_color = "#008000"
bitesize_mod = 2
foodtype = VEGETABLES
+ tastes = list("ambrosia" = 1)
// Ambrosia Vulgaris
/obj/item/seeds/ambrosia
diff --git a/code/modules/hydroponics/grown/apple.dm b/code/modules/hydroponics/grown/apple.dm
index d2fee8ef80..93c3566e4e 100644
--- a/code/modules/hydroponics/grown/apple.dm
+++ b/code/modules/hydroponics/grown/apple.dm
@@ -25,6 +25,7 @@
bitesize = 100 // Always eat the apple in one bite
foodtype = FRUIT
juice_results = list("applejuice" = 0)
+ tastes = list("apple" = 1)
// Posioned Apple
/obj/item/seeds/apple/poisoned
diff --git a/code/modules/hydroponics/grown/banana.dm b/code/modules/hydroponics/grown/banana.dm
index ceb7ec4fb6..4e29094df4 100644
--- a/code/modules/hydroponics/grown/banana.dm
+++ b/code/modules/hydroponics/grown/banana.dm
@@ -108,6 +108,7 @@
item_state = "bluespace_peel"
trash = /obj/item/grown/bananapeel/bluespace
filling_color = "#0000FF"
+ tastes = list("banana" = 1)
/obj/item/grown/bananapeel/bluespace
seed = /obj/item/seeds/banana/bluespace
diff --git a/code/modules/hydroponics/grown/beans.dm b/code/modules/hydroponics/grown/beans.dm
index 46a7e7979f..b9363d5a12 100644
--- a/code/modules/hydroponics/grown/beans.dm
+++ b/code/modules/hydroponics/grown/beans.dm
@@ -27,6 +27,7 @@
bitesize_mod = 2
foodtype = VEGETABLES
grind_results = list("soymilk" = 0)
+ tastes = list("soy" = 1)
// Koibean
/obj/item/seeds/soya/koi
@@ -49,3 +50,4 @@
filling_color = "#F0E68C"
bitesize_mod = 2
foodtype = VEGETABLES
+ tastes = list("koi" = 1)
diff --git a/code/modules/hydroponics/grown/berries.dm b/code/modules/hydroponics/grown/berries.dm
index 541fb1b2a5..e8e6c52b7a 100644
--- a/code/modules/hydroponics/grown/berries.dm
+++ b/code/modules/hydroponics/grown/berries.dm
@@ -27,6 +27,7 @@
bitesize_mod = 2
foodtype = FRUIT
juice_results = list("berryjuice" = 0)
+ tastes = list("berry" = 1)
// Poison Berries
/obj/item/seeds/berry/poison
@@ -43,11 +44,12 @@
/obj/item/reagent_containers/food/snacks/grown/berries/poison
seed = /obj/item/seeds/berry/poison
name = "bunch of poison-berries"
- desc = "Taste so good, you could die!"
+ desc = "Taste so good, you might die!"
icon_state = "poisonberrypile"
filling_color = "#C71585"
foodtype = FRUIT | TOXIC
juice_results = list("poisonberryjuice" = 0)
+ tastes = list("poison-berry" = 1)
// Death Berries
/obj/item/seeds/berry/death
@@ -66,10 +68,11 @@
/obj/item/reagent_containers/food/snacks/grown/berries/death
seed = /obj/item/seeds/berry/death
name = "bunch of death-berries"
- desc = "Taste so good, you could die!"
+ desc = "Taste so good, you will die!"
icon_state = "deathberrypile"
filling_color = "#708090"
foodtype = FRUIT | TOXIC
+ tastes = list("death-berry" = 1)
// Glow Berries
/obj/item/seeds/berry/glow
@@ -93,6 +96,7 @@
icon_state = "glowberrypile"
filling_color = "#7CFC00"
foodtype = FRUIT
+ tastes = list("glow-berry" = 1)
// Cherries
/obj/item/seeds/cherry
@@ -124,6 +128,7 @@
bitesize_mod = 2
foodtype = FRUIT
grind_results = list("cherryjelly" = 0)
+ tastes = list("cherry" = 1)
// Blue Cherries
/obj/item/seeds/cherry/blue
@@ -146,6 +151,7 @@
bitesize_mod = 2
foodtype = FRUIT
grind_results = list("bluecherryjelly" = 0)
+ tastes = list("blue cherry" = 1)
// Grapes
/obj/item/seeds/grape
@@ -178,6 +184,7 @@
bitesize_mod = 2
foodtype = FRUIT
juice_results = list("grapejuice" = 0)
+ tastes = list("grape" = 1)
// Green Grapes
/obj/item/seeds/grape/green
@@ -196,3 +203,4 @@
name = "bunch of green grapes"
icon_state = "greengrapes"
filling_color = "#7FFF00"
+ tastes = list("green grape" = 1)
diff --git a/code/modules/hydroponics/grown/cannabis.dm b/code/modules/hydroponics/grown/cannabis.dm
index 4254678bee..c5bf77f6f9 100644
--- a/code/modules/hydroponics/grown/cannabis.dm
+++ b/code/modules/hydroponics/grown/cannabis.dm
@@ -91,6 +91,7 @@
filling_color = "#00FF00"
bitesize_mod = 2
foodtype = VEGETABLES //i dont really know what else weed could be to be honest
+ tastes = list("cannabis" = 1)
/obj/item/reagent_containers/food/snacks/grown/cannabis/rainbow
diff --git a/code/modules/hydroponics/grown/cereals.dm b/code/modules/hydroponics/grown/cereals.dm
index d9b724d052..acd3203ecc 100644
--- a/code/modules/hydroponics/grown/cereals.dm
+++ b/code/modules/hydroponics/grown/cereals.dm
@@ -23,6 +23,7 @@
bitesize_mod = 2
foodtype = GRAIN
grind_results = list("flour" = 0)
+ tastes = list("wheat" = 1)
// Oat
/obj/item/seeds/wheat/oat
@@ -44,6 +45,7 @@
bitesize_mod = 2
foodtype = GRAIN
grind_results = list("flour" = 0)
+ tastes = list("oat" = 1)
// Rice
/obj/item/seeds/wheat/rice
@@ -66,6 +68,7 @@
bitesize_mod = 2
foodtype = GRAIN
grind_results = list("rice" = 0)
+ tastes = list("rice" = 1)
//Meatwheat - grows into synthetic meat
/obj/item/seeds/wheat/meat
@@ -87,6 +90,7 @@
seed = /obj/item/seeds/wheat/meat
foodtype = MEAT | GRAIN
grind_results = list("flour" = 0, "blood" = 0)
+ tastes = list("meatwheat" = 1)
/obj/item/reagent_containers/food/snacks/grown/meatwheat/attack_self(mob/living/user)
user.visible_message("[user] crushes [src] into meat.", "You crush [src] into something that resembles meat.")
diff --git a/code/modules/hydroponics/grown/cocoa_vanilla.dm b/code/modules/hydroponics/grown/cocoa_vanilla.dm
index c53709480a..12e235b1c3 100644
--- a/code/modules/hydroponics/grown/cocoa_vanilla.dm
+++ b/code/modules/hydroponics/grown/cocoa_vanilla.dm
@@ -26,6 +26,7 @@
filling_color = "#FFD700"
bitesize_mod = 2
foodtype = FRUIT
+ tastes = list("cocoa" = 1)
// Vanilla Pod
/obj/item/seeds/cocoapod/vanillapod
@@ -46,3 +47,4 @@
icon_state = "vanillapod"
filling_color = "#FFD700"
foodtype = FRUIT
+ tastes = list("vanilla" = 1)
diff --git a/code/modules/hydroponics/grown/corn.dm b/code/modules/hydroponics/grown/corn.dm
index 4454c3c52a..312dda8c26 100644
--- a/code/modules/hydroponics/grown/corn.dm
+++ b/code/modules/hydroponics/grown/corn.dm
@@ -26,6 +26,7 @@
bitesize_mod = 2
foodtype = VEGETABLES
juice_results = list("corn_starch" = 0)
+ tastes = list("corn" = 1)
/obj/item/grown/corncob
name = "corn cob"
diff --git a/code/modules/hydroponics/grown/eggplant.dm b/code/modules/hydroponics/grown/eggplant.dm
index 306afaa9db..9615b7acb2 100644
--- a/code/modules/hydroponics/grown/eggplant.dm
+++ b/code/modules/hydroponics/grown/eggplant.dm
@@ -37,7 +37,7 @@
/obj/item/reagent_containers/food/snacks/grown/shell/eggy
seed = /obj/item/seeds/eggplant/eggy
- name = "Egg-plant"
+ name = "egg-plant"
desc = "There MUST be a chicken inside."
icon_state = "eggyplant"
trash = /obj/item/reagent_containers/food/snacks/egg
diff --git a/code/modules/hydroponics/grown/kudzu.dm b/code/modules/hydroponics/grown/kudzu.dm
index 332a0d318f..c35281088d 100644
--- a/code/modules/hydroponics/grown/kudzu.dm
+++ b/code/modules/hydroponics/grown/kudzu.dm
@@ -103,3 +103,4 @@
filling_color = "#6B8E23"
bitesize_mod = 2
foodtype = VEGETABLES | GROSS
+ tastes = list("kudzu" = 1)
diff --git a/code/modules/hydroponics/grown/misc.dm b/code/modules/hydroponics/grown/misc.dm
index 461a2cd74e..5a7c8c93cf 100644
--- a/code/modules/hydroponics/grown/misc.dm
+++ b/code/modules/hydroponics/grown/misc.dm
@@ -111,6 +111,7 @@
trash = /obj/item/gun/ballistic/revolver
bitesize_mod = 2
foodtype = FRUIT
+ tastes = list("gunpowder" = 1)
//Cherry Bombs
/obj/item/seeds/cherry/bomb
diff --git a/code/modules/hydroponics/grown/mushrooms.dm b/code/modules/hydroponics/grown/mushrooms.dm
index 7e0178b140..b1ac5604b4 100644
--- a/code/modules/hydroponics/grown/mushrooms.dm
+++ b/code/modules/hydroponics/grown/mushrooms.dm
@@ -277,6 +277,7 @@
icon_state = "glowcap"
filling_color = "#00FA9A"
effect_path = /obj/structure/glowshroom/glowcap
+ tastes = list("glowcap" = 1)
//Shadowshroom
@@ -300,6 +301,7 @@
desc = "Mycena Umbra: This species of mushroom emits shadow instead of light."
icon_state = "shadowshroom"
effect_path = /obj/structure/glowshroom/shadowshroom
+ tastes = list("shadow" = 1, "mushroom" = 1)
/obj/item/reagent_containers/food/snacks/grown/mushroom/glowshroom/shadowshroom/attack_self(mob/user)
. = ..()
@@ -368,4 +370,4 @@
plantname = "Embershroom Mushrooms"
product = /obj/item/reagent_containers/food/snacks/grown/ash_flora/mushroom_stem
genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/glow)
- growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi'
\ No newline at end of file
+ growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi'
diff --git a/code/modules/hydroponics/grown/onion.dm b/code/modules/hydroponics/grown/onion.dm
index bec3c169f1..9b957ae744 100644
--- a/code/modules/hydroponics/grown/onion.dm
+++ b/code/modules/hydroponics/grown/onion.dm
@@ -69,4 +69,4 @@
desc = "They shine like exceptionally low quality amethyst."
icon_state = "onionslice_red"
filling_color = "#C29ACF"
- list_reagents = list("nutriment" = 5, "vitamin" = 2, "tearjuice" = 2.5)
\ No newline at end of file
+ list_reagents = list("nutriment" = 5, "vitamin" = 2, "tearjuice" = 2.5)
diff --git a/code/modules/hydroponics/seeds.dm b/code/modules/hydroponics/seeds.dm
index d956055c41..f948aa0479 100644
--- a/code/modules/hydroponics/seeds.dm
+++ b/code/modules/hydroponics/seeds.dm
@@ -157,14 +157,20 @@
/obj/item/seeds/proc/prepare_result(var/obj/item/reagent_containers/food/snacks/grown/T)
- if(T.reagents)
- for(var/reagent_id in reagents_add)
- if(reagent_id == "blood") // Hack to make blood in plants always O-
- T.reagents.add_reagent(reagent_id, 1 + round(potency * reagents_add[reagent_id], 1), list("blood_type"="O-"))
- continue
+ if(!T.reagents)
+ CRASH("[T] has no reagents.")
- T.reagents.add_reagent(reagent_id, 1 + round(potency * reagents_add[reagent_id],1))
- return 1
+ for(var/rid in reagents_add)
+ var/amount = 1 + round(potency * reagents_add[rid], 1)
+
+ var/list/data = null
+ if(rid == "blood") // Hack to make blood in plants always O-
+ data = list("blood_type" = "O-")
+ if(rid == "nutriment" || rid == "vitamin")
+ // apple tastes of apple.
+ data = T.tastes
+
+ T.reagents.add_reagent(rid, amount, data)
/// Setters procs ///