diff --git a/code/datums/supplypacks/hydroponics.dm b/code/datums/supplypacks/hydroponics.dm
index 069911606e..da6e153da5 100644
--- a/code/datums/supplypacks/hydroponics.dm
+++ b/code/datums/supplypacks/hydroponics.dm
@@ -156,3 +156,13 @@
contains = list(/obj/machinery/portable_atmospherics/hydroponics{anchored = 0} = 3)
access = access_hydroponics
+/datum/supply_pack/hydro/fish
+ name = "Seafood supply crate"
+ contains = list(
+ /obj/item/weapon/reagent_containers/food/snacks/lobster = 6,
+ /obj/item/weapon/reagent_containers/food/snacks/cuttlefish = 8,
+ /obj/item/weapon/reagent_containers/food/snacks/sliceable/monkfish = 1
+ )
+ cost = 20
+ containertype = /obj/structure/closet/crate/freezer/centauri
+ containername = "Fresh fish crate"
\ No newline at end of file
diff --git a/code/game/objects/items/trash.dm b/code/game/objects/items/trash.dm
index fc73b3196c..fb9da9c155 100644
--- a/code/game/objects/items/trash.dm
+++ b/code/game/objects/items/trash.dm
@@ -56,6 +56,10 @@
name = "bbq chips bag"
icon_state = "chips_bbq"
+/obj/item/trash/chips/snv
+ name = "salt & vinegar chips bag"
+ icon_state = "chips_snv"
+
/obj/item/trash/cookiesnack
name = "\improper Carps Ahoy! miniature cookies packet"
icon_state = "cookiesnack"
@@ -89,10 +93,26 @@
/obj/item/trash/plate
name = "plate"
icon_state = "plate"
+ drop_sound = 'sound/items/drop/food.ogg'
+ pickup_sound = 'sound/items/pickup/food.ogg'
/obj/item/trash/snack_bowl
name = "snack bowl"
icon_state = "snack_bowl"
+ drop_sound = 'sound/items/drop/food.ogg'
+ pickup_sound = 'sound/items/pickup/food.ogg'
+
+/obj/item/trash/small_bowl
+ name = "small bowl"
+ icon_state = "small_bowl"
+ drop_sound = 'sound/items/drop/food.ogg'
+ pickup_sound = 'sound/items/pickup/food.ogg'
+
+/obj/item/trash/asian_bowl
+ name = "decorated bowl"
+ icon_state = "asian_bowl"
+ drop_sound = 'sound/items/drop/food.ogg'
+ pickup_sound = 'sound/items/pickup/food.ogg'
/obj/item/trash/pistachios
name = "pistachios packet"
@@ -246,6 +266,12 @@
drop_sound = 'sound/items/drop/soda.ogg'
pickup_sound = 'sound/items/pickup/soda.ogg'
+/obj/item/trash/ntbeans
+ name = "empty baked bean can"
+ icon_state = "ntbeans"
+ drop_sound = 'sound/items/drop/soda.ogg'
+ pickup_sound = 'sound/items/pickup/soda.ogg'
+
/obj/item/trash/salo //ADDITION 04/11/2021
name = "salo pack"
icon_state = "pigfat"
@@ -367,3 +393,14 @@
name = "veggie ration bag"
icon_state = "vegration"
+/obj/item/trash/smolburger
+ name = "burger packaging"
+ icon_state = "smolburger"
+
+/obj/item/trash/smolhotdog
+ name = "hotdog packaging"
+ icon_state = "smolhotdog"
+
+/obj/item/trash/smolburrito
+ name = "burrito packaging"
+ icon_state = "smolburrito"
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm
index c444edb9b7..3506327f99 100644
--- a/code/game/objects/items/weapons/storage/boxes.dm
+++ b/code/game/objects/items/weapons/storage/boxes.dm
@@ -404,23 +404,23 @@
desc = "Drymate brand monkey cubes. Just add water!"
icon = 'icons/obj/food.dmi'
icon_state = "monkeycubebox"
- can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube)
- starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped = 4)
+ can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube)
+ starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/wrapped = 4)
/obj/item/weapon/storage/box/monkeycubes/farwacubes
name = "farwa cube box"
desc = "Drymate brand farwa cubes, shipped from Meralar. Just add water!"
- starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/farwacube = 4)
+ starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/wrapped/farwacube = 4)
/obj/item/weapon/storage/box/monkeycubes/stokcubes
name = "stok cube box"
desc = "Drymate brand stok cubes, shipped from Moghes. Just add water!"
- starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/stokcube = 4)
+ starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/wrapped/stokcube = 4)
/obj/item/weapon/storage/box/monkeycubes/neaeracubes
name = "neaera cube box"
desc = "Drymate brand neaera cubes, shipped from Qerr'balak. Just add water!"
- starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/neaeracube = 4)
+ starts_with = list(/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/wrapped/neaeracube = 4)
/obj/item/weapon/storage/box/ids
name = "box of spare IDs"
diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm
index 9f5ce96020..131e905265 100644
--- a/code/modules/clothing/head/misc.dm
+++ b/code/modules/clothing/head/misc.dm
@@ -489,4 +489,10 @@
/obj/item/clothing/head/beret/corp/xion
name = "\improper Xion beret"
desc = "An orange beret denoting employment with Xion Manufacturing. For personnel that are more inclined towards style than safety."
- icon_state = "beret_orange"
\ No newline at end of file
+ icon_state = "beret_orange"
+
+/obj/item/clothing/head/fish
+ name = "fish skull"
+ desc = "You... you're not actually going to wear that, right?"
+ icon_state = "fishskull"
+ flags_inv = HIDEEARS|BLOCKHAIR
\ No newline at end of file
diff --git a/code/modules/economy/vending_machines.dm b/code/modules/economy/vending_machines.dm
index 4999aa91ca..47190cb732 100644
--- a/code/modules/economy/vending_machines.dm
+++ b/code/modules/economy/vending_machines.dm
@@ -152,6 +152,7 @@
/obj/item/weapon/reagent_containers/food/drinks/dry_ramen = 12,
/obj/item/weapon/reagent_containers/food/snacks/chips = 12,
/obj/item/weapon/reagent_containers/food/snacks/chips/bbq = 12,
+ /obj/item/weapon/reagent_containers/food/snacks/chips/snv = 12,
/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers = 12,
/obj/item/weapon/reagent_containers/food/snacks/pistachios = 12,
/obj/item/weapon/reagent_containers/food/snacks/semki = 12,
@@ -182,6 +183,7 @@
/obj/item/weapon/reagent_containers/food/drinks/dry_ramen = 5,
/obj/item/weapon/reagent_containers/food/snacks/chips = 1,
/obj/item/weapon/reagent_containers/food/snacks/chips/bbq = 1,
+ /obj/item/weapon/reagent_containers/food/snacks/chips/snv = 1,
/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers = 1,
/obj/item/weapon/reagent_containers/food/snacks/pistachios = 1,
/obj/item/weapon/reagent_containers/food/snacks/semki = 1,
@@ -838,6 +840,7 @@
/obj/machinery/vending/hotfood
name = "\improper Hot Foods!"
desc = "An old vending machine promising 'hot foods'. You doubt any of its contents are still edible."
+ description_fluff = "The Galaksi 'Toasty-Fresh' vendor line was discontinued decades ago after a brief run due to the need for twice-daily restocking."
vend_delay = 40
icon_state = "hotfood"
products = list(/obj/item/weapon/reagent_containers/food/snacks/old/pizza = 3,
@@ -852,10 +855,11 @@
/obj/machinery/vending/weeb
name = "\improper Nippon-tan!"
- desc = "A distressingly ethnic vending machine loaded with high sucrose low calorie for lack of better words snacks."
+ desc = "A distressingly cutesy vending machine loaded with high sucrose low calorie - for lack of a better word - 'snacks'."
+ description_fluff = "Nippon-tan branding remains competitive in the face of its much larger competitors due to their willingness to offer more variety than the absolute most basic faux-corn snacks to the massive 'long shelf life' market."
vend_delay = 30
- vend_reply = "Dōmo arigatō!"
- product_slogans = "Tanoshī! ;Itadakimasu!"
+ vend_reply = "Domo arigato!"
+ product_slogans = "Tanosho! ;Itadakimasu!"
icon_state = "weeb"
products = list(/obj/item/weapon/reagent_containers/food/snacks/weebonuts = 8,
/obj/item/weapon/reagent_containers/food/snacks/ricecake = 8,
@@ -866,7 +870,8 @@
/obj/item/weapon/storage/box/pocky = 6,
/obj/item/weapon/reagent_containers/food/snacks/chocobanana = 6,
/obj/item/weapon/reagent_containers/food/snacks/dorayaki = 6,
- /obj/item/weapon/reagent_containers/food/snacks/daifuku = 6
+ /obj/item/weapon/reagent_containers/food/snacks/daifuku = 6,
+ /obj/item/weapon/reagent_containers/food/snacks/packaged/mochicake = 6
)
prices = list(/obj/item/weapon/reagent_containers/food/snacks/weebonuts = 5,
@@ -878,7 +883,8 @@
/obj/item/weapon/storage/box/pocky = 8,
/obj/item/weapon/reagent_containers/food/snacks/chocobanana = 10,
/obj/item/weapon/reagent_containers/food/snacks/dorayaki = 5,
- /obj/item/weapon/reagent_containers/food/snacks/daifuku = 5
+ /obj/item/weapon/reagent_containers/food/snacks/daifuku = 5,
+ /obj/item/weapon/reagent_containers/food/snacks/packaged/mochicake = 10
)
////////////////////sol_vend (Mars Mart) (ADDED 04/11/2021)////////////////////////////////////////////////////
@@ -886,6 +892,7 @@
/obj/machinery/vending/sol
name = "\improper Sol-Snacks"
desc = "A SolCentric vending machine dispensing a number of Sol-themed snacks, along with other foods."
+ description_fluff = "Sol-Snacks is a cash-bloated Catalonian startup convinced that the rest of the galaxy loves Sol as much as Sol does. Their ongoing vending contract with NanoTrasen has annoyed certain multinational factions."
vend_delay = 30
product_slogans = "A taste of Sol!"
icon_state = "solsnack"
@@ -898,6 +905,8 @@
/obj/item/weapon/reagent_containers/food/snacks/oort = 8,
/obj/item/weapon/reagent_containers/food/snacks/sun_snax = 8,
/obj/item/weapon/reagent_containers/food/snacks/canned/appleberry = 6,
+ /obj/item/weapon/reagent_containers/food/snacks/packaged/lunacake = 6,
+ /obj/item/weapon/reagent_containers/food/snacks/packaged/darklunacake = 6,
/obj/item/weapon/storage/box/gum = 8,
/obj/item/weapon/storage/box/admints = 8
)
@@ -911,6 +920,8 @@
/obj/item/weapon/reagent_containers/food/snacks/oort = 5,
/obj/item/weapon/reagent_containers/food/snacks/sun_snax = 5,
/obj/item/weapon/reagent_containers/food/snacks/canned/appleberry = 8,
+ /obj/item/weapon/reagent_containers/food/snacks/packaged/lunacake = 10,
+ /obj/item/weapon/reagent_containers/food/snacks/packaged/darklunacake = 10,
/obj/item/weapon/storage/box/gum = 2,
/obj/item/weapon/storage/box/admints = 2
)
@@ -922,6 +933,7 @@
/obj/machinery/vending/snix
name = "\improper Snix"
desc = "A snack vending machine, offering a selection of slavic beer snacks."
+ description_fluff = "Snix is a Centauri Provisions brand marketed directly to the surprisingly widespread population of spacer slavs."
vend_delay = 30
product_slogans = "Snix!"
icon_state = "snix"
@@ -962,6 +974,7 @@
/obj/machinery/vending/snlvend
name = "\improper Shop-n-Large Snacks!"
desc = "A Shop-n-Large brand vending machine! Enjoy all your favorites!"
+ description_fluff = "Shop-n-Large is Centauri Provisions' own generic low-cost retail brand, rumoured to sell genuinely lower-grade versions of its product line. Efforts to prove this have been widely denied publication on dubious grounds."
vend_delay = 30
product_slogans = "Shop Shop-n-Large!, Buy! Buy! Buy!, Try our new Bread Tube! Now with 10% less sawdust!"
icon = 'icons/obj/vending.dmi'
@@ -979,6 +992,7 @@
/obj/item/weapon/reagent_containers/food/snacks/skrellsnacks = 8,
/obj/item/weapon/reagent_containers/food/snacks/tastybread = 8,
/obj/item/weapon/reagent_containers/food/snacks/chips/bbq = 8,
+ /obj/item/weapon/reagent_containers/food/snacks/chips/snv = 8,
/obj/item/weapon/reagent_containers/food/snacks/chips = 8,
/obj/item/weapon/reagent_containers/food/snacks/driedfish = 8,
/obj/item/weapon/reagent_containers/food/snacks/cookiesnack = 8
@@ -997,6 +1011,7 @@
/obj/item/weapon/reagent_containers/food/snacks/skrellsnacks = 5,
/obj/item/weapon/reagent_containers/food/snacks/tastybread = 5,
/obj/item/weapon/reagent_containers/food/snacks/chips/bbq = 5,
+ /obj/item/weapon/reagent_containers/food/snacks/chips/snv = 5,
/obj/item/weapon/reagent_containers/food/snacks/chips = 5,
/obj/item/weapon/reagent_containers/food/snacks/driedfish = 5,
/obj/item/weapon/reagent_containers/food/snacks/cookiesnack = 5
@@ -1007,6 +1022,7 @@
/obj/machinery/vending/sovietsoda
name = "BODA"
desc = "An old sweet water vending machine,how did this end up here?"
+ description_fluff = "Originally the product of a genuine rim-world commune, BODA vendors have been produced by the Gilthari Exports luxury vending division for almost two centuries."
icon_state = "sovietsoda"
product_ads = "For Tsar and Country.;Have you fulfilled your nutrition quota today?;Very nice!;We are simple people, for this is all we eat.;If there is a person, there is a problem. If there is no person, then there is no problem."
products = list(/obj/item/weapon/reagent_containers/food/drinks/cans/boda = 30, //ADDITION 04/03/2021
@@ -1017,20 +1033,23 @@
/obj/machinery/vending/sovietvend //ADDITION 04/20/2021
name = "Ration Station"
- desc = "An old ration vendor unit. How it even still functional?"
+ desc = "A corporate ration vendor unit. Extremely functional."
+ description_fluff = "Designed for use on remote, utilitarian corporate facilities. Perfect for extracting a little extra back from indentured miners. Often modified to accept only company scrip."
icon = 'icons/obj/vending.dmi'
icon_state = "sovietvend"
- product_ads = "For Tsar and Country.;Have you fulfilled your nutrition quota today?;Very nice!;We are simple people, for this is all we eat.;If there is a person, there is a problem. If there is no person, then there is no problem."
+ product_ads = "Hunger may affect productivity.;Purchase sustinence here.;The company offers only the best for your continued survival.;Remember to obey corporate regulations when purchasing daily rations!;One per customer."
products = list(/obj/item/weapon/reagent_containers/food/snacks/packaged/genration = 8,
/obj/item/weapon/reagent_containers/food/snacks/packaged/vegration = 8,
/obj/item/weapon/reagent_containers/food/snacks/packaged/meatration = 8)
- contraband = list(/obj/item/weapon/reagent_containers/food/snacks/packaged/sweetration = 2)
+ contraband = list(/obj/item/weapon/reagent_containers/food/snacks/packaged/sweetration = 2,
+ /obj/item/weapon/reagent_containers/food/snacks/canned/ntbeans = 2)
///////////////////////Radical Renard///////////////////////////////////////
/obj/machinery/vending/radren
name = "Radical Renard Sodas"
- desc = "A softdrink vendor owned by a frontier based soda company that's been contracted by NanoTrasen"
+ desc = "A softdrink vendor owned by a frontier based soda company that's been contracted by NanoTrasen."
+ description_fluff = "New Singapore's most popular chilled drink vending operation has been franchised all over the galaxy at dubiously low prices. How can you hate a mascot like Renard?"
icon_state = "radren"
product_slogans = "Enjoy the rad refreshing taste of Radical Renard brand soda!"
product_ads = "Radically Refreshing!;Get Cool!;Have you tried our new Andromeda Apple?;Enjoy a cold one with Renard!"
diff --git a/code/modules/food/food/condiment.dm b/code/modules/food/food/condiment.dm
index e005d71330..55009e1213 100644
--- a/code/modules/food/food/condiment.dm
+++ b/code/modules/food/food/condiment.dm
@@ -61,6 +61,11 @@
desc = "You feel more American already."
icon_state = "ketchup"
center_of_mass = list("x"=16, "y"=6)
+ if("mustard")
+ name = "Mustard"
+ desc = "A somewhat bitter topping."
+ icon_state = "mustard"
+ center_of_mass = list("x"=16, "y"=6)
if("capsaicin")
name = "Hotsauce"
desc = "You can almost TASTE the stomach ulcers now!"
@@ -76,6 +81,11 @@
desc = "A salty soy-based flavoring."
icon_state = "soysauce"
center_of_mass = list("x"=16, "y"=6)
+ if("vinegar")
+ name = "Vinegar"
+ desc = "An acetic acid used in various dishes."
+ icon_state = "vinegar"
+ center_of_mass = list("x"=16, "y"=6)
if("frostoil")
name = "Coldsauce"
desc = "Leaves the tongue numb in its passage."
@@ -87,7 +97,7 @@
icon_state = "saltshaker"
center_of_mass = list("x"=17, "y"=11)
if("blackpepper")
- name = "Pepper Mill"
+ name = "Pepper Shaker"
desc = "Often used to flavor food or make people sneeze."
icon_state = "peppermillsmall"
center_of_mass = list("x"=17, "y"=11)
@@ -118,7 +128,6 @@
if("spacespice")
name = "bottle of space spice"
desc = "An exotic blend of spices for cooking. Definitely not worms."
- icon = 'icons/obj/food_syn.dmi'
icon_state = "spacespicebottle"
center_of_mass = list("x"=16, "y"=6)
if("barbecue")
@@ -158,6 +167,10 @@
. = ..()
reagents.add_reagent("ketchup", 50)
+/obj/item/weapon/reagent_containers/food/condiment/mustard/Initialize()
+ . = ..()
+ reagents.add_reagent("mustard", 50)
+
/obj/item/weapon/reagent_containers/food/condiment/hotsauce/Initialize()
. = ..()
reagents.add_reagent("capsaicin", 50)
@@ -177,6 +190,10 @@
. = ..()
reagents.add_reagent("soysauce", 50)
+/obj/item/weapon/reagent_containers/food/condiment/vinegar/Initialize()
+ . = ..()
+ reagents.add_reagent("vinegar", 50)
+
/obj/item/weapon/reagent_containers/food/condiment/yeast
name = "Yeast"
@@ -193,8 +210,8 @@
/obj/item/weapon/reagent_containers/food/condiment/small/on_reagent_change()
return
-/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker //Seperate from above since it's a small shaker rather then
- name = "salt shaker" // a large one.
+/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker //Seperate from above since it's a small shaker rather than a large one
+ name = "salt shaker"
desc = "Salt. From space oceans, presumably."
icon_state = "saltshakersmall"
center_of_mass = list("x"=17, "y"=11)
@@ -203,16 +220,26 @@
. = ..()
reagents.add_reagent("sodiumchloride", 20)
-/obj/item/weapon/reagent_containers/food/condiment/small/peppermill
- name = "pepper mill"
+/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker
+ name = "pepper shaker"
desc = "Often used to flavor food or make people sneeze."
- icon_state = "peppermillsmall"
+ icon_state = "peppershakersmall"
center_of_mass = list("x"=17, "y"=11)
-/obj/item/weapon/reagent_containers/food/condiment/small/peppermill/Initialize()
+/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker/Initialize()
. = ..()
reagents.add_reagent("blackpepper", 20)
+/obj/item/weapon/reagent_containers/food/condiment/small/peppergrinder
+ name = "pepper mill"
+ desc = "Fancy way to season a dish or make people sneeze."
+ icon_state = "peppermill"
+ center_of_mass = list("x"=17, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/condiment/small/peppergrinder/Initialize()
+ . = ..()
+ reagents.add_reagent("blackpepper", 30)
+
/obj/item/weapon/reagent_containers/food/condiment/small/sugar
name = "sugar"
desc = "Sweetness in a bottle"
@@ -429,11 +456,11 @@
. = ..()
reagents.add_reagent("flour", 200)
randpixel_xy()
-
+
/obj/item/weapon/reagent_containers/food/condiment/spacespice
name = "space spices"
desc = "An exotic blend of spices for cooking. Definitely not worms."
- icon = 'icons/obj/food_syn.dmi'
+ icon = 'icons/obj/food.dmi'
icon_state = "spacespicebottle"
possible_transfer_amounts = list(1,40) //for clown turning the lid off
amount_per_transfer_from_this = 1
diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm
index 1c83b7d940..54b231b06a 100644
--- a/code/modules/food/food/snacks.dm
+++ b/code/modules/food/food/snacks.dm
@@ -20,6 +20,9 @@
var/cooked_icon = null //Used for foods that are "cooked" without being made into a specific recipe or combination.
//Generally applied during modification cooking with oven/fryer
//Used to stop deepfried meat from looking like slightly tanned raw meat, and make it actually look cooked
+ var/package = FALSE // If this has a wrapper on it. If true, it will print a message and ask you to remove it
+ var/package_trash // Packaged meals drop this trash type item when opened, if set
+ var/package_open_state// Packaged meals switch to this state when opened, if set
center_of_mass = list("x"=16, "y"=16)
w_class = ITEMSIZE_SMALL
force = 0
@@ -47,7 +50,8 @@
return
/obj/item/weapon/reagent_containers/food/snacks/attack_self(mob/user as mob)
- return
+ if(package && !user.incapacitated())
+ unpackage(user)
/obj/item/weapon/reagent_containers/food/snacks/attack(mob/living/M as mob, mob/user as mob, def_zone)
if(reagents && !reagents.total_volume)
@@ -56,6 +60,10 @@
qdel(src)
return 0
+ if(package)
+ to_chat(M, "How do you expect to eat this with the packaging still on?")
+ return FALSE
+
if(istype(M, /mob/living/carbon))
//TODO: replace with standard_feed_mob() call.
@@ -206,6 +214,16 @@
something.dropInto(loc)
. = ..()
+/obj/item/weapon/reagent_containers/food/snacks/proc/unpackage(mob/user)
+ package = FALSE
+ to_chat(user, "You tear open the plastic on \the [src]")
+ playsound(user,'sound/effects/packagedfoodopen.ogg', 15, 1)
+ if(package_trash)
+ var/obj/item/T = new package_trash
+ user.put_in_hands(T)
+ if(package_open_state)
+ icon_state = package_open_state
+
////////////////////////////////////////////////////////////////////////////////
/// FOOD END
////////////////////////////////////////////////////////////////////////////////
@@ -1321,7 +1339,7 @@
name = "Wing Fang Chu"
desc = "A savory dish of alien wing wang in soy."
icon_state = "wingfangchu"
- trash = /obj/item/trash/snack_bowl
+ trash = /obj/item/trash/small_bowl
filling_color = "#43DE18"
center_of_mass = list("x"=17, "y"=9)
bitesize = 2
@@ -1386,6 +1404,7 @@
/obj/item/weapon/reagent_containers/food/snacks/popcorn
name = "Popcorn"
desc = "Now let's find some cinema."
+ icon = 'icons/obj/food_snacks.dmi'
icon_state = "popcorn"
trash = /obj/item/trash/popcorn
var/unpopped = 0
@@ -1776,39 +1795,45 @@
reagents.add_reagent("frostoil", 3)
reagents.add_reagent("tomatojuice", 2)
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube
- name = "monkey cube"
- desc = "Just add water!"
- flags = OPENCONTAINER
+/obj/item/weapon/reagent_containers/food/snacks/cube //Generic version
+ name = "dehydrated matter cube"
+ desc = "Just add water! Warning: Do not swallow!"
icon_state = "monkeycube"
+ nutriment_amt = 1
+ nutriment_desc = list("sawdust" = 1)
bitesize = 12
filling_color = "#ADAC7F"
center_of_mass = list("x"=16, "y"=14)
-
+ w_class = ITEMSIZE_TINY
+ flags = OPENCONTAINER
var/wrapped = 0
+ var/contents_type = "item"
var/monkey_type = "Monkey"
+ var/item_type = /obj/item/stack/material/steel
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/Initialize()
+/obj/item/weapon/reagent_containers/food/snacks/cube/Initialize()
. = ..()
- reagents.add_reagent("protein", 10)
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/attack_self(mob/user as mob)
- if(wrapped)
- Unwrap(user)
-
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/proc/Expand()
+/obj/item/weapon/reagent_containers/food/snacks/cube/proc/Expand()
src.visible_message("\The [src] expands!")
- var/mob/living/carbon/human/H = new(get_turf(src))
- H.set_species(monkey_type)
- H.real_name = H.species.get_random_name()
- H.name = H.real_name
- if(ismob(loc))
- var/mob/M = loc
- M.unEquip(src)
+ if (contents_type == "mob")
+ var/mob/living/carbon/human/H = new(get_turf(src))
+ H.set_species(monkey_type)
+ H.real_name = H.species.get_random_name()
+ H.name = H.real_name
+ if(ismob(loc))
+ var/mob/M = loc
+ M.unEquip(src)
+ else if (contents_type == "item")
+ new item_type(get_turf(src))
qdel(src)
return 1
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/proc/Unwrap(mob/user as mob)
+/obj/item/weapon/reagent_containers/food/snacks/cube/attack_self(mob/user as mob)
+ if(wrapped)
+ Unwrap(user)
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/proc/Unwrap(mob/user as mob)
icon_state = "monkeycube"
desc = "Just add water!"
to_chat(user, "You unwrap the cube.")
@@ -1816,48 +1841,159 @@
flags |= OPENCONTAINER
return
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/On_Consume(var/mob/M)
+/obj/item/weapon/reagent_containers/food/snacks/cube/On_Consume(var/mob/M)
+ var/mob/living/carbon/human/H = M
if(ishuman(M))
- var/mob/living/carbon/human/H = M
- H.visible_message("A screeching creature bursts out of [M]'s chest!")
- var/obj/item/organ/external/organ = H.get_organ(BP_TORSO)
- organ.take_damage(50, 0, 0, "Animal escaping the ribcage")
+ if (contents_type == "mob")
+ H.visible_message("A screeching creature bursts out of [M]'s chest!")
+ var/obj/item/organ/external/organ = H.get_organ(BP_TORSO)
+ organ.take_damage(50, 0, 0, "Animal escaping the ribcage")
+ else if (contents_type == "item")
+ H.visible_message("A rapidly expanding mass bursts from [M]'s mouth!")
+ var/obj/item/organ/external/organ = H.get_organ(BP_HEAD)
+ organ.take_damage(25, 0, 0, "Large object exiting the mouth")
Expand()
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/on_reagent_change()
+/obj/item/weapon/reagent_containers/food/snacks/cube/on_reagent_change()
if(reagents.has_reagent("water"))
Expand()
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped
+//Carbon mob cubes
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube
+ name = "monkey cube"
+ center_of_mass = list("x"=16, "y"=14)
+ contents_type = "mob"
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 10)
+
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/wrapped
desc = "Still wrapped in some paper."
icon_state = "monkeycubewrap"
flags = 0
wrapped = 1
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/farwacube
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/farwacube
name = "farwa cube"
monkey_type = "Farwa"
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/farwacube
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/wrapped/farwacube
name = "farwa cube"
monkey_type = "Farwa"
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/stokcube
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/stokcube
name = "stok cube"
monkey_type = "Stok"
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/stokcube
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/wrapped/stokcube
name = "stok cube"
monkey_type = "Stok"
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/neaeracube
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/neaeracube
name = "neaera cube"
monkey_type = "Neaera"
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/neaeracube
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/wrapped/neaeracube
name = "neaera cube"
monkey_type = "Neaera"
+//Food cubes
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/protein
+ name = "protein cube"
+ desc = "A colony of meat cells, just add water! Warning: Do not swallow!"
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "proteincube"
+ item_type = /obj/item/weapon/reagent_containers/food/snacks/proteinslab
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/on_reagent_change()
+ if(reagents.has_reagent("water"))
+ Expand()
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/protein
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/protein/Initialize()
+ . = ..()
+ reagents.add_reagent("meatcolony", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/proteinslab
+ name = "protein slab"
+ desc = "A slab of near pure protein, extremely artificial, and thoroughly disgusting."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "proteinslab"
+ bitesize = 10
+ nutriment_amt = 5
+ nutriment_desc = list("bitter chyme" = 50)
+
+/obj/item/weapon/reagent_containers/food/snacks/proteinslab/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 30)
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/nutriment
+ name = "nutriment cube"
+ desc = "A colony of plant cells, Just add water! Warning: Do not swallow!"
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "nutrimentcube"
+ item_type = /obj/item/weapon/reagent_containers/food/snacks/nutrimentslab
+
+/obj/item/weapon/reagent_containers/food/snacks/cube/nutriment/Initialize()
+ . = ..()
+ reagents.add_reagent("plantcolony", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/nutrimentslab
+ name = "nutriment slab"
+ desc = "A slab of near pure plant-based nutrients, extremely artificial, and thoroughly disgusting."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "nutrimentslab"
+ bitesize = 10
+ nutriment_amt = 20
+ nutriment_desc = list("compost" = 50)
+
+
+/obj/item/weapon/storage/box/wings/tray //Might as well re-use this code.
+ name = "ration cube tray"
+ desc = "A tray of food cubes, the label warns not to consume before adding water or mixing with virusfood."
+ icon_state = "tray8"
+ icon_base = "tray"
+ startswith = 8
+ w_class = ITEMSIZE_SMALL
+ max_storage_space = ITEMSIZE_COST_TINY * 8
+ starts_with = list(
+ /obj/item/weapon/reagent_containers/food/snacks/cube/protein = 4,
+ /obj/item/weapon/reagent_containers/food/snacks/cube/nutriment = 4
+ )
+ can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/cube/protein,
+ /obj/item/weapon/reagent_containers/food/snacks/cube/nutriment)
+
+/obj/item/weapon/reagent_containers/food/snacks/locust
+ name = "locust"
+ desc = "A vibrant bug that looks like a wasp, but is in fact a locust. Crunchy."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "locust"
+ nutriment_amt = 4
+ nutriment_desc = list("crunchy" = 1, "goo" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/locust/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 1)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/locust_cooked
+ name = "fried locust"
+ desc = "A fried locust, extremely crunchy."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "locust_cooked"
+ nutriment_amt = 2
+ nutriment_desc = list("crunchy" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/locust_cooked/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
/obj/item/weapon/reagent_containers/food/snacks/spellburger
name = "Spell Burger"
desc = "This is absolutely Ei Nath."
@@ -2221,7 +2357,17 @@
/obj/item/weapon/reagent_containers/food/snacks/candiedapple
name = "Candied Apple"
desc = "An apple coated in sugary sweetness."
- icon_state = "candiedapple"
+ icon_state = "candiedapple2"
+ filling_color = "#F21873"
+ center_of_mass = list("x"=15, "y"=13)
+ nutriment_amt = 3
+ nutriment_desc = list("apple" = 3, "sweetness" = 2)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/caramelapple
+ name = "caramel apple"
+ desc = "An apple coated in rich caramel."
+ icon_state = "candiedapple1"
filling_color = "#F21873"
center_of_mass = list("x"=15, "y"=13)
nutriment_amt = 3
@@ -3774,9 +3920,10 @@
/obj/item/weapon/reagent_containers/food/snacks/beans
name = "baked beans"
- desc = "Musical fruit in a slightly less musical container."
+ desc = "Sweet, savory beans that have a slight tomato taste to them."
filling_color = "#FC6F28"
- icon_state = "beans"
+ icon_state = "bakedbeans"
+ trash = /obj/item/trash/snack_bowl
nutriment_amt = 4
nutriment_desc = list("beans" = 4)
bitesize = 2
@@ -4725,7 +4872,7 @@
/obj/item/weapon/reagent_containers/food/snacks/pancakes
name = "pancakes"
- desc = "Pancakes with berries, delicious."
+ desc = "Do you like them?"
icon = 'icons/obj/food_syn.dmi'
icon_state = "pancakes"
trash = /obj/item/trash/plate
@@ -4734,6 +4881,16 @@
nutriment_amt = 8
bitesize = 2
+/obj/item/weapon/reagent_containers/food/snacks/pancakes/berry
+ name = "berry pancakes"
+ desc = "These pancakes are berry nice!"
+ icon_state = "pancake_berry"
+ trash = /obj/item/trash/plate
+ center_of_mass = list("x"=15, "y"=11)
+ nutriment_desc = list("pancake" = 4, "berry" = 4)
+ nutriment_amt = 10
+ bitesize = 2
+
/obj/item/weapon/reagent_containers/food/snacks/nugget
name = "chicken nugget"
icon = 'icons/obj/food_syn.dmi'
@@ -5507,10 +5664,6 @@
center_of_mass = list("x"=16, "y"=11)
bitesize = 6
-/obj/item/weapon/reagent_containers/food/snacks/custardbun/Initialize()
- . = ..()
- reagents.add_reagent("protein", 2)
-
/obj/item/weapon/reagent_containers/food/snacks/chickenmomo
name = "chicken momo"
gender = PLURAL
@@ -6251,6 +6404,16 @@
nutriment_amt = 3
nutriment_desc = list("salt" = 1, "barbeque sauce" = 2)
+/obj/item/weapon/reagent_containers/food/snacks/chips/snv
+ name = "\improper Mike's Salt & Vinegar Chips"
+ desc = "Painful to eat yet you just can't stop!"
+ description_fluff = "Mike's Salt & Vinegar chips have been a staple of parties and events for decades, the chosen secondary dish to ordinary chips."
+ icon = 'icons/obj/food_snacks.dmi'
+ icon_state = "chips_snv"
+ trash = /obj/item/trash/chips/snv
+ nutriment_amt = 3
+ nutriment_desc = list("salt" = 1, "vinegar" = 2)
+
/obj/item/weapon/reagent_containers/food/snacks/tastybread
name = "bread tube"
desc = "Bread in a tube. Chewy...and surprisingly tasty."
@@ -6476,7 +6639,7 @@
desc = "Contains over 9000% of your daily recommended intake of salt."
trash = /obj/item/trash/tidegobs
filling_color = "#2556b0"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("salt" = 4, "seagull?" = 1)
nutriment_amt = 5
bitesize = 2
@@ -6488,7 +6651,7 @@
desc = "A peanut flavored snack that looks like the rings of Saturn!"
trash = /obj/item/trash/saturno
filling_color = "#dca319"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("salt" = 4, "peanut" = 2, "wood?" = 1)
nutriment_amt = 5
bitesize = 2
@@ -6500,7 +6663,7 @@
desc = "By Joove! It's some kind of gel."
trash = /obj/item/trash/jupiter
filling_color = "#dc1919"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("sweetness" = 4, "vanilla" = 1)
nutriment_amt = 5
bitesize = 2
@@ -6512,7 +6675,7 @@
desc = "Baseless tasteless nutrithick rods to get you through the day. Now even less rash inducing!"
trash = /obj/item/trash/pluto
filling_color = "#ffffff"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("chalk" = 4, "sadness" = 1)
nutriment_amt = 5
bitesize = 2
@@ -6524,7 +6687,7 @@
desc = "A steaming self-heated bowl of sweet eggs and taters!"
trash = /obj/item/trash/mars
filling_color = "#d2c63f"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("eggs" = 4, "potato" = 4, "mustard" = 2)
nutriment_amt = 8
bitesize = 2
@@ -6536,7 +6699,7 @@
desc = "Hot takes on hot cakes, a timeless classic now finally fit for human consumption!"
trash = /obj/item/trash/venus
filling_color = "#d2c63f"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("heat" = 4, "burning!" = 1)
nutriment_amt = 5
bitesize = 2
@@ -6552,7 +6715,7 @@
desc = "A Sol favorite, Sun Snax! Sun dried corn chips coated in a super spicy seasoning!"
trash = /obj/item/trash/sun_snax
filling_color = "#d2c63f"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("heat" = 3, "burning!" = 2)
nutriment_amt = 3
bitesize = 1
@@ -6568,7 +6731,7 @@
desc = "Pop rocks themed on the outermost reaches of the Sol system, new formula guarantees fewer shrapnel induced oral injuries."
trash = /obj/item/trash/oort
filling_color = "#3f7dd2"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("fizz" = 4, "sweetness" = 1)
nutriment_amt = 5
bitesize = 2
@@ -6584,7 +6747,7 @@
trash = /obj/item/trash/pretzel
desc = "A tasty bread like snack that is seasoned with what tastes like salt... but you're not so sure it's actually salt."
filling_color = "#916E36"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("salt" = 2, "pretzel" = 3)
nutriment_amt = 3
bitesize = 1
@@ -6597,7 +6760,7 @@
desc = "Fermented space shark, like chewing a urine soaked mattress."
description_fluff = "A form of fermented shark that originated on Earth as far back as the 17th century. Modern Hakarl is made from vat-made fermented shark and is distributed across the galaxy as a delicacy. However, few are able to stand the smell or taste of the meat."
filling_color = "#916E36"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("fish" = 2, "salt" = 2, "ammonia" = 1)
nutriment_amt = 4
bitesize = 1
@@ -6794,7 +6957,7 @@
desc = "A can of premium preserved vat-grown holstein beef. Now 99.9% bone free!"
trash = /obj/item/trash/beef
filling_color = "#663300"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("beef" = 1)
bitesize = 2
@@ -6809,7 +6972,7 @@
desc = "Luna Colony beans. Carefully synthethized from soy."
trash = /obj/item/trash/beans
filling_color = "#ff6633"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("beans" = 1, "tomato sauce" = 1)
nutriment_amt = 15
bitesize = 2
@@ -6836,10 +6999,10 @@
/obj/item/weapon/reagent_containers/food/snacks/canned/spinach
name = "spinach"
icon_state = "spinach"
- desc = "Wup-Az! Brand canned spinach. Notably has less iron in it than a watermelon."
+ desc = "I-Yam Brand canned spinach. Toot toot!"
trash = /obj/item/trash/spinach
filling_color = "#003300"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_amt = 5
nutriment_desc = list("soggy" = 1, "vegetable" = 1)
bitesize = 5
@@ -6853,27 +7016,27 @@
//////////////////////////////Advanced Canned Food//////////////////////////////
/obj/item/weapon/reagent_containers/food/snacks/canned/caviar
- name = "\improper Terran Caviar"
+ name = "\improper Soyuz Caviar"
icon_state = "fisheggs"
- desc = "Terran caviar, or space carp eggs. Carefully faked using alginate, artificial flavoring and salt. Skrell approved!"
+ desc = "Soyuz Caviar, or space carp eggs. Carefully treated to eliminate those pesky toxins, though it does lack that delicious signature numbness."
trash = /obj/item/trash/fishegg
filling_color = "#000000"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("fish" = 1, "salt" = 1)
nutriment_amt = 6
bitesize = 1
-/obj/item/weapon/reagent_containers/food/snacks/caviar/Initialize()
+/obj/item/weapon/reagent_containers/food/snacks/canned/caviar/Initialize()
. = ..()
reagents.add_reagent("protein", 5)
/obj/item/weapon/reagent_containers/food/snacks/canned/caviar/true
- name = "\improper Classic Terran Caviar"
+ name = "\improper Authentic Soyuz Caviar"
icon_state = "carpeggs"
- desc = "Terran caviar, or space carp eggs. Banned by the Vir Food Health Administration for exceeding the legally set amount of carpotoxins in food stuffs."
+ desc = "Soyuz caviar, or space carp eggs. Banned by the Vir Food Health Administration for exceeding the legally set amount of carpotoxins in food stuffs."
trash = /obj/item/trash/carpegg
filling_color = "#330066"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("fish" = 1, "salt" = 1, "a numbing sensation" = 1)
nutriment_amt = 6
bitesize = 1
@@ -6889,7 +7052,7 @@
desc = "A re-branding of a classic Terran snack! Contains mostly edible ingredients."
trash = /obj/item/trash/maps
filling_color = "#330066"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("meat" = 1, "salt" = 1)
nutriment_amt = 8
bitesize = 2
@@ -6905,7 +7068,7 @@
desc = "A classic snack favored by Sol astronauts. Made from dried apple-hybidized berries grown on the lunar colonies."
trash = /obj/item/trash/appleberry
filling_color = "#FFFFFF"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_desc = list("apple" = 1, "sweetness" = 1)
nutriment_amt = 8
bitesize = 2
@@ -6914,38 +7077,27 @@
. = ..()
reagents.add_reagent("milk", 8)
-////////Packaged Food - break open and eat (ADDED 04/11/2021 - possible snack upgrade for later)///////
+
+/obj/item/weapon/reagent_containers/food/snacks/canned/ntbeans
+ name = "baked beans"
+ icon_state = "ntbeans"
+ desc = "Musical fruit in a slightly less musical container. Now with bacon!"
+ trash = /obj/item/trash/ntbeans
+ filling_color = "#FC6F28"
+ center_of_mass = list("x"=15, "y"=9)
+ nutriment_desc = list("beans" = 4)
+ nutriment_amt = 6
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/canned/ntbeans/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 2)
+
+//////////////Packaged Food - break open and eat//////////////
/obj/item/weapon/reagent_containers/food/snacks/packaged
- name = "void package"
- icon = 'icons/obj/food_canned.dmi'
- flags = 0
- var/sealed = TRUE
- var/waste_type = null
-
-/obj/item/weapon/reagent_containers/food/snacks/packaged/Initialize()
- . = ..()
- if(!sealed)
- unseal()
-
-/obj/item/weapon/reagent_containers/food/snacks/packaged/examine(mob/user)
- . = ..()
- to_chat(user, "It is [sealed ? "" : "un"]wrapped.")
-
-/obj/item/weapon/reagent_containers/food/snacks/packaged/proc/unseal()
- flags |= OPENCONTAINER
- sealed = FALSE
- update_icon()
-
-/obj/item/weapon/reagent_containers/food/snacks/packaged/attack_self(var/mob/user)
- if(sealed)
- playsound(loc,'sound/effects/packagedfoodopen.ogg', rand(10,50), 1)
- to_chat(user, "You unseal \the [src] with a tear of plastic.")
- unseal()
-
-/obj/item/weapon/reagent_containers/food/snacks/packaged/update_icon()
- if(!sealed)
- icon_state = "[initial(icon_state)]-open"
+ icon = 'icons/obj/food_package.dmi'
+ package = TRUE
//////////////Lunar Cakes - proof of concept//////////////
@@ -6953,9 +7105,10 @@
name = "\improper Lunar Cake"
icon_state = "lunacake"
desc = "Now with 20% less lawsuit enabling rhegolith!"
- //trash = /obj/item/trash/lunacakewrap //need to add code that drops trash but keeps -open state
+ package_trash = /obj/item/trash/lunacakewrap
+ package_open_state = "lunacake_open"
filling_color = "#ffffff"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_amt = 6
nutriment_desc = list("sweetness" = 4, "vanilla" = 1)
bitesize = 2
@@ -6964,9 +7117,10 @@
name = "\improper Dark Lunar Cake"
icon_state = "mooncake"
desc = "Explore the dark side! May contain trace amounts of reconstituted cocoa."
- //trash = /obj/item/trash/mooncakewrap //need to add code that drops trash but keeps -open state
+ package_trash = /obj/item/trash/mooncakewrap
+ package_open_state = "lunacake_open"
filling_color = "#ffffff"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_amt = 6
nutriment_desc = list("sweetness" = 4, "chocolate" = 1)
bitesize = 2
@@ -6975,25 +7129,26 @@
name = "\improper Mochi Cake"
icon_state = "mochicake"
desc = "Konnichiwa! Many go lucky rice cakes in future!"
- //trash = /obj/item/trash/mochicakewrap //need to add code that drops trash but keeps -open state
+ package_trash = /obj/item/trash/mochicakewrap
+ package_open_state = "lunacake_open"
filling_color = "#ffffff"
- center_of_mass = "x=15;y=9"
+ center_of_mass = list("x"=15, "y"=9)
nutriment_amt = 6
nutriment_desc = list("sweetness" = 4, "rice" = 1)
bitesize = 2
//////////////Advanced Package Foods//////////////
-/obj/item/weapon/reagent_containers/food/snacks/packaged/spacetwinkie //ADDED 04/14/2021
+/obj/item/weapon/reagent_containers/food/snacks/packaged/spacetwinkie
name = "\improper Spacer Snack Cake"
- icon = 'icons/obj/food_canned.dmi'
icon_state = "spacer_cake"
desc = "Guaranteed to survive longer than you will."
description_fluff = "Despite Spacer advertisements consistently portraying their snack cakes as life-saving, tear-jerking survival food for spacers in all kinds of dramatic scenarios, the Spacer Snack Cake has been statistically proven to lower survival rates on all missions where it is present."
- trash = /obj/item/trash/spacer_cake_wrap
+ package_trash = /obj/item/trash/spacer_cake_wrap
+ package_open_state = "spacer_cake_open"
filling_color = "#FFE591"
center_of_mass = list("x"=15, "y"=11)
- nutriment_amt = 6
+ nutriment_amt = 4
nutriment_desc = list("sweetness" = 4, "cake" = 2)
bitesize = 2
@@ -7001,27 +7156,27 @@
. = ..()
reagents.add_reagent("sugar", 4)
-/obj/item/weapon/reagent_containers/food/snacks/packaged/genration //ADDED 04/20/2021
+/obj/item/weapon/reagent_containers/food/snacks/packaged/genration
name = "generic ration"
- icon = 'icons/obj/food_canned.dmi'
icon_state = "genration"
desc = "The most basic form of ration - meant to barely sustain life."
trash = /obj/item/trash/genration
+ package_open_state = "genration_open"
filling_color = "#FFFFFF"
center_of_mass = list("x"=15, "y"=11)
- nutriment_amt = 3
+ nutriment_amt = 4
nutriment_desc = list("chalk" = 6)
bitesize = 2
-/obj/item/weapon/reagent_containers/food/snacks/packaged/meatration //ADDED 04/20/2021
+/obj/item/weapon/reagent_containers/food/snacks/packaged/meatration
name = "meat ration"
- icon = 'icons/obj/food_canned.dmi'
icon_state = "meatration"
desc = "A meat flavored ration. Emphasis on 'meat flavored' as there is likely no real meat in this."
trash = /obj/item/trash/meatration
+ package_open_state = "meatration_open"
filling_color = "#FFFFFF"
center_of_mass = list("x"=15, "y"=11)
- nutriment_amt = 6
+ nutriment_amt = 4
nutriment_desc = list("chalk" = 3, "meat" = 3)
bitesize = 2
@@ -7029,25 +7184,26 @@
. = ..()
reagents.add_reagent("protein", 3)
-/obj/item/weapon/reagent_containers/food/snacks/packaged/vegration //ADDED 04/20/2021
+/obj/item/weapon/reagent_containers/food/snacks/packaged/vegration
name = "veggie ration"
- icon = 'icons/obj/food_canned.dmi'
icon_state = "vegration"
desc = "Dried veggies in a bag. Depressing and near flavorless."
trash = /obj/item/trash/vegration
+ package_open_state = "vegration_open"
filling_color = "#FFFFFF"
center_of_mass = list("x"=15, "y"=11)
- nutriment_amt = 3
+ nutriment_amt = 4
nutriment_desc = list("sadness" = 3, "veggie" = 3)
bitesize = 2
-/obj/item/weapon/reagent_containers/food/snacks/packaged/sweetration //ADDED 04/20/2021 (Contraband Item)
- name = "desert ration"
- icon = 'icons/obj/food_canned.dmi'
+/obj/item/weapon/reagent_containers/food/snacks/packaged/sweetration
+ name = "dessert ration"
icon_state = "baseration"
desc = "A rare ration from an era gone by filled with a sweet tasty treat that no modern company has been able to recreate."
trash = /obj/item/trash/sweetration
+ package_open_state = "baseration_open"
filling_color = "#FFFFFF"
+ nutriment_amt = 4
center_of_mass = list("x"=15, "y"=11)
nutriment_desc = list("sweetness" = 5, "cake" = 1)
bitesize = 2
@@ -7055,3 +7211,390 @@
/obj/item/weapon/reagent_containers/food/snacks/packaged/sweetration/Initialize()
. = ..()
reagents.add_reagent("sugar", 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/packaged/vendburger
+ name = "packaged burger"
+ icon_state = "smolburger"
+ desc = "A burger stored in a plastic wrapping for vending machine distribution. Surely it tastes fine!"
+ package_trash = /obj/item/trash/smolburger
+ package_open_state = "smolburger_open"
+ nutriment_amt = 3
+ nutriment_desc = list("stale burger" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/packaged/vendburger/Initialize()
+ . = ..()
+ reagents.add_reagent("sodiumchloride", 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/packaged/vendhotdog
+ name = "packaged hotdog"
+ icon_state = "smolhotdog"
+ desc = "A hotdog stored in a plastic wrapping for vending machine distribution. Surely it tastes fine!"
+ package_trash = /obj/item/trash/smolhotdog
+ package_open_state = "smolhotdog_open"
+ nutriment_amt = 3
+ nutriment_desc = list("stale hotdog" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/packaged/vendhotdog/Initialize()
+ . = ..()
+ reagents.add_reagent("sodiumchloride", 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/packaged/vendburrito
+ name = "packaged burrito"
+ icon_state = "smolburrito"
+ desc = "A burrito stored in a plastic wrapping for vending machine distribution. Surely it tastes fine!"
+ package_trash = /obj/item/trash/smolburrito
+ package_open_state = "smolburrito_open"
+ nutriment_amt = 3
+ nutriment_desc = list("stale burrito" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/packaged/vendburrito/Initialize()
+ . = ..()
+ reagents.add_reagent("sodiumchloride", 1)
+
+//Virgo Stuff
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/sushi
+ name = "sushi roll"
+ desc = "A whole sushi roll! Slice it up and enjoy with some soy sauce and wasabi."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "sushi"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/sushi/filled
+ slices_num = 5
+ bitesize = 5
+ nutriment_desc = list("rice" = 5, "fish" = 5)
+ nutriment_amt = 15
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/sushi/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 10)
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/sushi/filled
+ name = "piece of sushi"
+ desc = "A slice of a larger sushi roll, ready to devour."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "sushi_s"
+ bitesize = 5
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/sushi
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/sushi/filled/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/goulash
+ name = "goulash"
+ desc = "Hope you're Hungary!"
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "goulash"
+ trash = /obj/item/trash/snack_bowl
+ nutriment_amt = 6
+ nutriment_desc = list("meat" = 2, "vegetables" = 2, "seasoning" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/goulash/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 3) //For meaty things.
+ reagents.add_reagent("water", 5)
+
+
+/obj/item/weapon/reagent_containers/food/snacks/donerkebab
+ name = "doner kebab"
+ desc = "Traditional food of the very drunk. The meat is typically cooked on a vertical rotisserie."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "doner_kebab"
+ nutriment_amt = 5
+ nutriment_desc = list("vegetables" = 2, "seasoned meat" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/donerkebab/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 2) //For meaty things.
+
+
+/obj/item/weapon/reagent_containers/food/snacks/roastbeef
+ name = "roast beef"
+ desc = "It's beef. It's roasted. It's been a staple of dining tradition for centuries."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "roastbeef"
+ trash = /obj/item/trash/plate
+ bitesize = 2
+ nutriment_amt = 8
+ nutriment_desc = list("cooked meat" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/roastbeef/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 4) //For meaty things.
+
+
+/obj/item/weapon/reagent_containers/food/snacks/reishicup
+ name = "reishi's cup"
+ desc = "A chocolate treat with an odd flavor."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "reishiscup"
+ bitesize = 6
+ nutriment_amt = 3
+ nutriment_desc = list("chocolate" = 4, "colors" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/reishicup/Initialize()
+ . = ..()
+ reagents.add_reagent("psilocybin", 3)
+
+/obj/item/weapon/storage/box/wings //This is kinda like the donut box.
+ name = "wing basket"
+ desc = "A basket of chicken wings! Get some before they're all gone! Or maybe you're too late..."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "wings5"
+ var/icon_base = "wings"
+ var/startswith = 5
+ max_storage_space = ITEMSIZE_COST_SMALL * 5
+ can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/chickenwing)
+ starts_with = list(
+ /obj/item/weapon/reagent_containers/food/snacks/chickenwing = 5
+ )
+ foldable = null
+
+/obj/item/weapon/storage/box/wings/Initialize()
+ . = ..()
+ update_icon()
+ return
+
+/obj/item/weapon/storage/box/wings/update_icon()
+ var/i = 0
+ for(var/obj/item/weapon/reagent_containers/food/snacks/W in contents)
+ i++
+ icon_state = "[icon_base][i]"
+
+/obj/item/weapon/reagent_containers/food/snacks/chickenwing
+ name = "chicken wing"
+ desc = "What flavor even is this? Buffalo? Barbecue? Or something more exotic?"
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "wing"
+ bitesize = 3
+ nutriment_amt = 2
+ nutriment_desc = list("chicken" = 2, "unplacable flavor sauce" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/chickenwing/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotandsoursoup
+ name = "hot & sour soup"
+ desc = "A soup both spicy and sour from ancient Chinese cooking traditions. This one is made with tofu."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "hotandsoursoup"
+ trash = /obj/item/trash/asian_bowl
+ bitesize = 2
+ nutriment_amt = 6
+ nutriment_desc = list("spicyness" = 4, "sourness" = 4, "tofu" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotandsoursoup/Initialize()
+ . = ..()
+
+
+/obj/item/weapon/reagent_containers/food/snacks/kitsuneudon
+ name = "kitsune udon"
+ desc = "A purported favorite of kitsunes in ancient japanese myth: udon noodles, fried egg, and tofu."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "kitsuneudon"
+ trash = /obj/item/trash/asian_bowl
+ bitesize = 2
+ nutriment_amt = 6
+ nutriment_desc = list("fried egg" = 2, "egg noodles" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/kitsuneudon/Initialize()
+ . = ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/generalschicken
+ name = "general's chicken"
+ desc = "Sweet, spicy, and fried. General's Chicken has been around for more than five-hundred years now, and still tastes good."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "generaltso"
+ trash = /obj/item/trash/asian_bowl
+ bitesize = 2
+ nutriment_amt = 6
+ nutriment_desc = list("sweet and spicy sauce" = 5, "chicken" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/generalschicken/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/mammi
+ name = "mämmi"
+ desc = "Traditional finnish desert, some like it, others don't. It's drifting in some milk, add sugar!"
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "mammi"
+ trash = /obj/item/trash/plate
+ bitesize = 3
+ nutriment_amt = 3
+ nutriment_desc = list("brothy sweet goodness" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/mammi/Initialize()
+ . = ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/lobster
+ name = "raw lobster"
+ desc = "A shifty lobster. You can try eating it, but its shell is extremely tough."
+ icon = 'icons/obj/food_syn.dmi'
+ bitesize = 0.1
+ icon_state = "lobster_raw"
+ nutriment_amt = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/lobstercooked
+ name = "cooked lobster"
+ desc = "A luxurious plate of cooked lobster, its taste accentuated by lemon juice. Reinvigorating!"
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "lobster_cooked"
+ trash = /obj/item/trash/plate
+ nutriment_amt = 20
+ bitesize = 5
+ nutriment_desc = list("lemon" = 2, "lobster" = 5, "salad" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/lobstercooked/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 20)
+ reagents.add_reagent("tricordrazine", 5)
+ reagents.add_reagent("iron", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/cuttlefish
+ name = "raw cuttlefish"
+ desc = "It's an adorable squid! You couldn't possibly be thinking about eating this, right?"
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "cuttlefish_raw"
+ bitesize = 10
+ nutriment_amt = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/cuttlefishcooked
+ name = "cooked cuttlefish"
+ desc = "It's a roasted cuttlefish. Rubbery, squishy, an acquired taste."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "cuttlefish_cooked"
+ bitesize = 5
+ nutriment_amt = 20
+ nutriment_desc = list("cuttlefish" = 5, "rubber" = 5, "grease" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/cuttlefishcooked/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 10)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/monkfish
+ name = "extra large monkfish"
+ desc = "It's a huge monkfish. Better clean it first, you can't possibly eat it like this."
+ icon = 'icons/obj/food48x48.dmi'
+ icon_state = "monkfish_raw"
+ bitesize = 2
+ nutriment_amt = 30
+ w_class = ITEMSIZE_HUGE //Is that a monkfish in your pocket, or are you just happy to see me?
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/monkfishfillet
+ slices_num = 6
+ trash = /obj/item/weapon/reagent_containers/food/snacks/sliceable/monkfishremains
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/monkfish/Initialize()
+ . = ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/monkfishfillet
+ name = "monkfish fillet"
+ desc = "It's a fillet sliced from a monkfish."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "monkfish_fillet"
+ bitesize = 3
+ nutriment_amt = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/monkfishfillet/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkfishcooked
+ name = "seasoned monkfish"
+ desc = "A delicious slice of monkfish prepared with sweet chili and spring onion."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "monkfish_cooked"
+ bitesize = 4
+ nutriment_amt = 10
+ nutriment_desc = list("fish" = 3, "oil" = 1, "sweet chili" = 3, "spring onion" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkfishcooked/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/monkfishremains
+ name = "monkfish remains"
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "monkfish_remains"
+ desc = "The work of a madman."
+ w_class = ITEMSIZE_LARGE
+ bitesize = 0.01 //impossible to eat
+ nutriment_amt = 10
+ slice_path = /obj/item/clothing/head/fish
+ slices_num = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/monkfishremains/Initialize()
+ . = ..()
+ reagents.add_reagent("carbon", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/sharkchunk
+ name = "chunk of shark meat"
+ desc = "Still rough, needs to be cut into even smaller chunks."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "sharkmeat_chunk"
+ bitesize = 3
+ nutriment_amt = 15
+ w_class = ITEMSIZE_LARGE
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/carpmeat/fish/sharkmeat
+ slices_num = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/sharkchunk/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 20)
+
+/obj/item/weapon/reagent_containers/food/snacks/carpmeat/fish/sharkmeat
+ name = "slice of sharkmeat"
+ desc = "Now it's small enough to cook with."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "sharkmeat"
+ bitesize = 3
+ nutriment_amt = 2
+ toxin_amount = null
+
+/obj/item/weapon/reagent_containers/food/snacks/carpmeat/fish/sharkmeat/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/sharkmeatcooked
+ name = "shark steak"
+ desc = "Finally, some food for real men."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "sharkmeat_cooked"
+ trash = /obj/item/trash/small_bowl
+ bitesize = 3
+ nutriment_amt = 5
+ trash = /obj/item/trash/plate
+ nutriment_desc = list("manliness" = 1, "fish oil" = 2, "shark" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/sharkmeatcooked/Initialize()
+ . = ..()
+ reagents.add_reagent("protein", 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/sharkmeatdip
+ name = "hot shark shank"
+ desc = "A shank of shark meat dipped in hot sauce."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "sharkmeat_dip"
+ bitesize = 3
+ nutriment_amt = 5
+ trash = /obj/item/trash/snack_bowl
+ nutriment_desc = list("salt" = 1, "fish oil" = 2, "spicy shark" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/sharkmeatdip/Initialize()
+ . = ..()
+ reagents.add_reagent("capsaicin", 4)
+ reagents.add_reagent("protein", 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/sharkmeatcubes
+ name = "shark cubes"
+ desc = "Foul scented fermented shark cubes, it's said to make men fly, or just make them really fat."
+ icon = 'icons/obj/food_syn.dmi'
+ icon_state = "sharkmeat_cubes"
+ bitesize = 10
+ nutriment_amt = 8
+ trash = /obj/item/trash/plate
+ nutriment_desc = list("viking spirit" = 1, "rot" = 2, "fermented sauce" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/sharkmeatcubes/Initialize()
+ . = ..()
+ reagents.add_reagent("potatojuice", 30) // for people who want to get fat, FAST.
diff --git a/code/modules/food/food/snacks/meat.dm b/code/modules/food/food/snacks/meat.dm
index 394a8b9fc6..6542572d93 100644
--- a/code/modules/food/food/snacks/meat.dm
+++ b/code/modules/food/food/snacks/meat.dm
@@ -46,7 +46,7 @@
/obj/item/weapon/reagent_containers/food/snacks/meat/corgi
name = "Corgi meat"
desc = "Tastes like... well, you know."
-
+
/obj/item/weapon/reagent_containers/food/snacks/meat/chicken
name = "chicken"
icon = 'icons/obj/food_syn.dmi'
diff --git a/code/modules/food/recipes_fryer.dm b/code/modules/food/recipes_fryer.dm
index 8df0da2b96..2976f1d8b2 100644
--- a/code/modules/food/recipes_fryer.dm
+++ b/code/modules/food/recipes_fryer.dm
@@ -177,3 +177,29 @@
result = /obj/item/weapon/reagent_containers/food/snacks/pisanggoreng
coating = /datum/reagent/nutriment/coating/batter
+/datum/recipe/generalschicken
+ appliance = FRYER
+ reagents = list("capsaicin" = 2, "sugar" = 2, "batter" = 10)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/meat,
+ /obj/item/weapon/reagent_containers/food/snacks/meat
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/generalschicken
+
+/datum/recipe/chickenwings
+ appliance = FRYER
+ reagents = list("capsaicin" = 5, "batter" = 10)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/meat,
+ /obj/item/weapon/reagent_containers/food/snacks/meat,
+ /obj/item/weapon/reagent_containers/food/snacks/meat,
+ /obj/item/weapon/reagent_containers/food/snacks/meat
+ )
+ result = /obj/item/weapon/storage/box/wings //This is kinda like the donut box.
+
+/datum/recipe/locust
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/locust
+ )
+ coating = /datum/reagent/nutriment/coating/batter
+ result = /obj/item/weapon/reagent_containers/food/snacks/locust_cooked
\ No newline at end of file
diff --git a/code/modules/food/recipes_grill.dm b/code/modules/food/recipes_grill.dm
index 3ece25a755..6a05f1dd26 100644
--- a/code/modules/food/recipes_grill.dm
+++ b/code/modules/food/recipes_grill.dm
@@ -252,7 +252,7 @@
/datum/recipe/omurice/face
appliance = GRILL
- reagents = list("rice" = 5, "ketchup" = 5, "sodiumchloride" = 5, "egg" = 3)
+ reagents = list("rice" = 5, "ketchup" = 5, "sodiumchloride" = 1, "egg" = 3)
result = /obj/item/weapon/reagent_containers/food/snacks/omurice/face
/datum/recipe/meatsteak
diff --git a/code/modules/food/recipes_microwave.dm b/code/modules/food/recipes_microwave.dm
index 10f79394e2..928bd46da8 100644
--- a/code/modules/food/recipes_microwave.dm
+++ b/code/modules/food/recipes_microwave.dm
@@ -333,6 +333,11 @@ I said no!
reagents = list("water" = 5, "sugar" = 5)
result = /obj/item/weapon/reagent_containers/food/snacks/candiedapple
+/datum/recipe/caramelapple
+ fruit = list("apple" = 1)
+ reagents = list("milk" = 5, "sugar" = 5)
+ result = /obj/item/weapon/reagent_containers/food/snacks/caramelapple
+
/datum/recipe/twobread
reagents = list("redwine" = 5)
items = list(
@@ -1078,4 +1083,100 @@ I said no!
/obj/item/weapon/reagent_containers/food/snacks/egg,
/obj/item/weapon/reagent_containers/food/snacks/egg
)
- result = /obj/item/weapon/reagent_containers/food/snacks/gigapuddi/anger
\ No newline at end of file
+ result = /obj/item/weapon/reagent_containers/food/snacks/gigapuddi/anger
+
+/datum/recipe/sushi
+ fruit = list("cabbage" = 1)
+ reagents = list("rice" = 20)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/meat,
+ /obj/item/weapon/reagent_containers/food/snacks/meat,
+ /obj/item/weapon/reagent_containers/food/snacks/meat
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/sushi
+
+/datum/recipe/goulash
+ fruit = list("tomato" = 1)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/cutlet,
+ /obj/item/weapon/reagent_containers/food/snacks/spagetti
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/goulash
+
+/datum/recipe/donerkebab
+ fruit = list("tomato" = 1, "cabbage" = 1)
+ reagents = list("sodiumchloride" = 1)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/meatsteak,
+ /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/donerkebab
+
+/datum/recipe/roastbeef
+ fruit = list("carrot" = 2, "potato" = 2)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/meat
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/roastbeef
+
+/datum/recipe/reishicup
+ reagents = list("psilocybin" = 3, "sugar" = 3)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/chocolatebar
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/reishicup
+
+/datum/recipe/hotandsoursoup
+ fruit = list("cabbage" = 1, "mushroom" = 1)
+ reagents = list("sodiumchloride" = 2, "blackpepper" = 2, "water" = 10)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/tofu
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/hotandsoursoup
+
+/datum/recipe/kitsuneudon
+ reagents = list("egg" = 3)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/spagetti,
+ /obj/item/weapon/reagent_containers/food/snacks/tofu
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/kitsuneudon
+
+/datum/recipe/mammi
+ fruit = list("orange" = 1)
+ reagents = list("water" = 10, "flour" = 10, "milk" = 5, "sodiumchloride" = 1)
+ result = /obj/item/weapon/reagent_containers/food/snacks/mammi
+
+
+/datum/recipe/carpsushi
+ fruit = list("cabbage" = 1)
+ reagents = list("rice" = 20)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/carpmeat,
+ /obj/item/weapon/reagent_containers/food/snacks/carpmeat,
+ /obj/item/weapon/reagent_containers/food/snacks/carpmeat
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/sushi
+
+/datum/recipe/sharkdip
+ reagents = list("sodiumchloride" = 1)
+ fruit = list("chili" = 1)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/carpmeat/fish/sharkmeat
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/sharkmeatdip
+
+/datum/recipe/sharkcubes
+ reagents = list("soysauce" = 5, "sodiumchloride" = 1)
+ fruit = list("potato" = 1)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/carpmeat/fish/sharkmeat
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/sharkmeatcubes
+
+//// food cubes
+
+/datum/recipe/foodcubes
+ reagents = list("enzyme" = 20, "virusfood" = 5, "nutriment" = 15, "protein" = 15) // labor intensive
+ items = list()
+ result = /obj/item/weapon/storage/box/wings/tray
\ No newline at end of file
diff --git a/code/modules/food/recipes_oven.dm b/code/modules/food/recipes_oven.dm
index ff4fdc44f2..2569b1258f 100644
--- a/code/modules/food/recipes_oven.dm
+++ b/code/modules/food/recipes_oven.dm
@@ -21,7 +21,7 @@
fruit = list("banana" = 1)
reagents = list("sodiumchloride" = 1, "blackpepper" = 1, "flour" = 10)
items = list(
- /obj/item/weapon/reagent_containers/food/snacks/monkeycube
+ /obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube
)
result = /obj/item/weapon/reagent_containers/food/snacks/monkeysdelight
reagent_mix = RECIPE_REAGENT_REPLACE
@@ -512,13 +512,17 @@
/datum/recipe/pancakes
appliance = OVEN
- fruit = list("berries" = 2)
+ reagents = list("milk" = 5, "sugar" = 15)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough,
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
)
result = /obj/item/weapon/reagent_containers/food/snacks/pancakes
+/datum/recipe/pancakes/berry
+ fruit = list("berries" = 2)
+ result = /obj/item/weapon/reagent_containers/food/snacks/pancakes/berry
+
/datum/recipe/lasagna
appliance = OVEN
fruit = list("tomato" = 2, "eggplant" = 1)
@@ -689,4 +693,35 @@
/obj/item/weapon/reagent_containers/food/snacks/doughslice
)
reagent_mix = RECIPE_REAGENT_REPLACE //Get that water outta here
- result = /obj/item/weapon/reagent_containers/food/snacks/veggiemomo
\ No newline at end of file
+ result = /obj/item/weapon/reagent_containers/food/snacks/veggiemomo
+
+/datum/recipe/lobster
+ appliance = OVEN
+ fruit = list("lemon" = 1, "cabbage" = 1)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/lobster
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/lobstercooked
+
+/datum/recipe/cuttlefish
+ appliance = OVEN
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/cuttlefish
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/cuttlefishcooked
+
+/datum/recipe/monkfish
+ appliance = OVEN
+ fruit = list("chili" = 1, "onion" = 1)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/monkfishfillet
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/monkfishcooked
+
+/datum/recipe/sharksteak
+ appliance = OVEN
+ reagents = list("blackpepper"= 1, "sodiumchloride" = 1)
+ items = list(
+ /obj/item/weapon/reagent_containers/food/snacks/carpmeat/fish/sharkmeat
+ )
+ result = /obj/item/weapon/reagent_containers/food/snacks/sharkmeatcooked
\ No newline at end of file
diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm
index bbb8093331..da5b7a1bf1 100644
--- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm
+++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm
@@ -123,7 +123,7 @@
/obj/item/weapon/disposable_teleporter/slime,
/obj/item/slimepotion,
/obj/item/slime_extract,
- /obj/item/weapon/reagent_containers/food/snacks/monkeycube
+ /obj/item/weapon/reagent_containers/food/snacks/cube
)
diff --git a/code/modules/reagents/reactions/instant/instant.dm b/code/modules/reagents/reactions/instant/instant.dm
index 46c9c458be..d49856e8d3 100644
--- a/code/modules/reagents/reactions/instant/instant.dm
+++ b/code/modules/reagents/reactions/instant/instant.dm
@@ -1092,6 +1092,21 @@
required_reagents = list("protein" = 1, "sugar" = 1, "phoron" = 1)
result_amount = 1 // Roughly 20u per phoron sheet
+//Cube Food Colonies
+/decl/chemical_reaction/instant/meatcolony
+ name = "protein"
+ id = "meatcolony"
+ result = "protein"
+ required_reagents = list("meatcolony" = 5, "virusfood" = 5)
+ result_amount = 60
+
+/decl/chemical_reaction/instant/plantcolony
+ name = "nutriment"
+ id = "plantcolony"
+ result = "nutriment"
+ required_reagents = list("plantcolony" = 5, "virusfood" = 5)
+ result_amount = 60
+
// Neutralization.
/decl/chemical_reaction/instant/neutralize_neurotoxic_protein
diff --git a/code/modules/reagents/reagents/core.dm b/code/modules/reagents/reagents/core.dm
index 7776ff80f5..f91d1a3135 100644
--- a/code/modules/reagents/reagents/core.dm
+++ b/code/modules/reagents/reagents/core.dm
@@ -182,8 +182,8 @@
T.wet_floor(1)
/datum/reagent/water/touch_obj(var/obj/O, var/amount)
- if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/monkeycube))
- var/obj/item/weapon/reagent_containers/food/snacks/monkeycube/cube = O
+ if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/cube))
+ var/obj/item/weapon/reagent_containers/food/snacks/cube/cube = O
if(!cube.wrapped)
cube.Expand()
else
diff --git a/code/modules/reagents/reagents/food_drinks.dm b/code/modules/reagents/reagents/food_drinks.dm
index 16c7ad946b..00549da93b 100644
--- a/code/modules/reagents/reagents/food_drinks.dm
+++ b/code/modules/reagents/reagents/food_drinks.dm
@@ -433,6 +433,14 @@
color = "#792300"
allergen_type = ALLERGEN_BEANS //Soy (beans)
+/datum/reagent/nutriment/vinegar
+ name = "Vinegar"
+ id = "vinegar"
+ description = "Vinegar, great for fish and pickles."
+ taste_description = "vinegar"
+ reagent_state = LIQUID
+ nutriment_factor = 5
+ color = "#54410C"
/datum/reagent/nutriment/ketchup
name = "Ketchup"
@@ -444,6 +452,15 @@
color = "#731008"
allergen_type = ALLERGEN_FRUIT //Tomatoes are a fruit.
+/datum/reagent/nutriment/mustard
+ name = "Mustard"
+ id = "mustard"
+ description = "Delicious mustard. Good on Hot Dogs."
+ taste_description = "mustard"
+ reagent_state = LIQUID
+ nutriment_factor = 5
+ color = "#E3BD00"
+
/datum/reagent/nutriment/barbecue
name = "Barbeque Sauce"
id = "barbecue"
@@ -834,7 +851,6 @@
M.apply_effect(4, AGONY, 0)
if(prob(5))
M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!")
- holder.remove_reagent("frostoil", 5)
/* Drinks */
@@ -1030,6 +1046,24 @@
glass_name = "poison berry juice"
glass_desc = "A glass of deadly juice."
+/datum/reagent/toxin/meatcolony
+ name = "A colony of meat cells"
+ id = "meatcolony"
+ description = "Specialised cells designed to produce a large amount of meat once activated, whilst manufacturers have managed to stop these cells from taking over the body when ingested, it's still poisonous."
+ taste_description = "a fibrous mess"
+ reagent_state = LIQUID
+ color = "#ff2424"
+ strength = 10
+
+/datum/reagent/toxin/plantcolony
+ name = "A colony of plant cells"
+ id = "plantcolony"
+ description = "Specialised cells designed to produce a large amount of nutriment once activated, whilst manufacturers have managed to stop these cells from taking over the body when ingested, it's still poisonous."
+ taste_description = "a fibrous mess"
+ reagent_state = LIQUID
+ color = "#7ce01f"
+ strength = 10
+
/datum/reagent/drink/juice/potato
name = "Potato Juice"
id = "potatojuice"
diff --git a/code/modules/xenobio/items/extracts.dm b/code/modules/xenobio/items/extracts.dm
index f810b9f68b..ba2a822428 100644
--- a/code/modules/xenobio/items/extracts.dm
+++ b/code/modules/xenobio/items/extracts.dm
@@ -90,7 +90,7 @@
/decl/chemical_reaction/instant/slime/grey_monkey/on_reaction(var/datum/reagents/holder)
for(var/i = 1 to 4)
- new /obj/item/weapon/reagent_containers/food/snacks/monkeycube(get_turf(holder.my_atom))
+ new /obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube(get_turf(holder.my_atom))
..()
/decl/chemical_reaction/instant/slime/grey_slimejelly
diff --git a/code/modules/xenobio/machinery/processor.dm b/code/modules/xenobio/machinery/processor.dm
index 216c0cb77b..47b90b0fd4 100644
--- a/code/modules/xenobio/machinery/processor.dm
+++ b/code/modules/xenobio/machinery/processor.dm
@@ -70,7 +70,7 @@
sleep(1 SECONDS)
while(monkeys_recycled >= 4)
- new /obj/item/weapon/reagent_containers/food/snacks/monkeycube(get_turf(src))
+ new /obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube(get_turf(src))
playsound(src, 'sound/effects/splat.ogg', 50, 1)
monkeys_recycled -= 4
sleep(1 SECOND)
diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi
index b8478d3ac1..dfe5a6023b 100644
Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ
diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi
index cb4bab1901..a9059b54e8 100644
Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ
diff --git a/icons/obj/food.dmi b/icons/obj/food.dmi
index 31166e2205..daa29e29bd 100644
Binary files a/icons/obj/food.dmi and b/icons/obj/food.dmi differ
diff --git a/icons/obj/food48x48.dmi b/icons/obj/food48x48.dmi
new file mode 100644
index 0000000000..91d4307b37
Binary files /dev/null and b/icons/obj/food48x48.dmi differ
diff --git a/icons/obj/food_canned.dmi b/icons/obj/food_canned.dmi
index 78177169de..77839ea738 100644
Binary files a/icons/obj/food_canned.dmi and b/icons/obj/food_canned.dmi differ
diff --git a/icons/obj/food_custom.dmi b/icons/obj/food_custom.dmi
index ee26eb7777..76ce920648 100644
Binary files a/icons/obj/food_custom.dmi and b/icons/obj/food_custom.dmi differ
diff --git a/icons/obj/food_package.dmi b/icons/obj/food_package.dmi
new file mode 100644
index 0000000000..f5f73aa9e4
Binary files /dev/null and b/icons/obj/food_package.dmi differ
diff --git a/icons/obj/food_snacks.dmi b/icons/obj/food_snacks.dmi
index f9d4b247f2..c0dd05367d 100644
Binary files a/icons/obj/food_snacks.dmi and b/icons/obj/food_snacks.dmi differ
diff --git a/icons/obj/food_syn.dmi b/icons/obj/food_syn.dmi
index d76d214357..51661fd956 100644
Binary files a/icons/obj/food_syn.dmi and b/icons/obj/food_syn.dmi differ
diff --git a/icons/obj/trash.dmi b/icons/obj/trash.dmi
index 76f60a84ce..ca116e7779 100644
Binary files a/icons/obj/trash.dmi and b/icons/obj/trash.dmi differ
diff --git a/icons/obj/vending.dmi b/icons/obj/vending.dmi
index 04a6080f9d..d303231acc 100755
Binary files a/icons/obj/vending.dmi and b/icons/obj/vending.dmi differ
diff --git a/maps/southern_cross/southern_cross-1.dmm b/maps/southern_cross/southern_cross-1.dmm
index df7bdbcdcc..6eafee9f5e 100644
--- a/maps/southern_cross/southern_cross-1.dmm
+++ b/maps/southern_cross/southern_cross-1.dmm
@@ -83522,7 +83522,7 @@
/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{
pixel_x = -3
},
-/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{
+/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker{
pixel_x = 3
},
/obj/item/weapon/reagent_containers/food/condiment/small/sugar,
@@ -85840,7 +85840,7 @@
/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{
pixel_x = -3
},
-/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{
+/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker{
pixel_x = 3
},
/turf/simulated/floor/tiled/white,
@@ -111650,7 +111650,7 @@
/obj/structure/window/reinforced{
dir = 8
},
-/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped,
+/obj/item/weapon/reagent_containers/food/snacks/cube/monkeycube/wrapped,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 6
},
diff --git a/maps/southern_cross/southern_cross-6.dmm b/maps/southern_cross/southern_cross-6.dmm
index d7ac6c180d..72e224861c 100644
--- a/maps/southern_cross/southern_cross-6.dmm
+++ b/maps/southern_cross/southern_cross-6.dmm
@@ -818,7 +818,7 @@
"pL" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar)
"pM" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/snacks/candiedapple,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar)
"pN" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar)
-"pO" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker,/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/bar)
+"pO" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker,/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/bar)
"pP" = (/turf/unsimulated/wall,/area/centcom/bar)
"pQ" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar)
"pR" = (/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar)
@@ -830,7 +830,7 @@
"pX" = (/turf/unsimulated/wall,/area/centcom/living)
"pY" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/living)
"pZ" = (/obj/item/weapon/stool/padded,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/living)
-"qa" = (/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{pixel_x = 2; pixel_y = 6},/obj/structure/table/standard,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/living)
+"qa" = (/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker{pixel_x = 2; pixel_y = 6},/obj/structure/table/standard,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/living)
"qb" = (/obj/structure/table/holotable,/obj/machinery/readybutton{pixel_y = 0},/obj/effect/floor_decal/corner/red/full,/turf/simulated/floor/holofloor/tiled,/area/holodeck/source_thunderdomecourt)
"qc" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/shuttle/plating/airless,/area/shuttle/administration/centcom)
"qd" = (/obj/machinery/vending/snack,/turf/simulated/shuttle/floor/red,/area/shuttle/administration/centcom)
@@ -861,7 +861,7 @@
"qC" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1)
"qD" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/marble,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar)
"qE" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/snacks/amanita_pie,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar)
-"qF" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = 4; pixel_y = -2},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar)
+"qF" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = 4; pixel_y = -2},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar)
"qG" = (/obj/structure/bed/chair/wood/wings,/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar)
"qH" = (/obj/machinery/light,/turf/simulated/shuttle/floor/red,/area/shuttle/administration/centcom)
"qI" = (/obj/machinery/computer/card{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor_red"},/area/centcom/evac)
@@ -896,7 +896,7 @@
"rl" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar)
"rm" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/bar)
"rn" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/poppypretzel,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar)
-"ro" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = 4; pixel_y = -2},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/bar)
+"ro" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = 4; pixel_y = -2},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/bar)
"rp" = (/obj/machinery/floor_light,/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/bar)
"rq" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bar)
"rr" = (/obj/effect/floor_decal/industrial/hatch/yellow,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall)
@@ -929,7 +929,7 @@
"rS" = (/obj/machinery/door/airlock/glass_centcom{name = "Bridge Access"; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall)
"rT" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bar)
"rU" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bar)
-"rV" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = 4; pixel_y = -2},/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,/obj/item/weapon/flame/candle,/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar)
+"rV" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = 4; pixel_y = -2},/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker,/obj/item/weapon/flame/candle,/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar)
"rW" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar)
"rX" = (/obj/machinery/optable,/turf/simulated/shuttle/floor/red,/area/shuttle/administration/centcom)
"rY" = (/obj/structure/table/reinforced,/obj/machinery/librarycomp,/turf/simulated/shuttle/floor/red,/area/shuttle/administration/centcom)
diff --git a/maps/submaps/surface_submaps/plains/Diner.dmm b/maps/submaps/surface_submaps/plains/Diner.dmm
index 9aeacf0d48..d600520954 100644
--- a/maps/submaps/surface_submaps/plains/Diner.dmm
+++ b/maps/submaps/surface_submaps/plains/Diner.dmm
@@ -85,7 +85,7 @@
"as" = (
/obj/effect/floor_decal/corner/red/diagonal,
/obj/structure/table/standard,
-/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,
+/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker,
/obj/machinery/light{
icon_state = "tube1";
dir = 4
@@ -158,7 +158,7 @@
/area/submap/Diner)
"aD" = (
/obj/structure/table/standard,
-/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,
+/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker,
/obj/effect/floor_decal/corner/red/diagonal,
/turf/simulated/floor/tiled/white,
/area/submap/Diner)
@@ -239,7 +239,7 @@
"aO" = (
/obj/structure/table/standard,
/obj/effect/floor_decal/corner/red/diagonal,
-/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,
+/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker,
/turf/simulated/floor/tiled/white,
/area/submap/Diner)
"aP" = (
diff --git a/maps/submaps/surface_submaps/plains/lonehome.dmm b/maps/submaps/surface_submaps/plains/lonehome.dmm
index 49d75bc624..e756de4de1 100644
--- a/maps/submaps/surface_submaps/plains/lonehome.dmm
+++ b/maps/submaps/surface_submaps/plains/lonehome.dmm
@@ -14,7 +14,7 @@
"fl" = (/obj/structure/loot_pile/maint/trash,/turf/template_noop,/area/submap/lonehome)
"gn" = (/obj/structure/window/reinforced{dir = 4; health = 1e+006},/turf/template_noop,/area/submap/lonehome)
"gI" = (/obj/structure/table/rack,/obj/item/weapon/material/knife/ritual,/obj/structure/curtain/open/bed,/obj/item/clothing/under/suit_jacket/really_black,/obj/item/clothing/under/suit_jacket/navy,/obj/item/clothing/head/soft/solgov/veteranhat,/turf/simulated/floor/wood,/area/submap/lonehome)
-"hh" = (/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/submap/lonehome)
+"hh" = (/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/submap/lonehome)
"hq" = (/obj/structure/table/bench/marble,/obj/structure/window/reinforced/polarized{id = "h_master"},/obj/structure/flora/pottedplant/dead{pixel_y = 7},/turf/simulated/floor/wood,/area/submap/lonehome)
"hH" = (/obj/structure/table/marble,/obj/item/weapon/material/sharpeningkit,/obj/item/weapon/reagent_containers/dropper,/turf/simulated/floor/tiled/white,/area/submap/lonehome)
"hK" = (/obj/structure/bed/chair/wood{dir = 1},/obj/structure/window/reinforced/polarized{dir = 4; id = "h_kitchen"},/turf/simulated/floor/wood,/area/submap/lonehome)
diff --git a/maps/submaps/surface_submaps/plains/oldhotel.dmm b/maps/submaps/surface_submaps/plains/oldhotel.dmm
index 57ba1213bb..e1de9c38a8 100644
--- a/maps/submaps/surface_submaps/plains/oldhotel.dmm
+++ b/maps/submaps/surface_submaps/plains/oldhotel.dmm
@@ -27,7 +27,7 @@
"kh" = (/turf/simulated/floor/carpet/blue,/area/submap/oldhotel)
"kw" = (/obj/structure/lightpost,/turf/template_noop,/area/submap/oldhotel)
"kI" = (/turf/simulated/floor/carpet/sblucarpet,/area/submap/oldhotel)
-"kW" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker,/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{pixel_x = 3},/turf/simulated/floor/wood,/area/submap/oldhotel)
+"kW" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker,/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker{pixel_x = 3},/turf/simulated/floor/wood,/area/submap/oldhotel)
"lj" = (/obj/structure/table/wooden_reinforced,/obj/item/weapon/material/kitchen/rollingpin,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/oldhotel)
"ly" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/mimedouble,/turf/simulated/floor/wood,/area/submap/oldhotel)
"lZ" = (/obj/structure/table/woodentable,/obj/item/trash/tray,/turf/simulated/floor/carpet/blue,/area/submap/oldhotel)
diff --git a/maps/submaps/surface_submaps/wilderness/Manor1.dmm b/maps/submaps/surface_submaps/wilderness/Manor1.dmm
index 435595ace3..e7282d9b1f 100644
--- a/maps/submaps/surface_submaps/wilderness/Manor1.dmm
+++ b/maps/submaps/surface_submaps/wilderness/Manor1.dmm
@@ -46,7 +46,7 @@
"aT" = (/obj/structure/closet/cabinet,/obj/random/projectile/shotgun,/turf/simulated/floor/holofloor/wood,/area/submap/Manor1)
"aU" = (/obj/structure/bookcase,/turf/simulated/floor/holofloor/wood,/area/submap/Manor1)
"aV" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/fork,/turf/simulated/floor/holofloor/wood,/area/submap/Manor1)
-"aW" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,/turf/simulated/floor/holofloor/wood,/area/submap/Manor1)
+"aW" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/small/peppershaker,/turf/simulated/floor/holofloor/wood,/area/submap/Manor1)
"aX" = (/obj/structure/table/standard,/obj/item/weapon/material/knife,/turf/simulated/floor/holofloor/wood,/area/submap/Manor1)
"aY" = (/obj/machinery/appliance/cooker/oven,/turf/simulated/floor/holofloor/wood,/area/submap/Manor1)
"aZ" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker,/turf/simulated/floor/holofloor/wood,/area/submap/Manor1)