diff --git a/code/datums/trading/traders/food.dm b/code/datums/trading/traders/food.dm index 148940297ac..0b5d4cc9d93 100644 --- a/code/datums/trading/traders/food.dm +++ b/code/datums/trading/traders/food.dm @@ -60,7 +60,7 @@ /obj/item/chems/condiment/capsaicin = TRADER_THIS_TYPE, /obj/item/food/chazuke = TRADER_THIS_TYPE, /obj/item/food/katsucurry = TRADER_THIS_TYPE, - /obj/item/food/meatkabob = TRADER_THIS_TYPE, + /obj/item/food/skewer/meat = TRADER_THIS_TYPE, /obj/item/food/boiledegg = TRADER_THIS_TYPE, /obj/item/food/boiledrice = TRADER_THIS_TYPE, /obj/item/food/ricepudding = TRADER_THIS_TYPE, @@ -126,7 +126,6 @@ /obj/item/food/processed_grown = TRADER_BLACKLIST_ALL, /obj/item/food/slice = TRADER_BLACKLIST_ALL, /obj/item/food/grown = TRADER_BLACKLIST_ALL, - /obj/item/food/human = TRADER_BLACKLIST_ALL, /obj/item/food/sliceable/braincake = TRADER_BLACKLIST, /obj/item/food/butchery/meat/human = TRADER_BLACKLIST, /obj/item/food/variable = TRADER_BLACKLIST_ALL @@ -188,10 +187,10 @@ /obj/item/food/sliceable/pizza = TRADER_BLACKLIST_ALL, /obj/item/food/sliceable/xenomeatbread = TRADER_BLACKLIST, /obj/item/food/piecrust = TRADER_BLACKLIST, - /obj/item/food/unleaveneddough = TRADER_BLACKLIST, + /obj/item/food/sliceable/unleaveneddough = TRADER_BLACKLIST, /obj/item/food/dough = TRADER_BLACKLIST, /obj/item/food/sliceable/flatdough = TRADER_BLACKLIST, /obj/item/food/sliceable/braincake = TRADER_BLACKLIST, - /obj/item/food/pie = TRADER_THIS_TYPE, + /obj/item/food/bananapie = TRADER_THIS_TYPE, /obj/item/food/applepie = TRADER_THIS_TYPE ) \ No newline at end of file diff --git a/code/datums/trading/traders/misc.dm b/code/datums/trading/traders/misc.dm index bf5df515da4..4366e0fede4 100644 --- a/code/datums/trading/traders/misc.dm +++ b/code/datums/trading/traders/misc.dm @@ -114,7 +114,7 @@ /obj/item/backpack/clown = TRADER_THIS_TYPE, /obj/item/bananapeel = TRADER_THIS_TYPE, /obj/item/gun/launcher/money = TRADER_THIS_TYPE, - /obj/item/food/pie = TRADER_THIS_TYPE, + /obj/item/food/bananapie = TRADER_THIS_TYPE, /obj/item/bikehorn = TRADER_THIS_TYPE, /obj/item/chems/spray/waterflower = TRADER_THIS_TYPE, /obj/item/gun/launcher/pneumatic/small = TRADER_THIS_TYPE, diff --git a/code/datums/trading/traders/unique.dm b/code/datums/trading/traders/unique.dm index 666e20bad59..d5c98f8e392 100644 --- a/code/datums/trading/traders/unique.dm +++ b/code/datums/trading/traders/unique.dm @@ -31,7 +31,6 @@ origin = "SGS Severance" possible_wanted_items = list( - /obj/item/food/human = TRADER_SUBTYPES_ONLY, /obj/item/food/butchery/meat/human = TRADER_THIS_TYPE, /mob/living/human = TRADER_ALL ) diff --git a/code/game/machinery/kitchen/cooking_machines/_cooker_output.dm b/code/game/machinery/kitchen/cooking_machines/_cooker_output.dm index 766faee42b1..91aac2326a7 100644 --- a/code/game/machinery/kitchen/cooking_machines/_cooker_output.dm +++ b/code/game/machinery/kitchen/cooking_machines/_cooker_output.dm @@ -1,7 +1,7 @@ // Wrapper obj for cooked food. Appearance is set in the cooking code, not on spawn. /obj/item/food/variable name = "cooked food" - icon = 'icons/obj/food_custom.dmi' + icon = 'icons/obj/food/custom/custom.dmi' desc = "If you can see this description then something is wrong. Please report the bug on the tracker." nutriment_amt = 5 bitesize = 2 diff --git a/code/game/machinery/kitchen/cooking_machines/cereal.dm b/code/game/machinery/kitchen/cooking_machines/cereal.dm index cd2ecc4f88a..69e3ce24a9f 100644 --- a/code/game/machinery/kitchen/cooking_machines/cereal.dm +++ b/code/game/machinery/kitchen/cooking_machines/cereal.dm @@ -12,7 +12,7 @@ product.SetName("box of [cooking_obj.name] cereal") /obj/machinery/cooker/cereal/change_product_appearance(var/obj/item/food/product) - product.icon = 'icons/obj/food.dmi' + product.icon = 'icons/obj/food/custom/custom.dmi' product.icon_state = "cereal_box" product.filling_color = cooking_obj.color diff --git a/code/game/machinery/vending/food.dm b/code/game/machinery/vending/food.dm index 263d2eea4ba..c435303b96a 100644 --- a/code/game/machinery/vending/food.dm +++ b/code/game/machinery/vending/food.dm @@ -13,17 +13,17 @@ /obj/item/clothing/mask/chewable/candy/lolli = 8, /obj/item/chewables/candy/gum = 4, /obj/item/chewables/candy/cookies = 4, - /obj/item/food/candy = 6, + /obj/item/food/junk/candy = 6, /obj/item/chems/drinks/dry_ramen = 6, - /obj/item/food/chips = 6, - /obj/item/food/sosjerky = 6, - /obj/item/food/no_raisin = 6, - /obj/item/food/spacetwinkie = 6, - /obj/item/food/cheesiehonkers = 6, - /obj/item/food/tastybread = 6 + /obj/item/food/junk/chips = 6, + /obj/item/food/junk/sosjerky = 6, + /obj/item/food/junk/no_raisin = 6, + /obj/item/food/junk/spacetwinkie = 6, + /obj/item/food/junk/cheesiehonkers = 6, + /obj/item/food/junk/tastybread = 6 ) contraband = list( - /obj/item/food/syndicake = 6 + /obj/item/food/junk/syndicake = 6 ) //a food variant of the boda machine - It carries slavic themed foods. Mostly beer snacks @@ -37,13 +37,13 @@ icon_state = "snix" icon_vend = "snix-vend" icon_deny = "snix-deny" - products = list(/obj/item/food/semki = 7, + products = list(/obj/item/food/junk/semki = 7, /obj/item/food/can/caviar = 7, - /obj/item/food/squid = 7, - /obj/item/food/croutons = 7, - /obj/item/food/salo = 7, - /obj/item/food/driedfish = 7, - /obj/item/food/pistachios = 7, + /obj/item/food/junk/squid = 7, + /obj/item/food/junk/croutons = 7, + /obj/item/food/junk/salo = 7, + /obj/item/food/junk/driedfish = 7, + /obj/item/food/junk/pistachios = 7, ) contraband = list(/obj/item/food/can/caviar/true = 1) @@ -62,16 +62,16 @@ icon_vend = "solsnack-vend" icon_deny = "solsnack-deny" products = list( - /obj/item/food/lunacake = 8, - /obj/item/food/lunacake/mochicake = 8, - /obj/item/food/lunacake/mooncake = 8, - /obj/item/food/pluto = 8, - /obj/item/food/triton = 8, - /obj/item/food/saturn = 8, - /obj/item/food/jupiter = 8, - /obj/item/food/mars = 8, - /obj/item/food/venus = 8, - /obj/item/food/oort = 8 + /obj/item/food/junk/lunacake = 8, + /obj/item/food/junk/lunacake/mochicake = 8, + /obj/item/food/junk/lunacake/mooncake = 8, + /obj/item/food/junk/pluto = 8, + /obj/item/food/junk/triton = 8, + /obj/item/food/junk/saturn = 8, + /obj/item/food/junk/jupiter = 8, + /obj/item/food/junk/mars = 8, + /obj/item/food/junk/venus = 8, + /obj/item/food/junk/oort = 8 ) /obj/machinery/vending/weeb @@ -83,11 +83,11 @@ icon_vend = "weeb-vend" icon_deny = "weeb-deny" products = list( - /obj/item/food/weebonuts = 8, - /obj/item/food/ricecake = 8, - /obj/item/food/dango = 8, - /obj/item/food/pokey = 8, - /obj/item/food/chocobanana = 8 + /obj/item/food/junk/weebonuts = 8, + /obj/item/food/junk/ricecake = 8, + /obj/item/food/junk/dango = 8, + /obj/item/food/junk/pokey = 8, + /obj/item/food/junk/chocobanana = 8 ) /obj/machinery/vending/weeb/on_update_icon() @@ -236,7 +236,7 @@ ) contraband = list( /obj/item/chems/drinks/cans/thirteenloko = 5, - /obj/item/food/liquidfood = 6 + /obj/item/food/junk/liquidfood = 6 ) idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. @@ -256,7 +256,7 @@ /obj/item/chems/drinks/cans/waterbottle = 8, /obj/item/chems/drinks/glass2/fitnessflask/proteinshake = 8, /obj/item/chems/drinks/glass2/fitnessflask = 8, - /obj/item/food/candy/proteinbar = 8, + /obj/item/food/junk/candy/proteinbar = 8, /obj/item/mre/random = 8, /obj/item/mre/menu9 = 4, /obj/item/mre/menu10 = 4, diff --git a/code/game/objects/effects/decals/Cleanable/misc.dm b/code/game/objects/effects/decals/Cleanable/misc.dm index e5c4f79ce73..4abf329fd59 100644 --- a/code/game/objects/effects/decals/Cleanable/misc.dm +++ b/code/game/objects/effects/decals/Cleanable/misc.dm @@ -128,3 +128,12 @@ random_icon_states = list("mfloor1", "mfloor2", "mfloor3", "mfloor4", "mfloor5", "mfloor6", "mfloor7") persistent = TRUE generic_filth = TRUE + +/obj/effect/decal/cleanable/champagne + name = "champagne" + desc = "Someone got a bit too excited." + gender = PLURAL + icon = 'icons/effects/effects.dmi' + icon_state = "fchampagne1" + color = COLOR_BRASS + random_icon_states = list("fchampagne1", "fchampagne2", "fchampagne3", "fchampagne4") diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index d8ae8b665c0..499ffb5d858 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -79,7 +79,7 @@ /obj/item/chems/hypospray/autoinjector/stabilizer, /obj/item/stack/medical/bandage, /obj/item/flashlight/flare/glowstick, - /obj/item/food/candy/proteinbar, + /obj/item/food/junk/candy/proteinbar, /obj/item/oxycandle, /obj/item/crowbar/cheap ) @@ -98,7 +98,7 @@ /obj/item/chems/hypospray/autoinjector/antirad, /obj/item/stack/medical/bandage, /obj/item/flashlight/flare/glowstick, - /obj/item/food/candy/proteinbar, + /obj/item/food/junk/candy/proteinbar, /obj/item/oxycandle ) @@ -672,22 +672,22 @@ desc = "A box full of snack foods." /obj/item/box/snack/WillContain() - return list(/obj/item/food/sosjerky = 7) + return list(/obj/item/food/junk/sosjerky = 7) /obj/item/box/snack/noraisin/WillContain() - return list(/obj/item/food/no_raisin = 7) + return list(/obj/item/food/junk/no_raisin = 7) /obj/item/box/snack/cheesehonks/WillContain() - return list(/obj/item/food/cheesiehonkers = 7) + return list(/obj/item/food/junk/cheesiehonkers = 7) /obj/item/box/snack/tastybread/WillContain() - return list(/obj/item/food/tastybread = 7) + return list(/obj/item/food/junk/tastybread = 7) /obj/item/box/snack/candy/WillContain() - return list(/obj/item/food/candy = 7) + return list(/obj/item/food/junk/candy = 7) /obj/item/box/snack/chips/WillContain() - return list(/obj/item/food/chips = 7) + return list(/obj/item/food/junk/chips = 7) /obj/item/box/snack/buns/WillContain() return list(/obj/item/food/bun = 7) diff --git a/code/game/objects/items/weapons/storage/mre.dm b/code/game/objects/items/weapons/storage/mre.dm index da3b18971f5..49c82c43891 100644 --- a/code/game/objects/items/weapons/storage/mre.dm +++ b/code/game/objects/items/weapons/storage/mre.dm @@ -99,7 +99,7 @@ MRE Stuff /obj/item/mre/menu10/WillContain() . = list( main_meal, - /obj/item/food/candy/proteinbar, + /obj/item/food/junk/candy/proteinbar, /obj/item/chems/packet/protein, /obj/random/mre/sauce/sugarfree, /obj/item/utensil/spoon/plastic @@ -177,7 +177,7 @@ MRE Stuff return list(/obj/item/food/boiledrice) /obj/item/mrebag/menu10/WillContain() - return list(/obj/item/food/meatcube) + return list(/obj/item/food/junk/meatcube) /obj/item/mrebag/dessert name = "dessert" diff --git a/code/game/objects/random/subtypes/food.dm b/code/game/objects/random/subtypes/food.dm index ff9459e2e28..f390e57cf5d 100644 --- a/code/game/objects/random/subtypes/food.dm +++ b/code/game/objects/random/subtypes/food.dm @@ -53,8 +53,8 @@ /obj/random/mre/dessert/spawn_choices() var/static/list/spawnable_choices = list( - /obj/item/food/candy, - /obj/item/food/candy/proteinbar, + /obj/item/food/junk/candy, + /obj/item/food/junk/candy/proteinbar, /obj/item/food/donut, /obj/item/food/donut/jelly, /obj/item/food/chocolatebar, @@ -70,7 +70,7 @@ /obj/random/mre/dessert/vegan/spawn_choices() var/static/list/spawnable_choices = list( - /obj/item/food/candy, + /obj/item/food/junk/candy, /obj/item/food/chocolatebar, /obj/item/food/donut/jelly, /obj/item/food/plumphelmetbiscuit @@ -168,22 +168,22 @@ /obj/random/snack name = "random snack" desc = "This is a random snack item." - icon = 'icons/obj/food.dmi' + icon = 'icons/obj/food/junk/junkfood.dmi' icon_state = "sosjerky" /obj/random/snack/spawn_choices() var/static/list/spawnable_choices = list( - /obj/item/food/liquidfood, - /obj/item/food/candy, + /obj/item/food/junk/liquidfood, + /obj/item/food/junk/candy, /obj/item/chems/drinks/dry_ramen, - /obj/item/food/chips, - /obj/item/food/sosjerky, - /obj/item/food/no_raisin, - /obj/item/food/spacetwinkie, - /obj/item/food/cheesiehonkers, - /obj/item/food/tastybread, - /obj/item/food/candy/proteinbar, - /obj/item/food/syndicake, + /obj/item/food/junk/chips, + /obj/item/food/junk/sosjerky, + /obj/item/food/junk/no_raisin, + /obj/item/food/junk/spacetwinkie, + /obj/item/food/junk/cheesiehonkers, + /obj/item/food/junk/tastybread, + /obj/item/food/junk/candy/proteinbar, + /obj/item/food/junk/syndicake, /obj/item/food/donut, /obj/item/food/donut/jelly, /obj/item/pizzabox/meat, diff --git a/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm b/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm index 651dd2ca6f2..710f7d92d05 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm @@ -76,7 +76,7 @@ /obj/item/clothing/gloves/black, /obj/item/radio/headset/headset_sci, /obj/item/flashlight, - /obj/item/food/liquidfood, + /obj/item/food/junk/liquidfood, /obj/item/chems/drinks/cans/waterbottle, /obj/item/box/flares, /obj/item/cell/device, diff --git a/code/modules/butchery/butchery_data_animal.dm b/code/modules/butchery/butchery_data_animal.dm index d3b44a7f762..5cdf1b96919 100644 --- a/code/modules/butchery/butchery_data_animal.dm +++ b/code/modules/butchery/butchery_data_animal.dm @@ -31,7 +31,7 @@ /decl/butchery_data/animal/space_bear meat_name = "bear" - meat_type = /obj/item/food/bearmeat + meat_type = /obj/item/food/butchery/meat/bear meat_amount = 10 bone_amount = 20 skin_amount = 20 @@ -99,7 +99,7 @@ /decl/butchery_data/animal/antlion meat_name = "insect" - meat_type = /obj/item/food/xenomeat + meat_type = /obj/item/food/butchery/meat/xeno meat_amount = 5 skin_material = /decl/material/solid/organic/skin/insect skin_amount = 15 diff --git a/code/modules/butchery/butchery_products.dm b/code/modules/butchery/butchery_products.dm index b29bcf55f64..7d2f0d8a6bb 100644 --- a/code/modules/butchery/butchery_products.dm +++ b/code/modules/butchery/butchery_products.dm @@ -99,7 +99,7 @@ /obj/item/food/butchery/offal name = "offal" desc = "An assortmant of organs and lumps of unidentified gristle. Packed with nutrients and bile." - icon = 'icons/obj/items/butchery/offal.dmi' + icon = 'icons/obj/food/butchery/offal.dmi' material = /decl/material/solid/organic/meat/gut nutriment_amt = 15 slice_path = /obj/item/food/butchery/offal/small @@ -158,7 +158,7 @@ return ..() /obj/item/food/butchery/offal/small - icon = 'icons/obj/items/butchery/offal_small.dmi' + icon = 'icons/obj/food/butchery/offal_small.dmi' nutriment_amt = 5 w_class = ITEM_SIZE_SMALL slice_path = null @@ -173,7 +173,7 @@ /obj/item/food/butchery/haunch name = "haunch" desc = "A severed leg of some unfortunate beast, cleaned and ready for cooking." - icon = 'icons/obj/items/butchery/haunch.dmi' + icon = 'icons/obj/food/butchery/haunch.dmi' slice_num = 2 slice_path = /obj/item/food/butchery/meat w_class = ITEM_SIZE_LARGE @@ -210,7 +210,7 @@ /obj/item/food/butchery/haunch/side name = "side of meat" desc = "Approximately half the torso and body of an unfortunate animal, split lengthways, cleaned, and ready for cooking." - icon = 'icons/obj/items/butchery/side.dmi' + icon = 'icons/obj/food/butchery/side.dmi' w_class = ITEM_SIZE_HUGE /obj/item/food/butchery/haunch/side/Initialize(mapload, material_key, skip_plate = FALSE, mob/living/donor) @@ -229,7 +229,7 @@ /obj/item/food/butchery/stomach name = "stomach" desc = "The stomach of a large animal. It would probably make a decent waterskin if properly treated." - icon = 'icons/obj/items/butchery/ruminant_stomach.dmi' + icon = 'icons/obj/food/butchery/ruminant_stomach.dmi' material = /decl/material/solid/organic/meat/gut nutriment_amt = 8 dried_type = /obj/item/chems/waterskin diff --git a/code/modules/butchery/butchery_products_chopped.dm b/code/modules/butchery/butchery_products_chopped.dm index ccf600683ef..400418476ee 100644 --- a/code/modules/butchery/butchery_products_chopped.dm +++ b/code/modules/butchery/butchery_products_chopped.dm @@ -1,7 +1,7 @@ /obj/item/food/butchery/chopped name = "chopped meat" desc = "A handful of chopped meat." - icon = 'icons/obj/items/butchery/chopped.dmi' + icon = 'icons/obj/food/butchery/chopped.dmi' bitesize = 2 nutriment_amt = 1 w_class = ITEM_SIZE_TINY diff --git a/code/modules/butchery/butchery_products_cutlet.dm b/code/modules/butchery/butchery_products_cutlet.dm index 20b1fc037e6..984c8a4d583 100644 --- a/code/modules/butchery/butchery_products_cutlet.dm +++ b/code/modules/butchery/butchery_products_cutlet.dm @@ -1,7 +1,7 @@ /obj/item/food/butchery/cutlet name = "cutlet" desc = "A tasty meat slice." - icon = 'icons/obj/items/butchery/cutlet.dmi' + icon = 'icons/obj/food/butchery/cutlet.dmi' bitesize = 2 nutriment_amt = 1 center_of_mass = @'{"x":17,"y":20}' diff --git a/code/modules/butchery/butchery_products_meat.dm b/code/modules/butchery/butchery_products_meat.dm index abbe45402d8..0c65f0f83eb 100644 --- a/code/modules/butchery/butchery_products_meat.dm +++ b/code/modules/butchery/butchery_products_meat.dm @@ -1,7 +1,7 @@ /obj/item/food/butchery/meat name = "slab" desc = "A slab of meat." - icon = 'icons/obj/items/butchery/meat1.dmi' + icon = 'icons/obj/food/butchery/meat1.dmi' icon_state = ICON_STATE_WORLD slice_path = /obj/item/food/butchery/cutlet/raw slice_num = 3 @@ -19,9 +19,9 @@ /obj/item/food/butchery/meat/proc/get_meat_icons() var/static/list/meat_icons = list( - 'icons/obj/items/butchery/meat1.dmi', - 'icons/obj/items/butchery/meat2.dmi', - 'icons/obj/items/butchery/meat3.dmi' + 'icons/obj/food/butchery/meat1.dmi', + 'icons/obj/food/butchery/meat2.dmi', + 'icons/obj/food/butchery/meat3.dmi' ) return meat_icons @@ -62,3 +62,26 @@ /obj/item/food/butchery/meat/corgi desc = "Tastes like... well you know..." meat_name = "dog" + + +/obj/item/food/butchery/meat/xeno + desc = "A slab of green meat. Smells like acid." + icon_state = "xenomeat" + meat_name = "xeno" + color = "#43de18" + center_of_mass = @'{"x":16,"y":10}' + bitesize = 6 + +/obj/item/food/butchery/meat/xeno/populate_reagents() + . = ..() + add_to_reagents(/decl/material/liquid/acid/polyacid, 6) + + +/obj/item/food/butchery/meat/bear + meat_name = "bear" + desc = "A very manly slab of meat." + icon_state = "bearmeat" + +/obj/item/food/butchery/meat/bear/populate_reagents() + . = ..() + add_to_reagents(/decl/material/liquid/amphetamines, 5) diff --git a/code/modules/butchery/butchery_products_meat_fish.dm b/code/modules/butchery/butchery_products_meat_fish.dm index 9ea86bfacd6..ae64e5d1c18 100644 --- a/code/modules/butchery/butchery_products_meat_fish.dm +++ b/code/modules/butchery/butchery_products_meat_fish.dm @@ -1,7 +1,7 @@ /obj/item/food/butchery/meat/fish name = "fillet" desc = "A fillet of fish." - icon = 'icons/obj/items/butchery/fish.dmi' + icon = 'icons/obj/food/butchery/fish.dmi' filling_color = "#ffdefe" center_of_mass = @'{"x":17,"y":13}' bitesize = 6 @@ -19,7 +19,7 @@ /obj/item/food/butchery/meat/fish/get_meat_icons() var/static/list/meat_icons = list( - 'icons/obj/items/butchery/fish.dmi' + 'icons/obj/food/butchery/fish.dmi' ) return meat_icons @@ -37,7 +37,7 @@ icon_state = "grilledfish" nutriment_amt = 8 bitesize = 2 - icon = 'icons/obj/items/butchery/fish_grilled.dmi' + icon = 'icons/obj/food/butchery/fish_grilled.dmi' nutriment_desc = list("flaky grilled fish" = 5) drying_wetness = 0 dried_type = null @@ -54,7 +54,7 @@ /obj/item/food/butchery/meat/fish/get_meat_icons() var/static/list/meat_icons = list( - 'icons/obj/items/butchery/fish_grilled.dmi' + 'icons/obj/food/butchery/fish_grilled.dmi' ) return meat_icons diff --git a/code/modules/food/assembled.dm b/code/modules/food/assembled.dm index aa026d89cb4..bab06fe4b12 100644 --- a/code/modules/food/assembled.dm +++ b/code/modules/food/assembled.dm @@ -131,7 +131,7 @@ /obj/item/holder/corgi = /obj/item/food/classichotdog, /obj/item/food/butchery/cutlet = /obj/item/food/burger, /obj/item/organ/internal/brain = /obj/item/food/brainburger, - /obj/item/food/xenomeat = /obj/item/food/xenoburger, + /obj/item/food/butchery/meat/xeno = /obj/item/food/xenoburger, /obj/item/food/butchery/meat/fish = /obj/item/food/fishburger, /obj/item/food/tofu = /obj/item/food/tofuburger, /obj/item/ectoplasm = /obj/item/food/ghostburger, @@ -148,7 +148,7 @@ ) return combined_food_products -/obj/item/food/doughslice/get_combined_food_products() +/obj/item/food/unleaveneddoughslice/get_combined_food_products() var/static/list/combined_food_products = list( /obj/item/food/meatball = /obj/item/food/donkpocket, /obj/item/food/meatball/raw = list( @@ -171,12 +171,6 @@ ) return combined_food_products -/obj/item/food/human/burger/get_combined_food_products() - var/static/list/combined_food_products = list( - /obj/item/food/dairy/cheese/wedge = /obj/item/food/cheeseburger - ) - return combined_food_products - // Spaghetti + meatball = spaghetti with meatball(s) /obj/item/food/boiledspagetti/get_combined_food_products() var/static/list/combined_food_products = list( @@ -211,11 +205,11 @@ ) return combined_food_products -/obj/item/food/sliceable/piecrust/get_combined_food_products() +/obj/item/food/piecrust/get_combined_food_products() var/static/list/combined_food_products = list( /obj/item/food/butchery/cutlet = /obj/item/food/meatpie/raw, /obj/item/food/tofu = /obj/item/food/tofupie/raw, - /obj/item/food/xenomeat = /obj/item/food/xemeatpie/raw, + /obj/item/food/butchery/meat/xeno = /obj/item/food/xemeatpie/raw, "apple" = /obj/item/food/applepie/raw, "berries" = /obj/item/food/berryclafoutis/raw, "plumphelmet" = /obj/item/food/plump_pie/raw diff --git a/code/modules/food/cooking/recipes/recipe_assembled.dm b/code/modules/food/cooking/recipes/recipe_assembled.dm index 4a0ee15baca..db38ad62101 100644 --- a/code/modules/food/cooking/recipes/recipe_assembled.dm +++ b/code/modules/food/cooking/recipes/recipe_assembled.dm @@ -38,7 +38,7 @@ /decl/recipe/taco items = list( - /obj/item/food/doughslice, + /obj/item/food/unleaveneddoughslice, /obj/item/food/butchery/cutlet, /obj/item/food/dairy/cheese/wedge ) diff --git a/code/modules/food/cooking/recipes/recipe_baked.dm b/code/modules/food/cooking/recipes/recipe_baked.dm index 48cddc3a499..90bb8ad590d 100644 --- a/code/modules/food/cooking/recipes/recipe_baked.dm +++ b/code/modules/food/cooking/recipes/recipe_baked.dm @@ -41,27 +41,27 @@ /decl/recipe/baked/amanita_pie reagents = list(/decl/material/liquid/amatoxin = 5) - items = list(/obj/item/food/unleaveneddough) + items = list(/obj/item/food/piecrust) result = /obj/item/food/amanita_pie /decl/recipe/baked/pumpkinpie fruit = list("pumpkin" = 1) reagents = list(/decl/material/liquid/nutriment/sugar = 5) - items = list(/obj/item/food/unleaveneddough) + items = list(/obj/item/food/piecrust) reagent_mix = REAGENT_REPLACE // no raw flour result = /obj/item/food/sliceable/pumpkinpie /decl/recipe/baked/bananapie fruit = list("banana" = 1) reagents = list(/decl/material/liquid/nutriment/sugar = 5) - items = list(/obj/item/food/unleaveneddough) + items = list(/obj/item/food/piecrust) result = /obj/item/food/bananapie /decl/recipe/baked/cherrypie fruit = list("cherries" = 1) reagents = list(/decl/material/liquid/nutriment/sugar = 10) items = list( - /obj/item/food/unleaveneddough, + /obj/item/food/piecrust, ) result = /obj/item/food/cherrypie @@ -101,7 +101,7 @@ /decl/recipe/baked/xenomeatbread items = list( /obj/item/food/dough = 2, - /obj/item/food/xenomeat = 2, + /obj/item/food/butchery/meat/xeno = 2, /obj/item/food/dairy/cheese/wedge = 2, ) result = /obj/item/food/sliceable/xenomeatbread @@ -145,7 +145,7 @@ /decl/recipe/baked/fortunecookie reagents = list(/decl/material/liquid/nutriment/sugar = 5) items = list( - /obj/item/food/doughslice, + /obj/item/food/unleaveneddoughslice, /obj/item/paper, ) result = /obj/item/food/fortunecookie @@ -248,7 +248,7 @@ /decl/recipe/baked/cracker reagents = list(/decl/material/solid/sodiumchloride = 1) items = list( - /obj/item/food/doughslice + /obj/item/food/unleaveneddoughslice ) result = /obj/item/food/cracker @@ -262,13 +262,13 @@ /decl/recipe/baked/bun display_name = "plain bun" items = list( - /obj/item/food/dough + /obj/item/food/doughslice ) result = /obj/item/food/bun /decl/recipe/baked/flatbread items = list( - /obj/item/food/unleaveneddough + /obj/item/food/sliceable/unleaveneddough ) result = /obj/item/food/flatbread diff --git a/code/modules/food/cooking/recipes/recipe_grilled.dm b/code/modules/food/cooking/recipes/recipe_grilled.dm index 13186d3e2c8..d2e4e234090 100644 --- a/code/modules/food/cooking/recipes/recipe_grilled.dm +++ b/code/modules/food/cooking/recipes/recipe_grilled.dm @@ -70,12 +70,12 @@ /obj/item/stack/material/rods, /obj/item/food/butchery/cutlet = 2 ) - result = /obj/item/food/meatkabob + result = /obj/item/food/skewer/meat /decl/recipe/grilled/tofukabob items = list( /obj/item/stack/material/rods, /obj/item/food/tofu = 2, ) - result = /obj/item/food/tofukabob + result = /obj/item/food/skewer/tofu completion_message = "The tofu sizzles and browns as it is cooked through." diff --git a/code/modules/materials/definitions/solids/materials_solid_butchery.dm b/code/modules/materials/definitions/solids/materials_solid_butchery.dm index 34696320201..c106771d16f 100644 --- a/code/modules/materials/definitions/solids/materials_solid_butchery.dm +++ b/code/modules/materials/definitions/solids/materials_solid_butchery.dm @@ -49,6 +49,12 @@ uid = "solid_meat_chicken" color = "#e98a8a" +/decl/material/solid/organic/meat/xeno + name = "alien meat" + codex_name = "xenoprotein" + uid = "solid_meat_xeno" + color = COLOR_LIME + /decl/material/solid/organic/meat/gut name = "gut" codex_name = null diff --git a/code/modules/reagents/chems/chems_ethanol.dm b/code/modules/reagents/chems/chems_ethanol.dm index d23d0e22736..ebac6288399 100644 --- a/code/modules/reagents/chems/chems_ethanol.dm +++ b/code/modules/reagents/chems/chems_ethanol.dm @@ -545,3 +545,14 @@ glass_name = "kvass" glass_desc = "An alcoholic drink commonly made from bread." + +/decl/material/liquid/ethanol/champagne + name = "champagne" + lore_text = "Sparkling wine made from exquisite grape." + taste_description = "bitter taste" + color = "#a89410" + strength = 18 + + glass_name = "champagne" + glass_desc = "Wow, it's bubbling!" + glass_special = list(DRINK_FIZZ) diff --git a/code/modules/reagents/reactions/reaction_recipe_food.dm b/code/modules/reagents/reactions/reaction_recipe_food.dm index 469c67b5cde..124eba8fb90 100644 --- a/code/modules/reagents/reactions/reaction_recipe_food.dm +++ b/code/modules/reagents/reactions/reaction_recipe_food.dm @@ -136,7 +136,7 @@ /decl/material/liquid/water = 10 ) mix_message = "The solution swells into a round of unleavened dough." - obj_result = /obj/item/food/unleaveneddough + obj_result = /obj/item/food/sliceable/unleaveneddough inhibitors = list(/decl/material/liquid/nutriment/yeast) /decl/chemical_reaction/recipe/food/syntiflesh diff --git a/code/modules/reagents/reagent_containers/drinks/bottle.dm b/code/modules/reagents/reagent_containers/drinks/bottle.dm index 44a0aea2f51..22c64325c31 100644 --- a/code/modules/reagents/reagent_containers/drinks/bottle.dm +++ b/code/modules/reagents/reagent_containers/drinks/bottle.dm @@ -453,15 +453,44 @@ /obj/item/chems/drinks/bottle/sake/populate_reagents() add_to_reagents(/decl/material/liquid/ethanol/sake, reagents.maximum_volume) + /obj/item/chems/drinks/bottle/champagne - name = "Murcelano Vinyard's Premium Champagne" - desc = "The regal drink of celebrities and royalty." + name = "champagne bottle" + desc = "Sparkling wine made from exquisite grape varieties by the method of secondary fermentation in a bottle. Bubbling." icon_state = "champagne" - center_of_mass = @'{"x":16,"y":4}' + center_of_mass = @'{"x":12,"y":5}' + atom_flags = 0 //starts closed + var/opening /obj/item/chems/drinks/bottle/champagne/populate_reagents() add_to_reagents(/decl/material/liquid/ethanol/champagne, reagents.maximum_volume) +/obj/item/chems/drinks/bottle/champagne/open(mob/user) + if(ATOM_IS_OPEN_CONTAINER(src)) + to_chat(user, SPAN_NOTICE("\The [src] is already open.")) + return + if(!opening) + user.visible_message(SPAN_NOTICE("\The [user] tries to open \the [src]!")) + opening = TRUE + else + to_chat(user, SPAN_WARNING("You are already trying to open \the [src].")) + return + if(!do_after(user, 3 SECONDS, src)) + if(QDELETED(user) || QDELETED(src)) + return + user.visible_message(SPAN_NOTICE("\The [user] fails to open \the [src].")) + opening = FALSE + return + playsound(src,'sound/effects/champagne_open.ogg', 100, 1) + if(!user.skill_check(SKILL_COOKING, SKILL_BASIC)) + sleep(4) + playsound(src,'sound/effects/champagne_psh.ogg', 100) + user.visible_message(SPAN_WARNING("\The [user] clumsily pops the cork out of \the [src], wasting fizz and getting foam everywhere.")) + new /obj/effect/decal/cleanable/champagne(get_turf(user)) + else + user.visible_message(SPAN_NOTICE("\The [user] pops the cork out of \the [src] with a professional flourish.")) + atom_flags |= ATOM_FLAG_OPEN_CONTAINER + /obj/item/chems/drinks/bottle/jagermeister name = "Kaisermeister Deluxe" desc = "Jagermeister. This drink just demands a party." @@ -569,6 +598,7 @@ smash_duration = 1 atom_flags = 0 //starts closed rag_underlay = "rag_small" + abstract_type = /obj/item/chems/drinks/bottle/small /obj/item/chems/drinks/bottle/small/beer name = "space beer" diff --git a/code/modules/reagents/reagent_containers/drinks/cans.dm b/code/modules/reagents/reagent_containers/drinks/cans.dm index ac6d82e688d..4caf4c5fa41 100644 --- a/code/modules/reagents/reagent_containers/drinks/cans.dm +++ b/code/modules/reagents/reagent_containers/drinks/cans.dm @@ -3,6 +3,7 @@ amount_per_transfer_from_this = 5 atom_flags = 0 //starts closed material = /decl/material/solid/metal/aluminium + abstract_type = /obj/item/chems/drinks/cans /obj/item/chems/drinks/cans/update_container_desc() return diff --git a/code/modules/reagents/reagent_containers/drinks/champagne.dm b/code/modules/reagents/reagent_containers/drinks/champagne.dm deleted file mode 100644 index 3a380131da9..00000000000 --- a/code/modules/reagents/reagent_containers/drinks/champagne.dm +++ /dev/null @@ -1,64 +0,0 @@ -/decl/material/liquid/ethanol/champagne - name = "champagne" - lore_text = "Sparkling wine made from exquisite grape." - taste_description = "bitter taste" - color = "#a89410" - strength = 18 - - glass_name = "champagne" - glass_desc = "Wow, it's bubbling!" - glass_special = list(DRINK_FIZZ) - -/obj/effect/decal/cleanable/champagne - name = "champagne" - desc = "Is this a gold?" - gender = PLURAL - icon = 'icons/effects/effects.dmi' - icon_state = "fchampagne1" - color = COLOR_BRASS - random_icon_states = list("fchampagne1", "fchampagne2", "fchampagne3", "fchampagne4") - -/obj/item/chems/drinks/bottle/champagne - name = "champagne bottle" - desc = "Sparkling wine made from exquisite grape varieties by the method of secondary fermentation in a bottle. Bubbling." - icon = 'icons/obj/food.dmi' - icon_state = "champagne" - center_of_mass = @'{"x":12,"y":5}' - atom_flags = 0 //starts closed - - var/opening - -/obj/item/chems/drinks/bottle/champagne/populate_reagents() - add_to_reagents(/decl/material/liquid/ethanol/champagne, reagents.maximum_volume) - -/obj/item/chems/drinks/bottle/champagne/open(mob/user) - if(ATOM_IS_OPEN_CONTAINER(src)) - to_chat(user, SPAN_NOTICE("\The [src] is already open.")) - return - - if(!opening) - user.visible_message(SPAN_NOTICE("\The [user] tries to open \the [src]!")) - opening = TRUE - else - to_chat(user, SPAN_WARNING("You are already trying to open \the [src].")) - return - - if(!do_after(user, 3 SECONDS, src)) - if(QDELETED(user) || QDELETED(src)) - return - - user.visible_message(SPAN_NOTICE("\The [user] fails to open \the [src].")) - opening = FALSE - return - - playsound(src,'sound/effects/champagne_open.ogg', 100, 1) - - if(!user.skill_check(SKILL_COOKING, SKILL_BASIC)) - sleep(4) - playsound(src,'sound/effects/champagne_psh.ogg', 100) - user.visible_message(SPAN_WARNING("\The [user] clumsily pops the cork out of \the [src], wasting fizz and getting foam everywhere.")) - new /obj/effect/decal/cleanable/champagne(get_turf(user)) - else - user.visible_message(SPAN_NOTICE("\The [user] pops the cork out of \the [src] with a professional flourish.")) - - atom_flags |= ATOM_FLAG_OPEN_CONTAINER diff --git a/code/modules/reagents/reagent_containers/food.dm b/code/modules/reagents/reagent_containers/food.dm index 825842d2570..9c05a01e347 100644 --- a/code/modules/reagents/reagent_containers/food.dm +++ b/code/modules/reagents/reagent_containers/food.dm @@ -9,10 +9,11 @@ // it. Try to stick to existing reagents when possible (so if you want a stronger healing effect, just use regenerative serum). /obj/item/food + abstract_type = /obj/item/food name = "snack" desc = "Yummy!" - icon = 'icons/obj/food.dmi' - icon_state = null + icon = 'icons/obj/food/error.dmi' + icon_state = ICON_STATE_WORLD randpixel = 6 item_flags = null material = /decl/material/liquid/nutriment diff --git a/code/modules/reagents/reagent_containers/food/baked_goods.dm b/code/modules/reagents/reagent_containers/food/baking/baked_goods.dm similarity index 78% rename from code/modules/reagents/reagent_containers/food/baked_goods.dm rename to code/modules/reagents/reagent_containers/food/baking/baked_goods.dm index e3d5f3fcccc..a03d9f836f0 100644 --- a/code/modules/reagents/reagent_containers/food/baked_goods.dm +++ b/code/modules/reagents/reagent_containers/food/baking/baked_goods.dm @@ -5,7 +5,7 @@ /obj/item/food/muffin name = "muffin" desc = "A delicious and spongy little cake." - icon_state = "muffin" + icon = 'icons/obj/food/baked/muffin.dmi' filling_color = "#e0cf9b" center_of_mass = @'{"x":17,"y":4}' nutriment_desc = list("sweetness" = 3, "muffin" = 3) @@ -15,7 +15,7 @@ /obj/item/food/bananapie name = "banana cream pie" desc = "Just like back home, on clown planet! HONK!" - icon_state = "pie" + icon = 'icons/obj/food/baked/pies/pie.dmi' plate = /obj/item/plate filling_color = "#fbffb8" center_of_mass = @'{"x":16,"y":13}' @@ -27,7 +27,7 @@ . = ..() add_to_reagents(/decl/material/liquid/nutriment/banana_cream, 5) -/obj/item/food/pie/throw_impact(atom/hit_atom) +/obj/item/food/bananapie/throw_impact(atom/hit_atom) ..() new/obj/effect/decal/cleanable/pie_smudge(src.loc) src.visible_message("\The [src.name] splats.","You hear a splat.") @@ -36,7 +36,7 @@ /obj/item/food/berryclafoutis name = "berry clafoutis" desc = "No black birds, this is a good sign." - icon_state = "berryclafoutis" + icon = 'icons/obj/food/baked/pies/berry.dmi' plate = /obj/item/plate center_of_mass = @'{"x":16,"y":13}' nutriment_desc = list("sweetness" = 2, "pie" = 3) @@ -50,7 +50,7 @@ /obj/item/food/waffles name = "waffles" desc = "Mmm, waffles." - icon_state = "waffles" + icon = 'icons/obj/food/baked/waffles/plain.dmi' trash = /obj/item/trash/waffles filling_color = "#e6deb5" center_of_mass = @'{"x":15,"y":11}' @@ -61,7 +61,7 @@ /obj/item/food/rofflewaffles name = "waffles(?)" desc = "There's something funny about these waffles." - icon_state = "rofflewaffles" + icon = 'icons/obj/food/baked/waffles/blue.dmi' trash = /obj/item/trash/waffles filling_color = "#ff00f7" center_of_mass = @'{"x":15,"y":11}' @@ -76,7 +76,7 @@ /obj/item/food/pancakes name = "pancakes" desc = "Pancakes without blueberries, still delicious." - icon_state = "pancakes" + icon = 'icons/obj/food/fried/pancakes.dmi' plate = /obj/item/plate center_of_mass = @'{"x":15,"y":11}' nutriment_desc = list("pancake" = 8) @@ -86,7 +86,7 @@ /obj/item/food/pancakesblu name = "blueberry pancakes" desc = "Pancakes with blueberries, delicious." - icon_state = "pancakes" + icon = 'icons/obj/food/fried/pancakes.dmi' plate = /obj/item/plate center_of_mass = @'{"x":15,"y":11}' nutriment_desc = list("pancake" = 8) @@ -96,7 +96,7 @@ /obj/item/food/eggplantparm name = "eggplant parmigiana" desc = "The only good recipe for eggplant." - icon_state = "eggplantparm" + icon = 'icons/obj/food/baked/eggplant_parmigiana.dmi' plate = /obj/item/plate filling_color = "#4d2f5e" center_of_mass = @'{"x":16,"y":11}' @@ -107,7 +107,7 @@ /obj/item/food/soylentgreen name = "\improper Soylent Green" desc = "Not made of people. Honest."//Totally people. - icon_state = "soylent_green" + icon = 'icons/obj/food/baked/waffles/green.dmi' trash = /obj/item/trash/waffles filling_color = "#b8e6b5" center_of_mass = @'{"x":15,"y":11}' @@ -120,7 +120,7 @@ /obj/item/food/soylenviridians name = "\improper Soylen Virdians" desc = "Not made of people. Honest."//Actually honest for once. - icon_state = "soylent_yellow" + icon = 'icons/obj/food/baked/waffles/blue.dmi' trash = /obj/item/trash/waffles filling_color = "#e6fa61" center_of_mass = @'{"x":15,"y":11}' @@ -130,7 +130,7 @@ /obj/item/food/meatpie name = "meat-pie" - icon_state = "meatpie" + icon = 'icons/obj/food/baked/pies/meat.dmi' desc = "An old barber recipe, very delicious!" plate = /obj/item/plate filling_color = "#948051" @@ -143,7 +143,7 @@ /obj/item/food/tofupie name = "tofu-pie" - icon_state = "meatpie" + icon = 'icons/obj/food/baked/pies/meat.dmi' desc = "A delicious tofu pie." plate = /obj/item/plate filling_color = "#fffee0" @@ -155,7 +155,7 @@ /obj/item/food/amanita_pie name = "amanita pie" desc = "Sweet and tasty poison pie." - icon_state = "amanita_pie" + icon = 'icons/obj/food/baked/pies/amanita.dmi' filling_color = "#ffcccc" center_of_mass = @'{"x":17,"y":9}' nutriment_desc = list("sweetness" = 3, "mushroom" = 3, "pie" = 2) @@ -170,7 +170,7 @@ /obj/item/food/plump_pie name = "plump pie" desc = "I bet you love stuff made out of plump helmets!" - icon_state = "plump_pie" + icon = 'icons/obj/food/baked/pies/plumphelmet.dmi' filling_color = "#b8279b" center_of_mass = @'{"x":17,"y":9}' nutriment_desc = list("heartiness" = 2, "mushroom" = 3, "pie" = 3) @@ -186,7 +186,7 @@ /obj/item/food/xemeatpie name = "xeno-pie" - icon_state = "xenomeatpie" + icon = 'icons/obj/food/baked/pies/xeno.dmi' desc = "A delicious meatpie. Probably heretical." plate = /obj/item/plate filling_color = "#43de18" @@ -195,12 +195,12 @@ /obj/item/food/xemeatpie/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 10) + add_to_reagents(/decl/material/solid/organic/meat/xeno, 10) /obj/item/food/poppypretzel name = "poppy pretzel" desc = "It's all twisted up!" - icon_state = "poppypretzel" + icon = 'icons/obj/food/baked/pretzel.dmi' filling_color = "#916e36" center_of_mass = @'{"x":16,"y":10}' nutriment_desc = list("poppy seeds" = 2, "pretzel" = 3) @@ -210,7 +210,7 @@ /obj/item/food/applepie name = "apple pie" desc = "A pie containing sweet sweet love... or apple." - icon_state = "applepie" + icon = 'icons/obj/food/baked/pies/apple.dmi' filling_color = "#e0edc5" center_of_mass = @'{"x":16,"y":13}' nutriment_desc = list("sweetness" = 2, "apple" = 2, "pie" = 2) @@ -220,7 +220,7 @@ /obj/item/food/cherrypie name = "cherry pie" desc = "Taste so good, make a grown man cry." - icon_state = "cherrypie" + icon = 'icons/obj/food/baked/pies/cherry.dmi' filling_color = "#ff525a" center_of_mass = @'{"x":16,"y":11}' nutriment_desc = list("sweetness" = 2, "cherry" = 2, "pie" = 2) @@ -230,9 +230,31 @@ /obj/item/food/fortunecookie name = "fortune cookie" desc = "A true prophecy in each cookie!" - icon_state = "fortune_cookie" + icon = 'icons/obj/food/baked/fortune_cookie.dmi' filling_color = "#e8e79e" center_of_mass = @'{"x":15,"y":14}' nutriment_desc = list("fortune cookie" = 2) nutriment_amt = 3 - bitesize = 2 \ No newline at end of file + bitesize = 2 + + +/obj/item/food/bun + name = "bun" + desc = "A base for any self-respecting burger." + icon = 'icons/obj/food/baked/bun.dmi' + icon_state = ICON_STATE_WORLD + bitesize = 2 + center_of_mass = @'{"x":16,"y":12}' + nutriment_desc = list("bun" = 4) + nutriment_amt = 4 + nutriment_type = /decl/material/liquid/nutriment/bread + +/obj/item/food/bunbun + name = "\improper Bun Bun" + desc = "A small bread monkey fashioned from two burger buns." + icon = 'icons/obj/food/baked/bunbun.dmi' + bitesize = 2 + center_of_mass = @'{"x":16,"y":8}' + nutriment_desc = list("bun" = 8) + nutriment_amt = 8 + nutriment_type = /decl/material/liquid/nutriment/bread diff --git a/code/modules/reagents/reagent_containers/food/bread.dm b/code/modules/reagents/reagent_containers/food/baking/bread.dm similarity index 85% rename from code/modules/reagents/reagent_containers/food/bread.dm rename to code/modules/reagents/reagent_containers/food/baking/bread.dm index 8692588139a..0ed284778fb 100644 --- a/code/modules/reagents/reagent_containers/food/bread.dm +++ b/code/modules/reagents/reagent_containers/food/baking/bread.dm @@ -5,7 +5,7 @@ /obj/item/food/sandwich name = "sandwich" desc = "A grand creation of meat, cheese, bread, and several leaves of lettuce!" - icon_state = "sandwich" + icon = 'icons/obj/food/baked/sandwich.dmi' plate = /obj/item/plate filling_color = "#d9be29" center_of_mass = @'{"x":16,"y":4}' @@ -23,7 +23,7 @@ /obj/item/food/toastedsandwich name = "toasted sandwich" desc = "Now if you only had a pepper bar." - icon_state = "toastedsandwich" + icon = 'icons/obj/food/baked/toastedsandwich.dmi' plate = /obj/item/plate filling_color = "#d9be29" center_of_mass = @'{"x":16,"y":4}' @@ -35,12 +35,12 @@ /obj/item/food/toastedsandwich/populate_reagents() . = ..() add_to_reagents(/decl/material/solid/organic/meat, 3) - add_to_reagents(/decl/material/solid/carbon, 2) + add_to_reagents(/decl/material/solid/carbon, 2) /obj/item/food/grilledcheese name = "grilled cheese sandwich" - desc = "Goes great with Tomato soup!" - icon_state = "toastedsandwich" + desc = "Goes great with tomato soup!" + icon = 'icons/obj/food/baked/toastedsandwich.dmi' plate = /obj/item/plate filling_color = "#d9be29" nutriment_desc = list("toasted bread" = 3, "cheese" = 3) @@ -50,12 +50,12 @@ /obj/item/food/grilledcheese/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 4) + add_to_reagents(/decl/material/liquid/nutriment/cheese, 4) /obj/item/food/baguette name = "baguette" desc = "Good for pretend sword fights." - icon_state = "baguette" + icon = 'icons/obj/food/baked/baguette.dmi' filling_color = "#e3d796" center_of_mass = @'{"x":18,"y":12}' nutriment_desc = list("long bread" = 6) @@ -71,7 +71,7 @@ /obj/item/food/jelliedtoast name = "jellied toast" desc = "A slice of bread covered with delicious jam." - icon_state = "jellytoast" + icon = 'icons/obj/food/baked/jellytoast.dmi' plate = /obj/item/plate filling_color = "#b572ab" center_of_mass = @'{"x":16,"y":8}' @@ -87,7 +87,7 @@ /obj/item/food/jellysandwich name = "jelly sandwich" desc = "You wish you had some peanut butter to go with this..." - icon_state = "jellysandwich" + icon = 'icons/obj/food/baked/jellysandwich.dmi' plate = /obj/item/plate filling_color = "#9e3a78" center_of_mass = @'{"x":16,"y":8}' @@ -103,7 +103,7 @@ /obj/item/food/twobread name = "\improper Two Bread" desc = "It is very bitter and winy." - icon_state = "twobread" + icon = 'icons/obj/food/baked/twobread.dmi' filling_color = "#dbcc9a" center_of_mass = @'{"x":15,"y":12}' nutriment_desc = list("sourness" = 2, "bread" = 2) @@ -114,7 +114,7 @@ /obj/item/food/threebread name = "\improper Three Bread" desc = "Is such a thing even possible?" - icon_state = "threebread" + icon = 'icons/obj/food/baked/threebread.dmi' filling_color = "#dbcc9a" center_of_mass = @'{"x":15,"y":12}' nutriment_desc = list("sourness" = 2, "bread" = 3) @@ -125,8 +125,8 @@ /obj/item/food/flatbread name = "flatbread" desc = "Bland but filling." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "flatbread" + icon = 'icons/obj/food/baked/flatbread.dmi' + icon_state = ICON_STATE_WORLD bitesize = 2 center_of_mass = @'{"x":16,"y":16}' nutriment_desc = list("bread" = 3) diff --git a/code/modules/reagents/reagent_containers/food/baking/cookie.dm b/code/modules/reagents/reagent_containers/food/baking/cookie.dm new file mode 100644 index 00000000000..61e22ede1dc --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/baking/cookie.dm @@ -0,0 +1,11 @@ +/obj/item/food/cookie + name = "cookie" + desc = "It's a cookie!" + icon = 'icons/obj/food/baked/cookie.dmi' + filling_color = "#dbc94f" + center_of_mass = @'{"x":17,"y":18}' + nutriment_amt = 5 + nutriment_desc = list("sweetness" = 3, "crisp cookie" = 2) + w_class = ITEM_SIZE_TINY + bitesize = 1 + nutriment_type = /decl/material/liquid/nutriment/bread diff --git a/code/modules/reagents/reagent_containers/food/baking/donuts.dm b/code/modules/reagents/reagent_containers/food/baking/donuts.dm new file mode 100644 index 00000000000..bc52a6a4c29 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/baking/donuts.dm @@ -0,0 +1,60 @@ +/obj/item/food/donut + name = "donut" + desc = "Goes great with Robust Coffee." + icon = 'icons/obj/food/donuts/donut.dmi' + icon_state = ICON_STATE_WORLD + filling_color = "#d9c386" + center_of_mass = @'{"x":19,"y":16}' + nutriment_desc = list("sweetness", "donut") + nutriment_amt = 3 + bitesize = 3 + nutriment_type = /decl/material/liquid/nutriment/bread + var/iced_icon = 'icons/obj/food/donuts/donut_iced.dmi' + +/obj/item/food/donut/populate_reagents() + . = ..() + if(iced_icon && prob(30) && icon != iced_icon) + icon = iced_icon + SetName("frosted [name]") + add_to_reagents(/decl/material/liquid/nutriment/sprinkles, 2) + +/obj/item/food/donut/chaos + name = "chaos donut" + desc = "Like life, it never quite tastes the same." + filling_color = "#ed11e6" + nutriment_amt = 2 + bitesize = 10 + +/obj/item/food/donut/chaos/proc/get_random_fillings() + . = list( + /decl/material/liquid/nutriment, + /decl/material/liquid/capsaicin, + /decl/material/liquid/frostoil, + /decl/material/liquid/nutriment/sprinkles, + /decl/material/gas/chlorine, + /decl/material/liquid/nutriment/coco, + /decl/material/liquid/nutriment/banana_cream, + /decl/material/liquid/nutriment/cherryjelly, + /decl/material/liquid/fuel, + /decl/material/liquid/regenerator + ) + +/obj/item/food/donut/chaos/populate_reagents() + . = ..() + add_to_reagents(pick(get_random_fillings()), 3) + +/obj/item/food/donut/jelly + name = "jelly donut" + desc = "You jelly?" + icon = 'icons/obj/food/donuts/donut_jelly.dmi' + iced_icon = 'icons/obj/food/donuts/donut_jelly_iced.dmi' + filling_color = "#ed1169" + center_of_mass = @'{"x":16,"y":11}' + nutriment_amt = 3 + bitesize = 5 + nutriment_type = /decl/material/liquid/nutriment/bread + var/jelly_type = /decl/material/liquid/nutriment/cherryjelly + +/obj/item/food/donut/jelly/populate_reagents() + . = ..() + add_to_reagents(jelly_type, 5) diff --git a/code/modules/reagents/reagent_containers/food/baking/leavened_dough.dm b/code/modules/reagents/reagent_containers/food/baking/leavened_dough.dm new file mode 100644 index 00000000000..47362c41166 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/baking/leavened_dough.dm @@ -0,0 +1,48 @@ +/obj/item/food/dough + name = "leavened dough" + desc = "A piece of dough." + icon = 'icons/obj/food/baked/dough.dmi' + icon_state = ICON_STATE_WORLD + bitesize = 2 + center_of_mass = @'{"x":16,"y":13}' + nutriment_desc = list("raw dough" = 3) + nutriment_amt = 3 + nutriment_type = /decl/material/liquid/nutriment/bread + backyard_grilling_product = /obj/item/food/bun + backyard_grilling_announcement = "is baked into a simple bun." + +// Dough + rolling pin = flat dough +/obj/item/food/dough/attackby(obj/item/W, mob/user) + if(istype(W,/obj/item/kitchen/rollingpin)) + var/obj/item/food/sliceable/flatdough/result = new() + result.dropInto(loc) + to_chat(user, "You flatten the dough.") + qdel(src) + +// slicable into 3x doughslices +/obj/item/food/sliceable/flatdough + name = "flat leavened dough" + desc = "A flattened lump of dough, made with yeast." + icon = 'icons/obj/food/baked/flattened_dough.dmi' + icon_state = ICON_STATE_WORLD + slice_path = /obj/item/food/doughslice + slice_num = 3 + center_of_mass = @'{"x":16,"y":16}' + utensil_flags = UTENSIL_FLAG_COLLECT | UTENSIL_FLAG_SLICE + nutriment_amt = 4 + nutriment_desc = "raw dough" + // TODO: pizza base with no toppings? Some other round leavened bread product? + backyard_grilling_product = /obj/item/food/flatbread + backyard_grilling_announcement = "is baked into a simple flatbread." + +/obj/item/food/doughslice + name = "leavened dough slice" + desc = "A building block of an impressive dish." + icon = 'icons/obj/food/baked/sliced_dough.dmi' + icon_state = ICON_STATE_WORLD + bitesize = 2 + center_of_mass = @'{"x":17,"y":19}' + nutriment_desc = list("raw dough" = 1) + nutriment_amt = 1 + nutriment_type = /decl/material/liquid/nutriment/bread + utensil_flags = UTENSIL_FLAG_COLLECT diff --git a/code/modules/reagents/reagent_containers/food/baking/piecrust.dm b/code/modules/reagents/reagent_containers/food/baking/piecrust.dm new file mode 100644 index 00000000000..6816ce813b3 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/baking/piecrust.dm @@ -0,0 +1,8 @@ +/obj/item/food/piecrust + name = "pie crust" + desc = "A dense, buttery pie crust, ready for filling." + icon = 'icons/obj/food/baked/flattened_dough.dmi' + icon_state = ICON_STATE_WORLD + center_of_mass = @'{"x":16,"y":16}' + nutriment_amt = 4 + nutriment_desc = "raw pie crust" diff --git a/code/modules/reagents/reagent_containers/food/baking/pies.dm b/code/modules/reagents/reagent_containers/food/baking/pies.dm new file mode 100644 index 00000000000..e69de29bb2d diff --git a/code/modules/reagents/reagent_containers/food/baking/unleavened_dough.dm b/code/modules/reagents/reagent_containers/food/baking/unleavened_dough.dm new file mode 100644 index 00000000000..f53bb3462fe --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/baking/unleavened_dough.dm @@ -0,0 +1,26 @@ +/obj/item/food/sliceable/unleaveneddough + name = "unleavened dough" + desc = "A flattened lump of dough, made without yeast." + icon = 'icons/obj/food/baked/flattened_dough.dmi' + icon_state = ICON_STATE_WORLD + center_of_mass = @'{"x":16,"y":16}' + backyard_grilling_product = /obj/item/food/flatbread + backyard_grilling_announcement = "is baked into a simple flatbread." + nutriment_amt = 4 + nutriment_desc = "raw dough" + slice_path = /obj/item/food/unleaveneddoughslice + slice_num = 3 + +/obj/item/food/unleaveneddoughslice + name = "unleavened dough slice" + desc = "A building block of an impressive dish." + icon = 'icons/obj/food/baked/sliced_dough.dmi' + icon_state = ICON_STATE_WORLD + slice_path = /obj/item/food/spagetti + slice_num = 1 + bitesize = 2 + center_of_mass = @'{"x":17,"y":19}' + nutriment_desc = list("raw dough" = 1) + nutriment_amt = 1 + nutriment_type = /decl/material/liquid/nutriment/bread + utensil_flags = UTENSIL_FLAG_COLLECT | UTENSIL_FLAG_SLICE diff --git a/code/modules/reagents/reagent_containers/food/burgers.dm b/code/modules/reagents/reagent_containers/food/burgers.dm index 93c5f9572d6..baa622d0f76 100644 --- a/code/modules/reagents/reagent_containers/food/burgers.dm +++ b/code/modules/reagents/reagent_containers/food/burgers.dm @@ -5,7 +5,7 @@ /obj/item/food/brainburger name = "brainburger" desc = "A strange looking burger. It looks almost sentient." - icon_state = "brainburger" + icon = 'icons/obj/food/burgers/brainburger.dmi' filling_color = "#f2b6ea" center_of_mass = @'{"x":15,"y":11}' bitesize = 2 @@ -19,32 +19,17 @@ /obj/item/food/ghostburger name = "ghost burger" desc = "Spooky! It doesn't look very filling." - icon_state = "ghostburger" + icon = 'icons/obj/food/burgers/ghostburger.dmi' filling_color = "#fff2ff" center_of_mass = @'{"x":16,"y":11}' nutriment_desc = list("buns" = 3, "spookiness" = 3) nutriment_amt = 2 bitesize = 2 -/obj/item/food/human - filling_color = "#d63c3c" - material = /decl/material/solid/organic/meat - -/obj/item/food/human/burger - name = "-burger" - desc = "A bloody burger." - icon_state = "hburger" - center_of_mass = @'{"x":16,"y":11}' - bitesize = 2 - -/obj/item/food/human/burger/populate_reagents() - . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 6) - /obj/item/food/cheeseburger name = "cheeseburger" desc = "The cheese adds a good flavor." - icon_state = "cheeseburger" + icon = 'icons/obj/food/burgers/cheeseburger.dmi' center_of_mass = @'{"x":16,"y":11}' nutriment_desc = list("cheese" = 2, "bun" = 2) nutriment_amt = 2 @@ -56,8 +41,7 @@ /obj/item/food/burger name = "burger" desc = "The cornerstone of every nutritious breakfast." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "burger" + icon = 'icons/obj/food/burgers/burger.dmi' filling_color = "#d63c3c" center_of_mass = @'{"x":16,"y":11}' nutriment_desc = list("bun" = 2) @@ -71,8 +55,7 @@ /obj/item/food/hamburger name = "hamburger" desc = "The cornerstone of every nutritious breakfast, now with ham!" - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "hamburger" + icon = 'icons/obj/food/burgers/hamburger.dmi' filling_color = "#d63c3c" center_of_mass = @'{"x":16,"y":11}' nutriment_desc = list("bun" = 2) @@ -86,7 +69,7 @@ /obj/item/food/fishburger name = "fish sandwich" desc = "Almost like a carp is yelling somewhere... Give me back that fillet -o- carp, give me that carp." - icon_state = "fishburger" + icon = 'icons/obj/food/burgers/fishburger.dmi' filling_color = "#ffdefe" center_of_mass = @'{"x":16,"y":10}' bitesize = 3 @@ -98,7 +81,7 @@ /obj/item/food/tofuburger name = "tofu burger" desc = "What... is that meat?" - icon_state = "tofuburger" + icon = 'icons/obj/food/burgers/tofuburger.dmi' filling_color = "#fffee0" center_of_mass = @'{"x":16,"y":10}' nutriment_desc = list("bun" = 2, "pseudo-soy meat" = 3) @@ -108,7 +91,7 @@ /obj/item/food/roburger name = "roburger" desc = "The lettuce is the only organic component. Beep." - icon_state = "roburger" + icon = 'icons/obj/food/burgers/roburger.dmi' filling_color = COLOR_GRAY80 center_of_mass = @'{"x":16,"y":11}' nutriment_desc = list("bun" = 2, "metal" = 3) @@ -123,7 +106,7 @@ /obj/item/food/roburgerbig name = "roburger" desc = "This massive patty looks like poison. Beep." - icon_state = "roburger" + icon = 'icons/obj/food/burgers/roburger.dmi' filling_color = COLOR_GRAY80 volume = 100 center_of_mass = @'{"x":16,"y":11}' @@ -136,7 +119,7 @@ /obj/item/food/xenoburger name = "xenoburger" desc = "Smells caustic. Tastes like heresy." - icon_state = "xburger" + icon = 'icons/obj/food/burgers/xenoburger.dmi' filling_color = "#43de18" center_of_mass = @'{"x":16,"y":11}' bitesize = 2 @@ -148,7 +131,7 @@ /obj/item/food/clownburger name = "clown burger" desc = "This tastes funny..." - icon_state = "clownburger" + icon = 'icons/obj/food/burgers/clownburger.dmi' filling_color = "#ff00ff" center_of_mass = @'{"x":17,"y":12}' nutriment_desc = list("bun" = 2, "clown shoe" = 3) @@ -158,7 +141,7 @@ /obj/item/food/mimeburger name = "mime burger" desc = "Its taste defies language." - icon_state = "mimeburger" + icon = 'icons/obj/food/burgers/mimeburger.dmi' filling_color = "#ffffff" center_of_mass = @'{"x":16,"y":11}' nutriment_desc = list("bun" = 2, "mime paint" = 3) @@ -168,7 +151,7 @@ /obj/item/food/spellburger name = "spell burger" desc = "This is absolutely magical." - icon_state = "spellburger" + icon = 'icons/obj/food/burgers/spellburger.dmi' filling_color = "#d505ff" nutriment_desc = list("magic" = 3, "buns" = 3) nutriment_amt = 6 @@ -177,7 +160,7 @@ /obj/item/food/bigbiteburger name = "big bite burger" desc = "Forget the Luna Burger! THIS is the future!" - icon_state = "bigbiteburger" + icon = 'icons/obj/food/burgers/bigbiteburger.dmi' filling_color = "#e3d681" center_of_mass = @'{"x":16,"y":11}' nutriment_desc = list("buns" = 4) @@ -191,7 +174,7 @@ /obj/item/food/jellyburger name = "jelly burger" desc = "Culinary delight...?" - icon_state = "jellyburger" + icon = 'icons/obj/food/burgers/jellyburger.dmi' filling_color = "#b572ab" center_of_mass = @'{"x":16,"y":11}' nutriment_desc = list("buns" = 5) @@ -205,7 +188,7 @@ /obj/item/food/superbiteburger name = "super bite burger" desc = "This is a mountain of a burger. FOOD!" - icon_state = "superbiteburger" + icon = 'icons/obj/food/burgers/superbiteburger.dmi' filling_color = "#cca26a" center_of_mass = @'{"x":16,"y":3}' nutriment_desc = list("buns" = 25) @@ -216,29 +199,3 @@ . = ..() add_to_reagents(/decl/material/solid/organic/meat, 25) -// I am not creating another file just for hot dogs. - -/obj/item/food/hotdog - name = "hotdog" - desc = "Unrelated to dogs, maybe." - icon_state = "hotdog" - bitesize = 2 - center_of_mass = @'{"x":16,"y":17}' - nutriment_type = /decl/material/liquid/nutriment/bread - material = /decl/material/solid/organic/meat - -/obj/item/food/hotdog/populate_reagents() - . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 6) - -/obj/item/food/classichotdog - name = "classic hotdog" - desc = "Going literal." - icon_state = "hotcorgi" - bitesize = 6 - center_of_mass = @'{"x":16,"y":17}' - material = /decl/material/solid/organic/meat - -/obj/item/food/classichotdog/populate_reagents() - . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 16) diff --git a/code/modules/reagents/reagent_containers/food/canned.dm b/code/modules/reagents/reagent_containers/food/canned/_canned.dm similarity index 96% rename from code/modules/reagents/reagent_containers/food/canned.dm rename to code/modules/reagents/reagent_containers/food/canned/_canned.dm index 7835a689442..c293bf07f17 100644 --- a/code/modules/reagents/reagent_containers/food/canned.dm +++ b/code/modules/reagents/reagent_containers/food/canned/_canned.dm @@ -5,7 +5,8 @@ /obj/item/food/can name = "empty can" - icon = 'icons/obj/food_canned.dmi' + icon = 'icons/obj/food/canned/canned.dmi' + icon_state = "blank" center_of_mass = @'{"x":15,"y":9}' atom_flags = 0 bitesize = 3 @@ -138,8 +139,8 @@ /obj/item/food/can/caviar/true/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 4) - add_to_reagents(/decl/material/liquid/carpotoxin, 1) + add_to_reagents(/decl/material/solid/organic/meat/fish, 4) + add_to_reagents(/decl/material/liquid/carpotoxin, 1) /obj/item/knife/opener name = "can-opener" diff --git a/code/modules/reagents/reagent_containers/food/can_edibility.dm b/code/modules/reagents/reagent_containers/food/canned/can_edibility.dm similarity index 100% rename from code/modules/reagents/reagent_containers/food/can_edibility.dm rename to code/modules/reagents/reagent_containers/food/canned/can_edibility.dm diff --git a/code/modules/reagents/reagent_containers/food/chocolate/chocolate.dm b/code/modules/reagents/reagent_containers/food/chocolate/chocolate.dm new file mode 100644 index 00000000000..9c0b4afd7d6 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/chocolate/chocolate.dm @@ -0,0 +1,30 @@ + +/obj/item/food/chocolatebar + name = "chocolate bar" + desc = "Such sweet, fattening food." + icon = 'icons/obj/food/chocolatebar.dmi' + filling_color = "#7d5f46" + center_of_mass = @'{"x":15,"y":15}' + nutriment_amt = 2 + nutriment_desc = list("chocolate" = 5) + bitesize = 2 + +/obj/item/food/chocolatebar/populate_reagents() + . = ..() + add_to_reagents(/decl/material/liquid/nutriment/coco, 2) + add_to_reagents(/decl/material/liquid/nutriment/sugar, 2) + +/obj/item/food/chocolateegg + name = "chocolate egg" + desc = "Such sweet, fattening food." + icon = 'icons/obj/food/eggs/egg_chocolate.dmi' + filling_color = "#7d5f46" + center_of_mass = @'{"x":16,"y":13}' + nutriment_amt = 3 + nutriment_desc = list("chocolate" = 5) + bitesize = 2 + +/obj/item/food/chocolateegg/populate_reagents() + . = ..() + add_to_reagents(/decl/material/liquid/nutriment/coco, 2) + add_to_reagents(/decl/material/liquid/nutriment/sugar, 2) diff --git a/code/modules/reagents/reagent_containers/food/donkpocket.dm b/code/modules/reagents/reagent_containers/food/donkpocket.dm new file mode 100644 index 00000000000..b261f8781a8 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/donkpocket.dm @@ -0,0 +1,77 @@ +/obj/item/food/donkpocket + name = "cold donk-pocket" + desc = "The food of choice for the seasoned traitor." + icon = 'icons/obj/food/donkpocket.dmi' + filling_color = "#dedeab" + center_of_mass = @'{"x":16,"y":10}' + nutriment_desc = list("heartiness" = 1, "dough" = 2) + nutriment_amt = 2 + var/warm = 0 + var/list/heated_reagents = list(/decl/material/liquid/regenerator = 5) + +/obj/item/food/donkpocket/populate_reagents() + . = ..() + add_to_reagents(/decl/material/solid/organic/meat, 2) + +/obj/item/food/donkpocket/grill(var/atom/heat_source) + + backyard_grilling_rawness-- + if(backyard_grilling_rawness <= 0) + backyard_grilling_rawness = initial(backyard_grilling_rawness) + + // We're already warm, so we burn. + if(warm) + var/obj/item/food/badrecipe/whoops = new + whoops.dropInto(loc) + visible_message(SPAN_DANGER("\The [src] chars and blackens!")) + qdel(src) + return whoops + + // Otherwise we just warm up. + heat() + visible_message(SPAN_NOTICE("\The [src] steams gently!")) + return src + +/obj/item/food/donkpocket/proc/heat() + if(warm) + return + warm = 1 + for(var/reagent in heated_reagents) + add_to_reagents(reagent, heated_reagents[reagent]) + bitesize = 6 + SetName("warm donk-pocket") + addtimer(CALLBACK(src, PROC_REF(cool)), 7 MINUTES) + +/obj/item/food/donkpocket/proc/cool() + if(!warm) + return + warm = 0 + for(var/reagent in heated_reagents) + reagents.clear_reagent(reagent) + SetName(initial(name)) + +/obj/item/food/donkpocket/sinpocket + name = "\improper Sin-pocket" + desc = "The food of choice for the veteran. Do NOT overconsume." + filling_color = "#6d6d00" + heated_reagents = list( + /decl/material/liquid/regenerator = 5, + /decl/material/liquid/amphetamines = 0.75, + /decl/material/liquid/stimulants = 0.25 + ) + var/has_been_heated = 0 // Unlike the warm var, this checks if the one-time self-heating operation has been used. + +/obj/item/food/donkpocket/sinpocket/attack_self(mob/user) + if(has_been_heated) + to_chat(user, "The heating chemicals have already been spent.") + return + has_been_heated = 1 + user.visible_message("[user] crushes \the [src] package.", "You crush \the [src] package and feel a comfortable heat build up.") + addtimer(CALLBACK(src, PROC_REF(heat), weakref(user)), 20 SECONDS) + +/obj/item/food/donkpocket/sinpocket/heat(weakref/message_to) + ..() + if(message_to) + var/mob/user = message_to.resolve() + if(user) + to_chat(user, "You think \the [src] is ready to eat about now.") diff --git a/code/modules/reagents/reagent_containers/food/dough.dm b/code/modules/reagents/reagent_containers/food/dough.dm deleted file mode 100644 index feac2e9bbec..00000000000 --- a/code/modules/reagents/reagent_containers/food/dough.dm +++ /dev/null @@ -1,91 +0,0 @@ -/obj/item/food/dough - name = "dough" - desc = "A piece of dough." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "dough" - bitesize = 2 - center_of_mass = @'{"x":16,"y":13}' - nutriment_desc = list("dough" = 3) - nutriment_amt = 3 - nutriment_type = /decl/material/liquid/nutriment/bread - backyard_grilling_product = /obj/item/food/bun - backyard_grilling_announcement = "is baked into a simple bun." - -// Dough + rolling pin = flat dough -/obj/item/food/dough/attackby(obj/item/W, mob/user) - if(istype(W,/obj/item/kitchen/rollingpin)) - var/obj/item/food/sliceable/flatdough/result = new() - result.dropInto(loc) - to_chat(user, "You flatten the dough.") - qdel(src) - -/obj/item/food/unleaveneddough - name = "flat unleavened dough" - desc = "A flattened lump of dough, made without yeast." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "flat dough" - center_of_mass = @'{"x":16,"y":16}' - backyard_grilling_product = /obj/item/food/flatbread - backyard_grilling_announcement = "is baked into a simple flatbread." - nutriment_amt = 4 - nutriment_desc = "raw dough" - -/obj/item/food/piecrust - name = "pie crust" - desc = "A dense, buttery pie crust, ready for filling." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "flat dough" - center_of_mass = @'{"x":16,"y":16}' - nutriment_amt = 4 - nutriment_desc = "raw pie crust" - -// slicable into 3x doughslices -/obj/item/food/sliceable/flatdough - name = "flat leavened dough" - desc = "A flattened lump of dough, made with yeast." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "flat dough" - slice_path = /obj/item/food/doughslice - slice_num = 3 - center_of_mass = @'{"x":16,"y":16}' - utensil_flags = UTENSIL_FLAG_COLLECT | UTENSIL_FLAG_SLICE - nutriment_amt = 4 - nutriment_desc = "raw dough" - // TODO: pizza base with no toppings? Some other round leavened bread product? - backyard_grilling_product = /obj/item/food/flatbread - backyard_grilling_announcement = "is baked into a simple flatbread." - -/obj/item/food/doughslice - name = "dough slice" - desc = "A building block of an impressive dish." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "doughslice" - slice_path = /obj/item/food/spagetti - slice_num = 1 - bitesize = 2 - center_of_mass = @'{"x":17,"y":19}' - nutriment_desc = list("dough" = 1) - nutriment_amt = 1 - nutriment_type = /decl/material/liquid/nutriment/bread - utensil_flags = UTENSIL_FLAG_COLLECT | UTENSIL_FLAG_SLICE - -/obj/item/food/bun - name = "bun" - desc = "A base for any self-respecting burger." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "bun" - bitesize = 2 - center_of_mass = @'{"x":16,"y":12}' - nutriment_desc = list("bun" = 4) - nutriment_amt = 4 - nutriment_type = /decl/material/liquid/nutriment/bread - -/obj/item/food/bunbun - name = "\improper Bun Bun" - desc = "A small bread monkey fashioned from two burger buns." - icon_state = "bunbun" - bitesize = 2 - center_of_mass = @'{"x":16,"y":8}' - nutriment_desc = list("bun" = 8) - nutriment_amt = 8 - nutriment_type = /decl/material/liquid/nutriment/bread \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/food/eggs.dm b/code/modules/reagents/reagent_containers/food/eggs.dm index 2e759794df6..89f0e101d5c 100644 --- a/code/modules/reagents/reagent_containers/food/eggs.dm +++ b/code/modules/reagents/reagent_containers/food/eggs.dm @@ -83,14 +83,14 @@ /obj/item/food/friedegg name = "fried egg" desc = "A fried egg, with a touch of salt and pepper." - icon_state = "friedegg" + icon = 'icons/obj/food/fried/friedegg.dmi' filling_color = "#ffdf78" center_of_mass = @'{"x":16,"y":14}' bitesize = 1 /obj/item/food/friedegg/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 3) + add_to_reagents(/decl/material/solid/organic/meat/egg, 3) add_to_reagents(/decl/material/solid/sodiumchloride, 1) add_to_reagents(/decl/material/solid/blackpepper, 1) @@ -103,12 +103,12 @@ /obj/item/food/boiledegg/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 2) + add_to_reagents(/decl/material/solid/organic/meat/egg, 2) /obj/item/food/omelette name = "cheese omelette" desc = "Omelette with cheese!" - icon_state = "omelette" + icon = 'icons/obj/food/fried/omelette.dmi' plate = /obj/item/plate filling_color = "#fff9a8" center_of_mass = @'{"x":16,"y":13}' @@ -116,12 +116,12 @@ /obj/item/food/omelette/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 8) + add_to_reagents(/decl/material/solid/organic/meat/egg, 8) /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_state = "chawanmushi" + icon = 'icons/obj/food/pudding/chawanmushi.dmi' trash = /obj/item/trash/snack_bowl filling_color = "#f0f2e4" center_of_mass = @'{"x":17,"y":10}' @@ -129,4 +129,4 @@ /obj/item/food/chawanmushi/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 5) \ No newline at end of file + add_to_reagents(/decl/material/solid/organic/meat/egg, 5) \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/food/fried.dm b/code/modules/reagents/reagent_containers/food/fried.dm index 06a7bbf3b5d..3417d11f742 100644 --- a/code/modules/reagents/reagent_containers/food/fried.dm +++ b/code/modules/reagents/reagent_containers/food/fried.dm @@ -7,7 +7,7 @@ /obj/item/food/onionrings name = "onion rings" desc = "Like circular fries but better." - icon_state = "onionrings" + icon = 'icons/obj/food/fried/onionrings.dmi' plate = /obj/item/plate filling_color = "#eddd00" center_of_mass = @'{"x":16,"y":11}' @@ -18,7 +18,7 @@ /obj/item/food/fries name = "chips" desc = "Frenched potato, fried." - icon_state = "fries" + icon = 'icons/obj/food/fried/fries.dmi' plate = /obj/item/plate filling_color = "#eddd00" center_of_mass = @'{"x":16,"y":11}' @@ -29,7 +29,7 @@ /obj/item/food/cheesyfries name = "cheesy fries" desc = "Fries. Covered in cheese. Duh." - icon_state = "cheesyfries" + icon = 'icons/obj/food/fried/cheesyfries.dmi' plate = /obj/item/plate filling_color = "#eddd00" center_of_mass = @'{"x":16,"y":11}' @@ -39,4 +39,4 @@ /obj/item/food/cheesyfries/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 2) + add_to_reagents(/decl/material/liquid/nutriment/cheese, 2) diff --git a/code/modules/reagents/reagent_containers/food/hotdog.dm b/code/modules/reagents/reagent_containers/food/hotdog.dm new file mode 100644 index 00000000000..c74723d5719 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/hotdog.dm @@ -0,0 +1,24 @@ +/obj/item/food/hotdog + name = "hotdog" + desc = "Unrelated to dogs, maybe." + icon = 'icons/obj/food/hotdog.dmi' + bitesize = 2 + center_of_mass = @'{"x":16,"y":17}' + nutriment_type = /decl/material/liquid/nutriment/bread + material = /decl/material/solid/organic/meat + +/obj/item/food/hotdog/populate_reagents() + . = ..() + add_to_reagents(/decl/material/solid/organic/meat, 6) + +/obj/item/food/classichotdog + name = "classic hotdog" + desc = "Going literal." + icon = 'icons/obj/food/hotcorgi.dmi' + bitesize = 6 + center_of_mass = @'{"x":16,"y":17}' + material = /decl/material/solid/organic/meat + +/obj/item/food/classichotdog/populate_reagents() + . = ..() + add_to_reagents(/decl/material/solid/organic/meat, 16) diff --git a/code/modules/reagents/reagent_containers/food/junkfood.dm b/code/modules/reagents/reagent_containers/food/junkfood.dm index 0a7987be4aa..7792578bcda 100644 --- a/code/modules/reagents/reagent_containers/food/junkfood.dm +++ b/code/modules/reagents/reagent_containers/food/junkfood.dm @@ -1,4 +1,8 @@ -/obj/item/food/sosjerky +/obj/item/food/junk + icon = 'icons/obj/food/junk/junkfood.dmi' + abstract_type = /obj/item/food/junk + +/obj/item/food/junk/sosjerky name = "emergency meat jerky" icon_state = "sosjerky" desc = "For when you desperately want meat and you don't care what kind. Has the same texture as old leather boots." @@ -8,11 +12,11 @@ bitesize = 2 material = /decl/material/solid/organic/meat -/obj/item/food/sosjerky/populate_reagents() +/obj/item/food/junk/sosjerky/populate_reagents() . = ..() add_to_reagents(/decl/material/solid/organic/meat, 4) -/obj/item/food/no_raisin +/obj/item/food/junk/no_raisin name = "raisins" icon_state = "4no_raisins" desc = "Pouring water on these will not turn them back into grapes, unfortunately." @@ -22,7 +26,7 @@ nutriment_desc = list("raisins" = 6) nutriment_amt = 6 -/obj/item/food/spacetwinkie +/obj/item/food/junk/spacetwinkie name = "eclair" icon_state = "space_twinkie" desc = "So full of preservatives, it's guaranteed to survive longer then you will." @@ -30,11 +34,11 @@ center_of_mass = @'{"x":15,"y":11}' bitesize = 2 -/obj/item/food/spacetwinkie/populate_reagents() +/obj/item/food/junk/spacetwinkie/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/nutriment/sugar, 4) -/obj/item/food/cheesiehonkers +/obj/item/food/junk/cheesiehonkers name = "cheese puffs" icon_state = "cheesie_honkers" desc = "Bite sized cheese flavoured snacks that will leave your fingers coated in cheese dust." @@ -45,7 +49,7 @@ nutriment_amt = 4 bitesize = 2 -/obj/item/food/syndicake +/obj/item/food/junk/syndicake name = "subversive cakes" icon_state = "syndi_cakes" desc = "Made using extremely unethical labour, ingredients and marketing methods." @@ -56,13 +60,13 @@ trash = /obj/item/trash/syndi_cakes bitesize = 3 -/obj/item/food/syndicake/populate_reagents() +/obj/item/food/junk/syndicake/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/regenerator, 5) //terran delights -/obj/item/food/pistachios +/obj/item/food/junk/pistachios name = "pistachios" icon_state = "pistachios" desc = "Pistachios. There is absolutely nothing remarkable about these." @@ -73,7 +77,7 @@ nutriment_amt = 3 bitesize = 0.5 -/obj/item/food/semki +/obj/item/food/junk/semki name = "sunflower seeds" icon_state = "semki" desc = "A favorite among birds." @@ -84,7 +88,7 @@ nutriment_amt = 6 bitesize = 0.5 -/obj/item/food/squid +/obj/item/food/junk/squid name = "\improper Calamari Crisps" icon_state = "squid" desc = "Space cepholapod tentacles, carefully removed from the squid then dried into strips of delicious rubbery goodness!" @@ -95,11 +99,11 @@ nutriment_amt = 2 bitesize = 1 -/obj/item/food/squid/populate_reagents() +/obj/item/food/junk/squid/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 4) + add_to_reagents(/decl/material/solid/organic/meat/fish, 4) -/obj/item/food/croutons +/obj/item/food/junk/croutons name = "croutons" icon_state = "croutons" desc = "Fried bread cubes. Good in salad but I guess you can just eat them as is." @@ -111,7 +115,7 @@ bitesize = 1 nutriment_type = /decl/material/liquid/nutriment/bread -/obj/item/food/salo +/obj/item/food/junk/salo name = "salo" icon_state = "salo" desc = "Pig fat. Salted. Just as good as it sounds." @@ -122,11 +126,11 @@ nutriment_amt = 2 bitesize = 2 -/obj/item/food/salo/populate_reagents() +/obj/item/food/junk/salo/populate_reagents() . = ..() add_to_reagents(/decl/material/solid/organic/meat, 8) -/obj/item/food/driedfish +/obj/item/food/junk/driedfish name = "vobla" icon_state = "driedfish" desc = "Dried salted beer snack fish." @@ -137,11 +141,11 @@ nutriment_amt = 2 bitesize = 1 -/obj/item/food/driedfish/populate_reagents() +/obj/item/food/junk/driedfish/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 4) + add_to_reagents(/decl/material/solid/organic/meat/fish, 4) -/obj/item/food/liquidfood +/obj/item/food/junk/liquidfood name = "\improper LiquidFood MRE" desc = "A prepackaged grey slurry for all of the essential nutrients a soldier requires to survive. No expiration date is visible..." icon_state = "liquidfood" @@ -152,11 +156,11 @@ nutriment_amt = 20 bitesize = 4 -/obj/item/food/liquidfood/populate_reagents() +/obj/item/food/junk/liquidfood/populate_reagents() . = ..() add_to_reagents(/decl/material/solid/metal/iron, 3) -/obj/item/food/meatcube +/obj/item/food/junk/meatcube name = "cubed meat" desc = "Fried, salted lean meat compressed into a cube. Not very appetizing." icon_state = "meatcube" @@ -165,11 +169,11 @@ bitesize = 3 material = /decl/material/solid/organic/meat -/obj/item/food/meatcube/populate_reagents() +/obj/item/food/junk/meatcube/populate_reagents() . = ..() add_to_reagents(/decl/material/solid/organic/meat, 15) -/obj/item/food/tastybread +/obj/item/food/junk/tastybread name = "bread tube" desc = "Bread in a tube. Chewy... and surprisingly tasty." icon_state = "tastybread" @@ -181,7 +185,7 @@ nutriment_type = /decl/material/liquid/nutriment/bread bitesize = 2 -/obj/item/food/candy +/obj/item/food/junk/candy name = "candy" desc = "Nougat, love it or hate it." icon_state = "candy" @@ -192,36 +196,36 @@ nutriment_desc = list("candy" = 1) bitesize = 2 -/obj/item/food/candy/populate_reagents() +/obj/item/food/junk/candy/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/nutriment/sugar, 3) -/obj/item/food/candy/proteinbar +/obj/item/food/junk/candy/proteinbar name = "protein bar" desc = "MuscleLopin brand protein bars, guaranteed to get you soSO strong!" icon_state = "proteinbar" trash = /obj/item/trash/candy/proteinbar bitesize = 6 -/obj/item/food/candy/proteinbar/populate_reagents() +/obj/item/food/junk/candy/proteinbar/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/nutriment, 9) add_to_reagents(/decl/material/solid/organic/meat, 4) add_to_reagents(/decl/material/liquid/nutriment/sugar, 4) -/obj/item/food/candy/donor +/obj/item/food/junk/candy/donor name = "donor candy" desc = "A little treat for blood donors." trash = /obj/item/trash/candy nutriment_desc = list("candy" = 10) bitesize = 5 -/obj/item/food/candy/donor/populate_reagents() +/obj/item/food/junk/candy/donor/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/nutriment, 10) add_to_reagents(/decl/material/liquid/nutriment/sugar, 3) -/obj/item/food/candy_corn +/obj/item/food/junk/candy_corn name = "candy corn" desc = "It's a handful of candy corn. Not actually candied corn." icon_state = "candy_corn" @@ -231,12 +235,12 @@ nutriment_desc = list("candy corn" = 4) bitesize = 2 -/obj/item/food/candy_corn/populate_reagents() +/obj/item/food/junk/candy_corn/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/nutriment, 4) add_to_reagents(/decl/material/liquid/nutriment/sugar, 2) -/obj/item/food/chips +/obj/item/food/junk/chips name = "chips" desc = "It is impossible to open the packet without rustling it loudly." icon_state = "chips" @@ -248,111 +252,8 @@ bitesize = 1 nutriment_type = /decl/material/liquid/nutriment/bread -/obj/item/food/cookie - name = "cookie" - desc = "COOKIE!!!" - icon_state = "cookie" - filling_color = "#dbc94f" - center_of_mass = @'{"x":17,"y":18}' - nutriment_amt = 5 - nutriment_desc = list("sweetness" = 3, "cookie" = 2) - w_class = ITEM_SIZE_TINY - bitesize = 1 - nutriment_type = /decl/material/liquid/nutriment/bread - -/obj/item/food/chocolatebar - name = "chocolate bar" - desc = "Such sweet, fattening food." - icon_state = "chocolatebar" - filling_color = "#7d5f46" - center_of_mass = @'{"x":15,"y":15}' - nutriment_amt = 2 - nutriment_desc = list("chocolate" = 5) - bitesize = 2 - -/obj/item/food/chocolatebar/populate_reagents() - . = ..() - add_to_reagents(/decl/material/liquid/nutriment/coco, 2) - add_to_reagents(/decl/material/liquid/nutriment/sugar, 2) - -/obj/item/food/chocolateegg - name = "chocolate egg" - desc = "Such sweet, fattening food." - icon_state = "chocolateegg" - filling_color = "#7d5f46" - center_of_mass = @'{"x":16,"y":13}' - nutriment_amt = 3 - nutriment_desc = list("chocolate" = 5) - bitesize = 2 - -/obj/item/food/chocolateegg/populate_reagents() - . = ..() - add_to_reagents(/decl/material/liquid/nutriment/coco, 2) - add_to_reagents(/decl/material/liquid/nutriment/sugar, 2) - -/obj/item/food/donut - name = "donut" - desc = "Goes great with Robust Coffee." - icon = 'icons/obj/food/donuts/donut.dmi' - icon_state = ICON_STATE_WORLD - filling_color = "#d9c386" - center_of_mass = @'{"x":19,"y":16}' - nutriment_desc = list("sweetness", "donut") - nutriment_amt = 3 - bitesize = 3 - nutriment_type = /decl/material/liquid/nutriment/bread - var/iced_icon = 'icons/obj/food/donuts/donut_iced.dmi' - -/obj/item/food/donut/populate_reagents() - . = ..() - if(iced_icon && prob(30) && icon != iced_icon) - icon = iced_icon - SetName("frosted [name]") - add_to_reagents(/decl/material/liquid/nutriment/sprinkles, 2) - -/obj/item/food/donut/chaos - name = "chaos donut" - desc = "Like life, it never quite tastes the same." - filling_color = "#ed11e6" - nutriment_amt = 2 - bitesize = 10 - -/obj/item/food/donut/chaos/proc/get_random_fillings() - . = list( - /decl/material/liquid/nutriment, - /decl/material/liquid/capsaicin, - /decl/material/liquid/frostoil, - /decl/material/liquid/nutriment/sprinkles, - /decl/material/gas/chlorine, - /decl/material/liquid/nutriment/coco, - /decl/material/liquid/nutriment/banana_cream, - /decl/material/liquid/nutriment/cherryjelly, - /decl/material/liquid/fuel, - /decl/material/liquid/regenerator - ) - -/obj/item/food/donut/chaos/populate_reagents() - . = ..() - add_to_reagents(pick(get_random_fillings()), 3) - -/obj/item/food/donut/jelly - name = "jelly donut" - desc = "You jelly?" - icon = 'icons/obj/food/donuts/donut_jelly.dmi' - iced_icon = 'icons/obj/food/donuts/donut_jelly_iced.dmi' - filling_color = "#ed1169" - center_of_mass = @'{"x":16,"y":11}' - nutriment_amt = 3 - bitesize = 5 - nutriment_type = /decl/material/liquid/nutriment/bread - var/jelly_type = /decl/material/liquid/nutriment/cherryjelly - -/obj/item/food/donut/jelly/populate_reagents() - . = ..() - add_to_reagents(jelly_type, 5) - //Sol Vendor -/obj/item/food/lunacake +/obj/item/food/junk/lunacake name = "moon cake" icon_state = "lunacake_wrapped" desc = "Now with 20% less lawsuit enabling regolith!" @@ -364,14 +265,14 @@ bitesize = 2 nutriment_type = /decl/material/liquid/nutriment/bread/cake -/obj/item/food/lunacake/mochicake +/obj/item/food/junk/lunacake/mochicake name = "mochi" icon_state = "mochicake_wrapped" desc = "A type of rice cake with an extremely soft, glutinous texture." trash = /obj/item/trash/mochicakewrap nutriment_desc = list("sweet" = 4, "rice" = 1) -/obj/item/food/lunacake/mooncake +/obj/item/food/junk/lunacake/mooncake name = "dark side moon cake" icon_state = "mooncake_wrapped" desc = "Explore the dark side! May contain trace amounts of reconstituted cocoa." @@ -380,7 +281,7 @@ nutriment_desc = list("sweet" = 4, "chocolate" = 1) nutriment_type = /decl/material/liquid/nutriment/bread/cake -/obj/item/food/triton +/obj/item/food/junk/triton name = "\improper Tidal Gobs" icon_state = "tidegobs" desc = "Contains over 9000% of your daily recommended intake of salt." @@ -391,7 +292,7 @@ nutriment_amt = 5 bitesize = 2 -/obj/item/food/saturn +/obj/item/food/junk/saturn name = "snack rings" icon_state = "saturno" desc = "A day ration of salt, styrofoam and possibly sawdust." @@ -402,7 +303,7 @@ nutriment_amt = 5 bitesize = 2 -/obj/item/food/jupiter +/obj/item/food/junk/jupiter name = "probably gelatin" icon_state = "jupiter" desc = "Some kind of gel, maybe?" @@ -413,7 +314,7 @@ nutriment_amt = 5 bitesize = 2 -/obj/item/food/pluto +/obj/item/food/junk/pluto name = "nutrient rods" icon_state = "pluto" desc = "Baseless tasteless nutrient rods to get you through the day. Now even less rash inducing!" @@ -424,7 +325,7 @@ nutriment_amt = 5 bitesize = 2 -/obj/item/food/mars +/obj/item/food/junk/mars name = "instant potato and eggs" icon_state = "mars" desc = "A steaming self-heated bowl of sweet eggs and taters!" @@ -435,7 +336,7 @@ nutriment_amt = 8 bitesize = 2 -/obj/item/food/venus +/obj/item/food/junk/venus name = "hot cakes" icon_state = "venus" desc = "Hot takes on hot cakes, a timeless classic now finally fit for human consumption!" @@ -447,11 +348,11 @@ bitesize = 2 nutriment_type = /decl/material/liquid/nutriment/bread/cake -/obj/item/food/venus/populate_reagents() +/obj/item/food/junk/venus/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/capsaicin, 5) -/obj/item/food/oort +/obj/item/food/junk/oort name = "\improper Cloud Rocks" icon_state = "oort" desc = "Pop rocks. The new formula guarantees fewer shrapnel induced oral injuries." @@ -462,13 +363,13 @@ nutriment_amt = 5 bitesize = 2 -/obj/item/food/oort/populate_reagents() +/obj/item/food/junk/oort/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/frostoil, 5) //weebo vend! So japanese it hurts -/obj/item/food/ricecake +/obj/item/food/junk/ricecake name = "rice ball" icon_state = "ricecake" desc = "A snack food made from balled up rice." @@ -476,7 +377,7 @@ nutriment_amt = 5 bitesize = 2 -/obj/item/food/pokey +/obj/item/food/junk/pokey name = "chocolate coated biscuit sticks" icon_state = "pokeys" desc = "A bundle of chocolate coated biscuit sticks. Not as exciting as they seem." @@ -484,7 +385,7 @@ nutriment_amt = 5 bitesize = 2 -/obj/item/food/weebonuts +/obj/item/food/junk/weebonuts name = "spicy nuts" icon_state = "weebonuts" trash = /obj/item/trash/weebonuts @@ -493,11 +394,11 @@ nutriment_amt = 5 bitesize = 2 -/obj/item/food/weebonuts/populate_reagents() +/obj/item/food/junk/weebonuts/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/capsaicin, 1) -/obj/item/food/chocobanana +/obj/item/food/junk/chocobanana name = "choco banana" icon_state = "chocobanana" trash = /obj/item/trash/stick @@ -506,11 +407,11 @@ nutriment_amt = 5 bitesize = 2 -/obj/item/food/chocobanana/populate_reagents() +/obj/item/food/junk/chocobanana/populate_reagents() . = ..() add_to_reagents(/decl/material/liquid/nutriment/sprinkles, 10) -/obj/item/food/dango +/obj/item/food/junk/dango name = "dango" icon_state = "dango" trash = /obj/item/trash/stick @@ -518,81 +419,3 @@ nutriment_desc = list("rice" = 4, "topping?" = 1) nutriment_amt = 5 bitesize = 2 - -/obj/item/food/donkpocket/sinpocket - name = "\improper Sin-pocket" - desc = "The food of choice for the veteran. Do NOT overconsume." - filling_color = "#6d6d00" - heated_reagents = list( - /decl/material/liquid/regenerator = 5, - /decl/material/liquid/amphetamines = 0.75, - /decl/material/liquid/stimulants = 0.25 - ) - var/has_been_heated = 0 // Unlike the warm var, this checks if the one-time self-heating operation has been used. - -/obj/item/food/donkpocket/sinpocket/attack_self(mob/user) - if(has_been_heated) - to_chat(user, "The heating chemicals have already been spent.") - return - has_been_heated = 1 - user.visible_message("[user] crushes \the [src] package.", "You crush \the [src] package and feel a comfortable heat build up.") - addtimer(CALLBACK(src, PROC_REF(heat), weakref(user)), 20 SECONDS) - -/obj/item/food/donkpocket/sinpocket/heat(weakref/message_to) - ..() - if(message_to) - var/mob/user = message_to.resolve() - if(user) - to_chat(user, "You think \the [src] is ready to eat about now.") - -/obj/item/food/donkpocket - name = "cold donk-pocket" - desc = "The food of choice for the seasoned traitor." - icon_state = "donkpocket" - filling_color = "#dedeab" - center_of_mass = @'{"x":16,"y":10}' - nutriment_desc = list("heartiness" = 1, "dough" = 2) - nutriment_amt = 2 - var/warm = 0 - var/list/heated_reagents = list(/decl/material/liquid/regenerator = 5) - -/obj/item/food/donkpocket/populate_reagents() - . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 2) - -/obj/item/food/donkpocket/grill(var/atom/heat_source) - - backyard_grilling_rawness-- - if(backyard_grilling_rawness <= 0) - backyard_grilling_rawness = initial(backyard_grilling_rawness) - - // We're already warm, so we burn. - if(warm) - var/obj/item/food/badrecipe/whoops = new - whoops.dropInto(loc) - visible_message(SPAN_DANGER("\The [src] chars and blackens!")) - qdel(src) - return whoops - - // Otherwise we just warm up. - heat() - visible_message(SPAN_NOTICE("\The [src] steams gently!")) - return src - -/obj/item/food/donkpocket/proc/heat() - if(warm) - return - warm = 1 - for(var/reagent in heated_reagents) - add_to_reagents(reagent, heated_reagents[reagent]) - bitesize = 6 - SetName("warm donk-pocket") - addtimer(CALLBACK(src, PROC_REF(cool)), 7 MINUTES) - -/obj/item/food/donkpocket/proc/cool() - if(!warm) - return - warm = 0 - for(var/reagent in heated_reagents) - reagents.clear_reagent(reagent) - SetName(initial(name)) \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/food/lunch.dm b/code/modules/reagents/reagent_containers/food/lunch.dm index 1c4e8354d64..b027e451e05 100644 --- a/code/modules/reagents/reagent_containers/food/lunch.dm +++ b/code/modules/reagents/reagent_containers/food/lunch.dm @@ -7,8 +7,8 @@ var/global/list/lunchables_lunches_ = list( /obj/item/food/slice/pizza/meat/filled, /obj/item/food/slice/pizza/mushroom/filled, /obj/item/food/slice/pizza/vegetable/filled, - /obj/item/food/tastybread, - /obj/item/food/liquidfood, + /obj/item/food/junk/tastybread, + /obj/item/food/junk/liquidfood, /obj/item/food/jellysandwich/cherry, /obj/item/food/tossedsalad ) @@ -17,10 +17,10 @@ var/global/list/lunchables_snacks_ = list( /obj/item/food/donut/jelly, /obj/item/food/muffin, /obj/item/food/popcorn, - /obj/item/food/sosjerky, - /obj/item/food/no_raisin, - /obj/item/food/spacetwinkie, - /obj/item/food/cheesiehonkers, + /obj/item/food/junk/sosjerky, + /obj/item/food/junk/no_raisin, + /obj/item/food/junk/spacetwinkie, + /obj/item/food/junk/cheesiehonkers, /obj/item/food/poppypretzel, /obj/item/food/processed_grown/sticks/carrot, /obj/item/food/candiedapple, @@ -36,7 +36,6 @@ var/global/list/lunchables_snacks_ = list( /obj/item/food/slice/lemoncake/filled, /obj/item/food/slice/chocolatecake/filled, /obj/item/food/slice/birthdaycake/filled, - /obj/item/food/watermelonslice, /obj/item/food/slice/applecake/filled, /obj/item/food/slice/pumpkinpie/filled ) diff --git a/code/modules/reagents/reagent_containers/food/meat/fish.dm b/code/modules/reagents/reagent_containers/food/meat/fish.dm index a5e1b36cdcb..80b15eae9fb 100644 --- a/code/modules/reagents/reagent_containers/food/meat/fish.dm +++ b/code/modules/reagents/reagent_containers/food/meat/fish.dm @@ -1,19 +1,19 @@ /obj/item/food/fishfingers name = "fish fingers" desc = "A finger of fish." - icon_state = "fishfingers" + icon = 'icons/obj/food/fried/fishfingers.dmi' filling_color = "#ffdefe" center_of_mass = @'{"x":16,"y":13}' bitesize = 3 /obj/item/food/fishfingers/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 4) + add_to_reagents(/decl/material/solid/organic/meat/fish, 4) /obj/item/food/cubancarp name = "\improper Cuban Carp" desc = "A sandwich that burns your tongue and then leaves it numb!" - icon_state = "cubancarp" + icon = 'icons/obj/food/fried/cubancarp.dmi' plate = /obj/item/plate filling_color = "#e9adff" center_of_mass = @'{"x":12,"y":5}' @@ -23,13 +23,13 @@ /obj/item/food/cubancarp/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 3) - add_to_reagents(/decl/material/liquid/capsaicin, 3) + add_to_reagents(/decl/material/solid/organic/meat/fish, 3) + add_to_reagents(/decl/material/liquid/capsaicin, 3) /obj/item/food/fishandchips name = "fish and chips" desc = "Best enjoyed wrapped in a newspaper on a cold wet day." - icon_state = "fishandchips" + icon = 'icons/obj/food/fried/fishfingers.dmi' filling_color = "#e3d796" center_of_mass = @'{"x":16,"y":16}' nutriment_desc = list("salt" = 1, "chips" = 2, "fish" = 2) @@ -38,4 +38,4 @@ /obj/item/food/fishandchips/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 3) \ No newline at end of file + add_to_reagents(/decl/material/solid/organic/meat/fish, 3) \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/food/jerky.dm b/code/modules/reagents/reagent_containers/food/meat/jerky.dm similarity index 96% rename from code/modules/reagents/reagent_containers/food/jerky.dm rename to code/modules/reagents/reagent_containers/food/meat/jerky.dm index 6a7c87e8d3c..84a33dd09e9 100644 --- a/code/modules/reagents/reagent_containers/food/jerky.dm +++ b/code/modules/reagents/reagent_containers/food/meat/jerky.dm @@ -1,6 +1,6 @@ /obj/item/food/jerky name = "dried meat" - icon = 'icons/obj/food_jerky.dmi' + icon = 'icons/obj/food/butchery/jerky.dmi' icon_state = "jerky" bitesize = 2 w_class = ITEM_SIZE_TINY diff --git a/code/modules/reagents/reagent_containers/food/meat/meat.dm b/code/modules/reagents/reagent_containers/food/meat/meat.dm index 520715de250..3b42036d351 100644 --- a/code/modules/reagents/reagent_containers/food/meat/meat.dm +++ b/code/modules/reagents/reagent_containers/food/meat/meat.dm @@ -5,7 +5,7 @@ /obj/item/food/meatball name = "meatball" desc = "A great meal all round." - icon_state = "meatball" + icon = 'icons/obj/food/butchery/meatball.dmi' filling_color = "#db0000" center_of_mass = @'{"x":16,"y":16}' bitesize = 2 @@ -17,8 +17,7 @@ /obj/item/food/meatball/raw desc = "A raw meatball." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "rawmeatball" + icon = 'icons/obj/food/butchery/rawmeatball.dmi' cooked_food = FOOD_RAW backyard_grilling_product = /obj/item/food/meatball backyard_grilling_announcement = "sizzles as it is grilled through." @@ -26,8 +25,7 @@ /obj/item/food/plainsteak name = "plain steak" desc = "A piece of unseasoned cooked meat." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "steak" + icon = 'icons/obj/food/butchery/steak.dmi' slice_path = /obj/item/food/butchery/cutlet slice_num = 3 filling_color = "#7a3d11" @@ -49,7 +47,7 @@ /obj/item/food/meatsteak name = "meat steak" desc = "A slab of meat, cooked medium-rare." - icon_state = "meatstake" + icon = 'icons/obj/food/butchery/steak.dmi' plate = /obj/item/plate filling_color = "#7a3d11" center_of_mass = @'{"x":16,"y":13}' @@ -72,7 +70,7 @@ /obj/item/food/loadedsteak name = "loaded steak" desc = "A steak slathered in sauce with sauteed onions and mushrooms." - icon_state = "meatstake" + icon = 'icons/obj/food/butchery/steak.dmi' // Missing icon state? plate = /obj/item/plate filling_color = "#7a3d11" center_of_mass = @'{"x":16,"y":13}' @@ -89,32 +87,18 @@ /obj/item/food/tomatomeat name = "tomato slice" desc = "A slice from a huge tomato." - icon_state = "tomatomeat" + icon = 'icons/obj/food/butchery/tomato.dmi' filling_color = "#db0000" center_of_mass = @'{"x":17,"y":16}' nutriment_amt = 3 nutriment_desc = list("raw" = 2, "tomato" = 3) bitesize = 6 -/obj/item/food/bearmeat - name = "bear meat" - desc = "A very manly slab of meat." - icon_state = "bearmeat" - filling_color = "#db0000" - center_of_mass = @'{"x":16,"y":10}' - bitesize = 3 - material = /decl/material/solid/organic/meat - -/obj/item/food/bearmeat/populate_reagents() - . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 12) - add_to_reagents(/decl/material/liquid/amphetamines, 5) - // Shouldn't this be poisonous? /obj/item/food/spider name = "giant spider leg" desc = "An economical replacement for crab. In space! Would probably be a lot nicer cooked." - icon_state = "spiderleg" + icon = 'icons/obj/food/butchery/spider_leg.dmi' filling_color = "#d5f5dc" center_of_mass = @'{"x":16,"y":10}' bitesize = 3 @@ -126,7 +110,7 @@ /obj/item/food/spider/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 9) + add_to_reagents(/decl/material/solid/organic/meat/xeno, 9) /obj/item/food/spider/charred name = "charred spider meat" @@ -139,28 +123,13 @@ /obj/item/food/spider/cooked name = "boiled spider meat" desc = "An economical replacement for crab. In space!" - icon_state = "spiderleg_c" + icon = 'icons/obj/food/butchery/spider_leg_cooked.dmi' bitesize = 5 -/obj/item/food/xenomeat - name = "meat" - desc = "A slab of green meat. Smells like acid." - icon_state = "xenomeat" - filling_color = "#43de18" - center_of_mass = @'{"x":16,"y":10}' - bitesize = 6 - material = /decl/material/solid/organic/meat - -/obj/item/food/xenomeat/populate_reagents() - . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 6) - add_to_reagents(/decl/material/liquid/acid/polyacid, 6) - /obj/item/food/sausage name = "sausage" desc = "A piece of mixed, long meat." - icon = 'icons/obj/food_ingredients.dmi' - icon_state = "sausage" + icon = 'icons/obj/food/butchery/sausage.dmi' filling_color = "#db0000" center_of_mass = @'{"x":16,"y":16}' bitesize = 2 @@ -173,7 +142,7 @@ /obj/item/food/fatsausage name = "spiced sausage" desc = "A piece of mixed, long meat, with some bite to it." - icon_state = "sausage" + icon = 'icons/obj/food/butchery/sausage.dmi' filling_color = "#db0000" center_of_mass = @'{"x":16,"y":16}' bitesize = 2 @@ -196,16 +165,3 @@ . = ..() add_to_reagents(/decl/material/solid/organic/meat, rand(3,5)) add_to_reagents(/decl/material/gas/ammonia, rand(1,3)) // you probably should not be eating raw organ meat - -/obj/item/food/meatkabob - name = "meat-kabob" - icon_state = "kabob" - desc = "Delicious meat, on a stick." - trash = /obj/item/stack/material/rods - filling_color = "#a85340" - center_of_mass = @'{"x":17,"y":15}' - bitesize = 2 - -/obj/item/food/meatkabob/populate_reagents() - . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 8) diff --git a/code/modules/reagents/reagent_containers/food/misc.dm b/code/modules/reagents/reagent_containers/food/misc.dm index c06d7dd6b14..2832a32c272 100644 --- a/code/modules/reagents/reagent_containers/food/misc.dm +++ b/code/modules/reagents/reagent_containers/food/misc.dm @@ -1,7 +1,7 @@ /obj/item/food/badrecipe name = "burned mess" desc = "Someone should be demoted from chef for this." - icon_state = "badrecipe" + icon = 'icons/obj/food/badrecipe.dmi' filling_color = "#211f02" center_of_mass = @'{"x":16,"y":12}' bitesize = 2 @@ -31,7 +31,7 @@ /obj/item/food/stuffing name = "stuffing" desc = "Moist, peppery breadcrumbs for filling the body cavities of dead birds. Dig in!" - icon_state = "stuffing" + icon = 'icons/obj/food/baked/stuffing.dmi' filling_color = "#c9ac83" center_of_mass = @'{"x":16,"y":10}' nutriment_amt = 3 @@ -41,7 +41,7 @@ /obj/item/food/popcorn name = "popcorn" desc = "Now let's find some cinema." - icon_state = "popcorn" + icon = 'icons/obj/food/baked/popcorn.dmi' trash = /obj/item/trash/popcorn filling_color = "#fffad4" center_of_mass = @'{"x":16,"y":8}' @@ -52,7 +52,7 @@ /obj/item/food/loadedbakedpotato name = "loaded baked potato" desc = "Totally baked." - icon_state = "loadedbakedpotato" + icon = 'icons/obj/food/baked/loaded_potato.dmi' filling_color = "#9c7a68" center_of_mass = @'{"x":16,"y":10}' nutriment_desc = list("baked potato" = 3) @@ -61,12 +61,12 @@ /obj/item/food/loadedbakedpotato/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 3) + add_to_reagents(/decl/material/liquid/nutriment/cheese, 3) /obj/item/food/spacylibertyduff name = "party jelly" desc = "LoOk aT aLl tHe PrEtTy CoLoUrS" - icon_state = "spacylibertyduff" + icon = 'icons/obj/food/pudding/liberty_duff.dmi' trash = /obj/item/trash/snack_bowl filling_color = "#42b873" center_of_mass = @'{"x":16,"y":8}' @@ -81,7 +81,7 @@ /obj/item/food/amanitajelly name = "amanita jelly" desc = "Looks curiously toxic." - icon_state = "amanitajelly" + icon = 'icons/obj/food/pudding/amanita_jelly.dmi' trash = /obj/item/trash/snack_bowl filling_color = "#ed0758" center_of_mass = @'{"x":16,"y":5}' @@ -97,7 +97,7 @@ /obj/item/food/enchiladas name = "enchiladas" desc = "Not to be confused with an echidna, though I don't know how you would." - icon_state = "enchiladas" + icon = 'icons/obj/food/baked/enchiladas.dmi' plate = /obj/item/plate/tray filling_color = "#a36a1f" center_of_mass = @'{"x":16,"y":13}' @@ -113,7 +113,7 @@ /obj/item/food/monkeysdelight name = "monkey's delight" desc = "Eeee Eee!" - icon_state = "monkeysdelight" + icon = 'icons/obj/food/baked/monkeys_delight.dmi' plate = /obj/item/plate/tray filling_color = "#5c3c11" center_of_mass = @'{"x":16,"y":13}' @@ -129,7 +129,7 @@ /obj/item/food/candiedapple name = "candied apple" desc = "An apple coated in sugary sweetness." - icon_state = "candiedapple" + icon = 'icons/obj/food/candied_apple.dmi' filling_color = "#f21873" center_of_mass = @'{"x":15,"y":13}' nutriment_desc = list("apple" = 3, "caramel" = 3, "sweetness" = 2) @@ -139,7 +139,7 @@ /obj/item/food/mint name = "mint" desc = "A tasty after-dinner mint. It is only wafer thin." - icon_state = "mint" + icon = 'icons/obj/food/mint.dmi' filling_color = "#f2f2f2" center_of_mass = @'{"x":16,"y":14}' bitesize = 1 @@ -151,7 +151,7 @@ /obj/item/food/plumphelmetbiscuit name = "plump helmet biscuit" desc = "This is a finely-prepared plump helmet biscuit. The ingredients are exceptionally minced plump helmet, and well-minced wheat flour." - icon_state = "phelmbiscuit" + icon = 'icons/obj/food/baked/scone.dmi' filling_color = "#cfb4c4" center_of_mass = @'{"x":16,"y":13}' nutriment_desc = list("mushroom" = 4) @@ -169,7 +169,7 @@ /obj/item/food/appletart name = "golden apple streusel tart" desc = "A tasty dessert that won't make it through a metal detector." - icon_state = "gappletart" + icon = 'icons/obj/food/baked/apple_tart.dmi' plate = /obj/item/plate filling_color = "#ffff00" center_of_mass = @'{"x":16,"y":18}' @@ -184,7 +184,7 @@ /obj/item/food/cracker name = "cracker" desc = "It's a salted cracker." - icon = 'icons/obj/food/cracker.dmi' + icon = 'icons/obj/food/baked/cracker.dmi' icon_state = ICON_STATE_WORLD filling_color = "#f5deb8" center_of_mass = @'{"x":17,"y":6}' @@ -200,7 +200,7 @@ /obj/item/food/taco name = "taco" desc = "Take a bite!" - icon_state = "taco" + icon = 'icons/obj/food/taco.dmi' bitesize = 3 center_of_mass = @'{"x":21,"y":12}' nutriment_desc = list("cheese" = 2,"taco shell" = 2) @@ -214,7 +214,7 @@ /obj/item/food/pelmen name = "meat pelmen" desc = "Raw meat appetizer." - icon_state = "pelmen" + icon = 'icons/obj/food/pelmen.dmi' filling_color = "#ffffff" center_of_mass = @'{"x":16,"y":16}' bitesize = 2 @@ -226,7 +226,7 @@ /obj/item/food/pelmeni_boiled name = "boiled pelmeni" desc = "A dish consisting of boiled pieces of meat wrapped in dough. Delicious!" - icon_state = "pelmeni_boiled" + icon = 'icons/obj/food/pelmeni_boiled.dmi' filling_color = "#ffffff" center_of_mass = @'{"x":16,"y":16}' bitesize = 2 diff --git a/code/modules/reagents/reagent_containers/food/pasta.dm b/code/modules/reagents/reagent_containers/food/pasta.dm index 56505ba5773..b62330fb2e9 100644 --- a/code/modules/reagents/reagent_containers/food/pasta.dm +++ b/code/modules/reagents/reagent_containers/food/pasta.dm @@ -5,7 +5,7 @@ /obj/item/food/spagetti name = "spaghetti" desc = "A bundle of raw spaghetti." - icon_state = "spagetti" + icon = 'icons/obj/food/pasta/rawspaghetti.dmi' filling_color = "#eddd00" center_of_mass = @'{"x":16,"y":16}' nutriment_desc = list("noodles" = 2) @@ -15,7 +15,7 @@ /obj/item/food/boiledspagetti name = "boiled spaghetti" desc = "A plain dish of pasta, just screaming for sauce." - icon_state = "spagettiboiled" + icon = 'icons/obj/food/pasta/spaghetti.dmi' plate = /obj/item/plate filling_color = "#fcee81" center_of_mass = @'{"x":16,"y":10}' @@ -26,7 +26,7 @@ /obj/item/food/pastatomato name = "spaghetti & tomato" desc = "Spaghetti and crushed tomatoes." - icon_state = "pastatomato" + icon = 'icons/obj/food/pasta/tomato_spaghetti.dmi' plate = /obj/item/plate filling_color = "#de4545" center_of_mass = @'{"x":16,"y":10}' @@ -41,7 +41,7 @@ /obj/item/food/nanopasta name = "nanopasta" desc = "Nanomachines, son!" - icon_state = "nanopasta" + icon = 'icons/obj/food/pasta/nanopasta.dmi' plate = /obj/item/plate filling_color = "#535e66" center_of_mass = @'{"x":16,"y":10}' @@ -55,13 +55,14 @@ /obj/item/food/meatballspagetti name = "spaghetti & meatballs" desc = "Now thats a nice meatball!" - icon_state = "meatballspagetti" + icon = 'icons/obj/food/pasta/meatball_spaghetti.dmi' plate = /obj/item/plate filling_color = "#de4545" center_of_mass = @'{"x":16,"y":10}' nutriment_desc = list("noodles" = 4) nutriment_amt = 4 bitesize = 2 + /obj/item/food/meatballspagetti/populate_reagents() . = ..() add_to_reagents(/decl/material/solid/organic/meat, 4) @@ -69,7 +70,7 @@ /obj/item/food/spesslaw name = "spaghetti & too many meatballs" desc = "Do you want some pasta with those meatballs?" - icon_state = "spesslaw" + icon = 'icons/obj/food/pasta/extra_meatball_spaghetti.dmi' filling_color = "#de4545" center_of_mass = @'{"x":16,"y":10}' nutriment_desc = list("noodles" = 4) diff --git a/code/modules/reagents/reagent_containers/food/rice.dm b/code/modules/reagents/reagent_containers/food/rice.dm index f94f2c3cd62..d579488a905 100644 --- a/code/modules/reagents/reagent_containers/food/rice.dm +++ b/code/modules/reagents/reagent_containers/food/rice.dm @@ -5,7 +5,7 @@ /obj/item/food/boiledrice name = "boiled rice" desc = "White rice, a very important staple food. Goes excellent with many many things." - icon_state = "boiledrice" + icon = 'icons/obj/food/rice/boiled.dmi' trash = /obj/item/trash/snack_bowl filling_color = "#fffbdb" center_of_mass = @'{"x":17,"y":11}' @@ -16,7 +16,7 @@ /obj/item/food/chazuke name = "chazuke" desc = "An ancient way of using up day-old rice, this dish is composed of plain green tea poured over plain white rice. Hopefully you have something else to put in." - icon_state = "chazuke" + icon = 'icons/obj/food/rice/chazuke.dmi' trash = /obj/item/trash/snack_bowl filling_color = "#f1ffdb" nutriment_desc = list("green tea" = 2, "mild rice" = 2) @@ -31,7 +31,7 @@ /obj/item/food/katsucurry name = "katsu curry" desc = "An oriental curry dish made from apples, potatoes, and carrots. Served with rice and breaded chicken." - icon_state = "katsu" + icon = 'icons/obj/food/rice/katsu.dmi' trash = /obj/item/trash/snack_bowl filling_color = "#faa005" center_of_mass = @'{"x":17,"y":11}' @@ -42,7 +42,7 @@ /obj/item/food/ricepudding name = "rice pudding" desc = "Where's the jam?" - icon_state = "rpudding" + icon = 'icons/obj/food/rice/pudding.dmi' trash = /obj/item/trash/snack_bowl filling_color = "#fffbdb" center_of_mass = @'{"x":17,"y":11}' diff --git a/code/modules/reagents/reagent_containers/food/rotten.dm b/code/modules/reagents/reagent_containers/food/rotten.dm index 7a54ef6470c..22e15e4dea1 100644 --- a/code/modules/reagents/reagent_containers/food/rotten.dm +++ b/code/modules/reagents/reagent_containers/food/rotten.dm @@ -23,29 +23,29 @@ /obj/item/food/old/pizza name = "pizza" desc = "It's so stale you could probably cut something with the cheese." - icon_state = "ancient_pizza" + icon = 'icons/obj/food/old/pizza.dmi' /obj/item/food/old/burger name = "\improper Giga Burger!" desc = "At some point in time this probably looked delicious." - icon_state = "ancient_burger" + icon = 'icons/obj/food/old/burger.dmi' /obj/item/food/old/hamburger name = "\improper Horse Burger!" desc = "Even if you were hungry enough to eat a horse, it'd be a bad idea to eat this." - icon_state = "ancient_hburger" + icon = 'icons/obj/food/old/hamburger.dmi' /obj/item/food/old/fries name = "chips" desc = "The salt appears to have preserved these, still stale and gross." - icon_state = "ancient_fries" + icon = 'icons/obj/food/old/fries.dmi' /obj/item/food/old/hotdog name = "hotdog" desc = "This is probably only marginally less safe to eat than when it was first created." - icon_state = "ancient_hotdog" + icon = 'icons/obj/food/old/hotdog.dmi' /obj/item/food/old/taco name = "taco" desc = "Interestingly, the shell has gone soft and the contents have gone stale." - icon_state = "ancient_taco" \ No newline at end of file + icon = 'icons/obj/food/old/taco.dmi' diff --git a/code/modules/reagents/reagent_containers/food/sandwich.dm b/code/modules/reagents/reagent_containers/food/sandwich.dm index ef42abb3df0..2209d52ed0a 100644 --- a/code/modules/reagents/reagent_containers/food/sandwich.dm +++ b/code/modules/reagents/reagent_containers/food/sandwich.dm @@ -10,7 +10,7 @@ /obj/item/food/csandwich name = "sandwich" desc = "The best thing since sliced bread." - icon_state = "breadslice" + icon = 'icons/obj/food/baked/bread/slices/plain.dmi' plate = /obj/item/plate bitesize = 2 @@ -30,7 +30,7 @@ if(!user.try_unequip(W, src)) return to_chat(user, "You hide [W] in \the [src].") - update() + update_icon() return else if(istype(W,/obj/item/food)) if(!user.try_unequip(W, src)) @@ -39,16 +39,16 @@ var/obj/item/chems/F = W F.reagents.trans_to_obj(src, F.reagents.total_volume) ingredients += W - update() + update_icon() return ..() -/obj/item/food/csandwich/proc/update() +/obj/item/food/csandwich/on_update_icon() + . = ..() + var/fullname = "" //We need to build this from the contents of the var. var/i = 0 - - overlays.Cut() - + var/image/I for(var/obj/item/food/O in ingredients) i++ @@ -59,16 +59,17 @@ else fullname += ", [O.name]" - var/image/I = new(src.icon, "sandwich_filling") + I = image(icon, "[icon_state]_filling") I.color = O.filling_color I.pixel_x = pick(list(-1,0,1)) I.pixel_y = (i*2)+1 - overlays += I + I.appearance_flags |= RESET_COLOR + add_overlay(I) - var/image/T = new(src.icon, "sandwich_top") - T.pixel_x = pick(list(-1,0,1)) - T.pixel_y = (ingredients.len * 2)+1 - overlays += T + I = image(icon, "[icon_state]_top") + I.pixel_x = pick(list(-1,0,1)) + I.pixel_y = (ingredients.len * 2)+1 + add_overlay(I) SetName(lowertext("[fullname] sandwich")) if(length(name) > 80) SetName("[pick(list("absurd","colossal","enormous","ridiculous"))] sandwich") diff --git a/code/modules/reagents/reagent_containers/food/skewer.dm b/code/modules/reagents/reagent_containers/food/skewer.dm new file mode 100644 index 00000000000..1e6c64964f4 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/skewer.dm @@ -0,0 +1,32 @@ +/obj/item/food/skewer + abstract_type = /obj/item/food/skewer + icon = 'icons/obj/food/butchery/kabob.dmi' + trash = /obj/item/stack/material/rods + center_of_mass = @'{"x":17,"y":15}' + bitesize = 2 + nutriment_desc = list("tofu" = 3, "metal" = 1) + nutriment_amt = 8 + +/obj/item/food/skewer/on_reagent_change() + . = ..() + update_icon() + +/obj/item/food/skewer/on_update_icon() + . = ..() + var/decl/material/meat = reagents?.get_primary_reagent_decl() + if(meat) + add_overlay(overlay_image(icon, "[icon_state]_meat", meat.color, RESET_COLOR)) + +/obj/item/food/skewer/meat + name = "meat skewer" + desc = "Delicious meat, on a stick." + filling_color = "#a85340" + nutriment_type = /decl/material/solid/organic/meat + +/obj/item/food/skewer/tofu + name = "tofu skewer" + icon = 'icons/obj/food/butchery/kabob.dmi' + desc = "Vegan meat, on a stick." + trash = /obj/item/stack/material/rods + filling_color = "#fffee0" + center_of_mass = @'{"x":17,"y":15}' diff --git a/code/modules/reagents/reagent_containers/food/sliceable.dm b/code/modules/reagents/reagent_containers/food/sliceable/_sliceable.dm similarity index 94% rename from code/modules/reagents/reagent_containers/food/sliceable.dm rename to code/modules/reagents/reagent_containers/food/sliceable/_sliceable.dm index 833ec916719..1e25fdc14ef 100644 --- a/code/modules/reagents/reagent_containers/food/sliceable.dm +++ b/code/modules/reagents/reagent_containers/food/sliceable/_sliceable.dm @@ -6,6 +6,7 @@ // sliceable is just an organization type path, it doesn't have any additional code or variables tied to it. /obj/item/food/sliceable + abstract_type = /obj/item/food/sliceable w_class = ITEM_SIZE_NORMAL //whole pizzas and cakes shouldn't fit in a pocket, you can slice them if you want to do that. utensil_flags = UTENSIL_FLAG_COLLECT | UTENSIL_FLAG_SLICE @@ -17,6 +18,7 @@ */ /obj/item/food/slice name = "slice of... something" + abstract_type = /obj/item/food/slice var/whole_path // path for the item from which this slice comes var/filled = FALSE // should the slice spawn with any reagents diff --git a/code/modules/reagents/reagent_containers/food/sliceable/cakes.dm b/code/modules/reagents/reagent_containers/food/sliceable/cakes.dm index 2847b711df9..e5088980d8e 100644 --- a/code/modules/reagents/reagent_containers/food/sliceable/cakes.dm +++ b/code/modules/reagents/reagent_containers/food/sliceable/cakes.dm @@ -1,7 +1,7 @@ /obj/item/food/sliceable/carrotcake name = "carrot cake" desc = "A favorite desert of sophisticated rabbits." - icon_state = "carrotcake" + icon = 'icons/obj/food/baked/cakes/carrot.dmi' slice_path = /obj/item/food/slice/carrotcake slice_num = 5 filling_color = "#ffd675" @@ -18,7 +18,7 @@ /obj/item/food/slice/carrotcake name = "carrot cake slice" desc = "Carrotty slice of carrot cake, carrots are good for your eyes! It's true! Probably!" - icon_state = "carrotcake_slice" + icon = 'icons/obj/food/baked/cakes/slices/carrot.dmi' plate = /obj/item/plate filling_color = "#ffd675" bitesize = 2 @@ -31,7 +31,7 @@ /obj/item/food/sliceable/braincake name = "brain cake" desc = "A squishy cake-thing." - icon_state = "braincake" + icon = 'icons/obj/food/baked/cakes/brain.dmi' slice_path = /obj/item/food/slice/braincake slice_num = 5 filling_color = "#e6aedb" @@ -49,7 +49,7 @@ /obj/item/food/slice/braincake name = "brain cake slice" desc = "Lemme tell you something about prions. THEY'RE DELICIOUS." - icon_state = "braincakeslice" + icon = 'icons/obj/food/baked/cakes/slices/brain.dmi' plate = /obj/item/plate filling_color = "#e6aedb" bitesize = 2 @@ -62,7 +62,7 @@ /obj/item/food/sliceable/cheesecake name = "cheese cake" desc = "DANGEROUSLY cheesy." - icon_state = "cheesecake" + icon = 'icons/obj/food/baked/cakes/cheese.dmi' slice_path = /obj/item/food/slice/cheesecake slice_num = 5 filling_color = "#faf7af" @@ -73,12 +73,12 @@ /obj/item/food/sliceable/cheesecake/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 15) + add_to_reagents(/decl/material/liquid/nutriment/cheese, 15) /obj/item/food/slice/cheesecake name = "cheese cake slice" desc = "Slice of pure cheestisfaction." - icon_state = "cheesecake_slice" + icon = 'icons/obj/food/baked/cakes/slices/cheese.dmi' plate = /obj/item/plate filling_color = "#faf7af" bitesize = 2 @@ -91,7 +91,7 @@ /obj/item/food/sliceable/plaincake name = "vanilla cake" desc = "A plain cake, but a good cake." - icon_state = "plaincake" + icon = 'icons/obj/food/baked/cakes/plain.dmi' slice_path = /obj/item/food/slice/plaincake slice_num = 5 filling_color = "#f7edd5" @@ -103,7 +103,7 @@ /obj/item/food/slice/plaincake name = "vanilla cake slice" desc = "Just a slice of cake, it is enough for everyone." - icon_state = "plaincake_slice" + icon = 'icons/obj/food/baked/cakes/slices/plain.dmi' plate = /obj/item/plate filling_color = "#f7edd5" bitesize = 2 @@ -116,7 +116,7 @@ /obj/item/food/sliceable/orangecake name = "orange cake" desc = "A cake with added orange." - icon_state = "orangecake" + icon = 'icons/obj/food/baked/cakes/orange.dmi' slice_path = /obj/item/food/slice/orangecake slice_num = 5 filling_color = "#fada8e" @@ -128,7 +128,7 @@ /obj/item/food/slice/orangecake name = "orange cake slice" desc = "Just a slice of cake, it is enough for everyone." - icon_state = "orangecake_slice" + icon = 'icons/obj/food/baked/cakes/slices/orange.dmi' plate = /obj/item/plate filling_color = "#fada8e" bitesize = 2 @@ -141,7 +141,7 @@ /obj/item/food/sliceable/limecake name = "lime cake" desc = "A cake with added lime." - icon_state = "limecake" + icon = 'icons/obj/food/baked/cakes/lime.dmi' slice_path = /obj/item/food/slice/limecake slice_num = 5 filling_color = "#cbfa8e" @@ -153,7 +153,7 @@ /obj/item/food/slice/limecake name = "lime cake slice" desc = "Just a slice of cake, it is enough for everyone." - icon_state = "limecake_slice" + icon = 'icons/obj/food/baked/cakes/slices/lime.dmi' plate = /obj/item/plate filling_color = "#cbfa8e" bitesize = 2 @@ -166,7 +166,7 @@ /obj/item/food/sliceable/lemoncake name = "lemon cake" desc = "A cake with added lemon." - icon_state = "lemoncake" + icon = 'icons/obj/food/baked/cakes/lemon.dmi' slice_path = /obj/item/food/slice/lemoncake slice_num = 5 filling_color = "#fafa8e" @@ -178,7 +178,7 @@ /obj/item/food/slice/lemoncake name = "lemon cake slice" desc = "Just a slice of cake, it is enough for everyone." - icon_state = "lemoncake_slice" + icon = 'icons/obj/food/baked/cakes/slices/lemon.dmi' plate = /obj/item/plate filling_color = "#fafa8e" bitesize = 2 @@ -191,7 +191,7 @@ /obj/item/food/sliceable/chocolatecake name = "chocolate cake" desc = "A cake with added chocolate." - icon_state = "chocolatecake" + icon = 'icons/obj/food/baked/cakes/chocolate.dmi' slice_path = /obj/item/food/slice/chocolatecake slice_num = 5 filling_color = "#805930" @@ -203,7 +203,7 @@ /obj/item/food/slice/chocolatecake name = "chocolate cake slice" desc = "Just a slice of cake, it is enough for everyone." - icon_state = "chocolatecake_slice" + icon = 'icons/obj/food/baked/cakes/slices/chocolate.dmi' plate = /obj/item/plate filling_color = "#805930" bitesize = 2 @@ -216,7 +216,7 @@ /obj/item/food/sliceable/birthdaycake name = "birthday cake" desc = "Happy birthday!" - icon_state = "birthdaycake" + icon = 'icons/obj/food/baked/cakes/birthday.dmi' slice_path = /obj/item/food/slice/birthdaycake slice_num = 5 filling_color = "#ffd6d6" @@ -233,7 +233,7 @@ /obj/item/food/slice/birthdaycake name = "birthday cake slice" desc = "A slice of your birthday." - icon_state = "birthdaycakeslice" + icon = 'icons/obj/food/baked/cakes/slices/birthday.dmi' plate = /obj/item/plate filling_color = "#ffd6d6" bitesize = 2 @@ -246,7 +246,7 @@ /obj/item/food/sliceable/applecake name = "apple cake" desc = "A cake centred with apples." - icon_state = "applecake" + icon = 'icons/obj/food/baked/cakes/apple.dmi' slice_path = /obj/item/food/slice/applecake slice_num = 5 filling_color = "#ebf5b8" @@ -258,7 +258,7 @@ /obj/item/food/slice/applecake name = "apple cake slice" desc = "A slice of heavenly cake." - icon_state = "applecakeslice" + icon = 'icons/obj/food/baked/cakes/slices/apple.dmi' plate = /obj/item/plate filling_color = "#ebf5b8" bitesize = 2 @@ -271,7 +271,7 @@ /obj/item/food/sliceable/pumpkinpie name = "pumpkin pie" desc = "A delicious treat for the autumn months." - icon_state = "pumpkinpie" + icon = 'icons/obj/food/baked/cakes/pumpkin.dmi' slice_path = /obj/item/food/slice/pumpkinpie slice_num = 5 filling_color = "#f5b951" @@ -282,7 +282,7 @@ /obj/item/food/slice/pumpkinpie name = "pumpkin pie slice" desc = "A slice of pumpkin pie, with whipped cream on top. Perfection." - icon_state = "pumpkinpieslice" + icon = 'icons/obj/food/baked/cakes/slices/pumpkin.dmi' plate = /obj/item/plate filling_color = "#f5b951" bitesize = 2 @@ -290,4 +290,4 @@ whole_path = /obj/item/food/sliceable/pumpkinpie /obj/item/food/slice/pumpkinpie/filled - filled = TRUE \ No newline at end of file + filled = TRUE diff --git a/code/modules/reagents/reagent_containers/food/sliceable/loaves.dm b/code/modules/reagents/reagent_containers/food/sliceable/loaves.dm index 8a033bca73b..5fa0639bbe7 100644 --- a/code/modules/reagents/reagent_containers/food/sliceable/loaves.dm +++ b/code/modules/reagents/reagent_containers/food/sliceable/loaves.dm @@ -1,7 +1,7 @@ /obj/item/food/sliceable/meatbread name = "meatbread loaf" desc = "The culinary base of every self-respecting eloquent gentleman." - icon_state = "meatbread" + icon = 'icons/obj/food/baked/bread/meat.dmi' slice_path = /obj/item/food/slice/meatbread slice_num = 5 filling_color = "#ff7575" @@ -18,7 +18,7 @@ /obj/item/food/slice/meatbread name = "meatbread slice" desc = "A slice of delicious meatbread." - icon_state = "meatbreadslice" + icon = 'icons/obj/food/baked/bread/slices/meat.dmi' plate = /obj/item/plate filling_color = "#ff7575" bitesize = 2 @@ -31,7 +31,7 @@ /obj/item/food/sliceable/xenomeatbread name = "xenomeatbread loaf" desc = "The culinary base of every self-respecting eloquent gentleman. Extra heretical." - icon_state = "xenomeatbread" + icon = 'icons/obj/food/baked/bread/xeno.dmi' slice_path = /obj/item/food/slice/xenomeatbread slice_num = 5 filling_color = "#8aff75" @@ -43,12 +43,12 @@ /obj/item/food/sliceable/xenomeatbread/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 20) + add_to_reagents(/decl/material/solid/organic/meat/xeno, 20) /obj/item/food/slice/xenomeatbread name = "xenomeatbread slice" desc = "A slice of delicious meatbread. Extra Heretical." - icon_state = "xenobreadslice" + icon = 'icons/obj/food/baked/bread/slices/xeno.dmi' plate = /obj/item/plate filling_color = "#8aff75" bitesize = 2 @@ -61,7 +61,7 @@ /obj/item/food/sliceable/bananabread name = "banana-nut bread" desc = "A heavenly and filling treat." - icon_state = "bananabread" + icon = 'icons/obj/food/baked/bread/banana.dmi' slice_path = /obj/item/food/slice/bananabread slice_num = 5 filling_color = "#ede5ad" @@ -78,7 +78,7 @@ /obj/item/food/slice/bananabread name = "banana-nut bread slice" desc = "A slice of delicious banana bread." - icon_state = "bananabreadslice" + icon = 'icons/obj/food/baked/bread/slices/banana.dmi' plate = /obj/item/plate filling_color = "#ede5ad" bitesize = 2 @@ -91,7 +91,7 @@ /obj/item/food/sliceable/tofubread name = "tofubread" desc = "Like meatbread but for vegetarians. Not guaranteed to give superpowers." - icon_state = "tofubread" + icon = 'icons/obj/food/baked/bread/tofu.dmi' slice_path = /obj/item/food/slice/tofubread slice_num = 5 filling_color = "#f7ffe0" @@ -104,7 +104,7 @@ /obj/item/food/slice/tofubread name = "tofubread slice" desc = "A slice of delicious tofubread." - icon_state = "tofubreadslice" + icon = 'icons/obj/food/baked/bread/slices/tofu.dmi' plate = /obj/item/plate filling_color = "#f7ffe0" bitesize = 2 @@ -117,7 +117,7 @@ /obj/item/food/sliceable/bread name = "bread" desc = "Some plain old bread." - icon_state = "bread" + icon = 'icons/obj/food/baked/bread/plain.dmi' slice_path = /obj/item/food/slice/bread slice_num = 5 filling_color = "#ffe396" @@ -130,7 +130,7 @@ /obj/item/food/slice/bread name = "bread slice" desc = "A slice of home." - icon_state = "breadslice" + icon = 'icons/obj/food/baked/bread/slices/plain.dmi' plate = /obj/item/plate filling_color = "#d27332" bitesize = 2 @@ -144,7 +144,7 @@ /obj/item/food/sliceable/creamcheesebread name = "cream cheese bread" desc = "Yum yum yum!" - icon_state = "creamcheesebread" + icon = 'icons/obj/food/baked/bread/cheese.dmi' slice_path = /obj/item/food/slice/creamcheesebread slice_num = 5 filling_color = "#fff896" @@ -156,12 +156,12 @@ /obj/item/food/sliceable/creamcheesebread/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 15) + add_to_reagents(/decl/material/liquid/nutriment/cheese, 15) /obj/item/food/slice/creamcheesebread name = "cream cheese bread slice" desc = "A slice of yum!" - icon_state = "creamcheesebreadslice" + icon = 'icons/obj/food/baked/bread/slices/cheese.dmi' plate = /obj/item/plate filling_color = "#fff896" bitesize = 2 @@ -169,4 +169,4 @@ whole_path = /obj/item/food/sliceable/creamcheesebread /obj/item/food/slice/creamcheesebread/filled - filled = TRUE \ No newline at end of file + filled = TRUE diff --git a/code/modules/reagents/reagent_containers/food/sliceable/misc_slices.dm b/code/modules/reagents/reagent_containers/food/sliceable/misc_slices.dm deleted file mode 100644 index 948cbcf7d03..00000000000 --- a/code/modules/reagents/reagent_containers/food/sliceable/misc_slices.dm +++ /dev/null @@ -1,7 +0,0 @@ -/obj/item/food/watermelonslice - name = "watermelon slice" - desc = "A slice of watery goodness." - icon_state = "watermelonslice" - filling_color = "#ff3867" - bitesize = 2 - center_of_mass = @'{"x":16,"y":10}' \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/food/sliceable/pizza/pizza_margherita.dm b/code/modules/reagents/reagent_containers/food/sliceable/pizza/pizza_margherita.dm index a5a7b6394cd..2b508bd4f7e 100644 --- a/code/modules/reagents/reagent_containers/food/sliceable/pizza/pizza_margherita.dm +++ b/code/modules/reagents/reagent_containers/food/sliceable/pizza/pizza_margherita.dm @@ -6,7 +6,7 @@ /obj/item/food/sliceable/pizza/margherita/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 5) + add_to_reagents(/decl/material/liquid/nutriment/cheese, 5) add_to_reagents(/decl/material/liquid/drink/juice/tomato, 6) /obj/item/food/slice/pizza/margherita diff --git a/code/modules/reagents/reagent_containers/food/sliceable/pizza/pizza_vegetable.dm b/code/modules/reagents/reagent_containers/food/sliceable/pizza/pizza_vegetable.dm index 6d703b9dabb..f2003f94b10 100644 --- a/code/modules/reagents/reagent_containers/food/sliceable/pizza/pizza_vegetable.dm +++ b/code/modules/reagents/reagent_containers/food/sliceable/pizza/pizza_vegetable.dm @@ -7,9 +7,9 @@ /obj/item/food/sliceable/pizza/vegetablepizza/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 5) - add_to_reagents(/decl/material/liquid/nutriment/ketchup, 6) - add_to_reagents(/decl/material/liquid/eyedrops, 12) + add_to_reagents(/decl/material/liquid/nutriment/cheese, 5) + add_to_reagents(/decl/material/liquid/nutriment/ketchup, 6) + add_to_reagents(/decl/material/liquid/eyedrops, 12) /obj/item/food/slice/pizza/vegetable name = "vegetable pizza slice" diff --git a/code/modules/reagents/reagent_containers/food/soup.dm b/code/modules/reagents/reagent_containers/food/soup.dm index 6933200bd49..9eb37dbee7a 100644 --- a/code/modules/reagents/reagent_containers/food/soup.dm +++ b/code/modules/reagents/reagent_containers/food/soup.dm @@ -5,6 +5,7 @@ /obj/item/food/meatballsoup name = "meatball soup" desc = "You've got balls kid, BALLS!" + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "meatballsoup" trash = /obj/item/trash/snack_bowl filling_color = "#785210" @@ -20,6 +21,7 @@ /obj/item/food/bloodsoup name = "tomato soup" desc = "Smells like copper." + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "tomatosoup" filling_color = "#ff0000" center_of_mass = @'{"x":16,"y":7}' @@ -36,6 +38,7 @@ /obj/item/food/clownstears name = "clown's tears" desc = "Not very funny." + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "clownstears" filling_color = "#c4fbff" center_of_mass = @'{"x":16,"y":7}' @@ -52,6 +55,7 @@ /obj/item/food/vegetablesoup name = "veggie soup" desc = "A highly nutritious blend of vegetative goodness. Guaranteed to leave you with a, er, \"souped-up\" sense of wellbeing." + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "vegetablesoup" trash = /obj/item/trash/snack_bowl filling_color = "#afc4b5" @@ -69,6 +73,7 @@ /obj/item/food/nettlesoup name = "nettle soup" desc = "A mean, green, calorically lean dish derived from a poisonous plant. It has a rather acidic bite to its taste." + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "nettlesoup" trash = /obj/item/trash/snack_bowl filling_color = "#afc4b5" @@ -87,6 +92,7 @@ /obj/item/food/mysterysoup name = "mystery soup" desc = "The mystery is, why aren't you eating it?" + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "mysterysoup" trash = /obj/item/trash/snack_bowl filling_color = "#f082ff" @@ -150,6 +156,7 @@ /obj/item/food/wishsoup name = "wish soup" desc = "I wish this was soup." + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "wishsoup" trash = /obj/item/trash/snack_bowl filling_color = "#d1f4ff" @@ -168,6 +175,7 @@ /obj/item/food/hotchili name = "hot chili" desc = "Sound the fire alarm!" + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "hotchili" trash = /obj/item/trash/snack_bowl filling_color = "#ff3c00" @@ -185,6 +193,7 @@ /obj/item/food/coldchili name = "cold chili" desc = "This slush is barely a liquid!" + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "coldchili" filling_color = "#2b00ff" center_of_mass = @'{"x":15,"y":9}' @@ -202,6 +211,7 @@ /obj/item/food/tomatosoup name = "tomato soup" desc = "Drinking this feels like being a vampire! A tomato vampire..." + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "tomatosoup" trash = /obj/item/trash/snack_bowl filling_color = "#d92929" @@ -219,6 +229,7 @@ /obj/item/food/stew name = "stewpot" desc = "A nice and warm stew. Healthy and strong." + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "stew" filling_color = "#9e673a" center_of_mass = @'{"x":16,"y":5}' @@ -236,6 +247,7 @@ /obj/item/food/milosoup name = "milosoup" desc = "The universes best soup! Yum!!!" + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "milosoup" trash = /obj/item/trash/snack_bowl center_of_mass = @'{"x":16,"y":7}' @@ -252,6 +264,7 @@ /obj/item/food/mushroomsoup name = "chantrelle soup" desc = "A delicious and hearty mushroom soup." + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "mushroomsoup" trash = /obj/item/trash/snack_bowl filling_color = "#e386bf" @@ -265,6 +278,7 @@ /obj/item/food/beetsoup name = "beet soup" desc = "Wait, how do you spell it again...?" + icon = 'icons/obj/food/soups/soup.dmi' icon_state = "beetsoup" trash = /obj/item/trash/snack_bowl filling_color = "#fac9ff" @@ -277,4 +291,4 @@ /obj/item/food/beetsoup/populate_reagents() . = ..() - SetName(pick(list("borsch","bortsch","borstch","borsh","borshch","borscht"))) \ No newline at end of file + SetName(pick(list("borsch","bortsch","borstch","borsh","borshch","borscht"))) diff --git a/code/modules/reagents/reagent_containers/food/soy.dm b/code/modules/reagents/reagent_containers/food/soy.dm index ec07346136f..5f2f548b0c0 100644 --- a/code/modules/reagents/reagent_containers/food/soy.dm +++ b/code/modules/reagents/reagent_containers/food/soy.dm @@ -1,6 +1,6 @@ /obj/item/food/tofu name = "tofu" - icon_state = "tofu" + icon = 'icons/obj/food/tofu/tofu.dmi' desc = "We all love tofu." filling_color = "#fffee0" center_of_mass = @'{"x":17,"y":10}' @@ -12,21 +12,10 @@ . = ..() add_to_reagents(/decl/material/liquid/nutriment/plant_protein, 6) -/obj/item/food/tofukabob - name = "tofu-kabob" - icon_state = "kabob" - desc = "Vegan meat, on a stick." - trash = /obj/item/stack/material/rods - filling_color = "#fffee0" - center_of_mass = @'{"x":17,"y":15}' - nutriment_desc = list("tofu" = 3, "metal" = 1) - nutriment_amt = 8 - bitesize = 2 - /obj/item/food/tofurkey name = "\improper Tofurkey" desc = "A fake turkey made from tofu." - icon_state = "tofurkey" + icon = 'icons/obj/food/tofu/tofurkey.dmi' filling_color = "#fffee0" center_of_mass = @'{"x":16,"y":8}' nutriment_amt = 12 @@ -36,9 +25,9 @@ /obj/item/food/stewedsoymeat name = "stewed soy meat" desc = "Even non-vegetarians will LOVE this!" - icon_state = "stewedsoymeat" + icon = 'icons/obj/food/tofu/soymeat.dmi' plate = /obj/item/plate center_of_mass = @'{"x":16,"y":10}' nutriment_desc = list("soy" = 4, "tomato" = 4) nutriment_amt = 8 - bitesize = 2 \ No newline at end of file + bitesize = 2 diff --git a/code/modules/reagents/reagent_containers/food/veggie.dm b/code/modules/reagents/reagent_containers/food/veggie.dm index 230df54fb9e..efb2c56aa1c 100644 --- a/code/modules/reagents/reagent_containers/food/veggie.dm +++ b/code/modules/reagents/reagent_containers/food/veggie.dm @@ -5,6 +5,7 @@ /obj/item/food/aesirsalad name = "\improper Aether salad" desc = "Probably too incredible for mortal men to fully enjoy." + icon = 'icons/obj/food/salads/salad.dmi' icon_state = "aesirsalad" trash = /obj/item/trash/snack_bowl filling_color = "#468c00" @@ -20,6 +21,7 @@ /obj/item/food/tossedsalad name = "tossed salad" desc = "A proper salad, basic and simple, with little bits of carrot, tomato and apple intermingled. Vegan!" + icon = 'icons/obj/food/salads/salad.dmi' icon_state = "herbsalad" trash = /obj/item/trash/snack_bowl filling_color = "#76b87f" @@ -31,6 +33,7 @@ /obj/item/food/validsalad name = "valid salad" desc = "It's just a salad of questionable 'herbs' with meatballs and fried potato slices. Nothing suspicious about it." + icon = 'icons/obj/food/salads/salad.dmi' icon_state = "validsalad" trash = /obj/item/trash/snack_bowl filling_color = "#76b87f" @@ -46,7 +49,7 @@ /obj/item/food/hugemushroomslice name = "huge mushroom slice" desc = "A slice from a huge mushroom." - icon_state = "hugemushroomslice" + icon = 'icons/obj/food/butchery/mushroom.dmi' filling_color = "#e0d7c5" center_of_mass = @'{"x":17,"y":16}' nutriment_amt = 3 @@ -55,4 +58,4 @@ /obj/item/food/hugemushroomslice/populate_reagents() . = ..() - add_to_reagents(/decl/material/liquid/psychotropics, 3) \ No newline at end of file + add_to_reagents(/decl/material/liquid/psychotropics, 3) diff --git a/code/unit_tests/icon_tests.dm b/code/unit_tests/icon_tests.dm index 04875cd4d2c..48ca9b96915 100644 --- a/code/unit_tests/icon_tests.dm +++ b/code/unit_tests/icon_tests.dm @@ -2,6 +2,50 @@ name = "ICON STATE template" template = /datum/unit_test/icon_test +/datum/unit_test/icon_test/food_shall_have_icon_states + name = "ICON STATE - Food And Drink Subtypes Shall Have Icon States" + var/list/check_types = list( + /obj/item/chems/condiment, + /obj/item/chems/drinks, + /obj/item/food + ) + var/list/skip_types = list() + +/datum/unit_test/icon_test/food_shall_have_icon_states/start_test() + + skip_types |= typesof(/obj/item/food/grown) + skip_types |= typesof(/obj/item/food/processed_grown) + + var/list/failures = list() + for(var/check_type in check_types) + for(var/check_subtype in typesof(check_type)) + var/obj/item/thing = check_subtype + if(TYPE_IS_ABSTRACT(thing)) + continue + var/skip = FALSE + for(var/skip_type in skip_types) + if(ispath(check_subtype, skip_type)) + skip = TRUE + break + if(skip) + continue + thing = atom_info_repository.get_instance_of(thing) + if(!istype(thing) || QDELETED(thing)) + failures += "invalid instance ([check_subtype])" + else + if(!thing.icon) + failures += "null icon ([check_subtype])" + if(!istext(thing.icon_state)) + failures += "null or invalid icon_state ([check_subtype])" + else if(!check_state_in_icon(thing.icon_state, thing.icon)) + failures += "missing icon state '[thing.icon_state]' in icon '[thing.icon]' ([check_subtype])" + + if(length(failures)) + fail("Food subtypes had missing icons or icon states:\n[jointext(failures, "\n")].") + else + pass("All food subtypes had valid icon states.") + return 1 + /datum/unit_test/icon_test/turfs_shall_have_icon_states name = "ICON STATE - Turf Subtypes Shall Have Icon States" var/list/except_types = list( diff --git a/icons/obj/drinks.dmi b/icons/obj/drinks.dmi index 85c21b66c7f..76c1ea06d8d 100644 Binary files a/icons/obj/drinks.dmi and b/icons/obj/drinks.dmi differ diff --git a/icons/obj/food.dmi b/icons/obj/food.dmi deleted file mode 100644 index 5d131998a8f..00000000000 Binary files a/icons/obj/food.dmi and /dev/null differ diff --git a/icons/obj/food/badrecipe.dmi b/icons/obj/food/badrecipe.dmi new file mode 100644 index 00000000000..070bc5c2ec8 Binary files /dev/null and b/icons/obj/food/badrecipe.dmi differ diff --git a/icons/obj/food/baked/apple_tart.dmi b/icons/obj/food/baked/apple_tart.dmi new file mode 100644 index 00000000000..3254553e0d4 Binary files /dev/null and b/icons/obj/food/baked/apple_tart.dmi differ diff --git a/icons/obj/food/baked/baguette.dmi b/icons/obj/food/baked/baguette.dmi new file mode 100644 index 00000000000..8a2009fd6e6 Binary files /dev/null and b/icons/obj/food/baked/baguette.dmi differ diff --git a/icons/obj/food/baked/bread/banana.dmi b/icons/obj/food/baked/bread/banana.dmi new file mode 100644 index 00000000000..32de7f1cc99 Binary files /dev/null and b/icons/obj/food/baked/bread/banana.dmi differ diff --git a/icons/obj/food/baked/bread/cheese.dmi b/icons/obj/food/baked/bread/cheese.dmi new file mode 100644 index 00000000000..630380ed530 Binary files /dev/null and b/icons/obj/food/baked/bread/cheese.dmi differ diff --git a/icons/obj/food/baked/bread/meat.dmi b/icons/obj/food/baked/bread/meat.dmi new file mode 100644 index 00000000000..3d300deaf4a Binary files /dev/null and b/icons/obj/food/baked/bread/meat.dmi differ diff --git a/icons/obj/food/baked/bread/plain.dmi b/icons/obj/food/baked/bread/plain.dmi new file mode 100644 index 00000000000..3e817b10696 Binary files /dev/null and b/icons/obj/food/baked/bread/plain.dmi differ diff --git a/icons/obj/food/baked/bread/slices/banana.dmi b/icons/obj/food/baked/bread/slices/banana.dmi new file mode 100644 index 00000000000..f3e33b2d8c5 Binary files /dev/null and b/icons/obj/food/baked/bread/slices/banana.dmi differ diff --git a/icons/obj/food/baked/bread/slices/cheese.dmi b/icons/obj/food/baked/bread/slices/cheese.dmi new file mode 100644 index 00000000000..29e42222399 Binary files /dev/null and b/icons/obj/food/baked/bread/slices/cheese.dmi differ diff --git a/icons/obj/food/baked/bread/slices/meat.dmi b/icons/obj/food/baked/bread/slices/meat.dmi new file mode 100644 index 00000000000..58ff769ab30 Binary files /dev/null and b/icons/obj/food/baked/bread/slices/meat.dmi differ diff --git a/icons/obj/food/baked/bread/slices/plain.dmi b/icons/obj/food/baked/bread/slices/plain.dmi new file mode 100644 index 00000000000..d4fff48d99e Binary files /dev/null and b/icons/obj/food/baked/bread/slices/plain.dmi differ diff --git a/icons/obj/food/baked/bread/slices/tofu.dmi b/icons/obj/food/baked/bread/slices/tofu.dmi new file mode 100644 index 00000000000..fa0f150723e Binary files /dev/null and b/icons/obj/food/baked/bread/slices/tofu.dmi differ diff --git a/icons/obj/food/baked/bread/slices/xeno.dmi b/icons/obj/food/baked/bread/slices/xeno.dmi new file mode 100644 index 00000000000..04a30959d8c Binary files /dev/null and b/icons/obj/food/baked/bread/slices/xeno.dmi differ diff --git a/icons/obj/food/baked/bread/tofu.dmi b/icons/obj/food/baked/bread/tofu.dmi new file mode 100644 index 00000000000..a6074eb0b09 Binary files /dev/null and b/icons/obj/food/baked/bread/tofu.dmi differ diff --git a/icons/obj/food/baked/bread/xeno.dmi b/icons/obj/food/baked/bread/xeno.dmi new file mode 100644 index 00000000000..eb1296c07c4 Binary files /dev/null and b/icons/obj/food/baked/bread/xeno.dmi differ diff --git a/icons/obj/food/baked/bun.dmi b/icons/obj/food/baked/bun.dmi new file mode 100644 index 00000000000..4cb8cff5b42 Binary files /dev/null and b/icons/obj/food/baked/bun.dmi differ diff --git a/icons/obj/food/baked/bunbun.dmi b/icons/obj/food/baked/bunbun.dmi new file mode 100644 index 00000000000..1fcaf2bd10c Binary files /dev/null and b/icons/obj/food/baked/bunbun.dmi differ diff --git a/icons/obj/food/baked/cakes/apple.dmi b/icons/obj/food/baked/cakes/apple.dmi new file mode 100644 index 00000000000..715460ea8ce Binary files /dev/null and b/icons/obj/food/baked/cakes/apple.dmi differ diff --git a/icons/obj/food/baked/cakes/birthday.dmi b/icons/obj/food/baked/cakes/birthday.dmi new file mode 100644 index 00000000000..b6bd69b1b31 Binary files /dev/null and b/icons/obj/food/baked/cakes/birthday.dmi differ diff --git a/icons/obj/food/baked/cakes/brain.dmi b/icons/obj/food/baked/cakes/brain.dmi new file mode 100644 index 00000000000..744c88d734b Binary files /dev/null and b/icons/obj/food/baked/cakes/brain.dmi differ diff --git a/icons/obj/food/baked/cakes/carrot.dmi b/icons/obj/food/baked/cakes/carrot.dmi new file mode 100644 index 00000000000..4dbdf8af636 Binary files /dev/null and b/icons/obj/food/baked/cakes/carrot.dmi differ diff --git a/icons/obj/food/baked/cakes/cheese.dmi b/icons/obj/food/baked/cakes/cheese.dmi new file mode 100644 index 00000000000..8328107e88d Binary files /dev/null and b/icons/obj/food/baked/cakes/cheese.dmi differ diff --git a/icons/obj/food/baked/cakes/chocolate.dmi b/icons/obj/food/baked/cakes/chocolate.dmi new file mode 100644 index 00000000000..7fc2f0710a6 Binary files /dev/null and b/icons/obj/food/baked/cakes/chocolate.dmi differ diff --git a/icons/obj/food/baked/cakes/lemon.dmi b/icons/obj/food/baked/cakes/lemon.dmi new file mode 100644 index 00000000000..7ff9fb0b179 Binary files /dev/null and b/icons/obj/food/baked/cakes/lemon.dmi differ diff --git a/icons/obj/food/baked/cakes/lime.dmi b/icons/obj/food/baked/cakes/lime.dmi new file mode 100644 index 00000000000..adc49fa8b0c Binary files /dev/null and b/icons/obj/food/baked/cakes/lime.dmi differ diff --git a/icons/obj/food/baked/cakes/orange.dmi b/icons/obj/food/baked/cakes/orange.dmi new file mode 100644 index 00000000000..5b2aabe87d6 Binary files /dev/null and b/icons/obj/food/baked/cakes/orange.dmi differ diff --git a/icons/obj/food/baked/cakes/plain.dmi b/icons/obj/food/baked/cakes/plain.dmi new file mode 100644 index 00000000000..31d38011dbd Binary files /dev/null and b/icons/obj/food/baked/cakes/plain.dmi differ diff --git a/icons/obj/food/baked/cakes/pumpkin.dmi b/icons/obj/food/baked/cakes/pumpkin.dmi new file mode 100644 index 00000000000..4d10a39c07e Binary files /dev/null and b/icons/obj/food/baked/cakes/pumpkin.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/apple.dmi b/icons/obj/food/baked/cakes/slices/apple.dmi new file mode 100644 index 00000000000..554b44f6fe0 Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/apple.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/birthday.dmi b/icons/obj/food/baked/cakes/slices/birthday.dmi new file mode 100644 index 00000000000..25cfd6f267e Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/birthday.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/brain.dmi b/icons/obj/food/baked/cakes/slices/brain.dmi new file mode 100644 index 00000000000..8accc514184 Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/brain.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/carrot.dmi b/icons/obj/food/baked/cakes/slices/carrot.dmi new file mode 100644 index 00000000000..4712fb9c67b Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/carrot.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/cheese.dmi b/icons/obj/food/baked/cakes/slices/cheese.dmi new file mode 100644 index 00000000000..8d1d1fe9cce Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/cheese.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/chocolate.dmi b/icons/obj/food/baked/cakes/slices/chocolate.dmi new file mode 100644 index 00000000000..f9010f1ec4f Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/chocolate.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/lemon.dmi b/icons/obj/food/baked/cakes/slices/lemon.dmi new file mode 100644 index 00000000000..fb2e1c646ee Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/lemon.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/lime.dmi b/icons/obj/food/baked/cakes/slices/lime.dmi new file mode 100644 index 00000000000..a86cf3fe6df Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/lime.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/orange.dmi b/icons/obj/food/baked/cakes/slices/orange.dmi new file mode 100644 index 00000000000..aed03a9ef90 Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/orange.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/plain.dmi b/icons/obj/food/baked/cakes/slices/plain.dmi new file mode 100644 index 00000000000..a1c2011a606 Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/plain.dmi differ diff --git a/icons/obj/food/baked/cakes/slices/pumpkin.dmi b/icons/obj/food/baked/cakes/slices/pumpkin.dmi new file mode 100644 index 00000000000..140c72d9dde Binary files /dev/null and b/icons/obj/food/baked/cakes/slices/pumpkin.dmi differ diff --git a/icons/obj/food/baked/cookie.dmi b/icons/obj/food/baked/cookie.dmi new file mode 100644 index 00000000000..6e04007a758 Binary files /dev/null and b/icons/obj/food/baked/cookie.dmi differ diff --git a/icons/obj/food/cracker.dmi b/icons/obj/food/baked/cracker.dmi similarity index 100% rename from icons/obj/food/cracker.dmi rename to icons/obj/food/baked/cracker.dmi diff --git a/icons/obj/food/baked/dough.dmi b/icons/obj/food/baked/dough.dmi new file mode 100644 index 00000000000..8ac145ee5d3 Binary files /dev/null and b/icons/obj/food/baked/dough.dmi differ diff --git a/icons/obj/food/baked/eggplant_parmigiana.dmi b/icons/obj/food/baked/eggplant_parmigiana.dmi new file mode 100644 index 00000000000..a078a5e22aa Binary files /dev/null and b/icons/obj/food/baked/eggplant_parmigiana.dmi differ diff --git a/icons/obj/food/baked/enchiladas.dmi b/icons/obj/food/baked/enchiladas.dmi new file mode 100644 index 00000000000..17b74036efe Binary files /dev/null and b/icons/obj/food/baked/enchiladas.dmi differ diff --git a/icons/obj/food/baked/flatbread.dmi b/icons/obj/food/baked/flatbread.dmi new file mode 100644 index 00000000000..fdcc4c15b24 Binary files /dev/null and b/icons/obj/food/baked/flatbread.dmi differ diff --git a/icons/obj/food/baked/flattened_dough.dmi b/icons/obj/food/baked/flattened_dough.dmi new file mode 100644 index 00000000000..569426ae7ae Binary files /dev/null and b/icons/obj/food/baked/flattened_dough.dmi differ diff --git a/icons/obj/food/baked/fortune_cookie.dmi b/icons/obj/food/baked/fortune_cookie.dmi new file mode 100644 index 00000000000..d45d0dec178 Binary files /dev/null and b/icons/obj/food/baked/fortune_cookie.dmi differ diff --git a/icons/obj/food/baked/jellysandwich.dmi b/icons/obj/food/baked/jellysandwich.dmi new file mode 100644 index 00000000000..ddb56eb2312 Binary files /dev/null and b/icons/obj/food/baked/jellysandwich.dmi differ diff --git a/icons/obj/food/baked/jellytoast.dmi b/icons/obj/food/baked/jellytoast.dmi new file mode 100644 index 00000000000..6141ec7da6f Binary files /dev/null and b/icons/obj/food/baked/jellytoast.dmi differ diff --git a/icons/obj/food/baked/loaded_potato.dmi b/icons/obj/food/baked/loaded_potato.dmi new file mode 100644 index 00000000000..bfcdf4f35d7 Binary files /dev/null and b/icons/obj/food/baked/loaded_potato.dmi differ diff --git a/icons/obj/food/baked/monkeys_delight.dmi b/icons/obj/food/baked/monkeys_delight.dmi new file mode 100644 index 00000000000..a1c6a633ddf Binary files /dev/null and b/icons/obj/food/baked/monkeys_delight.dmi differ diff --git a/icons/obj/food/baked/muffin.dmi b/icons/obj/food/baked/muffin.dmi new file mode 100644 index 00000000000..f4b0ea381bf Binary files /dev/null and b/icons/obj/food/baked/muffin.dmi differ diff --git a/icons/obj/food/baked/pies/amanita.dmi b/icons/obj/food/baked/pies/amanita.dmi new file mode 100644 index 00000000000..d0350ca3c07 Binary files /dev/null and b/icons/obj/food/baked/pies/amanita.dmi differ diff --git a/icons/obj/food/baked/pies/apple.dmi b/icons/obj/food/baked/pies/apple.dmi new file mode 100644 index 00000000000..a2d2499eb1d Binary files /dev/null and b/icons/obj/food/baked/pies/apple.dmi differ diff --git a/icons/obj/food/baked/pies/berry.dmi b/icons/obj/food/baked/pies/berry.dmi new file mode 100644 index 00000000000..fee3dcbff79 Binary files /dev/null and b/icons/obj/food/baked/pies/berry.dmi differ diff --git a/icons/obj/food/baked/pies/cherry.dmi b/icons/obj/food/baked/pies/cherry.dmi new file mode 100644 index 00000000000..d3a1cdfbb27 Binary files /dev/null and b/icons/obj/food/baked/pies/cherry.dmi differ diff --git a/icons/obj/food/baked/pies/meat.dmi b/icons/obj/food/baked/pies/meat.dmi new file mode 100644 index 00000000000..ad78c18cf84 Binary files /dev/null and b/icons/obj/food/baked/pies/meat.dmi differ diff --git a/icons/obj/food/baked/pies/pie.dmi b/icons/obj/food/baked/pies/pie.dmi new file mode 100644 index 00000000000..70dca891ff6 Binary files /dev/null and b/icons/obj/food/baked/pies/pie.dmi differ diff --git a/icons/obj/food/baked/pies/plumphelmet.dmi b/icons/obj/food/baked/pies/plumphelmet.dmi new file mode 100644 index 00000000000..292e45da74f Binary files /dev/null and b/icons/obj/food/baked/pies/plumphelmet.dmi differ diff --git a/icons/obj/food/baked/pies/xeno.dmi b/icons/obj/food/baked/pies/xeno.dmi new file mode 100644 index 00000000000..4cc0ee3434a Binary files /dev/null and b/icons/obj/food/baked/pies/xeno.dmi differ diff --git a/icons/obj/food/baked/popcorn.dmi b/icons/obj/food/baked/popcorn.dmi new file mode 100644 index 00000000000..5d355b09dce Binary files /dev/null and b/icons/obj/food/baked/popcorn.dmi differ diff --git a/icons/obj/food/baked/pretzel.dmi b/icons/obj/food/baked/pretzel.dmi new file mode 100644 index 00000000000..b2953a5639c Binary files /dev/null and b/icons/obj/food/baked/pretzel.dmi differ diff --git a/icons/obj/food/baked/sandwich.dmi b/icons/obj/food/baked/sandwich.dmi new file mode 100644 index 00000000000..ce0208d58ef Binary files /dev/null and b/icons/obj/food/baked/sandwich.dmi differ diff --git a/icons/obj/food/baked/scone.dmi b/icons/obj/food/baked/scone.dmi new file mode 100644 index 00000000000..18624afa054 Binary files /dev/null and b/icons/obj/food/baked/scone.dmi differ diff --git a/icons/obj/food/baked/sliced_dough.dmi b/icons/obj/food/baked/sliced_dough.dmi new file mode 100644 index 00000000000..9fa9f9175cc Binary files /dev/null and b/icons/obj/food/baked/sliced_dough.dmi differ diff --git a/icons/obj/food/baked/stuffing.dmi b/icons/obj/food/baked/stuffing.dmi new file mode 100644 index 00000000000..81e63b1482d Binary files /dev/null and b/icons/obj/food/baked/stuffing.dmi differ diff --git a/icons/obj/food/baked/threebread.dmi b/icons/obj/food/baked/threebread.dmi new file mode 100644 index 00000000000..fb73a81b563 Binary files /dev/null and b/icons/obj/food/baked/threebread.dmi differ diff --git a/icons/obj/food/baked/toastedsandwich.dmi b/icons/obj/food/baked/toastedsandwich.dmi new file mode 100644 index 00000000000..e3d8c23370a Binary files /dev/null and b/icons/obj/food/baked/toastedsandwich.dmi differ diff --git a/icons/obj/food/baked/twobread.dmi b/icons/obj/food/baked/twobread.dmi new file mode 100644 index 00000000000..d5d45e6a255 Binary files /dev/null and b/icons/obj/food/baked/twobread.dmi differ diff --git a/icons/obj/food/baked/waffles/blue.dmi b/icons/obj/food/baked/waffles/blue.dmi new file mode 100644 index 00000000000..6fe44a8493d Binary files /dev/null and b/icons/obj/food/baked/waffles/blue.dmi differ diff --git a/icons/obj/food/baked/waffles/green.dmi b/icons/obj/food/baked/waffles/green.dmi new file mode 100644 index 00000000000..a39a3cbc005 Binary files /dev/null and b/icons/obj/food/baked/waffles/green.dmi differ diff --git a/icons/obj/food/baked/waffles/plain.dmi b/icons/obj/food/baked/waffles/plain.dmi new file mode 100644 index 00000000000..0b4a384b8a0 Binary files /dev/null and b/icons/obj/food/baked/waffles/plain.dmi differ diff --git a/icons/obj/food/baked/waffles/yellow.dmi b/icons/obj/food/baked/waffles/yellow.dmi new file mode 100644 index 00000000000..9cf6692b59f Binary files /dev/null and b/icons/obj/food/baked/waffles/yellow.dmi differ diff --git a/icons/obj/food/burgers/bigbiteburger.dmi b/icons/obj/food/burgers/bigbiteburger.dmi new file mode 100644 index 00000000000..b7857397f70 Binary files /dev/null and b/icons/obj/food/burgers/bigbiteburger.dmi differ diff --git a/icons/obj/food/burgers/brainburger.dmi b/icons/obj/food/burgers/brainburger.dmi new file mode 100644 index 00000000000..fcb0efa4d13 Binary files /dev/null and b/icons/obj/food/burgers/brainburger.dmi differ diff --git a/icons/obj/food/burgers/burger.dmi b/icons/obj/food/burgers/burger.dmi new file mode 100644 index 00000000000..a65a9107edd Binary files /dev/null and b/icons/obj/food/burgers/burger.dmi differ diff --git a/icons/obj/food/burgers/cheeseburger.dmi b/icons/obj/food/burgers/cheeseburger.dmi new file mode 100644 index 00000000000..98fabf71d83 Binary files /dev/null and b/icons/obj/food/burgers/cheeseburger.dmi differ diff --git a/icons/obj/food/burgers/clownburger.dmi b/icons/obj/food/burgers/clownburger.dmi new file mode 100644 index 00000000000..d8ad6e07dc6 Binary files /dev/null and b/icons/obj/food/burgers/clownburger.dmi differ diff --git a/icons/obj/food/burgers/fishburger.dmi b/icons/obj/food/burgers/fishburger.dmi new file mode 100644 index 00000000000..dfcee246e56 Binary files /dev/null and b/icons/obj/food/burgers/fishburger.dmi differ diff --git a/icons/obj/food/burgers/ghostburger.dmi b/icons/obj/food/burgers/ghostburger.dmi new file mode 100644 index 00000000000..4eda121afcd Binary files /dev/null and b/icons/obj/food/burgers/ghostburger.dmi differ diff --git a/icons/obj/food/burgers/hamburger.dmi b/icons/obj/food/burgers/hamburger.dmi new file mode 100644 index 00000000000..f93dd97260e Binary files /dev/null and b/icons/obj/food/burgers/hamburger.dmi differ diff --git a/icons/obj/food/burgers/jellyburger.dmi b/icons/obj/food/burgers/jellyburger.dmi new file mode 100644 index 00000000000..506699d72f2 Binary files /dev/null and b/icons/obj/food/burgers/jellyburger.dmi differ diff --git a/icons/obj/food/burgers/mimeburger.dmi b/icons/obj/food/burgers/mimeburger.dmi new file mode 100644 index 00000000000..d5df1d6bd85 Binary files /dev/null and b/icons/obj/food/burgers/mimeburger.dmi differ diff --git a/icons/obj/food/burgers/roburger.dmi b/icons/obj/food/burgers/roburger.dmi new file mode 100644 index 00000000000..64610f43dc3 Binary files /dev/null and b/icons/obj/food/burgers/roburger.dmi differ diff --git a/icons/obj/food/burgers/spellburger.dmi b/icons/obj/food/burgers/spellburger.dmi new file mode 100644 index 00000000000..6b658c73af8 Binary files /dev/null and b/icons/obj/food/burgers/spellburger.dmi differ diff --git a/icons/obj/food/burgers/superbiteburger.dmi b/icons/obj/food/burgers/superbiteburger.dmi new file mode 100644 index 00000000000..8c834d571b7 Binary files /dev/null and b/icons/obj/food/burgers/superbiteburger.dmi differ diff --git a/icons/obj/food/burgers/tofuburger.dmi b/icons/obj/food/burgers/tofuburger.dmi new file mode 100644 index 00000000000..6f6a0265462 Binary files /dev/null and b/icons/obj/food/burgers/tofuburger.dmi differ diff --git a/icons/obj/food/burgers/xenoburger.dmi b/icons/obj/food/burgers/xenoburger.dmi new file mode 100644 index 00000000000..7f4bce3fd22 Binary files /dev/null and b/icons/obj/food/burgers/xenoburger.dmi differ diff --git a/icons/obj/items/butchery/chopped.dmi b/icons/obj/food/butchery/chopped.dmi similarity index 100% rename from icons/obj/items/butchery/chopped.dmi rename to icons/obj/food/butchery/chopped.dmi diff --git a/icons/obj/items/butchery/cutlet.dmi b/icons/obj/food/butchery/cutlet.dmi similarity index 100% rename from icons/obj/items/butchery/cutlet.dmi rename to icons/obj/food/butchery/cutlet.dmi diff --git a/icons/obj/items/butchery/fish.dmi b/icons/obj/food/butchery/fish.dmi similarity index 100% rename from icons/obj/items/butchery/fish.dmi rename to icons/obj/food/butchery/fish.dmi diff --git a/icons/obj/items/butchery/fish_grilled.dmi b/icons/obj/food/butchery/fish_grilled.dmi similarity index 100% rename from icons/obj/items/butchery/fish_grilled.dmi rename to icons/obj/food/butchery/fish_grilled.dmi diff --git a/icons/obj/items/butchery/haunch.dmi b/icons/obj/food/butchery/haunch.dmi similarity index 100% rename from icons/obj/items/butchery/haunch.dmi rename to icons/obj/food/butchery/haunch.dmi diff --git a/icons/obj/food_jerky.dmi b/icons/obj/food/butchery/jerky.dmi similarity index 100% rename from icons/obj/food_jerky.dmi rename to icons/obj/food/butchery/jerky.dmi diff --git a/icons/obj/food/butchery/kabob.dmi b/icons/obj/food/butchery/kabob.dmi new file mode 100644 index 00000000000..0788ad44c8d Binary files /dev/null and b/icons/obj/food/butchery/kabob.dmi differ diff --git a/icons/obj/items/butchery/meat1.dmi b/icons/obj/food/butchery/meat1.dmi similarity index 100% rename from icons/obj/items/butchery/meat1.dmi rename to icons/obj/food/butchery/meat1.dmi diff --git a/icons/obj/items/butchery/meat2.dmi b/icons/obj/food/butchery/meat2.dmi similarity index 100% rename from icons/obj/items/butchery/meat2.dmi rename to icons/obj/food/butchery/meat2.dmi diff --git a/icons/obj/items/butchery/meat3.dmi b/icons/obj/food/butchery/meat3.dmi similarity index 100% rename from icons/obj/items/butchery/meat3.dmi rename to icons/obj/food/butchery/meat3.dmi diff --git a/icons/obj/food/butchery/meatball.dmi b/icons/obj/food/butchery/meatball.dmi new file mode 100644 index 00000000000..0dcc8c14ebb Binary files /dev/null and b/icons/obj/food/butchery/meatball.dmi differ diff --git a/icons/obj/food/butchery/mushroom.dmi b/icons/obj/food/butchery/mushroom.dmi new file mode 100644 index 00000000000..ffe5e7e2101 Binary files /dev/null and b/icons/obj/food/butchery/mushroom.dmi differ diff --git a/icons/obj/items/butchery/offal.dmi b/icons/obj/food/butchery/offal.dmi similarity index 100% rename from icons/obj/items/butchery/offal.dmi rename to icons/obj/food/butchery/offal.dmi diff --git a/icons/obj/items/butchery/offal_small.dmi b/icons/obj/food/butchery/offal_small.dmi similarity index 100% rename from icons/obj/items/butchery/offal_small.dmi rename to icons/obj/food/butchery/offal_small.dmi diff --git a/icons/obj/food/butchery/rawmeatball.dmi b/icons/obj/food/butchery/rawmeatball.dmi new file mode 100644 index 00000000000..09b299727ba Binary files /dev/null and b/icons/obj/food/butchery/rawmeatball.dmi differ diff --git a/icons/obj/items/butchery/ruminant_stomach.dmi b/icons/obj/food/butchery/ruminant_stomach.dmi similarity index 100% rename from icons/obj/items/butchery/ruminant_stomach.dmi rename to icons/obj/food/butchery/ruminant_stomach.dmi diff --git a/icons/obj/food/butchery/sausage.dmi b/icons/obj/food/butchery/sausage.dmi new file mode 100644 index 00000000000..f39947075b1 Binary files /dev/null and b/icons/obj/food/butchery/sausage.dmi differ diff --git a/icons/obj/items/butchery/side.dmi b/icons/obj/food/butchery/side.dmi similarity index 100% rename from icons/obj/items/butchery/side.dmi rename to icons/obj/food/butchery/side.dmi diff --git a/icons/obj/food/butchery/spider_leg.dmi b/icons/obj/food/butchery/spider_leg.dmi new file mode 100644 index 00000000000..aa6f3a3065f Binary files /dev/null and b/icons/obj/food/butchery/spider_leg.dmi differ diff --git a/icons/obj/food/butchery/spider_leg_cooked.dmi b/icons/obj/food/butchery/spider_leg_cooked.dmi new file mode 100644 index 00000000000..93e496104dc Binary files /dev/null and b/icons/obj/food/butchery/spider_leg_cooked.dmi differ diff --git a/icons/obj/food/butchery/steak.dmi b/icons/obj/food/butchery/steak.dmi new file mode 100644 index 00000000000..4fe0f414844 Binary files /dev/null and b/icons/obj/food/butchery/steak.dmi differ diff --git a/icons/obj/food/butchery/tomato.dmi b/icons/obj/food/butchery/tomato.dmi new file mode 100644 index 00000000000..e28034b9c71 Binary files /dev/null and b/icons/obj/food/butchery/tomato.dmi differ diff --git a/icons/obj/food/candied_apple.dmi b/icons/obj/food/candied_apple.dmi new file mode 100644 index 00000000000..2ebac5b6c73 Binary files /dev/null and b/icons/obj/food/candied_apple.dmi differ diff --git a/icons/obj/food/canned/canned.dmi b/icons/obj/food/canned/canned.dmi new file mode 100644 index 00000000000..967cf862587 Binary files /dev/null and b/icons/obj/food/canned/canned.dmi differ diff --git a/icons/obj/food/chocolatebar.dmi b/icons/obj/food/chocolatebar.dmi new file mode 100644 index 00000000000..8e9d7a01f81 Binary files /dev/null and b/icons/obj/food/chocolatebar.dmi differ diff --git a/icons/obj/food/condiments/rice.dmi b/icons/obj/food/condiments/rice.dmi index 09274fdc79c..33e9218e668 100644 Binary files a/icons/obj/food/condiments/rice.dmi and b/icons/obj/food/condiments/rice.dmi differ diff --git a/icons/obj/food/custom/custom.dmi b/icons/obj/food/custom/custom.dmi new file mode 100644 index 00000000000..7fa7c7d09a8 Binary files /dev/null and b/icons/obj/food/custom/custom.dmi differ diff --git a/icons/obj/food/donkpocket.dmi b/icons/obj/food/donkpocket.dmi new file mode 100644 index 00000000000..8d4699e95e8 Binary files /dev/null and b/icons/obj/food/donkpocket.dmi differ diff --git a/icons/obj/food/error.dmi b/icons/obj/food/error.dmi new file mode 100644 index 00000000000..b854b9a610c Binary files /dev/null and b/icons/obj/food/error.dmi differ diff --git a/icons/obj/food/fried/cheesyfries.dmi b/icons/obj/food/fried/cheesyfries.dmi new file mode 100644 index 00000000000..dbd9dd37b7f Binary files /dev/null and b/icons/obj/food/fried/cheesyfries.dmi differ diff --git a/icons/obj/food/fried/cubancarp.dmi b/icons/obj/food/fried/cubancarp.dmi new file mode 100644 index 00000000000..aca554b1429 Binary files /dev/null and b/icons/obj/food/fried/cubancarp.dmi differ diff --git a/icons/obj/food/fried/fishandchips.dmi b/icons/obj/food/fried/fishandchips.dmi new file mode 100644 index 00000000000..066aed187a6 Binary files /dev/null and b/icons/obj/food/fried/fishandchips.dmi differ diff --git a/icons/obj/food/fried/fishfingers.dmi b/icons/obj/food/fried/fishfingers.dmi new file mode 100644 index 00000000000..2525b580f35 Binary files /dev/null and b/icons/obj/food/fried/fishfingers.dmi differ diff --git a/icons/obj/food/fried/friedegg.dmi b/icons/obj/food/fried/friedegg.dmi new file mode 100644 index 00000000000..2e34eb930d9 Binary files /dev/null and b/icons/obj/food/fried/friedegg.dmi differ diff --git a/icons/obj/food/fried/fries.dmi b/icons/obj/food/fried/fries.dmi new file mode 100644 index 00000000000..05604c91727 Binary files /dev/null and b/icons/obj/food/fried/fries.dmi differ diff --git a/icons/obj/food/fried/omelette.dmi b/icons/obj/food/fried/omelette.dmi new file mode 100644 index 00000000000..85ed5935c54 Binary files /dev/null and b/icons/obj/food/fried/omelette.dmi differ diff --git a/icons/obj/food/fried/onionrings.dmi b/icons/obj/food/fried/onionrings.dmi new file mode 100644 index 00000000000..d1b1a8bed47 Binary files /dev/null and b/icons/obj/food/fried/onionrings.dmi differ diff --git a/icons/obj/food/fried/pancakes.dmi b/icons/obj/food/fried/pancakes.dmi new file mode 100644 index 00000000000..38b1688b55b Binary files /dev/null and b/icons/obj/food/fried/pancakes.dmi differ diff --git a/icons/obj/food/hotcorgi.dmi b/icons/obj/food/hotcorgi.dmi new file mode 100644 index 00000000000..185bada8af5 Binary files /dev/null and b/icons/obj/food/hotcorgi.dmi differ diff --git a/icons/obj/food/hotdog.dmi b/icons/obj/food/hotdog.dmi new file mode 100644 index 00000000000..3af324ba723 Binary files /dev/null and b/icons/obj/food/hotdog.dmi differ diff --git a/icons/obj/food/junk/junkfood.dmi b/icons/obj/food/junk/junkfood.dmi new file mode 100644 index 00000000000..c9e0f250b6a Binary files /dev/null and b/icons/obj/food/junk/junkfood.dmi differ diff --git a/icons/obj/food/mint.dmi b/icons/obj/food/mint.dmi new file mode 100644 index 00000000000..f2405b617fc Binary files /dev/null and b/icons/obj/food/mint.dmi differ diff --git a/icons/obj/food/old/burger.dmi b/icons/obj/food/old/burger.dmi new file mode 100644 index 00000000000..60576e6e526 Binary files /dev/null and b/icons/obj/food/old/burger.dmi differ diff --git a/icons/obj/food/old/fries.dmi b/icons/obj/food/old/fries.dmi new file mode 100644 index 00000000000..c3ee3e9fe8b Binary files /dev/null and b/icons/obj/food/old/fries.dmi differ diff --git a/icons/obj/food/old/hamburger.dmi b/icons/obj/food/old/hamburger.dmi new file mode 100644 index 00000000000..aba2d1b26b4 Binary files /dev/null and b/icons/obj/food/old/hamburger.dmi differ diff --git a/icons/obj/food/old/hotdog.dmi b/icons/obj/food/old/hotdog.dmi new file mode 100644 index 00000000000..fc1ceeac263 Binary files /dev/null and b/icons/obj/food/old/hotdog.dmi differ diff --git a/icons/obj/food/old/pizza.dmi b/icons/obj/food/old/pizza.dmi new file mode 100644 index 00000000000..03bced6d25c Binary files /dev/null and b/icons/obj/food/old/pizza.dmi differ diff --git a/icons/obj/food/old/taco.dmi b/icons/obj/food/old/taco.dmi new file mode 100644 index 00000000000..038a967c454 Binary files /dev/null and b/icons/obj/food/old/taco.dmi differ diff --git a/icons/obj/food/pasta/extra_meatball_spaghetti.dmi b/icons/obj/food/pasta/extra_meatball_spaghetti.dmi new file mode 100644 index 00000000000..ed37dd53a68 Binary files /dev/null and b/icons/obj/food/pasta/extra_meatball_spaghetti.dmi differ diff --git a/icons/obj/food/pasta/meatball_spaghetti.dmi b/icons/obj/food/pasta/meatball_spaghetti.dmi new file mode 100644 index 00000000000..51c98ad5318 Binary files /dev/null and b/icons/obj/food/pasta/meatball_spaghetti.dmi differ diff --git a/icons/obj/food/pasta/nanopasta.dmi b/icons/obj/food/pasta/nanopasta.dmi new file mode 100644 index 00000000000..96217cbcc5d Binary files /dev/null and b/icons/obj/food/pasta/nanopasta.dmi differ diff --git a/icons/obj/food/pasta/rawspaghetti.dmi b/icons/obj/food/pasta/rawspaghetti.dmi new file mode 100644 index 00000000000..383b0c4a208 Binary files /dev/null and b/icons/obj/food/pasta/rawspaghetti.dmi differ diff --git a/icons/obj/food/pasta/spaghetti.dmi b/icons/obj/food/pasta/spaghetti.dmi new file mode 100644 index 00000000000..b1567a959a5 Binary files /dev/null and b/icons/obj/food/pasta/spaghetti.dmi differ diff --git a/icons/obj/food/pasta/tomato_spaghetti.dmi b/icons/obj/food/pasta/tomato_spaghetti.dmi new file mode 100644 index 00000000000..a32f33f9df5 Binary files /dev/null and b/icons/obj/food/pasta/tomato_spaghetti.dmi differ diff --git a/icons/obj/food/pelmen.dmi b/icons/obj/food/pelmen.dmi new file mode 100644 index 00000000000..56570096d5c Binary files /dev/null and b/icons/obj/food/pelmen.dmi differ diff --git a/icons/obj/food/pelmeni_boiled.dmi b/icons/obj/food/pelmeni_boiled.dmi new file mode 100644 index 00000000000..df1913d9218 Binary files /dev/null and b/icons/obj/food/pelmeni_boiled.dmi differ diff --git a/icons/obj/food/pudding/amanita_jelly.dmi b/icons/obj/food/pudding/amanita_jelly.dmi new file mode 100644 index 00000000000..3c502d26816 Binary files /dev/null and b/icons/obj/food/pudding/amanita_jelly.dmi differ diff --git a/icons/obj/food/pudding/chawanmushi.dmi b/icons/obj/food/pudding/chawanmushi.dmi new file mode 100644 index 00000000000..fcdce2f4123 Binary files /dev/null and b/icons/obj/food/pudding/chawanmushi.dmi differ diff --git a/icons/obj/food/pudding/liberty_duff.dmi b/icons/obj/food/pudding/liberty_duff.dmi new file mode 100644 index 00000000000..aecbc115fdd Binary files /dev/null and b/icons/obj/food/pudding/liberty_duff.dmi differ diff --git a/icons/obj/food/rice/boiled.dmi b/icons/obj/food/rice/boiled.dmi new file mode 100644 index 00000000000..6fc60e19c40 Binary files /dev/null and b/icons/obj/food/rice/boiled.dmi differ diff --git a/icons/obj/food/rice/chazuke.dmi b/icons/obj/food/rice/chazuke.dmi new file mode 100644 index 00000000000..d1dfd84b5f1 Binary files /dev/null and b/icons/obj/food/rice/chazuke.dmi differ diff --git a/icons/obj/food/rice/katsu.dmi b/icons/obj/food/rice/katsu.dmi new file mode 100644 index 00000000000..8266d4069d1 Binary files /dev/null and b/icons/obj/food/rice/katsu.dmi differ diff --git a/icons/obj/food/rice/pudding.dmi b/icons/obj/food/rice/pudding.dmi new file mode 100644 index 00000000000..9c81bedcbbd Binary files /dev/null and b/icons/obj/food/rice/pudding.dmi differ diff --git a/icons/obj/food/salads/salad.dmi b/icons/obj/food/salads/salad.dmi new file mode 100644 index 00000000000..b757d98d356 Binary files /dev/null and b/icons/obj/food/salads/salad.dmi differ diff --git a/icons/obj/food/soups/soup.dmi b/icons/obj/food/soups/soup.dmi new file mode 100644 index 00000000000..a626520b111 Binary files /dev/null and b/icons/obj/food/soups/soup.dmi differ diff --git a/icons/obj/food/taco.dmi b/icons/obj/food/taco.dmi new file mode 100644 index 00000000000..246823c5c02 Binary files /dev/null and b/icons/obj/food/taco.dmi differ diff --git a/icons/obj/food/tofu/soymeat.dmi b/icons/obj/food/tofu/soymeat.dmi new file mode 100644 index 00000000000..3ecd7bd4651 Binary files /dev/null and b/icons/obj/food/tofu/soymeat.dmi differ diff --git a/icons/obj/food/tofu/tofu.dmi b/icons/obj/food/tofu/tofu.dmi new file mode 100644 index 00000000000..58e2261b644 Binary files /dev/null and b/icons/obj/food/tofu/tofu.dmi differ diff --git a/icons/obj/food/tofu/tofurkey.dmi b/icons/obj/food/tofu/tofurkey.dmi new file mode 100644 index 00000000000..8eb668869f8 Binary files /dev/null and b/icons/obj/food/tofu/tofurkey.dmi differ diff --git a/icons/obj/food_canned.dmi b/icons/obj/food_canned.dmi deleted file mode 100644 index 405ea82b792..00000000000 Binary files a/icons/obj/food_canned.dmi and /dev/null differ diff --git a/icons/obj/food_custom.dmi b/icons/obj/food_custom.dmi deleted file mode 100644 index 4ad776cf0d6..00000000000 Binary files a/icons/obj/food_custom.dmi and /dev/null differ diff --git a/icons/obj/food_ingredients.dmi b/icons/obj/food_ingredients.dmi deleted file mode 100644 index 96d41d3ecc7..00000000000 Binary files a/icons/obj/food_ingredients.dmi and /dev/null differ diff --git a/icons/obj/food_trays.dmi b/icons/obj/food_trays.dmi deleted file mode 100644 index 9fc471af6fe..00000000000 Binary files a/icons/obj/food_trays.dmi and /dev/null differ diff --git a/maps/away/errant_pisces/errant_pisces.dm b/maps/away/errant_pisces/errant_pisces.dm index c06fd3ff166..19a9986e014 100644 --- a/maps/away/errant_pisces/errant_pisces.dm +++ b/maps/away/errant_pisces/errant_pisces.dm @@ -61,20 +61,18 @@ visible_message("\The [src] releases [L].") /decl/butchery_data/animal/fish/space_carp/shark - meat_type = /obj/item/food/sharkmeat + meat_type = /obj/item/food/butchery/meat/fish/shark must_use_hook = TRUE -/obj/item/food/sharkmeat - name = "cosmoshark fillet" +/obj/item/food/butchery/meat/fish/shark desc = "A fillet of cosmoshark meat." - icon_state = "fishfillet" - filling_color = "#cecece" + meat_name = "cosmoshark" + color = "#cecece" center_of_mass = @'{"x":17,"y":13}' bitesize = 8 -/obj/item/food/sharkmeat/populate_reagents() +/obj/item/food/butchery/meat/fish/shark/populate_reagents() . = ..() - add_to_reagents(/decl/material/solid/organic/meat, 5) add_to_reagents(/decl/material/liquid/psychoactives, 1) add_to_reagents(/decl/material/gas/chlorine, 1) diff --git a/maps/away/liberia/liberia.dmm b/maps/away/liberia/liberia.dmm index 1ef5a0a18d1..b1f75333396 100644 --- a/maps/away/liberia/liberia.dmm +++ b/maps/away/liberia/liberia.dmm @@ -3077,9 +3077,9 @@ /obj/item/chems/ivbag/blood/oplus, /obj/item/chems/ivbag/blood/ominus, /obj/item/chems/ivbag/blood/ominus, -/obj/item/food/candy/donor, -/obj/item/food/candy/donor, -/obj/item/food/candy/donor, +/obj/item/food/junk/candy/donor, +/obj/item/food/junk/candy/donor, +/obj/item/food/junk/candy/donor, /obj/effect/floor_decal/corner/blue{ dir = 6 }, diff --git a/maps/away/magshield/magshield.dmm b/maps/away/magshield/magshield.dmm index c43125b1d86..84a9824ec11 100644 --- a/maps/away/magshield/magshield.dmm +++ b/maps/away/magshield/magshield.dmm @@ -3615,7 +3615,7 @@ /area/magshield/south) "kI" = ( /obj/structure/table/marble, -/obj/item/food/chips, +/obj/item/food/junk/chips, /turf/floor/tiled/white, /area/magshield/south) "kJ" = ( diff --git a/maps/away/slavers/slavers_base.dmm b/maps/away/slavers/slavers_base.dmm index 999286d5d88..44c7a7fed9d 100644 --- a/maps/away/slavers/slavers_base.dmm +++ b/maps/away/slavers/slavers_base.dmm @@ -742,7 +742,7 @@ /obj/structure/hygiene/toilet{ dir = 4 }, -/obj/item/food/liquidfood, +/obj/item/food/junk/liquidfood, /turf/floor/airless, /area/slavers_base/cells) "ce" = ( @@ -1307,7 +1307,7 @@ /area/slavers_base/med) "dE" = ( /obj/structure/closet/crate/freezer/rations, -/obj/item/food/liquidfood, +/obj/item/food/junk/liquidfood, /turf/floor/airless, /area/slavers_base/med) "dF" = ( @@ -1445,7 +1445,7 @@ /turf/floor/tiled/airless, /area/slavers_base/med) "dZ" = ( -/obj/item/food/liquidfood, +/obj/item/food/junk/liquidfood, /turf/floor/airless, /area/slavers_base/med) "ea" = ( diff --git a/maps/exodus/exodus-1.dmm b/maps/exodus/exodus-1.dmm index c4ebc112867..4ca6f0104f0 100644 --- a/maps/exodus/exodus-1.dmm +++ b/maps/exodus/exodus-1.dmm @@ -1722,8 +1722,8 @@ dir = 1 }, /obj/structure/closet/crate/plastic, -/obj/item/food/liquidfood, -/obj/item/food/liquidfood, +/obj/item/food/junk/liquidfood, +/obj/item/food/junk/liquidfood, /obj/machinery/light{ dir = 4; icon_state = "tube1" @@ -3497,7 +3497,7 @@ name = "Atmos RC"; pixel_y = 32; dir = 1; - + }, /obj/structure/table/steel, /turf/floor/tiled/steel_grid, diff --git a/maps/exodus/exodus-2.dmm b/maps/exodus/exodus-2.dmm index 9c015c46e0b..e23c53d0a88 100644 --- a/maps/exodus/exodus-2.dmm +++ b/maps/exodus/exodus-2.dmm @@ -19131,7 +19131,7 @@ /area/exodus/library) "aOg" = ( /obj/structure/table/woodentable, -/obj/item/food/chips, +/obj/item/food/junk/chips, /obj/random/single{ name = "randomly spawned cola"; spawn_object = /obj/item/chems/drinks/cans/cola @@ -50249,7 +50249,7 @@ /area/exodus/engineering/break_room) "cak" = ( /obj/structure/table/woodentable, -/obj/item/food/chips, +/obj/item/food/junk/chips, /turf/floor/carpet, /area/exodus/engineering/break_room) "cal" = ( diff --git a/maps/exodus/exodus-admin.dmm b/maps/exodus/exodus-admin.dmm index 0f5551f04c3..ef2496e107f 100644 --- a/maps/exodus/exodus-admin.dmm +++ b/maps/exodus/exodus-admin.dmm @@ -2034,7 +2034,7 @@ /obj/structure/table/woodentable{ dir = 5 }, -/obj/item/food/tofukabob, +/obj/item/food/skewer/tofu, /turf/unsimulated/floor{ icon_state = "wood" }, diff --git a/maps/random_ruins/exoplanet_ruins/crashed_pod/crashed_pod.dmm b/maps/random_ruins/exoplanet_ruins/crashed_pod/crashed_pod.dmm index 68c3b87c18e..a8eb8e1fb1e 100644 --- a/maps/random_ruins/exoplanet_ruins/crashed_pod/crashed_pod.dmm +++ b/maps/random_ruins/exoplanet_ruins/crashed_pod/crashed_pod.dmm @@ -294,7 +294,7 @@ /obj/item/bedsheet/orange, /obj/item/stock_parts/matter_bin/adv, /obj/item/stock_parts/micro_laser/ultra, -/obj/item/food/liquidfood, +/obj/item/food/junk/liquidfood, /obj/item/stack/material/brick/mapped/sandstone/fifty, /turf/floor/tiled/techfloor, /area/map_template/crashed_pod) diff --git a/mods/content/dungeon_loot/subtypes/maint.dm b/mods/content/dungeon_loot/subtypes/maint.dm index e3e8127f17a..9664f582c63 100644 --- a/mods/content/dungeon_loot/subtypes/maint.dm +++ b/mods/content/dungeon_loot/subtypes/maint.dm @@ -31,7 +31,7 @@ /obj/item/clothing/mask/gas/half, /obj/item/clothing/mask/breath, /obj/item/chems/glass/rag, - /obj/item/food/liquidfood, + /obj/item/food/junk/liquidfood, /obj/item/secure_storage/briefcase, /obj/item/briefcase, /obj/item/backpack, diff --git a/mods/content/xenobiology/food.dm b/mods/content/xenobiology/food.dm index ced26ebc3ea..8d55981ec8f 100644 --- a/mods/content/xenobiology/food.dm +++ b/mods/content/xenobiology/food.dm @@ -47,7 +47,7 @@ /obj/item/food/slimesoup name = "slime soup" desc = "If no water is available, you may substitute tears." - icon_state = "slimesoup"//nonexistant? + icon = 'mods/content/xenobiology/icons/soup.dmi' filling_color = "#c4dba0" bitesize = 5 eat_sound = 'sound/items/drink.ogg' diff --git a/mods/content/xenobiology/icons/soup.dmi b/mods/content/xenobiology/icons/soup.dmi new file mode 100644 index 00000000000..783b2b5e607 Binary files /dev/null and b/mods/content/xenobiology/icons/soup.dmi differ diff --git a/mods/gamemodes/heist/heist_base.dmm b/mods/gamemodes/heist/heist_base.dmm index 15594241408..335a410fbc4 100644 --- a/mods/gamemodes/heist/heist_base.dmm +++ b/mods/gamemodes/heist/heist_base.dmm @@ -1011,7 +1011,7 @@ /obj/machinery/door/blast/regular/open{ id_tag = "SkipjackShuttersNorth"; name = "Blast Doors"; - + }, /obj/effect/wallframe_spawn/reinforced/titanium, /obj/effect/paint/brown, @@ -1378,7 +1378,7 @@ dir = 4; id_tag = "SkipjackShuttersWest"; name = "Skipjack Shutters"; - + }, /obj/effect/wallframe_spawn/reinforced/titanium, /obj/effect/paint/brown, @@ -1405,7 +1405,7 @@ dir = 8; id_tag = "SkipjackShuttersEast"; name = "Skipjack Shutters"; - + }, /obj/effect/wallframe_spawn/reinforced/titanium, /obj/effect/paint/brown, @@ -1477,7 +1477,7 @@ dir = 4; id_tag = "SkipjackShuttersWest"; name = "Skipjack Shutters"; - + }, /obj/effect/wallframe_spawn/reinforced/titanium, /turf/floor/plating, @@ -1494,8 +1494,8 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/food/tastybread, -/obj/item/food/tastybread, +/obj/item/food/junk/tastybread, +/obj/item/food/junk/tastybread, /turf/unsimulated/floor{ icon_state = "plating"; name = "plating" diff --git a/mods/mobs/dionaea/icons/roast.dmi b/mods/mobs/dionaea/icons/roast.dmi new file mode 100644 index 00000000000..4357f38d10a Binary files /dev/null and b/mods/mobs/dionaea/icons/roast.dmi differ diff --git a/mods/mobs/dionaea/items/roast.dm b/mods/mobs/dionaea/items/roast.dm index 0493e53da1a..02600366297 100644 --- a/mods/mobs/dionaea/items/roast.dm +++ b/mods/mobs/dionaea/items/roast.dm @@ -1,7 +1,7 @@ /obj/item/food/dionaroast name = "roast diona" desc = "It's like an enormous, leathery carrot. With an eye." - icon_state = "dionaroast" + icon = 'mods/mobs/dionaea/icons/roast.dmi' plate = /obj/item/plate filling_color = "#75754b" center_of_mass = @'{"x":16,"y":7}' diff --git a/mods/species/vox/gear/gear.dm b/mods/species/vox/gear/gear.dm index ba840e4429e..3633c86071b 100644 --- a/mods/species/vox/gear/gear.dm +++ b/mods/species/vox/gear/gear.dm @@ -14,7 +14,7 @@ /obj/item/chems/hypospray/autoinjector/pouch_auto/stabilizer = 1, /obj/item/stack/medical/bandage = 1, /obj/item/flashlight/flare/glowstick = 1, - /obj/item/food/candy/proteinbar = 1 + /obj/item/food/junk/candy/proteinbar = 1 ) /obj/item/tank/emergency/nitrogen diff --git a/nebula.dme b/nebula.dme index a99e2ac0470..a047cb2bd87 100644 --- a/nebula.dme +++ b/nebula.dme @@ -3614,19 +3614,14 @@ #include "code\modules\reagents\reagent_containers\drinkingglass\shaker.dm" #include "code\modules\reagents\reagent_containers\drinks\bottle.dm" #include "code\modules\reagents\reagent_containers\drinks\cans.dm" -#include "code\modules\reagents\reagent_containers\drinks\champagne.dm" #include "code\modules\reagents\reagent_containers\drinks\cocktailshaker.dm" #include "code\modules\reagents\reagent_containers\drinks\juicebox.dm" -#include "code\modules\reagents\reagent_containers\food\baked_goods.dm" -#include "code\modules\reagents\reagent_containers\food\bread.dm" #include "code\modules\reagents\reagent_containers\food\burgers.dm" -#include "code\modules\reagents\reagent_containers\food\can_edibility.dm" -#include "code\modules\reagents\reagent_containers\food\canned.dm" -#include "code\modules\reagents\reagent_containers\food\dough.dm" +#include "code\modules\reagents\reagent_containers\food\donkpocket.dm" #include "code\modules\reagents\reagent_containers\food\eggs.dm" #include "code\modules\reagents\reagent_containers\food\fish.dm" #include "code\modules\reagents\reagent_containers\food\fried.dm" -#include "code\modules\reagents\reagent_containers\food\jerky.dm" +#include "code\modules\reagents\reagent_containers\food\hotdog.dm" #include "code\modules\reagents\reagent_containers\food\junkfood.dm" #include "code\modules\reagents\reagent_containers\food\lunch.dm" #include "code\modules\reagents\reagent_containers\food\misc.dm" @@ -3634,20 +3629,32 @@ #include "code\modules\reagents\reagent_containers\food\rice.dm" #include "code\modules\reagents\reagent_containers\food\rotten.dm" #include "code\modules\reagents\reagent_containers\food\sandwich.dm" -#include "code\modules\reagents\reagent_containers\food\sliceable.dm" +#include "code\modules\reagents\reagent_containers\food\skewer.dm" #include "code\modules\reagents\reagent_containers\food\soup.dm" #include "code\modules\reagents\reagent_containers\food\soy.dm" #include "code\modules\reagents\reagent_containers\food\sushi.dm" #include "code\modules\reagents\reagent_containers\food\veggie.dm" +#include "code\modules\reagents\reagent_containers\food\baking\baked_goods.dm" +#include "code\modules\reagents\reagent_containers\food\baking\bread.dm" +#include "code\modules\reagents\reagent_containers\food\baking\cookie.dm" +#include "code\modules\reagents\reagent_containers\food\baking\donuts.dm" +#include "code\modules\reagents\reagent_containers\food\baking\leavened_dough.dm" +#include "code\modules\reagents\reagent_containers\food\baking\piecrust.dm" +#include "code\modules\reagents\reagent_containers\food\baking\pies.dm" +#include "code\modules\reagents\reagent_containers\food\baking\unleavened_dough.dm" +#include "code\modules\reagents\reagent_containers\food\canned\_canned.dm" +#include "code\modules\reagents\reagent_containers\food\canned\can_edibility.dm" +#include "code\modules\reagents\reagent_containers\food\chocolate\chocolate.dm" #include "code\modules\reagents\reagent_containers\food\dairy\_dairy.dm" #include "code\modules\reagents\reagent_containers\food\dairy\butter.dm" #include "code\modules\reagents\reagent_containers\food\dairy\cheeses.dm" #include "code\modules\reagents\reagent_containers\food\meat\cubes.dm" #include "code\modules\reagents\reagent_containers\food\meat\fish.dm" +#include "code\modules\reagents\reagent_containers\food\meat\jerky.dm" #include "code\modules\reagents\reagent_containers\food\meat\meat.dm" +#include "code\modules\reagents\reagent_containers\food\sliceable\_sliceable.dm" #include "code\modules\reagents\reagent_containers\food\sliceable\cakes.dm" #include "code\modules\reagents\reagent_containers\food\sliceable\loaves.dm" -#include "code\modules\reagents\reagent_containers\food\sliceable\misc_slices.dm" #include "code\modules\reagents\reagent_containers\food\sliceable\pizza\_pizza.dm" #include "code\modules\reagents\reagent_containers\food\sliceable\pizza\pizza_box.dm" #include "code\modules\reagents\reagent_containers\food\sliceable\pizza\pizza_margherita.dm" diff --git a/tools/map_migrations/4525_food_breakup.txt b/tools/map_migrations/4525_food_breakup.txt new file mode 100644 index 00000000000..f565bb30dc2 --- /dev/null +++ b/tools/map_migrations/4525_food_breakup.txt @@ -0,0 +1,37 @@ +/obj/item/food/sosjerky/@SUBTYPES : /obj/item/food/junk/sosjerky/@SUBTYPES{@OLD} +/obj/item/food/no_raisin/@SUBTYPES : /obj/item/food/junk/no_raisin/@SUBTYPES{@OLD} +/obj/item/food/spacetwinkie/@SUBTYPES : /obj/item/food/junk/spacetwinkie/@SUBTYPES{@OLD} +/obj/item/food/cheesiehonkers/@SUBTYPES : /obj/item/food/junk/cheesiehonkers/@SUBTYPES{@OLD} +/obj/item/food/syndicake/@SUBTYPES : /obj/item/food/junk/syndicake/@SUBTYPES{@OLD} +/obj/item/food/pistachios/@SUBTYPES : /obj/item/food/junk/pistachios/@SUBTYPES{@OLD} +/obj/item/food/semki/@SUBTYPES : /obj/item/food/junk/semki/@SUBTYPES{@OLD} +/obj/item/food/squid/@SUBTYPES : /obj/item/food/junk/squid/@SUBTYPES{@OLD} +/obj/item/food/croutons/@SUBTYPES : /obj/item/food/junk/croutons/@SUBTYPES{@OLD} +/obj/item/food/salo/@SUBTYPES : /obj/item/food/junk/salo/@SUBTYPES{@OLD} +/obj/item/food/driedfish/@SUBTYPES : /obj/item/food/junk/driedfish/@SUBTYPES{@OLD} +/obj/item/food/liquidfood/@SUBTYPES : /obj/item/food/junk/liquidfood/@SUBTYPES{@OLD} +/obj/item/food/meatcube/@SUBTYPES : /obj/item/food/junk/meatcube/@SUBTYPES{@OLD} +/obj/item/food/tastybread/@SUBTYPES : /obj/item/food/junk/tastybread/@SUBTYPES{@OLD} +/obj/item/food/candy/@SUBTYPES : /obj/item/food/junk/candy/@SUBTYPES{@OLD} +/obj/item/food/candy_corn/@SUBTYPES : /obj/item/food/junk/candy_corn/@SUBTYPES{@OLD} +/obj/item/food/chips/@SUBTYPES : /obj/item/food/junk/chips/@SUBTYPES{@OLD} +/obj/item/food/lunacake/@SUBTYPES : /obj/item/food/junk/lunacake/@SUBTYPES{@OLD} +/obj/item/food/triton/@SUBTYPES : /obj/item/food/junk/triton/@SUBTYPES{@OLD} +/obj/item/food/saturn/@SUBTYPES : /obj/item/food/junk/saturn/@SUBTYPES{@OLD} +/obj/item/food/jupiter/@SUBTYPES : /obj/item/food/junk/jupiter/@SUBTYPES{@OLD} +/obj/item/food/pluto/@SUBTYPES : /obj/item/food/junk/pluto/@SUBTYPES{@OLD} +/obj/item/food/mars/@SUBTYPES : /obj/item/food/junk/mars/@SUBTYPES{@OLD} +/obj/item/food/venus/@SUBTYPES : /obj/item/food/junk/venus/@SUBTYPES{@OLD} +/obj/item/food/oort/@SUBTYPES : /obj/item/food/junk/oort/@SUBTYPES{@OLD} +/obj/item/food/ricecake/@SUBTYPES : /obj/item/food/junk/ricecake/@SUBTYPES{@OLD} +/obj/item/food/pokey/@SUBTYPES : /obj/item/food/junk/pokey/@SUBTYPES{@OLD} +/obj/item/food/weebonuts/@SUBTYPES : /obj/item/food/junk/weebonuts/@SUBTYPES{@OLD} +/obj/item/food/chocobanana/@SUBTYPES : /obj/item/food/junk/chocobanana/@SUBTYPES{@OLD} +/obj/item/food/dango/@SUBTYPES : /obj/item/food/junk/dango/@SUBTYPES{@OLD} + +/obj/item/food/xenomeat/@SUBTYPES : /obj/item/food/butchery/meat/xeno/@SUBTYPES{@OLD} +/obj/item/food/cosmoshark/@SUBTYPES : /obj/item/food/butchery/meat/fish/shark/@SUBTYPES{@OLD} +/obj/item/food/bearmeat/@SUBTYPES : obj/item/food/butchery/meat/bear/@SUBTYPES{@OLD} + +/obj/item/food/meatkabob/@SUBTYPES : /obj/item/food/skewer/meat/@SUBTYPES{@OLD} +/obj/item/food/tofukabob/@SUBTYPES : /obj/item/food/skewer/tofu/@SUBTYPES{@OLD} \ No newline at end of file