diff --git a/_maps/RandomRuins/SpaceRuins/Fast_Food.dmm b/_maps/RandomRuins/SpaceRuins/Fast_Food.dmm
index f0d6fa32104b7..5ba6827b84c1c 100644
--- a/_maps/RandomRuins/SpaceRuins/Fast_Food.dmm
+++ b/_maps/RandomRuins/SpaceRuins/Fast_Food.dmm
@@ -374,7 +374,7 @@
/turf/open/floor/plasteel/cafeteria,
/area/ruin/space/has_grav/powered/macspace)
"bx" = (
-/obj/item/reagent_containers/food/snacks/omelette,
+/obj/item/food/omelette,
/obj/structure/table/wood/fancy/blue,
/turf/open/floor/plasteel/cafeteria,
/area/ruin/space/has_grav/powered/macspace)
@@ -425,7 +425,7 @@
/area/ruin/space/has_grav/powered/macspace)
"bI" = (
/obj/structure/table/wood/fancy/red,
-/obj/item/reagent_containers/food/snacks/friedegg,
+/obj/item/food/friedegg,
/obj/effect/decal/cleanable/dirt/dust,
/turf/open/floor/plasteel/cafeteria,
/area/ruin/space/has_grav/powered/macspace)
diff --git a/_maps/RandomZLevels/SnowCabin.dmm b/_maps/RandomZLevels/SnowCabin.dmm
index 75443fcaf550f..39a4ca111159c 100644
--- a/_maps/RandomZLevels/SnowCabin.dmm
+++ b/_maps/RandomZLevels/SnowCabin.dmm
@@ -5107,7 +5107,7 @@
/turf/open/floor/plasteel/dark,
/area/awaymission/cabin/caves/mountain)
"Ik" = (
-/obj/item/reagent_containers/food/snacks/egg/rainbow{
+/obj/item/food/egg/rainbow{
desc = "Was an egg really worth this much effort?";
name = "easter egg"
},
diff --git a/_maps/RuinGeneration/13x13_shotelroom.dmm b/_maps/RuinGeneration/13x13_shotelroom.dmm
index 78beb6efbe922..77ad773a2301e 100644
--- a/_maps/RuinGeneration/13x13_shotelroom.dmm
+++ b/_maps/RuinGeneration/13x13_shotelroom.dmm
@@ -63,11 +63,11 @@
"n" = (
/obj/structure/table/wood/fancy/purple,
/obj/item/reagent_containers/food/snacks/pizzabread,
-/obj/item/reagent_containers/food/snacks/egg{
+/obj/item/food/egg{
pixel_x = 4;
pixel_y = 6
},
-/obj/item/reagent_containers/food/snacks/egg{
+/obj/item/food/egg{
pixel_x = -4;
pixel_y = 3
},
diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm
index bb1d780df7c80..a40fe0e0be005 100644
--- a/_maps/map_files/generic/CentCom.dmm
+++ b/_maps/map_files/generic/CentCom.dmm
@@ -1458,7 +1458,7 @@
/turf/open/floor/plasteel,
/area/tdome/arena_source)
"fR" = (
-/obj/item/reagent_containers/food/snacks/egg/rainbow{
+/obj/item/food/egg/rainbow{
desc = "I bet you think you're pretty clever... well you are.";
name = "easter egg"
},
@@ -8170,7 +8170,7 @@
/turf/open/floor/plasteel/white,
/area/tdome/tdomeobserve)
"HG" = (
-/obj/item/reagent_containers/food/snacks/egg/rainbow{
+/obj/item/food/egg/rainbow{
desc = "I bet you think you're pretty clever... well you are.";
name = "easter egg"
},
@@ -12090,7 +12090,7 @@
/area/centcom/control)
"Yf" = (
/obj/structure/table/wood,
-/obj/item/reagent_containers/food/snacks/chawanmushi,
+/obj/item/food/chawanmushi,
/turf/open/floor/wood,
/area/centcom/holding)
"Yg" = (
diff --git a/_maps/shuttles/emergency/emergency_luxury.dmm b/_maps/shuttles/emergency/emergency_luxury.dmm
index e1baf1983fd9b..8be94f52bf96a 100644
--- a/_maps/shuttles/emergency/emergency_luxury.dmm
+++ b/_maps/shuttles/emergency/emergency_luxury.dmm
@@ -169,7 +169,7 @@
/area/shuttle/escape/luxury)
"aF" = (
/obj/structure/table/wood/fancy,
-/obj/item/reagent_containers/food/snacks/benedict,
+/obj/item/food/benedict,
/turf/open/floor/carpet,
/area/shuttle/escape/luxury)
"aG" = (
@@ -199,7 +199,7 @@
/area/shuttle/escape/luxury)
"aL" = (
/obj/structure/table/wood/fancy,
-/obj/item/reagent_containers/food/snacks/chawanmushi,
+/obj/item/food/chawanmushi,
/turf/open/floor/carpet,
/area/shuttle/escape/luxury)
"aM" = (
diff --git a/beestation.dme b/beestation.dme
index 74f59198fb2bf..a5400a0da5b77 100644
--- a/beestation.dme
+++ b/beestation.dme
@@ -1412,6 +1412,7 @@
#include "code\game\objects\items\food\donkpockets.dm"
#include "code\game\objects\items\food\donuts.dm"
#include "code\game\objects\items\food\dough.dm"
+#include "code\game\objects\items\food\egg.dm"
#include "code\game\objects\items\food\mexican.dm"
#include "code\game\objects\items\food\packaged.dm"
#include "code\game\objects\items\food\pancakes.dm"
@@ -2565,7 +2566,6 @@
#include "code\modules\food_and_drinks\food\condiment.dm"
#include "code\modules\food_and_drinks\food\customizables.dm"
#include "code\modules\food_and_drinks\food\snacks.dm"
-#include "code\modules\food_and_drinks\food\snacks_egg.dm"
#include "code\modules\food_and_drinks\food\snacks_frozen.dm"
#include "code\modules\food_and_drinks\food\snacks_meat.dm"
#include "code\modules\food_and_drinks\food\snacks_other.dm"
diff --git a/code/controllers/subsystem/traumas.dm b/code/controllers/subsystem/traumas.dm
index 7a56bf8c5508b..e46d9e87f6901 100644
--- a/code/controllers/subsystem/traumas.dm
+++ b/code/controllers/subsystem/traumas.dm
@@ -15,140 +15,211 @@ SUBSYSTEM_DEF(traumas)
"skeletons" = 5, "snakes" = 5, "robots" = 4, "doctors" = 4, "authority" = 5, "the supernatural" = 5,
"aliens" = 5, "strangers" = 5, "birds" = 5, "falling" = 5, "anime" = 5))
- phobia_words = list("spiders" = strings(PHOBIA_FILE, "spiders"),
- "space" = strings(PHOBIA_FILE, "space"),
- "security" = strings(PHOBIA_FILE, "security"),
- "clowns" = strings(PHOBIA_FILE, "clowns"),
- "greytide" = strings(PHOBIA_FILE, "greytide"),
- "lizards" = strings(PHOBIA_FILE, "lizards"),
- "skeletons" = strings(PHOBIA_FILE, "skeletons"),
- "snakes" = strings(PHOBIA_FILE, "snakes"),
- "robots" = strings(PHOBIA_FILE, "robots"),
- "doctors" = strings(PHOBIA_FILE, "doctors"),
- "authority" = strings(PHOBIA_FILE, "authority"),
- "the supernatural" = strings(PHOBIA_FILE, "the supernatural"),
- "aliens" = strings(PHOBIA_FILE, "aliens"),
- "strangers" = strings(PHOBIA_FILE, "strangers"),
- "conspiracies" = strings(PHOBIA_FILE, "conspiracies"),
- "birds" = strings(PHOBIA_FILE, "birds"),
- "falling" = strings(PHOBIA_FILE, "falling"),
- "anime" = strings(PHOBIA_FILE, "anime")
- )
-
- phobia_mobs = list("spiders" = typecacheof(list(/mob/living/simple_animal/hostile/poison/giant_spider)),
- "security" = typecacheof(list(/mob/living/simple_animal/bot/secbot, /mob/living/simple_animal/bot/ed209)),
- "lizards" = typecacheof(list(/mob/living/simple_animal/hostile/lizard)),
- "skeletons" = typecacheof(list(/mob/living/simple_animal/hostile/skeleton)),
- "snakes" = typecacheof(list(/mob/living/simple_animal/hostile/retaliate/poison/snake)),
- "robots" = typecacheof(list(/mob/living/silicon/robot, /mob/living/silicon/ai,
- /mob/living/simple_animal/drone, /mob/living/simple_animal/bot, /mob/living/simple_animal/hostile/swarmer)),
- "doctors" = typecacheof(list(/mob/living/simple_animal/bot/medbot)),
- "the supernatural" = typecacheof(list(/mob/living/simple_animal/hostile/construct,
- /mob/living/simple_animal/revenant, /mob/living/simple_animal/shade)),
- "aliens" = typecacheof(list(/mob/living/carbon/alien, /mob/living/simple_animal/slime)),
- "conspiracies" = typecacheof(list(/mob/living/simple_animal/bot/secbot, /mob/living/simple_animal/bot/ed209, /mob/living/simple_animal/drone,
- /mob/living/simple_animal/pet/penguin)),
- "birds" = typecacheof(list(/mob/living/simple_animal/parrot, /mob/living/simple_animal/chick, /mob/living/simple_animal/chicken,
- /mob/living/simple_animal/pet/penguin)),
- "anime" = typecacheof(list(/mob/living/simple_animal/hostile/holoparasite))
- )
-
- phobia_objs = list("snakes" = typecacheof(list(/obj/item/rod_of_asclepius)),
-
- "spiders" = typecacheof(list(/obj/structure/spider)),
-
- "security" = typecacheof(list(/obj/item/clothing/under/rank/security/officer, /obj/item/clothing/under/rank/security/warden,
- /obj/item/clothing/under/rank/security/head_of_security, /obj/item/clothing/under/rank/security/detective,
- /obj/item/melee/baton, /obj/item/gun/energy/taser, /obj/item/restraints/handcuffs,
- /obj/machinery/door/airlock/security, /obj/effect/hallucination/simple/securitron)),
-
- "clowns" = typecacheof(list(/obj/item/clothing/under/rank/civilian/clown, /obj/item/clothing/shoes/clown_shoes,
- /obj/item/clothing/mask/gas/clown_hat, /obj/item/instrument/bikehorn,
- /obj/item/modular_computer/tablet/pda/clown, /obj/item/grown/bananapeel)),
-
- "greytide" = typecacheof(list(/obj/item/clothing/under/color/grey, /obj/item/melee/baton/cattleprod,
- /obj/item/spear, /obj/item/clothing/mask/gas/old)),
-
- "lizards" = typecacheof(list(/obj/item/toy/plush/lizardplushie, /obj/item/reagent_containers/food/snacks/kebab/tail,
- /obj/item/organ/tail/lizard, /obj/item/reagent_containers/food/drinks/bottle/lizardwine)),
-
- "skeletons" = typecacheof(list(/obj/item/organ/tongue/bone, /obj/item/clothing/suit/armor/bone, /obj/item/stack/sheet/bone,
- /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/skeleton,
- /obj/effect/decal/remains/human)),
- "conspiracies" = typecacheof(list(/obj/item/clothing/under/rank/captain, /obj/item/clothing/under/rank/security/head_of_security,
- /obj/item/clothing/under/rank/engineering/chief_engineer, /obj/item/clothing/under/rank/medical/chief_medical_officer,
- /obj/item/clothing/under/rank/civilian/head_of_personnel, /obj/item/clothing/under/rank/rnd/research_director,
- /obj/item/clothing/under/rank/security/head_of_security/white, /obj/item/clothing/under/rank/security/head_of_security/alt,
- /obj/item/clothing/under/rank/rnd/research_director/alt, /obj/item/clothing/under/rank/rnd/research_director/turtleneck,
- /obj/item/clothing/under/rank/captain/parade, /obj/item/clothing/under/rank/security/head_of_security/parade, /obj/item/clothing/under/rank/security/head_of_security/parade/female,
- /obj/item/clothing/head/helmet/abductor, /obj/item/clothing/suit/armor/abductor/vest, /obj/item/abductor/baton,
- /obj/item/storage/belt/military/abductor, /obj/item/gun/energy/alien, /obj/item/abductor/silencer,
- /obj/item/abductor/gizmo, /obj/item/clothing/under/rank/centcom/officer,
- /obj/item/clothing/suit/space/hardsuit/ert, /obj/item/clothing/suit/space/hardsuit/ert/sec,
- /obj/item/clothing/suit/space/hardsuit/ert/engi, /obj/item/clothing/suit/space/hardsuit/ert/med,
- /obj/item/clothing/suit/space/hardsuit/deathsquad, /obj/item/clothing/head/helmet/space/hardsuit/deathsquad,
- /obj/machinery/door/airlock/centcom)),
- "robots" = typecacheof(list(/obj/machinery/computer/upload, /obj/item/aiModule/, /obj/machinery/recharge_station,
- /obj/item/aicard, /obj/item/deactivated_swarmer, /obj/effect/mob_spawn/swarmer)),
-
- "doctors" = typecacheof(list(/obj/item/clothing/under/rank/medical, /obj/item/clothing/under/rank/medical/chemist,
- /obj/item/clothing/under/rank/medical/doctor/nurse, /obj/item/clothing/under/rank/medical/chief_medical_officer,
- /obj/item/reagent_containers/syringe, /obj/item/reagent_containers/pill/, /obj/item/reagent_containers/hypospray,
- /obj/item/storage/firstaid, /obj/item/storage/pill_bottle, /obj/item/healthanalyzer,
- /obj/structure/sign/departments/medbay, /obj/machinery/door/airlock/medical, /obj/machinery/sleeper, /obj/machinery/stasis,
- /obj/machinery/dna_scannernew, /obj/machinery/atmospherics/components/unary/cryo_cell, /obj/item/surgical_drapes,
- /obj/item/retractor, /obj/item/hemostat, /obj/item/cautery, /obj/item/surgicaldrill, /obj/item/scalpel, /obj/item/circular_saw,
- /obj/item/clothing/suit/bio_suit/plaguedoctorsuit, /obj/item/clothing/head/plaguedoctorhat, /obj/item/clothing/mask/gas/plaguedoctor)),
-
- "authority" = typecacheof(list(/obj/item/clothing/under/rank/captain, /obj/item/clothing/under/rank/civilian/head_of_personnel,
- /obj/item/clothing/under/rank/security/head_of_security, /obj/item/clothing/under/rank/rnd/research_director,
- /obj/item/clothing/under/rank/medical/chief_medical_officer, /obj/item/clothing/under/rank/engineering/chief_engineer,
- /obj/item/clothing/under/rank/centcom/officer, /obj/item/clothing/under/rank/centcom/commander,
- /obj/item/melee/classic_baton/police/telescopic, /obj/item/card/id/silver, /obj/item/card/id/gold,
- /obj/item/card/id/captains_spare, /obj/item/card/id/centcom, /obj/machinery/door/airlock/command)),
-
- "the supernatural" = typecacheof(list(/obj/structure/destructible/cult, /obj/item/tome,
- /obj/item/melee/cultblade, /obj/item/cult_bastard, /obj/item/restraints/legcuffs/bola/cult,
- /obj/item/clothing/suit/cultrobes, /obj/item/clothing/suit/space/hardsuit/cult,
- /obj/item/clothing/suit/hooded/cultrobes, /obj/item/clothing/head/hooded/cult_hoodie, /obj/effect/rune,
- /obj/item/stack/sheet/runed_metal, /obj/machinery/door/airlock/cult, /obj/eldritch/narsie,
- /obj/item/soulstone, /obj/item/clockwork,
- /obj/item/stack/sheet/brass,
- /obj/machinery/door/airlock/clockwork,
- /obj/item/clothing/suit/wizrobe, /obj/item/clothing/head/wizard, /obj/item/spellbook, /obj/item/staff,
- /obj/item/clothing/suit/space/hardsuit/shielded/wizard, /obj/item/clothing/suit/space/hardsuit/wizard,
- /obj/item/gun/magic/staff, /obj/item/gun/magic/wand,
- /obj/item/nullrod, /obj/item/clothing/under/rank/civilian/chaplain)),
-
- "aliens" = typecacheof(list(/obj/item/clothing/mask/facehugger, /obj/item/organ/body_egg/alien_embryo,
- /obj/structure/alien, /obj/item/toy/toy_xeno,
- /obj/item/clothing/suit/armor/abductor, /obj/item/abductor, /obj/item/gun/energy/alien,
- /obj/item/abductor/baton, /obj/item/radio/headset/abductor, /obj/item/scalpel/alien, /obj/item/hemostat/alien,
- /obj/item/retractor/alien, /obj/item/circular_saw/alien, /obj/item/surgicaldrill/alien, /obj/item/cautery/alien,
- /obj/item/clothing/head/helmet/abductor, /obj/structure/bed/abductor, /obj/structure/table_frame/abductor,
- /obj/structure/table/abductor, /obj/structure/table/optable/abductor, /obj/structure/closet/abductor, /obj/item/organ/heart/gland,
- /obj/machinery/abductor, /obj/item/crowbar/abductor, /obj/item/screwdriver/abductor, /obj/item/weldingtool/abductor,
- /obj/item/wirecutters/abductor, /obj/item/wrench/abductor, /obj/item/stack/sheet/mineral/abductor)),
-
- "birds" = typecacheof(list(
- /obj/item/clothing/mask/gas/plaguedoctor,
- /obj/item/food/cracker,
- /obj/item/clothing/suit/chickensuit,
- /obj/item/clothing/head/chicken,
- /obj/item/clothing/suit/toggle/owlwings,
- /obj/item/clothing/under/costume/owl,
- /obj/item/clothing/mask/gas/owl_mask,
- /obj/item/clothing/under/costume/griffin,
- /obj/item/clothing/shoes/griffin,
- /obj/item/clothing/head/griffin,
- /obj/item/clothing/head/helmet/space/freedom,
- /obj/item/clothing/suit/space/freedom
- )),
-
- "anime" = typecacheof(list(/obj/item/clothing/under/costume/schoolgirl, /obj/item/katana, /obj/item/reagent_containers/food/snacks/sashimi, /obj/item/reagent_containers/food/snacks/chawanmushi,
- /obj/item/reagent_containers/food/drinks/bottle/sake, /obj/item/throwing_star, /obj/item/clothing/head/kitty/genuine, /obj/item/clothing/suit/space/space_ninja,
- /obj/item/clothing/mask/gas/space_ninja, /obj/item/clothing/shoes/space_ninja, /obj/item/clothing/gloves/space_ninja, /obj/item/vibro_weapon,
- /obj/item/nullrod/scythe/vibro, /obj/item/energy_katana, /obj/item/toy/katana, /obj/item/nullrod/claymore/katana, /obj/item/katana/weak/curator, /obj/structure/window/paperframe, /obj/structure/mineral_door/paperframe))
+ phobia_words = list(
+ "spiders" = strings(PHOBIA_FILE, "spiders"),
+ "space" = strings(PHOBIA_FILE, "space"),
+ "security" = strings(PHOBIA_FILE, "security"),
+ "clowns" = strings(PHOBIA_FILE, "clowns"),
+ "greytide" = strings(PHOBIA_FILE, "greytide"),
+ "lizards" = strings(PHOBIA_FILE, "lizards"),
+ "skeletons" = strings(PHOBIA_FILE, "skeletons"),
+ "snakes" = strings(PHOBIA_FILE, "snakes"),
+ "robots" = strings(PHOBIA_FILE, "robots"),
+ "doctors" = strings(PHOBIA_FILE, "doctors"),
+ "authority" = strings(PHOBIA_FILE, "authority"),
+ "the supernatural" = strings(PHOBIA_FILE, "the supernatural"),
+ "aliens" = strings(PHOBIA_FILE, "aliens"),
+ "strangers" = strings(PHOBIA_FILE, "strangers"),
+ "conspiracies" = strings(PHOBIA_FILE, "conspiracies"),
+ "birds" = strings(PHOBIA_FILE, "birds"),
+ "falling" = strings(PHOBIA_FILE, "falling"),
+ "anime" = strings(PHOBIA_FILE, "anime")
+ )
+
+ phobia_mobs = list(
+ "spiders" = typecacheof(list(
+ /mob/living/simple_animal/hostile/poison/giant_spider
+ )),
+ "security" = typecacheof(list(
+ /mob/living/simple_animal/bot/secbot,
+ /mob/living/simple_animal/bot/ed209
+ )),
+ "lizards" = typecacheof(list(
+ /mob/living/simple_animal/hostile/lizard
+ )),
+ "skeletons" = typecacheof(list(
+ /mob/living/simple_animal/hostile/skeleton
+ )),
+ "snakes" = typecacheof(list(
+ /mob/living/simple_animal/hostile/retaliate/poison/snake
+ )),
+ "robots" = typecacheof(list(
+ /mob/living/silicon/robot,
+ /mob/living/silicon/ai,
+ /mob/living/simple_animal/drone,
+ /mob/living/simple_animal/bot,
+ /mob/living/simple_animal/hostile/swarmer
+ )),
+ "doctors" = typecacheof(list(
+ /mob/living/simple_animal/bot/medbot
+ )),
+ "the supernatural" = typecacheof(list(
+ /mob/living/simple_animal/hostile/construct,
+ /mob/living/simple_animal/revenant,
+ /mob/living/simple_animal/shade
+ )),
+ "aliens" = typecacheof(list(
+ /mob/living/carbon/alien,
+ /mob/living/simple_animal/slime
+ )),
+ "conspiracies" = typecacheof(list(
+ /mob/living/simple_animal/bot/secbot,
+ /mob/living/simple_animal/bot/ed209,
+ /mob/living/simple_animal/drone,
+ /mob/living/simple_animal/pet/penguin
+ )),
+ "birds" = typecacheof(list(
+ /mob/living/simple_animal/parrot,
+ /mob/living/simple_animal/chick,
+ /mob/living/simple_animal/chicken,
+ /mob/living/simple_animal/pet/penguin)),
+ "anime" = typecacheof(list(
+ /mob/living/simple_animal/hostile/holoparasite
+ ))
+ )
+
+ phobia_objs = list(
+ "snakes" = typecacheof(list(
+ /obj/item/rod_of_asclepius
+ )),
+
+ "spiders" = typecacheof(list(
+ /obj/structure/spider
+ )),
+
+ "security" = typecacheof(list(
+ /obj/item/clothing/under/rank/security/officer,
+ /obj/item/clothing/under/rank/security/warden,
+ /obj/item/clothing/under/rank/security/head_of_security, /obj/item/clothing/under/rank/security/detective,
+ /obj/item/melee/baton, /obj/item/gun/energy/taser, /obj/item/restraints/handcuffs,
+ /obj/machinery/door/airlock/security, /obj/effect/hallucination/simple/securitron)),
+
+ "clowns" = typecacheof(list(
+ /obj/item/clothing/under/rank/civilian/clown, /obj/item/clothing/shoes/clown_shoes,
+ /obj/item/clothing/mask/gas/clown_hat, /obj/item/instrument/bikehorn,
+ /obj/item/modular_computer/tablet/pda/clown, /obj/item/grown/bananapeel)),
+
+ "greytide" = typecacheof(list(
+ /obj/item/clothing/under/color/grey, /obj/item/melee/baton/cattleprod,
+ /obj/item/spear, /obj/item/clothing/mask/gas/old)),
+
+ "lizards" = typecacheof(list(
+ /obj/item/toy/plush/lizardplushie, /obj/item/reagent_containers/food/snacks/kebab/tail,
+ /obj/item/organ/tail/lizard, /obj/item/reagent_containers/food/drinks/bottle/lizardwine)),
+
+ "skeletons" = typecacheof(list(
+ /obj/item/organ/tongue/bone, /obj/item/clothing/suit/armor/bone, /obj/item/stack/sheet/bone,
+ /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/skeleton,
+ /obj/effect/decal/remains/human)),
+
+ "conspiracies" = typecacheof(list(
+ /obj/item/clothing/under/rank/captain, /obj/item/clothing/under/rank/security/head_of_security,
+ /obj/item/clothing/under/rank/engineering/chief_engineer, /obj/item/clothing/under/rank/medical/chief_medical_officer,
+ /obj/item/clothing/under/rank/civilian/head_of_personnel, /obj/item/clothing/under/rank/rnd/research_director,
+ /obj/item/clothing/under/rank/security/head_of_security/white, /obj/item/clothing/under/rank/security/head_of_security/alt,
+ /obj/item/clothing/under/rank/rnd/research_director/alt, /obj/item/clothing/under/rank/rnd/research_director/turtleneck,
+ /obj/item/clothing/under/rank/captain/parade, /obj/item/clothing/under/rank/security/head_of_security/parade, /obj/item/clothing/under/rank/security/head_of_security/parade/female,
+ /obj/item/clothing/head/helmet/abductor, /obj/item/clothing/suit/armor/abductor/vest, /obj/item/abductor/baton,
+ /obj/item/storage/belt/military/abductor, /obj/item/gun/energy/alien, /obj/item/abductor/silencer,
+ /obj/item/abductor/gizmo, /obj/item/clothing/under/rank/centcom/officer,
+ /obj/item/clothing/suit/space/hardsuit/ert, /obj/item/clothing/suit/space/hardsuit/ert/sec,
+ /obj/item/clothing/suit/space/hardsuit/ert/engi, /obj/item/clothing/suit/space/hardsuit/ert/med,
+ /obj/item/clothing/suit/space/hardsuit/deathsquad, /obj/item/clothing/head/helmet/space/hardsuit/deathsquad,
+ /obj/machinery/door/airlock/centcom)),
+
+ "robots" = typecacheof(list(
+ /obj/machinery/computer/upload, /obj/item/aiModule/, /obj/machinery/recharge_station,
+ /obj/item/aicard, /obj/item/deactivated_swarmer, /obj/effect/mob_spawn/swarmer)),
+
+ "doctors" = typecacheof(list(
+ /obj/item/clothing/under/rank/medical, /obj/item/clothing/under/rank/medical/chemist,
+ /obj/item/clothing/under/rank/medical/doctor/nurse, /obj/item/clothing/under/rank/medical/chief_medical_officer,
+ /obj/item/reagent_containers/syringe, /obj/item/reagent_containers/pill/, /obj/item/reagent_containers/hypospray,
+ /obj/item/storage/firstaid, /obj/item/storage/pill_bottle, /obj/item/healthanalyzer,
+ /obj/structure/sign/departments/medbay, /obj/machinery/door/airlock/medical, /obj/machinery/sleeper, /obj/machinery/stasis,
+ /obj/machinery/dna_scannernew, /obj/machinery/atmospherics/components/unary/cryo_cell, /obj/item/surgical_drapes,
+ /obj/item/retractor, /obj/item/hemostat, /obj/item/cautery, /obj/item/surgicaldrill, /obj/item/scalpel, /obj/item/circular_saw,
+ /obj/item/clothing/suit/bio_suit/plaguedoctorsuit, /obj/item/clothing/head/plaguedoctorhat, /obj/item/clothing/mask/gas/plaguedoctor)),
+
+ "authority" = typecacheof(list(
+ /obj/item/clothing/under/rank/captain, /obj/item/clothing/under/rank/civilian/head_of_personnel,
+ /obj/item/clothing/under/rank/security/head_of_security, /obj/item/clothing/under/rank/rnd/research_director,
+ /obj/item/clothing/under/rank/medical/chief_medical_officer, /obj/item/clothing/under/rank/engineering/chief_engineer,
+ /obj/item/clothing/under/rank/centcom/officer, /obj/item/clothing/under/rank/centcom/commander,
+ /obj/item/melee/classic_baton/police/telescopic, /obj/item/card/id/silver, /obj/item/card/id/gold,
+ /obj/item/card/id/captains_spare, /obj/item/card/id/centcom, /obj/machinery/door/airlock/command)),
+
+ "the supernatural" = typecacheof(list(
+ /obj/structure/destructible/cult, /obj/item/tome,
+ /obj/item/melee/cultblade, /obj/item/cult_bastard, /obj/item/restraints/legcuffs/bola/cult,
+ /obj/item/clothing/suit/cultrobes, /obj/item/clothing/suit/space/hardsuit/cult,
+ /obj/item/clothing/suit/hooded/cultrobes, /obj/item/clothing/head/hooded/cult_hoodie, /obj/effect/rune,
+ /obj/item/stack/sheet/runed_metal, /obj/machinery/door/airlock/cult, /obj/eldritch/narsie,
+ /obj/item/soulstone, /obj/item/clockwork,
+ /obj/item/stack/sheet/brass,
+ /obj/machinery/door/airlock/clockwork,
+ /obj/item/clothing/suit/wizrobe, /obj/item/clothing/head/wizard, /obj/item/spellbook, /obj/item/staff,
+ /obj/item/clothing/suit/space/hardsuit/shielded/wizard, /obj/item/clothing/suit/space/hardsuit/wizard,
+ /obj/item/gun/magic/staff, /obj/item/gun/magic/wand,
+ /obj/item/nullrod, /obj/item/clothing/under/rank/civilian/chaplain)),
+
+ "aliens" = typecacheof(list(
+ /obj/item/clothing/mask/facehugger, /obj/item/organ/body_egg/alien_embryo,
+ /obj/structure/alien, /obj/item/toy/toy_xeno,
+ /obj/item/clothing/suit/armor/abductor, /obj/item/abductor, /obj/item/gun/energy/alien,
+ /obj/item/abductor/baton, /obj/item/radio/headset/abductor, /obj/item/scalpel/alien, /obj/item/hemostat/alien,
+ /obj/item/retractor/alien, /obj/item/circular_saw/alien, /obj/item/surgicaldrill/alien, /obj/item/cautery/alien,
+ /obj/item/clothing/head/helmet/abductor, /obj/structure/bed/abductor, /obj/structure/table_frame/abductor,
+ /obj/structure/table/abductor, /obj/structure/table/optable/abductor, /obj/structure/closet/abductor, /obj/item/organ/heart/gland,
+ /obj/machinery/abductor, /obj/item/crowbar/abductor, /obj/item/screwdriver/abductor, /obj/item/weldingtool/abductor,
+ /obj/item/wirecutters/abductor, /obj/item/wrench/abductor, /obj/item/stack/sheet/mineral/abductor)),
+
+ "birds" = typecacheof(list(
+ /obj/item/clothing/mask/gas/plaguedoctor,
+ /obj/item/food/cracker,
+ /obj/item/clothing/suit/chickensuit,
+ /obj/item/clothing/head/chicken,
+ /obj/item/clothing/suit/toggle/owlwings,
+ /obj/item/clothing/under/costume/owl,
+ /obj/item/clothing/mask/gas/owl_mask,
+ /obj/item/clothing/under/costume/griffin,
+ /obj/item/clothing/shoes/griffin,
+ /obj/item/clothing/head/griffin,
+ /obj/item/clothing/head/helmet/space/freedom,
+ /obj/item/clothing/suit/space/freedom
+ )),
+
+ "anime" = typecacheof(list(
+ /obj/item/clothing/under/costume/schoolgirl,
+ /obj/item/katana,
+ /obj/item/reagent_containers/food/snacks/sashimi,
+ /obj/item/food/chawanmushi,
+ /obj/item/reagent_containers/food/drinks/bottle/sake,
+ /obj/item/throwing_star,
+ /obj/item/clothing/head/kitty/genuine,
+ /obj/item/clothing/suit/space/space_ninja,
+ /obj/item/clothing/mask/gas/space_ninja,
+ /obj/item/clothing/shoes/space_ninja,
+ /obj/item/clothing/gloves/space_ninja,
+ /obj/item/vibro_weapon,
+ /obj/item/nullrod/scythe/vibro,
+ /obj/item/energy_katana,
+ /obj/item/toy/katana,
+ /obj/item/nullrod/claymore/katana,
+ /obj/item/katana/weak/curator,
+ /obj/structure/window/paperframe,
+ /obj/structure/mineral_door/paperframe
+ ))
)
phobia_turfs = list("space" = typecacheof(list(/turf/open/space, /turf/open/floor/holofloor/space, /turf/open/floor/fakespace)),
diff --git a/code/game/objects/effects/spawners/bundle.dm b/code/game/objects/effects/spawners/bundle.dm
index 7cf22335cc4ae..8e2ee706180dc 100644
--- a/code/game/objects/effects/spawners/bundle.dm
+++ b/code/game/objects/effects/spawners/bundle.dm
@@ -18,7 +18,7 @@
items = list(
/obj/item/clothing/suit/chickensuit,
/obj/item/clothing/head/chicken,
- /obj/item/reagent_containers/food/snacks/egg)
+ /obj/item/food/egg)
/obj/effect/spawner/bundle/costume/gladiator
name = "gladiator costume spawner"
diff --git a/code/game/objects/items/food/egg.dm b/code/game/objects/items/food/egg.dm
new file mode 100644
index 0000000000000..e992a6ed02a97
--- /dev/null
+++ b/code/game/objects/items/food/egg.dm
@@ -0,0 +1,191 @@
+////////////////////////////////////////////EGGS////////////////////////////////////////////
+
+/obj/item/food/chocolateegg
+ name = "chocolate egg"
+ desc = "Such, sweet, fattening food."
+ icon = 'icons/obj/food/egg.dmi'
+ icon_state = "chocolateegg"
+ food_reagents = list(
+ /datum/reagent/consumable/nutriment = 5,
+ /datum/reagent/consumable/sugar = 2,
+ /datum/reagent/consumable/cocoa = 2,
+ /datum/reagent/consumable/nutriment/vitamin = 1
+ )
+ tastes = list("chocolate" = 4, "sweetness" = 1)
+ foodtypes = JUNKFOOD | SUGAR
+ food_flags = FOOD_FINGER_FOOD
+ w_class = WEIGHT_CLASS_TINY
+
+/obj/item/food/egg
+ name = "egg"
+ desc = "An egg!"
+ icon = 'icons/obj/food/egg.dmi'
+ icon_state = "egg"
+ food_reagents = list(
+ /datum/reagent/consumable/eggyolk = 5
+ )
+ microwaved_type = /obj/item/food/boiledegg
+ foodtypes = MEAT | RAW
+ w_class = WEIGHT_CLASS_TINY
+
+/*
+/obj/item/food/egg/make_microwaveable()
+ AddElement(/datum/element/microwavable, /obj/item/food/boiledegg)
+*/
+
+/obj/item/food/egg/gland
+ desc = "An egg! It looks weird..."
+
+/obj/item/food/egg/gland/Initialize(mapload)
+ . = ..()
+ reagents.add_reagent(get_random_reagent_id(CHEMICAL_RNG_GENERAL), 15)
+
+ var/color = mix_color_from_reagents(reagents.reagent_list)
+ add_atom_colour(color, FIXED_COLOUR_PRIORITY)
+
+/obj/item/food/egg/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
+ if(!..()) //was it caught by a mob?
+ var/turf/T = get_turf(hit_atom)
+ new/obj/effect/decal/cleanable/food/egg_smudge(T)
+ reagents.reaction(hit_atom, TOUCH)
+ qdel(src)
+
+/obj/item/food/egg/attackby(obj/item/W, mob/user, params)
+ if(istype(W, /obj/item/toy/crayon))
+ var/obj/item/toy/crayon/C = W
+ var/clr = C.crayon_color
+
+ if(!(clr in list("blue", "green", "mime", "orange", "purple", "rainbow", "red", "yellow")))
+ to_chat(usr, "[src] refuses to take on this colour!")
+ return
+
+ to_chat(usr, "You colour [src] with [W].")
+ icon_state = "egg-[clr]"
+ else
+ ..()
+
+/obj/item/food/egg/blue
+ icon_state = "egg-blue"
+
+/obj/item/food/egg/green
+ icon_state = "egg-green"
+
+/obj/item/food/egg/mime
+ icon_state = "egg-mime"
+
+/obj/item/food/egg/orange
+ icon_state = "egg-orange"
+
+/obj/item/food/egg/purple
+ icon_state = "egg-purple"
+
+/obj/item/food/egg/rainbow
+ icon_state = "egg-rainbow"
+
+/obj/item/food/egg/red
+ icon_state = "egg-red"
+
+/obj/item/food/egg/yellow
+ icon_state = "egg-yellow"
+
+/obj/item/food/friedegg
+ name = "fried egg"
+ desc = "A fried egg, with a touch of salt and pepper."
+ icon = 'icons/obj/food/egg.dmi'
+ icon_state = "friedegg"
+ food_reagents = list(
+ /datum/reagent/consumable/nutriment/protein = 6,
+ /datum/reagent/consumable/nutriment/vitamin = 1
+ )
+ bite_consumption = 1
+ tastes = list("egg" = 4, "salt" = 1, "pepper" = 1)
+ foodtypes = MEAT | FRIED | BREAKFAST
+
+/obj/item/food/boiledegg
+ name = "boiled egg"
+ desc = "A hard boiled egg."
+ icon = 'icons/obj/food/egg.dmi'
+ icon_state = "egg"
+ food_reagents = list(
+ /datum/reagent/consumable/nutriment/protein = 4,
+ /datum/reagent/consumable/nutriment/vitamin = 1
+ )
+ tastes = list("egg" = 1)
+ foodtypes = MEAT | BREAKFAST
+ food_flags = FOOD_FINGER_FOOD // pretty sure I've seen people pop these in their mouths... right?
+ w_class = WEIGHT_CLASS_SMALL
+
+/obj/item/food/omelette //FUCK THIS
+ name = "omelette du fromage"
+ desc = "That's all you can say!"
+ icon = 'icons/obj/food/egg.dmi'
+ icon_state = "omelette"
+ trash_type = /obj/item/trash/plate
+ food_reagents = list(
+ /datum/reagent/consumable/nutriment/protein = 10,
+ /datum/reagent/consumable/nutriment/vitamin = 3
+ )
+ bite_consumption = 1
+ w_class = WEIGHT_CLASS_SMALL
+ tastes = list("egg" = 1, "cheese" = 1)
+ foodtypes = MEAT | BREAKFAST | DAIRY //yeah, I say this just about reaches the threshold of dairy foodgroup
+
+/obj/item/food/omelette/attackby(obj/item/W, mob/user, params)
+ if(istype(W, /obj/item/kitchen/fork))
+ var/obj/item/kitchen/fork/F = W
+ if(F.forkload)
+ to_chat(user, "You already have omelette on your fork!")
+ else
+ F.icon_state = "forkloaded"
+ user.visible_message("[user] takes a piece of omelette with [user.p_their()] fork!", \
+ "You take a piece of omelette with your fork.")
+
+ var/datum/reagent/R = pick(reagents.reagent_list)
+ reagents.remove_reagent(R.type, 1)
+ F.forkload = R
+ if(reagents.total_volume <= 0)
+ qdel(src)
+ return
+ ..()
+
+/obj/item/food/benedict
+ name = "eggs benedict"
+ desc = "There is only one egg on this, how rude."
+ icon = 'icons/obj/food/egg.dmi'
+ icon_state = "benedict"
+ food_reagents = list(
+ /datum/reagent/consumable/nutriment/vitamin = 6,
+ /datum/reagent/consumable/nutriment/protein = 6,
+ /datum/reagent/consumable/nutriment = 3
+ )
+ trash_type = /obj/item/trash/plate
+ w_class = WEIGHT_CLASS_SMALL
+ tastes = list("egg" = 1, "bacon" = 1, "bun" = 1)
+ foodtypes = MEAT | BREAKFAST | GRAIN
+
+/obj/item/food/eggwrap
+ name = "egg wrap"
+ desc = "The precursor to Pigs in a Blanket."
+ icon = 'icons/obj/food/egg.dmi'
+ icon_state = "eggwrap"
+ food_reagents = list(
+ /datum/reagent/consumable/nutriment = 6,
+ /datum/reagent/consumable/nutriment/protein = 2,
+ /datum/reagent/consumable/nutriment/vitamin = 3
+ )
+ tastes = list("egg" = 1)
+ foodtypes = MEAT | VEGETABLES
+ w_class = WEIGHT_CLASS_TINY
+
+/obj/item/food/chawanmushi
+ name = "chawanmushi"
+ desc = "A legendary egg custard that makes friends out of enemies. Probably too hot for a cat to eat."
+ icon = 'icons/obj/food/egg.dmi'
+ icon_state = "chawanmushi"
+ food_reagents = list(
+ /datum/reagent/consumable/nutriment = 4,
+ /datum/reagent/consumable/nutriment/protein = 3,
+ /datum/reagent/consumable/nutriment/vitamin = 1
+ )
+ tastes = list("custard" = 1)
+ foodtypes = MEAT | VEGETABLES
diff --git a/code/game/objects/items/storage/fancy.dm b/code/game/objects/items/storage/fancy.dm
index 8d981fc59ebdc..6f272852f3deb 100644
--- a/code/game/objects/items/storage/fancy.dm
+++ b/code/game/objects/items/storage/fancy.dm
@@ -91,13 +91,13 @@
righthand_file = 'icons/mob/inhands/misc/food_righthand.dmi'
name = "egg box"
desc = "A carton for containing eggs."
- spawn_type = /obj/item/reagent_containers/food/snacks/egg
+ spawn_type = /obj/item/food/egg
/obj/item/storage/fancy/egg_box/ComponentInitialize()
. = ..()
var/datum/component/storage/STR = GetComponent(/datum/component/storage)
STR.max_items = 12
- STR.can_hold = typecacheof(list(/obj/item/reagent_containers/food/snacks/egg))
+ STR.can_hold = typecacheof(list(/obj/item/food/egg))
/*
* Candle Box
diff --git a/code/modules/antagonists/abductor/equipment/gland.dm b/code/modules/antagonists/abductor/equipment/gland.dm
index bb81b5f95f83f..403ea59a3a549 100644
--- a/code/modules/antagonists/abductor/equipment/gland.dm
+++ b/code/modules/antagonists/abductor/equipment/gland.dm
@@ -289,7 +289,7 @@
/obj/item/organ/heart/gland/egg/activate()
owner.visible_message("[owner] [pick(EGG_LAYING_MESSAGES)]")
var/turf/T = owner.drop_location()
- new /obj/item/reagent_containers/food/snacks/egg/gland(T)
+ new /obj/item/food/egg/gland(T)
/obj/item/organ/heart/gland/electric
true_name = "electron accumulator/discharger"
diff --git a/code/modules/cargo/bounties/chef.dm b/code/modules/cargo/bounties/chef.dm
index 938dd552dbe80..61d51338a31a7 100644
--- a/code/modules/cargo/bounties/chef.dm
+++ b/code/modules/cargo/bounties/chef.dm
@@ -107,7 +107,7 @@
name = "Chawanmushi"
description = "Nanotrasen wants to improve relations with its sister company, Japanotrasen. Ship Chawanmushi immediately."
reward = 8000
- wanted_types = list(/obj/item/reagent_containers/food/snacks/chawanmushi)
+ wanted_types = list(/obj/item/food/chawanmushi)
/datum/bounty/item/chef/kebab
name = "Kebabs"
diff --git a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
index c1b38868c1b18..6686011b056ec 100644
--- a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
+++ b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
@@ -95,8 +95,8 @@
vendor_icon_preview = "nuka_colaglass"
/obj/item/reagent_containers/food/drinks/drinkingglass/attackby(obj/item/I, mob/user, params)
- if(istype(I, /obj/item/reagent_containers/food/snacks/egg)) //breaking eggs
- var/obj/item/reagent_containers/food/snacks/egg/E = I
+ if(istype(I, /obj/item/food/egg)) //breaking eggs
+ var/obj/item/food/egg/E = I
if(reagents)
if(reagents.total_volume >= reagents.maximum_volume)
to_chat(user, "[src] is full.")
diff --git a/code/modules/food_and_drinks/food/snacks_egg.dm b/code/modules/food_and_drinks/food/snacks_egg.dm
deleted file mode 100644
index 761d8afde1cd6..0000000000000
--- a/code/modules/food_and_drinks/food/snacks_egg.dm
+++ /dev/null
@@ -1,145 +0,0 @@
-
-////////////////////////////////////////////EGGS////////////////////////////////////////////
-
-/obj/item/reagent_containers/food/snacks/chocolateegg
- name = "chocolate egg"
- desc = "Such, sweet, fattening food."
- icon_state = "chocolateegg"
- bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
- list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/sugar = 2, /datum/reagent/consumable/cocoa = 2)
- filling_color = "#A0522D"
- tastes = list("chocolate" = 4, "sweetness" = 1)
- foodtype = JUNKFOOD | SUGAR
- /*food_flags = FOOD_FINGER_FOOD*/
- w_class = WEIGHT_CLASS_TINY
-
-/obj/item/reagent_containers/food/snacks/egg
- name = "egg"
- desc = "An egg!"
- icon_state = "egg"
- list_reagents = list(/datum/reagent/consumable/eggyolk = 5)
- cooked_type = /obj/item/reagent_containers/food/snacks/boiledegg
- filling_color = "#F0E68C"
- foodtype = MEAT | RAW
- w_class = WEIGHT_CLASS_TINY
- grind_results = list()
-
-/obj/item/reagent_containers/food/snacks/egg/gland
- desc = "An egg! It looks weird..."
-
-/obj/item/reagent_containers/food/snacks/egg/gland/Initialize(mapload)
- . = ..()
- reagents.add_reagent(get_random_reagent_id(CHEMICAL_RNG_GENERAL), 15)
-
- var/color = mix_color_from_reagents(reagents.reagent_list)
- add_atom_colour(color, FIXED_COLOUR_PRIORITY)
-
-/obj/item/reagent_containers/food/snacks/egg/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
- if(!..()) //was it caught by a mob?
- var/turf/T = get_turf(hit_atom)
- new/obj/effect/decal/cleanable/food/egg_smudge(T)
- reagents.reaction(hit_atom, TOUCH)
- qdel(src)
-
-/obj/item/reagent_containers/food/snacks/egg/attackby(obj/item/W, mob/user, params)
- if(istype(W, /obj/item/toy/crayon))
- var/obj/item/toy/crayon/C = W
- var/clr = C.crayon_color
-
- if(!(clr in list("blue", "green", "mime", "orange", "purple", "rainbow", "red", "yellow")))
- to_chat(usr, "[src] refuses to take on this colour!")
- return
-
- to_chat(usr, "You colour [src] with [W].")
- icon_state = "egg-[clr]"
- else
- ..()
-
-/obj/item/reagent_containers/food/snacks/egg/blue
- icon_state = "egg-blue"
-
-/obj/item/reagent_containers/food/snacks/egg/green
- icon_state = "egg-green"
-
-/obj/item/reagent_containers/food/snacks/egg/mime
- icon_state = "egg-mime"
-
-/obj/item/reagent_containers/food/snacks/egg/orange
- icon_state = "egg-orange"
-
-/obj/item/reagent_containers/food/snacks/egg/purple
- icon_state = "egg-purple"
-
-/obj/item/reagent_containers/food/snacks/egg/rainbow
- icon_state = "egg-rainbow"
-
-/obj/item/reagent_containers/food/snacks/egg/red
- icon_state = "egg-red"
-
-/obj/item/reagent_containers/food/snacks/egg/yellow
- icon_state = "egg-yellow"
-
-/obj/item/reagent_containers/food/snacks/friedegg
- name = "fried egg"
- desc = "A fried egg, with a touch of salt and pepper."
- icon_state = "friedegg"
- bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
- bitesize = 1
- filling_color = "#FFFFF0"
- list_reagents = list(/datum/reagent/consumable/nutriment = 3)
- tastes = list("egg" = 4, "salt" = 1, "pepper" = 1)
- foodtype = MEAT | FRIED | BREAKFAST
-
-/obj/item/reagent_containers/food/snacks/boiledegg
- name = "boiled egg"
- desc = "A hard boiled egg."
- icon_state = "egg"
- bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
- filling_color = "#FFFFF0"
- list_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/nutriment/vitamin = 1)
- tastes = list("egg" = 1)
- foodtype = MEAT | BREAKFAST
- /*food_flags = FOOD_FINGER_FOOD*/
- w_class = WEIGHT_CLASS_SMALL
-
-/obj/item/reagent_containers/food/snacks/omelette //FUCK THIS
- name = "omelette du fromage"
- desc = "That's all you can say!"
- icon_state = "omelette"
- trash = /obj/item/trash/plate
- bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 2)
- list_reagents = list(/datum/reagent/consumable/nutriment = 8, /datum/reagent/consumable/nutriment/vitamin = 1)
- bitesize = 1
- w_class = WEIGHT_CLASS_NORMAL
- tastes = list("egg" = 1, "cheese" = 1)
- foodtype = MEAT | BREAKFAST
-
-/obj/item/reagent_containers/food/snacks/omelette/attackby(obj/item/W, mob/user, params)
- if(istype(W, /obj/item/kitchen/fork))
- var/obj/item/kitchen/fork/F = W
- if(F.forkload)
- to_chat(user, "You already have omelette on your fork!")
- else
- F.icon_state = "forkloaded"
- user.visible_message("[user] takes a piece of omelette with [user.p_their()] fork!", \
- "You take a piece of omelette with your fork.")
-
- var/datum/reagent/R = pick(reagents.reagent_list)
- reagents.remove_reagent(R.type, 1)
- F.forkload = R
- if(reagents.total_volume <= 0)
- qdel(src)
- return
- ..()
-
-/obj/item/reagent_containers/food/snacks/benedict
- name = "eggs benedict"
- desc = "There is only one egg on this, how rude."
- icon_state = "benedict"
- bonus_reagents = list(/datum/reagent/consumable/nutriment/vitamin = 4)
- trash = /obj/item/trash/plate
- w_class = WEIGHT_CLASS_NORMAL
- list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 4)
- tastes = list("egg" = 1, "bacon" = 1, "bun" = 1)
-
- foodtype = MEAT | BREAKFAST
diff --git a/code/modules/food_and_drinks/food/snacks_other.dm b/code/modules/food_and_drinks/food/snacks_other.dm
index 42831e289f367..0f860d954b1a4 100644
--- a/code/modules/food_and_drinks/food/snacks_other.dm
+++ b/code/modules/food_and_drinks/food/snacks_other.dm
@@ -204,26 +204,6 @@
/*food_flags = FOOD_FINGER_FOOD*/
w_class = WEIGHT_CLASS_TINY
-/obj/item/reagent_containers/food/snacks/eggwrap
- name = "egg wrap"
- desc = "The precursor to Pigs in a Blanket."
- icon_state = "eggwrap"
- bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 3)
- list_reagents = list(/datum/reagent/consumable/nutriment = 5)
- filling_color = "#F0E68C"
- tastes = list("egg" = 1)
- foodtype = MEAT | GRAIN
-
-/obj/item/reagent_containers/food/snacks/chawanmushi
- name = "chawanmushi"
- desc = "A legendary egg custard that makes friends out of enemies. Probably too hot for a cat to eat."
- icon_state = "chawanmushi"
- bonus_reagents = list(/datum/reagent/consumable/nutriment/vitamin = 1)
- list_reagents = list(/datum/reagent/consumable/nutriment = 5)
- filling_color = "#FFE4E1"
- tastes = list("custard" = 1)
- foodtype = GRAIN | MEAT | VEGETABLES
-
/obj/item/reagent_containers/food/snacks/spidereggs
name = "spider eggs"
desc = "A cluster of juicy spider eggs. A great side dish for when you care not for your health."
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 e9b1c7dd26e9f..814d7857d08bd 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
@@ -38,7 +38,7 @@
reqs = list(
/datum/reagent/consumable/milk = 5,
/obj/item/food/bread/plain = 1,
- /obj/item/reagent_containers/food/snacks/boiledegg = 3,
+ /obj/item/food/boiledegg = 3,
/obj/item/reagent_containers/food/snacks/grown/banana = 1
)
result = /obj/item/food/bread/banana
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm
index 967d849e3ea40..43b77c2645418 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm
@@ -226,7 +226,7 @@
/obj/item/reagent_containers/food/snacks/meat/steak/plain = 5,
/obj/item/reagent_containers/food/snacks/grown/tomato = 4,
/obj/item/reagent_containers/food/snacks/cheesewedge = 3,
- /obj/item/reagent_containers/food/snacks/boiledegg = 1,
+ /obj/item/food/boiledegg = 1,
/obj/item/reagent_containers/food/snacks/meat/bacon = 1,
/obj/item/food/bun = 1
@@ -343,7 +343,7 @@
/datum/crafting_recipe/food/mcguffin
name = "McGuffin"
reqs = list(
- /obj/item/reagent_containers/food/snacks/friedegg = 1,
+ /obj/item/food/friedegg = 1,
/obj/item/reagent_containers/food/snacks/meat/bacon = 2,
/obj/item/food/bun = 1
)
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm
index d8e4d39334aad..002aee15098e6 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm
@@ -8,44 +8,44 @@
reqs = list(
/datum/reagent/consumable/sodiumchloride = 1,
/datum/reagent/consumable/blackpepper = 1,
- /obj/item/reagent_containers/food/snacks/egg = 1
+ /obj/item/food/egg = 1
)
- result = /obj/item/reagent_containers/food/snacks/friedegg
+ result = /obj/item/food/friedegg
subcategory = CAT_EGG
/datum/crafting_recipe/food/omelette
name = "Omelette"
reqs = list(
- /obj/item/reagent_containers/food/snacks/egg = 2,
+ /obj/item/food/egg = 2,
/obj/item/reagent_containers/food/snacks/cheesewedge = 2
)
- result = /obj/item/reagent_containers/food/snacks/omelette
+ result = /obj/item/food/omelette
subcategory = CAT_EGG
/datum/crafting_recipe/food/chocolateegg
name = "Chocolate egg"
reqs = list(
- /obj/item/reagent_containers/food/snacks/boiledegg = 1,
+ /obj/item/food/boiledegg = 1,
/obj/item/reagent_containers/food/snacks/chocolatebar = 1
)
- result = /obj/item/reagent_containers/food/snacks/chocolateegg
+ result = /obj/item/food/chocolateegg
subcategory = CAT_EGG
/datum/crafting_recipe/food/eggsbenedict
name = "Eggs benedict"
reqs = list(
- /obj/item/reagent_containers/food/snacks/friedegg = 1,
+ /obj/item/food/friedegg = 1,
/obj/item/reagent_containers/food/snacks/meat/steak = 1,
/obj/item/food/breadslice/plain = 1,
)
- result = /obj/item/reagent_containers/food/snacks/benedict
+ result = /obj/item/food/benedict
subcategory = CAT_EGG
/datum/crafting_recipe/food/eggbowl
name = "Egg bowl"
reqs = list(
/obj/item/food/salad/boiledrice = 1,
- /obj/item/reagent_containers/food/snacks/boiledegg = 1,
+ /obj/item/food/boiledegg = 1,
/obj/item/reagent_containers/food/snacks/grown/carrot = 1,
/obj/item/reagent_containers/food/snacks/grown/corn = 1
)
@@ -55,10 +55,10 @@
/datum/crafting_recipe/food/wrap
name = "Wrap"
reqs = list(/datum/reagent/consumable/soysauce = 10,
- /obj/item/reagent_containers/food/snacks/friedegg = 1,
+ /obj/item/food/friedegg = 1,
/obj/item/reagent_containers/food/snacks/grown/cabbage = 1,
)
- result = /obj/item/reagent_containers/food/snacks/eggwrap
+ result = /obj/item/food/eggwrap
category = CAT_EGG
/datum/crafting_recipe/food/chawanmushi
@@ -66,8 +66,8 @@
reqs = list(
/datum/reagent/water = 5,
/datum/reagent/consumable/soysauce = 5,
- /obj/item/reagent_containers/food/snacks/boiledegg = 2,
+ /obj/item/food/boiledegg = 2,
/obj/item/reagent_containers/food/snacks/grown/mushroom/chanterelle = 1
)
- result = /obj/item/reagent_containers/food/snacks/chawanmushi
+ result = /obj/item/food/chawanmushi
category = CAT_EGG
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm
index 3bf2499d8b469..24ab7c9ba90bd 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm
@@ -45,7 +45,7 @@
/obj/item/reagent_containers/glass/bowl = 1,
/obj/item/reagent_containers/food/snacks/grown/nettle = 1,
/obj/item/reagent_containers/food/snacks/grown/potato = 1,
- /obj/item/reagent_containers/food/snacks/boiledegg = 1
+ /obj/item/food/boiledegg = 1
)
result = /obj/item/food/soup/nettle
subcategory = CAT_SOUP
@@ -162,7 +162,7 @@
/obj/item/reagent_containers/glass/bowl = 1,
/obj/item/reagent_containers/food/snacks/badrecipe = 1,
/obj/item/reagent_containers/food/snacks/tofu = 1,
- /obj/item/reagent_containers/food/snacks/boiledegg = 1,
+ /obj/item/food/boiledegg = 1,
/obj/item/reagent_containers/food/snacks/cheesewedge = 1,
)
result = /obj/item/food/soup/mystery
diff --git a/code/modules/holiday/easter.dm b/code/modules/holiday/easter.dm
index 367602ce01cae..94e193db89083 100644
--- a/code/modules/holiday/easter.dm
+++ b/code/modules/holiday/easter.dm
@@ -43,7 +43,7 @@
emote_hear = list("hops.")
emote_see = list("hops around","bounces up and down")
butcher_results = list(/obj/item/reagent_containers/food/snacks/meat/slab = 1)
- egg_type = /obj/item/reagent_containers/food/snacks/egg/loaded
+ egg_type = /obj/item/food/egg/loaded
food_type = /obj/item/reagent_containers/food/snacks/grown/carrot
eggsleft = 10
eggsFertile = FALSE
@@ -70,7 +70,11 @@
/obj/item/storage/bag/easterbasket/Initialize(mapload)
. = ..()
var/datum/component/storage/STR = GetComponent(/datum/component/storage)
- STR.can_hold = typecacheof(list(/obj/item/reagent_containers/food/snacks/egg, /obj/item/reagent_containers/food/snacks/chocolateegg, /obj/item/reagent_containers/food/snacks/boiledegg))
+ STR.can_hold = typecacheof(list(
+ /obj/item/food/egg,
+ /obj/item/food/chocolateegg,
+ /obj/item/food/boiledegg
+ ))
/obj/item/storage/bag/easterbasket/proc/countEggs()
cut_overlays()
@@ -103,22 +107,22 @@
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
//Egg prizes and egg spawns!
-/obj/item/reagent_containers/food/snacks/egg
+/obj/item/food/egg
var/containsPrize = FALSE
-/obj/item/reagent_containers/food/snacks/egg/loaded
+/obj/item/food/egg/loaded
containsPrize = TRUE
-/obj/item/reagent_containers/food/snacks/egg/loaded/Initialize(mapload)
+/obj/item/food/egg/loaded/Initialize(mapload)
. = ..()
var/eggcolor = pick("blue","green","mime","orange","purple","rainbow","red","yellow")
icon_state = "egg-[eggcolor]"
-/obj/item/reagent_containers/food/snacks/egg/proc/dispensePrize(turf/where)
+/obj/item/food/egg/proc/dispensePrize(turf/where)
var/won = pick(/obj/item/clothing/head/bunnyhead,
/obj/item/clothing/suit/bunnysuit,
/obj/item/reagent_containers/food/snacks/grown/carrot,
- /obj/item/reagent_containers/food/snacks/chocolateegg,
+ /obj/item/food/chocolateegg,
/obj/item/toy/balloon,
/obj/item/toy/gun,
/obj/item/toy/sword,
@@ -129,9 +133,9 @@
/obj/item/toy/redbutton,
/obj/item/clothing/head/collectable/rabbitears)
new won(where)
- new/obj/item/reagent_containers/food/snacks/chocolateegg(where)
+ new/obj/item/food/chocolateegg(where)
-/obj/item/reagent_containers/food/snacks/egg/attack_self(mob/user)
+/obj/item/food/egg/attack_self(mob/user)
..()
if(containsPrize)
to_chat(user, "You unwrap [src] and find a prize inside!")
@@ -178,7 +182,7 @@
reqs = list(
/datum/reagent/consumable/sodiumchloride = 1,
/datum/reagent/consumable/blackpepper = 1,
- /obj/item/reagent_containers/food/snacks/boiledegg = 1,
+ /obj/item/food/boiledegg = 1,
/obj/item/reagent_containers/food/snacks/meatball = 1
)
result = /obj/item/reagent_containers/food/snacks/scotchegg
diff --git a/code/modules/holiday/halloween.dm b/code/modules/holiday/halloween.dm
index 30c448d85cc39..665cccbd2c4b9 100644
--- a/code/modules/holiday/halloween.dm
+++ b/code/modules/holiday/halloween.dm
@@ -8,14 +8,14 @@
/datum/recipe/sugarcookie/spookyskull
reagents = list(/datum/reagent/consumable/flour = 5, /datum/reagent/consumable/sugar = 5, /datum/reagent/consumable/milk = 5)
items = list(
- /obj/item/reagent_containers/food/snacks/egg,
+ /obj/item/food/egg,
)
result = /obj/item/food/cookie/sugar/spookyskull
/datum/recipe/sugarcookie/spookycoffin
reagents = list(/datum/reagent/consumable/flour = 5, /datum/reagent/consumable/sugar = 5, /datum/reagent/consumable/coffee = 5)
items = list(
- /obj/item/reagent_containers/food/snacks/egg,
+ /obj/item/food/egg,
)
result = /obj/item/food/cookie/sugar/spookycoffin
diff --git a/code/modules/holiday/holidays.dm b/code/modules/holiday/holidays.dm
index 910c42efc5491..d9a3bdfb7eec5 100644
--- a/code/modules/holiday/holidays.dm
+++ b/code/modules/holiday/holidays.dm
@@ -602,7 +602,7 @@ Since Ramadan is an entire month that lasts 29.5 days on average, the start and
/datum/holiday/easter/celebrate()
GLOB.maintenance_loot += list(
- /obj/item/reagent_containers/food/snacks/egg/loaded = 15,
+ /obj/item/food/egg/loaded = 15,
/obj/item/storage/bag/easterbasket = 15)
/datum/holiday/easter/greet()
diff --git a/code/modules/hydroponics/grown/eggplant.dm b/code/modules/hydroponics/grown/eggplant.dm
index 26373f0cef287..dd589e1515e30 100644
--- a/code/modules/hydroponics/grown/eggplant.dm
+++ b/code/modules/hydroponics/grown/eggplant.dm
@@ -43,7 +43,7 @@
name = "egg-plant"
desc = "There MUST be a chicken inside."
icon_state = "eggyplant"
- trash = /obj/item/reagent_containers/food/snacks/egg
+ trash = /obj/item/food/egg
filling_color = "#F8F8FF"
bitesize_mod = 2
foodtype = MEAT
diff --git a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm
index 688ce1101dca8..05b976b0b2767 100644
--- a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm
+++ b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm
@@ -241,7 +241,7 @@
speak_chance = 2
turns_per_move = 3
butcher_results = list(/obj/item/reagent_containers/food/snacks/meat/slab/chicken = 2)
- var/egg_type = /obj/item/reagent_containers/food/snacks/egg
+ var/egg_type = /obj/item/food/egg
var/food_type = /obj/item/reagent_containers/food/snacks/grown/wheat
response_help = "pets"
response_disarm = "gently pushes aside"
@@ -316,8 +316,8 @@
if(prob(25))
START_PROCESSING(SSobj, E)
-/obj/item/reagent_containers/food/snacks/egg/var/amount_grown = 0
-/obj/item/reagent_containers/food/snacks/egg/process(delta_time)
+/obj/item/food/egg/var/amount_grown = 0
+/obj/item/food/egg/process(delta_time)
if(isturf(loc))
amount_grown += rand(1,2) * delta_time
if(amount_grown >= 200)
diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm
index eab3a3aa5291f..3faaadad55b5f 100755
--- a/code/modules/reagents/reagent_containers/glass.dm
+++ b/code/modules/reagents/reagent_containers/glass.dm
@@ -98,8 +98,8 @@
reagents.expose_temperature(hotness)
to_chat(user, "You heat [name] with [I]!")
- if(istype(I, /obj/item/reagent_containers/food/snacks/egg)) //breaking eggs
- var/obj/item/reagent_containers/food/snacks/egg/E = I
+ if(istype(I, /obj/item/food/egg)) //breaking eggs
+ var/obj/item/food/egg/E = I
if(reagents)
if(reagents.total_volume >= reagents.maximum_volume)
to_chat(user, "[src] is full.")
diff --git a/code/modules/station_goals/bluespace_tap.dm b/code/modules/station_goals/bluespace_tap.dm
index abeea6a7c2b5e..027f6879baba3 100644
--- a/code/modules/station_goals/bluespace_tap.dm
+++ b/code/modules/station_goals/bluespace_tap.dm
@@ -150,7 +150,7 @@
/obj/item/food/pancakes/chocolatechip,
/obj/item/reagent_containers/food/snacks/carrotfries,
/obj/item/reagent_containers/food/snacks/chocolatebunny,
- /obj/item/reagent_containers/food/snacks/benedict,
+ /obj/item/food/benedict,
/obj/item/reagent_containers/food/snacks/cornedbeef,
/obj/item/food/soup/meatball,
/obj/item/food/soup/monkeysdelight,
diff --git a/icons/obj/food/egg.dmi b/icons/obj/food/egg.dmi
new file mode 100644
index 0000000000000..390e14ca0d49b
Binary files /dev/null and b/icons/obj/food/egg.dmi differ
diff --git a/tools/UpdatePaths/Scripts/10287_NEWFOODeggs b/tools/UpdatePaths/Scripts/10287_NEWFOODeggs
new file mode 100644
index 0000000000000..1b4d30eb9a1ae
--- /dev/null
+++ b/tools/UpdatePaths/Scripts/10287_NEWFOODeggs
@@ -0,0 +1,8 @@
+/obj/item/food/chocolateegg : /obj/item/reagent_containers/food/snacks/chocolateegg{@OLD}
+/obj/item/food/egg : /obj/item/reagent_containers/food/snacks/egg{@OLD}
+/obj/item/food/friedegg : /obj/item/reagent_containers/food/snacks/friedegg{@OLD}
+/obj/item/food/boiledegg : /obj/item/reagent_containers/food/snacks/boiledegg{@OLD}
+/obj/item/food/omelette : /obj/item/reagent_containers/food/snacks/omelette{@OLD}
+/obj/item/food/benedict : /obj/item/reagent_containers/food/snacks/benedict{@OLD}
+/obj/item/food/eggwrap : /obj/item/reagent_containers/food/snacks/eggwrap{@OLD}
+/obj/item/food/chawanmushi : /obj/item/reagent_containers/food/snacks/chawanmushi{@OLD}