diff --git a/code/game/machinery/kitchen/smartfridge.dm b/code/game/machinery/kitchen/smartfridge.dm
deleted file mode 100644
index 005f7749b6..0000000000
--- a/code/game/machinery/kitchen/smartfridge.dm
+++ /dev/null
@@ -1,388 +0,0 @@
-/* SmartFridge. Much todo
-*/
-/obj/machinery/smartfridge
- name = "\improper SmartFridge"
- icon = 'icons/obj/vending.dmi'
- icon_state = "smartfridge"
- density = 1
- anchored = 1
- use_power = 1
- idle_power_usage = 5
- active_power_usage = 100
- flags = NOREACT
- var/max_n_of_items = 999 // Sorry but the BYOND infinite loop detector doesn't look things over 1000. //VOREStation Edit - Non-global
- var/icon_on = "smartfridge"
- var/icon_off = "smartfridge-off"
- var/icon_panel = "smartfridge-panel"
- var/list/item_records = list()
- var/datum/stored_item/currently_vending = null //What we're putting out of the machine.
- var/seconds_electrified = 0;
- var/shoot_inventory = 0
- var/locked = 0
- var/scan_id = 1
- var/is_secure = 0
- var/wrenchable = 0
- var/datum/wires/smartfridge/wires = null
-
-/obj/machinery/smartfridge/secure
- is_secure = 1
-
-/obj/machinery/smartfridge/New()
- ..()
- if(is_secure)
- wires = new/datum/wires/smartfridge/secure(src)
- else
- wires = new/datum/wires/smartfridge(src)
-
-/obj/machinery/smartfridge/Destroy()
- qdel(wires)
- for(var/A in item_records) //Get rid of item records.
- qdel(A)
- wires = null
- return ..()
-
-/obj/machinery/smartfridge/proc/accept_check(var/obj/item/O as obj)
- if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/grown/) || istype(O,/obj/item/seeds/))
- return 1
- return 0
-
-/obj/machinery/smartfridge/seeds
- name = "\improper MegaSeed Servitor"
- desc = "When you need seeds fast!"
- icon = 'icons/obj/vending.dmi'
- icon_state = "seeds"
- icon_on = "seeds"
- icon_off = "seeds-off"
-
-/obj/machinery/smartfridge/seeds/accept_check(var/obj/item/O as obj)
- if(istype(O,/obj/item/seeds/))
- return 1
- return 0
-
-/obj/machinery/smartfridge/secure/extract
- name = "\improper Biological Sample Storage"
- desc = "A refrigerated storage unit for xenobiological samples."
- req_access = list(access_research)
-
-/obj/machinery/smartfridge/secure/extract/accept_check(var/obj/item/O as obj)
- if(istype(O, /obj/item/slime_extract))
- return TRUE
- if(istype(O, /obj/item/slimepotion))
- return TRUE
- return FALSE
-
-
-/obj/machinery/smartfridge/secure/medbay
- name = "\improper Refrigerated Medicine Storage"
- desc = "A refrigerated storage unit for storing medicine and chemicals."
- icon_state = "smartfridge" //To fix the icon in the map editor.
- icon_on = "smartfridge_chem"
- req_one_access = list(access_medical,access_chemistry)
-
-/obj/machinery/smartfridge/secure/medbay/accept_check(var/obj/item/O as obj)
- if(istype(O,/obj/item/weapon/reagent_containers/glass/))
- return 1
- if(istype(O,/obj/item/weapon/storage/pill_bottle/))
- return 1
- if(istype(O,/obj/item/weapon/reagent_containers/pill/))
- return 1
- return 0
-
-/obj/machinery/smartfridge/secure/virology
- name = "\improper Refrigerated Virus Storage"
- desc = "A refrigerated storage unit for storing viral material."
- req_access = list(access_virology)
- icon_state = "smartfridge_virology"
- icon_on = "smartfridge_virology"
- icon_off = "smartfridge_virology-off"
-
-/obj/machinery/smartfridge/secure/virology/accept_check(var/obj/item/O as obj)
- if(istype(O,/obj/item/weapon/reagent_containers/glass/beaker/vial/))
- return 1
- if(istype(O,/obj/item/weapon/virusdish/))
- return 1
- return 0
-
-/obj/machinery/smartfridge/chemistry
- name = "\improper Smart Chemical Storage"
- desc = "A refrigerated storage unit for medicine and chemical storage."
-
-/obj/machinery/smartfridge/chemistry/accept_check(var/obj/item/O as obj)
- if(istype(O,/obj/item/weapon/storage/pill_bottle) || istype(O,/obj/item/weapon/reagent_containers))
- return 1
- return 0
-
-/obj/machinery/smartfridge/chemistry/virology
- name = "\improper Smart Virus Storage"
- desc = "A refrigerated storage unit for volatile sample storage."
-
-
-/obj/machinery/smartfridge/drinks
- name = "\improper Drink Showcase"
- desc = "A refrigerated storage unit for tasty tasty alcohol."
-
-/obj/machinery/smartfridge/drinks/accept_check(var/obj/item/O as obj)
- if(istype(O,/obj/item/weapon/reagent_containers/glass) || istype(O,/obj/item/weapon/reagent_containers/food/drinks) || istype(O,/obj/item/weapon/reagent_containers/food/condiment))
- return 1
-
-/obj/machinery/smartfridge/drying_rack
- name = "\improper Drying Rack"
- desc = "A machine for drying plants."
- wrenchable = 1
- icon_state = "drying_rack"
- icon_on = "drying_rack_on"
- icon_off = "drying_rack"
- icon_panel = "drying_rack-panel"
-
-/obj/machinery/smartfridge/drying_rack/accept_check(var/obj/item/O as obj)
- if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/))
- var/obj/item/weapon/reagent_containers/food/snacks/S = O
- if (S.dried_type)
- return 1
- return 0
-
-/obj/machinery/smartfridge/drying_rack/process()
- ..()
- if(stat & (BROKEN|NOPOWER))
- return
- if(contents.len)
- dry()
- update_icon()
-
-/obj/machinery/smartfridge/drying_rack/update_icon()
- overlays.Cut()
- var/not_working = stat & (BROKEN|NOPOWER)
- if(not_working)
- icon_state = icon_off
- else
- icon_state = icon_on
- var/hasItems
- for(var/datum/stored_item/I in item_records)
- if(I.get_amount())
- hasItems = 1
- break
- if(hasItems)
- overlays += "drying_rack_filled"
- if(!not_working)
- overlays += "drying_rack_drying"
-
-/obj/machinery/smartfridge/drying_rack/proc/dry()
- for(var/datum/stored_item/I in item_records)
- for(var/obj/item/weapon/reagent_containers/food/snacks/S in I.instances)
- if(S.dry) continue
- if(S.dried_type == S.type)
- S.dry = 1
- S.name = "dried [S.name]"
- S.color = "#AAAAAA"
- I.instances -= S
- S.forceMove(get_turf(src))
- else
- var/D = S.dried_type
- new D(get_turf(src))
- qdel(S)
- return
- return
-
-/obj/machinery/smartfridge/process()
- if(stat & (BROKEN|NOPOWER))
- return
- if(src.seconds_electrified > 0)
- src.seconds_electrified--
- if(src.shoot_inventory && prob(2))
- src.throw_item()
-
-/obj/machinery/smartfridge/power_change()
- var/old_stat = stat
- ..()
- if(old_stat != stat)
- update_icon()
-
-/obj/machinery/smartfridge/update_icon()
- if(stat & (BROKEN|NOPOWER))
- icon_state = icon_off
- else
- icon_state = icon_on
-
-/*******************
-* Item Adding
-********************/
-
-/obj/machinery/smartfridge/attackby(var/obj/item/O as obj, var/mob/user as mob)
- if(O.is_screwdriver())
- panel_open = !panel_open
- user.visible_message("[user] [panel_open ? "opens" : "closes"] the maintenance panel of \the [src].", "You [panel_open ? "open" : "close"] the maintenance panel of \the [src].")
- playsound(src, O.usesound, 50, 1)
- overlays.Cut()
- if(panel_open)
- overlays += image(icon, icon_panel)
- GLOB.nanomanager.update_uis(src)
- return
-
- if(wrenchable && default_unfasten_wrench(user, O, 20))
- return
-
- if(istype(O, /obj/item/device/multitool) || O.is_wirecutter())
- if(panel_open)
- attack_hand(user)
- return
-
- if(stat & NOPOWER)
- to_chat(user, "\The [src] is unpowered and useless.")
- return
-
- if(accept_check(O))
- user.remove_from_mob(O)
- stock(O)
- user.visible_message("[user] has added \the [O] to \the [src].", "You add \the [O] to \the [src].")
-
-
- else if(istype(O, /obj/item/weapon/storage/bag))
- var/obj/item/weapon/storage/bag/P = O
- var/plants_loaded = 0
- for(var/obj/G in P.contents)
- if(accept_check(G))
- P.remove_from_storage(G) //fixes ui bug - Pull Request 5515
- stock(G)
- plants_loaded = 1
- if(plants_loaded)
- user.visible_message("[user] loads \the [src] with \the [P].", "You load \the [src] with \the [P].")
- if(P.contents.len > 0)
- to_chat(user, "Some items are refused.")
-
- else if(istype(O, /obj/item/weapon/gripper)) // Grippers. ~Mechoid.
- var/obj/item/weapon/gripper/B = O //B, for Borg.
- if(!B.wrapped)
- to_chat(user, "\The [B] is not holding anything.")
- return
- else
- var/B_held = B.wrapped
- to_chat(user, "You use \the [B] to put \the [B_held] into \the [src].")
- return
-
- else
- to_chat(user, "\The [src] smartly refuses [O].")
- return 1
-
-/obj/machinery/smartfridge/secure/emag_act(var/remaining_charges, var/mob/user)
- if(!emagged)
- emagged = 1
- locked = -1
- to_chat(user, "You short out the product lock on [src].")
- return 1
-
-/obj/machinery/smartfridge/proc/stock(obj/item/O)
- var/hasRecord = FALSE //Check to see if this passes or not.
- for(var/datum/stored_item/I in item_records)
- if((O.type == I.item_path) && (O.name == I.item_name))
- I.add_product(O)
- hasRecord = TRUE
- break
- if(!hasRecord)
- var/datum/stored_item/item = new/datum/stored_item(src, O.type, O.name)
- item.add_product(O)
- item_records.Add(item)
- GLOB.nanomanager.update_uis(src)
-
-/obj/machinery/smartfridge/proc/vend(datum/stored_item/I)
- I.get_product(get_turf(src))
- GLOB.nanomanager.update_uis(src)
-
-/obj/machinery/smartfridge/attack_ai(mob/user as mob)
- attack_hand(user)
-
-/obj/machinery/smartfridge/attack_hand(mob/user as mob)
- if(stat & (NOPOWER|BROKEN))
- return
- wires.Interact(user)
- ui_interact(user)
-
-/*******************
-* SmartFridge Menu
-********************/
-
-/obj/machinery/smartfridge/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
- user.set_machine(src)
-
- var/data[0]
- data["contents"] = null
- data["electrified"] = seconds_electrified > 0
- data["shoot_inventory"] = shoot_inventory
- data["locked"] = locked
- data["secure"] = is_secure
-
- var/list/items[0]
- for (var/i=1 to length(item_records))
- var/datum/stored_item/I = item_records[i]
- var/count = I.get_amount()
- if(count > 0)
- items.Add(list(list("display_name" = html_encode(capitalize(I.item_name)), "vend" = i, "quantity" = count)))
-
- if(items.len > 0)
- data["contents"] = items
-
- ui = GLOB.nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
- if(!ui)
- ui = new(user, src, ui_key, "smartfridge.tmpl", src.name, 400, 500)
- ui.set_initial_data(data)
- ui.open()
-
-/obj/machinery/smartfridge/Topic(href, href_list)
- if(..()) return 0
-
- var/mob/user = usr
- var/datum/nanoui/ui = GLOB.nanomanager.get_open_ui(user, src, "main")
-
- src.add_fingerprint(user)
-
- if(href_list["close"])
- user.unset_machine()
- ui.close()
- return 0
-
- if(href_list["vend"])
- var/index = text2num(href_list["vend"])
- var/amount = text2num(href_list["amount"])
- var/datum/stored_item/I = item_records[index]
- var/count = I.get_amount()
-
- // Sanity check, there are probably ways to press the button when it shouldn't be possible.
- if(count > 0)
- if((count - amount) < 0)
- amount = count
- for(var/i = 1 to amount)
- vend(I)
-
- return 1
- return 0
-
-/obj/machinery/smartfridge/proc/throw_item()
- var/obj/throw_item = null
- var/mob/living/target = locate() in view(7,src)
- if(!target)
- return 0
-
- for(var/datum/stored_item/I in item_records)
- throw_item = I.get_product(get_turf(src))
- if (!throw_item)
- continue
- break
-
- if(!throw_item)
- return 0
- spawn(0)
- throw_item.throw_at(target,16,3,src)
- src.visible_message("[src] launches [throw_item.name] at [target.name]!")
- return 1
-
-/************************
-* Secure SmartFridges
-*************************/
-
-/obj/machinery/smartfridge/secure/Topic(href, href_list)
- if(stat & (NOPOWER|BROKEN))
- return 0
- if(usr.contents.Find(src) || (in_range(src, usr) && istype(loc, /turf)))
- if(!allowed(usr) && !emagged && locked != -1 && href_list["vend"])
- to_chat(usr, "Access denied.")
- return 0
- return ..()
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm b/code/modules/food/drinkingglass/drinkingglass.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm
rename to code/modules/food/drinkingglass/drinkingglass.dm
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/extras.dm b/code/modules/food/drinkingglass/extras.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/drinkingglass/extras.dm
rename to code/modules/food/drinkingglass/extras.dm
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm b/code/modules/food/drinkingglass/glass_boxes.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm
rename to code/modules/food/drinkingglass/glass_boxes.dm
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm b/code/modules/food/drinkingglass/glass_types.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm
rename to code/modules/food/drinkingglass/glass_types.dm
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/metaglass.dm b/code/modules/food/drinkingglass/metaglass.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/drinkingglass/metaglass.dm
rename to code/modules/food/drinkingglass/metaglass.dm
diff --git a/code/modules/reagents/reagent_containers/drinkingglass/shaker.dm b/code/modules/food/drinkingglass/shaker.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/drinkingglass/shaker.dm
rename to code/modules/food/drinkingglass/shaker.dm
diff --git a/code/modules/reagents/reagent_containers/food.dm b/code/modules/food/food.dm
similarity index 97%
rename from code/modules/reagents/reagent_containers/food.dm
rename to code/modules/food/food.dm
index a99c9cdf24..330dfaab7e 100644
--- a/code/modules/reagents/reagent_containers/food.dm
+++ b/code/modules/food/food.dm
@@ -1,38 +1,38 @@
-#define CELLS 8
-#define CELLSIZE (32/CELLS)
-
-////////////////////////////////////////////////////////////////////////////////
-/// Food.
-////////////////////////////////////////////////////////////////////////////////
-/obj/item/weapon/reagent_containers/food
- possible_transfer_amounts = null
- volume = 50 //Sets the default container amount for all food items.
- var/filling_color = "#FFFFFF" //Used by sandwiches.
-
- var/list/center_of_mass = list() // Used for table placement
-
-/obj/item/weapon/reagent_containers/food/New()
- ..()
- if (center_of_mass.len && !pixel_x && !pixel_y)
- src.pixel_x = rand(-6.0, 6) //Randomizes postion
- src.pixel_y = rand(-6.0, 6)
-
-/obj/item/weapon/reagent_containers/food/afterattack(atom/A, mob/user, proximity, params)
- if(center_of_mass.len && proximity && params && istype(A, /obj/structure/table))
- //Places the item on a grid
- var/list/mouse_control = params2list(params)
-
- var/mouse_x = text2num(mouse_control["icon-x"])
- var/mouse_y = text2num(mouse_control["icon-y"])
-
- if(!isnum(mouse_x) || !isnum(mouse_y))
- return
-
- var/cell_x = max(0, min(CELLS-1, round(mouse_x/CELLSIZE)))
- var/cell_y = max(0, min(CELLS-1, round(mouse_y/CELLSIZE)))
-
- pixel_x = (CELLSIZE * (0.5 + cell_x)) - center_of_mass["x"]
- pixel_y = (CELLSIZE * (0.5 + cell_y)) - center_of_mass["y"]
-
-#undef CELLS
-#undef CELLSIZE
+#define CELLS 8
+#define CELLSIZE (32/CELLS)
+
+////////////////////////////////////////////////////////////////////////////////
+/// Food.
+////////////////////////////////////////////////////////////////////////////////
+/obj/item/weapon/reagent_containers/food
+ possible_transfer_amounts = null
+ volume = 50 //Sets the default container amount for all food items.
+ var/filling_color = "#FFFFFF" //Used by sandwiches.
+
+ var/list/center_of_mass = list() // Used for table placement
+
+/obj/item/weapon/reagent_containers/food/New()
+ ..()
+ if (center_of_mass.len && !pixel_x && !pixel_y)
+ src.pixel_x = rand(-6.0, 6) //Randomizes postion
+ src.pixel_y = rand(-6.0, 6)
+
+/obj/item/weapon/reagent_containers/food/afterattack(atom/A, mob/user, proximity, params)
+ if(center_of_mass.len && proximity && params && istype(A, /obj/structure/table))
+ //Places the item on a grid
+ var/list/mouse_control = params2list(params)
+
+ var/mouse_x = text2num(mouse_control["icon-x"])
+ var/mouse_y = text2num(mouse_control["icon-y"])
+
+ if(!isnum(mouse_x) || !isnum(mouse_y))
+ return
+
+ var/cell_x = max(0, min(CELLS-1, round(mouse_x/CELLSIZE)))
+ var/cell_y = max(0, min(CELLS-1, round(mouse_y/CELLSIZE)))
+
+ pixel_x = (CELLSIZE * (0.5 + cell_x)) - center_of_mass["x"]
+ pixel_y = (CELLSIZE * (0.5 + cell_y)) - center_of_mass["y"]
+
+#undef CELLS
+#undef CELLSIZE
diff --git a/code/modules/reagents/reagent_containers/food/cans.dm b/code/modules/food/food/cans.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/food/cans.dm
rename to code/modules/food/food/cans.dm
diff --git a/code/modules/reagents/reagent_containers/food/condiment.dm b/code/modules/food/food/condiment.dm
similarity index 97%
rename from code/modules/reagents/reagent_containers/food/condiment.dm
rename to code/modules/food/food/condiment.dm
index 7257ac65b1..8ab7f34c79 100644
--- a/code/modules/reagents/reagent_containers/food/condiment.dm
+++ b/code/modules/food/food/condiment.dm
@@ -1,178 +1,178 @@
-
-///////////////////////////////////////////////Condiments
-//Notes by Darem: The condiments food-subtype is for stuff you don't actually eat but you use to modify existing food. They all
-// leave empty containers when used up and can be filled/re-filled with other items. Formatting for first section is identical
-// to mixed-drinks code. If you want an object that starts pre-loaded, you need to make it in addition to the other code.
-
-//Food items that aren't eaten normally and leave an empty container behind.
-/obj/item/weapon/reagent_containers/food/condiment
- name = "Condiment Container"
- desc = "Just your average condiment container."
- icon = 'icons/obj/food.dmi'
- icon_state = "emptycondiment"
- flags = OPENCONTAINER
- possible_transfer_amounts = list(1,5,10)
- center_of_mass = list("x"=16, "y"=6)
- volume = 50
-
-/obj/item/weapon/reagent_containers/food/condiment/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
- return
-
-/obj/item/weapon/reagent_containers/food/condiment/attack_self(var/mob/user as mob)
- return
-
-/obj/item/weapon/reagent_containers/food/condiment/attack(var/mob/M as mob, var/mob/user as mob, var/def_zone)
- if(standard_feed_mob(user, M))
- return
-
-/obj/item/weapon/reagent_containers/food/condiment/afterattack(var/obj/target, var/mob/user, var/flag)
- if(standard_dispenser_refill(user, target))
- return
- if(standard_pour_into(user, target))
- return
-
- if(istype(target, /obj/item/weapon/reagent_containers/food/snacks)) // These are not opencontainers but we can transfer to them
- if(!reagents || !reagents.total_volume)
- user << "There is no condiment left in \the [src]."
- return
-
- if(!target.reagents.get_free_space())
- user << "You can't add more condiment to \the [target]."
- return
-
- var/trans = reagents.trans_to_obj(target, amount_per_transfer_from_this)
- user << "You add [trans] units of the condiment to \the [target]."
- else
- ..()
-
-/obj/item/weapon/reagent_containers/food/condiment/feed_sound(var/mob/user)
- playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1)
-
-/obj/item/weapon/reagent_containers/food/condiment/self_feed_message(var/mob/user)
- user << "You swallow some of contents of \the [src]."
-
-/obj/item/weapon/reagent_containers/food/condiment/on_reagent_change()
- if(reagents.reagent_list.len > 0)
- switch(reagents.get_master_reagent_id())
- if("ketchup")
- name = "Ketchup"
- desc = "You feel more American already."
- icon_state = "ketchup"
- center_of_mass = list("x"=16, "y"=6)
- if("capsaicin")
- name = "Hotsauce"
- desc = "You can almost TASTE the stomach ulcers now!"
- icon_state = "hotsauce"
- center_of_mass = list("x"=16, "y"=6)
- if("enzyme")
- name = "Universal Enzyme"
- desc = "Used in cooking various dishes."
- icon_state = "enzyme"
- center_of_mass = list("x"=16, "y"=6)
- if("soysauce")
- name = "Soy Sauce"
- desc = "A salty soy-based flavoring."
- icon_state = "soysauce"
- center_of_mass = list("x"=16, "y"=6)
- if("frostoil")
- name = "Coldsauce"
- desc = "Leaves the tongue numb in its passage."
- icon_state = "coldsauce"
- center_of_mass = list("x"=16, "y"=6)
- if("sodiumchloride")
- name = "Salt Shaker"
- desc = "Salt. From space oceans, presumably."
- icon_state = "saltshaker"
- center_of_mass = list("x"=16, "y"=10)
- if("blackpepper")
- name = "Pepper Mill"
- desc = "Often used to flavor food or make people sneeze."
- icon_state = "peppermillsmall"
- center_of_mass = list("x"=16, "y"=10)
- if("cornoil")
- name = "Corn Oil"
- desc = "A delicious oil used in cooking. Made from corn."
- icon_state = "oliveoil"
- center_of_mass = list("x"=16, "y"=6)
- if("sugar")
- name = "Sugar"
- desc = "Tastey space sugar!"
- center_of_mass = list("x"=16, "y"=6)
- else
- name = "Misc Condiment Bottle"
- if (reagents.reagent_list.len==1)
- desc = "Looks like it is [reagents.get_master_reagent_name()], but you are not sure."
- else
- desc = "A mixture of various condiments. [reagents.get_master_reagent_name()] is one of them."
- icon_state = "mixedcondiments"
- center_of_mass = list("x"=16, "y"=6)
- else
- icon_state = "emptycondiment"
- name = "Condiment Bottle"
- desc = "An empty condiment bottle."
- center_of_mass = list("x"=16, "y"=6)
- return
-
-/obj/item/weapon/reagent_containers/food/condiment/enzyme
- name = "Universal Enzyme"
- desc = "Used in cooking various dishes."
- icon_state = "enzyme"
-
-/obj/item/weapon/reagent_containers/food/condiment/enzyme/New()
- ..()
- reagents.add_reagent("enzyme", 50)
-
-/obj/item/weapon/reagent_containers/food/condiment/sugar/New()
- ..()
- reagents.add_reagent("sugar", 50)
-
-/obj/item/weapon/reagent_containers/food/condiment/small
- possible_transfer_amounts = list(1,20)
- amount_per_transfer_from_this = 1
- volume = 20
- center_of_mass = list()
-
-/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.
- desc = "Salt. From space oceans, presumably."
- icon_state = "saltshakersmall"
-
-/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker/New()
- ..()
- reagents.add_reagent("sodiumchloride", 20)
-
-/obj/item/weapon/reagent_containers/food/condiment/small/peppermill
- name = "pepper mill"
- desc = "Often used to flavor food or make people sneeze."
- icon_state = "peppermillsmall"
-
-/obj/item/weapon/reagent_containers/food/condiment/small/peppermill/New()
- ..()
- reagents.add_reagent("blackpepper", 20)
-
-/obj/item/weapon/reagent_containers/food/condiment/small/sugar
- name = "sugar"
- desc = "Sweetness in a bottle"
- icon_state = "sugarsmall"
-
-/obj/item/weapon/reagent_containers/food/condiment/small/sugar/New()
- ..()
- reagents.add_reagent("sugar", 20)
-
-/obj/item/weapon/reagent_containers/food/condiment/flour
- name = "flour sack"
- desc = "A big bag of flour. Good for baking!"
- icon = 'icons/obj/food.dmi'
- icon_state = "flour"
-
-/obj/item/weapon/reagent_containers/food/condiment/flour/on_reagent_change()
- return
-
-/obj/item/weapon/reagent_containers/food/condiment/flour/New()
- ..()
- reagents.add_reagent("flour", 30)
- src.pixel_x = rand(-10.0, 10)
- src.pixel_y = rand(-10.0, 10)
+
+///////////////////////////////////////////////Condiments
+//Notes by Darem: The condiments food-subtype is for stuff you don't actually eat but you use to modify existing food. They all
+// leave empty containers when used up and can be filled/re-filled with other items. Formatting for first section is identical
+// to mixed-drinks code. If you want an object that starts pre-loaded, you need to make it in addition to the other code.
+
+//Food items that aren't eaten normally and leave an empty container behind.
+/obj/item/weapon/reagent_containers/food/condiment
+ name = "Condiment Container"
+ desc = "Just your average condiment container."
+ icon = 'icons/obj/food.dmi'
+ icon_state = "emptycondiment"
+ flags = OPENCONTAINER
+ possible_transfer_amounts = list(1,5,10)
+ center_of_mass = list("x"=16, "y"=6)
+ volume = 50
+
+/obj/item/weapon/reagent_containers/food/condiment/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
+ return
+
+/obj/item/weapon/reagent_containers/food/condiment/attack_self(var/mob/user as mob)
+ return
+
+/obj/item/weapon/reagent_containers/food/condiment/attack(var/mob/M as mob, var/mob/user as mob, var/def_zone)
+ if(standard_feed_mob(user, M))
+ return
+
+/obj/item/weapon/reagent_containers/food/condiment/afterattack(var/obj/target, var/mob/user, var/flag)
+ if(standard_dispenser_refill(user, target))
+ return
+ if(standard_pour_into(user, target))
+ return
+
+ if(istype(target, /obj/item/weapon/reagent_containers/food/snacks)) // These are not opencontainers but we can transfer to them
+ if(!reagents || !reagents.total_volume)
+ user << "There is no condiment left in \the [src]."
+ return
+
+ if(!target.reagents.get_free_space())
+ user << "You can't add more condiment to \the [target]."
+ return
+
+ var/trans = reagents.trans_to_obj(target, amount_per_transfer_from_this)
+ user << "You add [trans] units of the condiment to \the [target]."
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/condiment/feed_sound(var/mob/user)
+ playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1)
+
+/obj/item/weapon/reagent_containers/food/condiment/self_feed_message(var/mob/user)
+ user << "You swallow some of contents of \the [src]."
+
+/obj/item/weapon/reagent_containers/food/condiment/on_reagent_change()
+ if(reagents.reagent_list.len > 0)
+ switch(reagents.get_master_reagent_id())
+ if("ketchup")
+ name = "Ketchup"
+ desc = "You feel more American already."
+ icon_state = "ketchup"
+ center_of_mass = list("x"=16, "y"=6)
+ if("capsaicin")
+ name = "Hotsauce"
+ desc = "You can almost TASTE the stomach ulcers now!"
+ icon_state = "hotsauce"
+ center_of_mass = list("x"=16, "y"=6)
+ if("enzyme")
+ name = "Universal Enzyme"
+ desc = "Used in cooking various dishes."
+ icon_state = "enzyme"
+ center_of_mass = list("x"=16, "y"=6)
+ if("soysauce")
+ name = "Soy Sauce"
+ desc = "A salty soy-based flavoring."
+ icon_state = "soysauce"
+ center_of_mass = list("x"=16, "y"=6)
+ if("frostoil")
+ name = "Coldsauce"
+ desc = "Leaves the tongue numb in its passage."
+ icon_state = "coldsauce"
+ center_of_mass = list("x"=16, "y"=6)
+ if("sodiumchloride")
+ name = "Salt Shaker"
+ desc = "Salt. From space oceans, presumably."
+ icon_state = "saltshaker"
+ center_of_mass = list("x"=16, "y"=10)
+ if("blackpepper")
+ name = "Pepper Mill"
+ desc = "Often used to flavor food or make people sneeze."
+ icon_state = "peppermillsmall"
+ center_of_mass = list("x"=16, "y"=10)
+ if("cornoil")
+ name = "Corn Oil"
+ desc = "A delicious oil used in cooking. Made from corn."
+ icon_state = "oliveoil"
+ center_of_mass = list("x"=16, "y"=6)
+ if("sugar")
+ name = "Sugar"
+ desc = "Tastey space sugar!"
+ center_of_mass = list("x"=16, "y"=6)
+ else
+ name = "Misc Condiment Bottle"
+ if (reagents.reagent_list.len==1)
+ desc = "Looks like it is [reagents.get_master_reagent_name()], but you are not sure."
+ else
+ desc = "A mixture of various condiments. [reagents.get_master_reagent_name()] is one of them."
+ icon_state = "mixedcondiments"
+ center_of_mass = list("x"=16, "y"=6)
+ else
+ icon_state = "emptycondiment"
+ name = "Condiment Bottle"
+ desc = "An empty condiment bottle."
+ center_of_mass = list("x"=16, "y"=6)
+ return
+
+/obj/item/weapon/reagent_containers/food/condiment/enzyme
+ name = "Universal Enzyme"
+ desc = "Used in cooking various dishes."
+ icon_state = "enzyme"
+
+/obj/item/weapon/reagent_containers/food/condiment/enzyme/New()
+ ..()
+ reagents.add_reagent("enzyme", 50)
+
+/obj/item/weapon/reagent_containers/food/condiment/sugar/New()
+ ..()
+ reagents.add_reagent("sugar", 50)
+
+/obj/item/weapon/reagent_containers/food/condiment/small
+ possible_transfer_amounts = list(1,20)
+ amount_per_transfer_from_this = 1
+ volume = 20
+ center_of_mass = list()
+
+/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.
+ desc = "Salt. From space oceans, presumably."
+ icon_state = "saltshakersmall"
+
+/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker/New()
+ ..()
+ reagents.add_reagent("sodiumchloride", 20)
+
+/obj/item/weapon/reagent_containers/food/condiment/small/peppermill
+ name = "pepper mill"
+ desc = "Often used to flavor food or make people sneeze."
+ icon_state = "peppermillsmall"
+
+/obj/item/weapon/reagent_containers/food/condiment/small/peppermill/New()
+ ..()
+ reagents.add_reagent("blackpepper", 20)
+
+/obj/item/weapon/reagent_containers/food/condiment/small/sugar
+ name = "sugar"
+ desc = "Sweetness in a bottle"
+ icon_state = "sugarsmall"
+
+/obj/item/weapon/reagent_containers/food/condiment/small/sugar/New()
+ ..()
+ reagents.add_reagent("sugar", 20)
+
+/obj/item/weapon/reagent_containers/food/condiment/flour
+ name = "flour sack"
+ desc = "A big bag of flour. Good for baking!"
+ icon = 'icons/obj/food.dmi'
+ icon_state = "flour"
+
+/obj/item/weapon/reagent_containers/food/condiment/flour/on_reagent_change()
+ return
+
+/obj/item/weapon/reagent_containers/food/condiment/flour/New()
+ ..()
+ reagents.add_reagent("flour", 30)
+ src.pixel_x = rand(-10.0, 10)
+ src.pixel_y = rand(-10.0, 10)
diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/food/food/drinks.dm
similarity index 97%
rename from code/modules/reagents/reagent_containers/food/drinks.dm
rename to code/modules/food/food/drinks.dm
index 4146c967c8..af4dd0fb53 100644
--- a/code/modules/reagents/reagent_containers/food/drinks.dm
+++ b/code/modules/food/food/drinks.dm
@@ -1,313 +1,313 @@
-////////////////////////////////////////////////////////////////////////////////
-/// Drinks.
-////////////////////////////////////////////////////////////////////////////////
-/obj/item/weapon/reagent_containers/food/drinks
- name = "drink"
- desc = "yummy"
- icon = 'icons/obj/drinks.dmi'
- icon_state = null
- flags = OPENCONTAINER
- amount_per_transfer_from_this = 5
- volume = 50
-
-/obj/item/weapon/reagent_containers/food/drinks/on_reagent_change()
- if (reagents.reagent_list.len > 0)
- var/datum/reagent/R = reagents.get_master_reagent()
- if(R.price_tag)
- price_tag = R.price_tag
- else
- price_tag = null
- return
-
-/obj/item/weapon/reagent_containers/food/drinks/attack_self(mob/user as mob)
- if(!is_open_container())
- open(user)
-
-/obj/item/weapon/reagent_containers/food/drinks/proc/open(mob/user)
- playsound(loc,"canopen", rand(10,50), 1)
- user << "You open [src] with an audible pop!"
- flags |= OPENCONTAINER
-
-/obj/item/weapon/reagent_containers/food/drinks/attack(mob/M as mob, mob/user as mob, def_zone)
- if(force && !(flags & NOBLUDGEON) && user.a_intent == I_HURT)
- return ..()
-
- if(standard_feed_mob(user, M))
- return
-
- return 0
-
-/obj/item/weapon/reagent_containers/food/drinks/afterattack(obj/target, mob/user, proximity)
- if(!proximity) return
-
- if(standard_dispenser_refill(user, target))
- return
- if(standard_pour_into(user, target))
- return
- return ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/standard_feed_mob(var/mob/user, var/mob/target)
- if(!is_open_container())
- user << "You need to open [src]!"
- return 1
- return ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/standard_dispenser_refill(var/mob/user, var/obj/structure/reagent_dispensers/target)
- if(!is_open_container())
- user << "You need to open [src]!"
- return 1
- return ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/standard_pour_into(var/mob/user, var/atom/target)
- if(!is_open_container())
- user << "You need to open [src]!"
- return 1
- return ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/self_feed_message(var/mob/user)
- user << "You swallow a gulp from \the [src]."
-
-/obj/item/weapon/reagent_containers/food/drinks/feed_sound(var/mob/user)
- playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1)
-
-/obj/item/weapon/reagent_containers/food/drinks/examine(mob/user)
- if(!..(user, 1))
- return
- if(!reagents || reagents.total_volume == 0)
- user << "\The [src] is empty!"
- else if (reagents.total_volume <= volume * 0.25)
- user << "\The [src] is almost empty!"
- else if (reagents.total_volume <= volume * 0.66)
- user << "\The [src] is half full!"
- else if (reagents.total_volume <= volume * 0.90)
- user << "\The [src] is almost full!"
- else
- user << "\The [src] is full!"
-
-
-////////////////////////////////////////////////////////////////////////////////
-/// Drinks. END
-////////////////////////////////////////////////////////////////////////////////
-
-/obj/item/weapon/reagent_containers/food/drinks/golden_cup
- desc = "A golden cup"
- name = "golden cup"
- icon_state = "golden_cup"
- item_state = "" //nope :(
- w_class = ITEMSIZE_LARGE
- force = 14
- throwforce = 10
- amount_per_transfer_from_this = 20
- possible_transfer_amounts = null
- volume = 150
- flags = CONDUCT | OPENCONTAINER
-
-/obj/item/weapon/reagent_containers/food/drinks/golden_cup/on_reagent_change()
- ..()
-
-///////////////////////////////////////////////Drinks
-//Notes by Darem: Drinks are simply containers that start preloaded. Unlike condiments, the contents can be ingested directly
-// rather then having to add it to something else first. They should only contain liquids. They have a default container size of 50.
-// Formatting is the same as food.
-
-/obj/item/weapon/reagent_containers/food/drinks/milk
- name = "milk carton"
- desc = "It's milk. White and nutritious goodness!"
- icon_state = "milk"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=9)
-
-/obj/item/weapon/reagent_containers/food/drinks/milk/New()
- ..()
- reagents.add_reagent("milk", 50)
-
-/obj/item/weapon/reagent_containers/food/drinks/soymilk
- name = "soymilk carton"
- desc = "It's soy milk. White and nutritious goodness!"
- icon_state = "soymilk"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=9)
-/obj/item/weapon/reagent_containers/food/drinks/soymilk/New()
- ..()
- reagents.add_reagent("soymilk", 50)
-
-/obj/item/weapon/reagent_containers/food/drinks/smallmilk
- name = "small milk carton"
- desc = "It's milk. White and nutritious goodness!"
- volume = 30
- icon_state = "mini-milk"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=9)
-/obj/item/weapon/reagent_containers/food/drinks/smallmilk/New()
- ..()
- reagents.add_reagent("milk", 30)
-
-/obj/item/weapon/reagent_containers/food/drinks/smallchocmilk
- name = "small chocolate milk carton"
- desc = "It's milk! This one is in delicious chocolate flavour."
- volume = 30
- icon_state = "mini-milk_choco"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=9)
-/obj/item/weapon/reagent_containers/food/drinks/smallchocmilk/New()
- ..()
- reagents.add_reagent("chocolate_milk", 30)
-
-/obj/item/weapon/reagent_containers/food/drinks/coffee
- name = "\improper Robust Coffee"
- desc = "Careful, the beverage you're about to enjoy is extremely hot."
- icon_state = "coffee"
- center_of_mass = list("x"=15, "y"=10)
-/obj/item/weapon/reagent_containers/food/drinks/coffee/New()
- ..()
- reagents.add_reagent("coffee", 30)
-
-/obj/item/weapon/reagent_containers/food/drinks/tea
- name = "cup of Duke Purple Tea"
- desc = "An insult to Duke Purple is an insult to the Space Queen! Any proper gentleman will fight you, if you sully this tea."
- icon_state = "teacup"
- item_state = "coffee"
- center_of_mass = list("x"=16, "y"=14)
-
-/obj/item/weapon/reagent_containers/food/drinks/tea/New()
- ..()
- reagents.add_reagent("tea", 30)
-
-/obj/item/weapon/reagent_containers/food/drinks/ice
- name = "cup of ice"
- desc = "Careful, cold ice, do not chew."
- icon_state = "coffee"
- center_of_mass = list("x"=15, "y"=10)
-/obj/item/weapon/reagent_containers/food/drinks/ice/New()
- ..()
- reagents.add_reagent("ice", 30)
-
-/obj/item/weapon/reagent_containers/food/drinks/h_chocolate
- name = "cup of Dutch hot coco"
- desc = "Made in Space South America."
- icon_state = "hot_coco"
- item_state = "coffee"
- center_of_mass = list("x"=15, "y"=13)
-
-/obj/item/weapon/reagent_containers/food/drinks/h_chocolate/New()
- ..()
- reagents.add_reagent("hot_coco", 30)
-
-/obj/item/weapon/reagent_containers/food/drinks/dry_ramen
- name = "Cup Ramen"
- desc = "Just add 10ml water, self heats! A taste that reminds you of your school years."
- icon_state = "ramen"
- center_of_mass = list("x"=16, "y"=11)
-/obj/item/weapon/reagent_containers/food/drinks/dry_ramen/New()
- ..()
- reagents.add_reagent("dry_ramen", 30)
-
-/obj/item/weapon/reagent_containers/food/drinks/sillycup
- name = "paper cup"
- desc = "A paper water cup."
- icon_state = "water_cup_e"
- possible_transfer_amounts = null
- volume = 10
- center_of_mass = list("x"=16, "y"=12)
-
-/obj/item/weapon/reagent_containers/food/drinks/sillycup/New()
- ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/sillycup/on_reagent_change()
- ..()
- if(reagents.total_volume)
- icon_state = "water_cup"
- else
- icon_state = "water_cup_e"
-
-/obj/item/weapon/reagent_containers/food/drinks/sillycup/MouseDrop(obj/over_object as obj)
- if(!reagents.total_volume && istype(over_object, /obj/structure/reagent_dispensers/water_cooler))
- if(over_object.Adjacent(usr))
- var/obj/structure/reagent_dispensers/water_cooler/W = over_object
- if(W.cupholder && W.cups < 10)
- W.cups++
- usr << "You put the [src] in the cup dispenser."
- qdel(src)
- W.update_icon()
- else
- return ..()
-
-//////////////////////////drinkingglass and shaker//
-//Note by Darem: This code handles the mixing of drinks. New drinks go in three places: In Chemistry-Reagents.dm (for the drink
-// itself), in Chemistry-Recipes.dm (for the reaction that changes the components into the drink), and here (for the drinking glass
-// icon states.
-
-/obj/item/weapon/reagent_containers/food/drinks/shaker
- name = "shaker"
- desc = "A metal shaker to mix drinks in."
- icon_state = "shaker"
- amount_per_transfer_from_this = 10
- volume = 120
- center_of_mass = list("x"=17, "y"=10)
-
-/obj/item/weapon/reagent_containers/food/drinks/shaker/on_reagent_change()
- ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/teapot
- name = "teapot"
- desc = "An elegant teapot. It simply oozes class."
- icon_state = "teapot"
- item_state = "teapot"
- amount_per_transfer_from_this = 10
- volume = 120
- center_of_mass = list("x"=17, "y"=7)
-
-/obj/item/weapon/reagent_containers/food/drinks/teapot/on_reagent_change()
- ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/flask
- name = "\improper Colony Director's flask"
- desc = "A metal flask belonging to the Colony Director"
- icon_state = "flask"
- volume = 60
- center_of_mass = list("x"=17, "y"=7)
-
-/obj/item/weapon/reagent_containers/food/drinks/flask/on_reagent_change()
- ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/flask/shiny
- name = "shiny flask"
- desc = "A shiny metal flask. It appears to have a Greek symbol inscribed on it."
- icon_state = "shinyflask"
-
-/obj/item/weapon/reagent_containers/food/drinks/flask/lithium
- name = "lithium flask"
- desc = "A flask with a Lithium Atom symbol on it."
- icon_state = "lithiumflask"
-
-/obj/item/weapon/reagent_containers/food/drinks/flask/detflask
- name = "\improper Detective's flask"
- desc = "A metal flask with a leather band and golden badge belonging to the detective."
- icon_state = "detflask"
- volume = 60
- center_of_mass = list("x"=17, "y"=8)
-
-/obj/item/weapon/reagent_containers/food/drinks/flask/barflask
- name = "flask"
- desc = "For those who can't be bothered to hang out at the bar to drink."
- icon_state = "barflask"
- volume = 60
- center_of_mass = list("x"=17, "y"=7)
-
-/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask
- name = "vacuum flask"
- desc = "Keeping your drinks at the perfect temperature since 1892."
- icon_state = "vacuumflask"
- volume = 60
- center_of_mass = list("x"=15, "y"=4)
-
-/obj/item/weapon/reagent_containers/food/drinks/britcup
- name = "cup"
- desc = "A cup with the British flag emblazoned on it."
- icon_state = "britcup"
- volume = 30
- center_of_mass = list("x"=15, "y"=13)
-
-/obj/item/weapon/reagent_containers/food/drinks/britcup/on_reagent_change()
- ..()
-
+////////////////////////////////////////////////////////////////////////////////
+/// Drinks.
+////////////////////////////////////////////////////////////////////////////////
+/obj/item/weapon/reagent_containers/food/drinks
+ name = "drink"
+ desc = "yummy"
+ icon = 'icons/obj/drinks.dmi'
+ icon_state = null
+ flags = OPENCONTAINER
+ amount_per_transfer_from_this = 5
+ volume = 50
+
+/obj/item/weapon/reagent_containers/food/drinks/on_reagent_change()
+ if (reagents.reagent_list.len > 0)
+ var/datum/reagent/R = reagents.get_master_reagent()
+ if(R.price_tag)
+ price_tag = R.price_tag
+ else
+ price_tag = null
+ return
+
+/obj/item/weapon/reagent_containers/food/drinks/attack_self(mob/user as mob)
+ if(!is_open_container())
+ open(user)
+
+/obj/item/weapon/reagent_containers/food/drinks/proc/open(mob/user)
+ playsound(loc,"canopen", rand(10,50), 1)
+ user << "You open [src] with an audible pop!"
+ flags |= OPENCONTAINER
+
+/obj/item/weapon/reagent_containers/food/drinks/attack(mob/M as mob, mob/user as mob, def_zone)
+ if(force && !(flags & NOBLUDGEON) && user.a_intent == I_HURT)
+ return ..()
+
+ if(standard_feed_mob(user, M))
+ return
+
+ return 0
+
+/obj/item/weapon/reagent_containers/food/drinks/afterattack(obj/target, mob/user, proximity)
+ if(!proximity) return
+
+ if(standard_dispenser_refill(user, target))
+ return
+ if(standard_pour_into(user, target))
+ return
+ return ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/standard_feed_mob(var/mob/user, var/mob/target)
+ if(!is_open_container())
+ user << "You need to open [src]!"
+ return 1
+ return ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/standard_dispenser_refill(var/mob/user, var/obj/structure/reagent_dispensers/target)
+ if(!is_open_container())
+ user << "You need to open [src]!"
+ return 1
+ return ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/standard_pour_into(var/mob/user, var/atom/target)
+ if(!is_open_container())
+ user << "You need to open [src]!"
+ return 1
+ return ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/self_feed_message(var/mob/user)
+ user << "You swallow a gulp from \the [src]."
+
+/obj/item/weapon/reagent_containers/food/drinks/feed_sound(var/mob/user)
+ playsound(user.loc, 'sound/items/drink.ogg', rand(10, 50), 1)
+
+/obj/item/weapon/reagent_containers/food/drinks/examine(mob/user)
+ if(!..(user, 1))
+ return
+ if(!reagents || reagents.total_volume == 0)
+ user << "\The [src] is empty!"
+ else if (reagents.total_volume <= volume * 0.25)
+ user << "\The [src] is almost empty!"
+ else if (reagents.total_volume <= volume * 0.66)
+ user << "\The [src] is half full!"
+ else if (reagents.total_volume <= volume * 0.90)
+ user << "\The [src] is almost full!"
+ else
+ user << "\The [src] is full!"
+
+
+////////////////////////////////////////////////////////////////////////////////
+/// Drinks. END
+////////////////////////////////////////////////////////////////////////////////
+
+/obj/item/weapon/reagent_containers/food/drinks/golden_cup
+ desc = "A golden cup"
+ name = "golden cup"
+ icon_state = "golden_cup"
+ item_state = "" //nope :(
+ w_class = ITEMSIZE_LARGE
+ force = 14
+ throwforce = 10
+ amount_per_transfer_from_this = 20
+ possible_transfer_amounts = null
+ volume = 150
+ flags = CONDUCT | OPENCONTAINER
+
+/obj/item/weapon/reagent_containers/food/drinks/golden_cup/on_reagent_change()
+ ..()
+
+///////////////////////////////////////////////Drinks
+//Notes by Darem: Drinks are simply containers that start preloaded. Unlike condiments, the contents can be ingested directly
+// rather then having to add it to something else first. They should only contain liquids. They have a default container size of 50.
+// Formatting is the same as food.
+
+/obj/item/weapon/reagent_containers/food/drinks/milk
+ name = "milk carton"
+ desc = "It's milk. White and nutritious goodness!"
+ icon_state = "milk"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=9)
+
+/obj/item/weapon/reagent_containers/food/drinks/milk/New()
+ ..()
+ reagents.add_reagent("milk", 50)
+
+/obj/item/weapon/reagent_containers/food/drinks/soymilk
+ name = "soymilk carton"
+ desc = "It's soy milk. White and nutritious goodness!"
+ icon_state = "soymilk"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=9)
+/obj/item/weapon/reagent_containers/food/drinks/soymilk/New()
+ ..()
+ reagents.add_reagent("soymilk", 50)
+
+/obj/item/weapon/reagent_containers/food/drinks/smallmilk
+ name = "small milk carton"
+ desc = "It's milk. White and nutritious goodness!"
+ volume = 30
+ icon_state = "mini-milk"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=9)
+/obj/item/weapon/reagent_containers/food/drinks/smallmilk/New()
+ ..()
+ reagents.add_reagent("milk", 30)
+
+/obj/item/weapon/reagent_containers/food/drinks/smallchocmilk
+ name = "small chocolate milk carton"
+ desc = "It's milk! This one is in delicious chocolate flavour."
+ volume = 30
+ icon_state = "mini-milk_choco"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=9)
+/obj/item/weapon/reagent_containers/food/drinks/smallchocmilk/New()
+ ..()
+ reagents.add_reagent("chocolate_milk", 30)
+
+/obj/item/weapon/reagent_containers/food/drinks/coffee
+ name = "\improper Robust Coffee"
+ desc = "Careful, the beverage you're about to enjoy is extremely hot."
+ icon_state = "coffee"
+ center_of_mass = list("x"=15, "y"=10)
+/obj/item/weapon/reagent_containers/food/drinks/coffee/New()
+ ..()
+ reagents.add_reagent("coffee", 30)
+
+/obj/item/weapon/reagent_containers/food/drinks/tea
+ name = "cup of Duke Purple Tea"
+ desc = "An insult to Duke Purple is an insult to the Space Queen! Any proper gentleman will fight you, if you sully this tea."
+ icon_state = "teacup"
+ item_state = "coffee"
+ center_of_mass = list("x"=16, "y"=14)
+
+/obj/item/weapon/reagent_containers/food/drinks/tea/New()
+ ..()
+ reagents.add_reagent("tea", 30)
+
+/obj/item/weapon/reagent_containers/food/drinks/ice
+ name = "cup of ice"
+ desc = "Careful, cold ice, do not chew."
+ icon_state = "coffee"
+ center_of_mass = list("x"=15, "y"=10)
+/obj/item/weapon/reagent_containers/food/drinks/ice/New()
+ ..()
+ reagents.add_reagent("ice", 30)
+
+/obj/item/weapon/reagent_containers/food/drinks/h_chocolate
+ name = "cup of Dutch hot coco"
+ desc = "Made in Space South America."
+ icon_state = "hot_coco"
+ item_state = "coffee"
+ center_of_mass = list("x"=15, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/drinks/h_chocolate/New()
+ ..()
+ reagents.add_reagent("hot_coco", 30)
+
+/obj/item/weapon/reagent_containers/food/drinks/dry_ramen
+ name = "Cup Ramen"
+ desc = "Just add 10ml water, self heats! A taste that reminds you of your school years."
+ icon_state = "ramen"
+ center_of_mass = list("x"=16, "y"=11)
+/obj/item/weapon/reagent_containers/food/drinks/dry_ramen/New()
+ ..()
+ reagents.add_reagent("dry_ramen", 30)
+
+/obj/item/weapon/reagent_containers/food/drinks/sillycup
+ name = "paper cup"
+ desc = "A paper water cup."
+ icon_state = "water_cup_e"
+ possible_transfer_amounts = null
+ volume = 10
+ center_of_mass = list("x"=16, "y"=12)
+
+/obj/item/weapon/reagent_containers/food/drinks/sillycup/New()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/sillycup/on_reagent_change()
+ ..()
+ if(reagents.total_volume)
+ icon_state = "water_cup"
+ else
+ icon_state = "water_cup_e"
+
+/obj/item/weapon/reagent_containers/food/drinks/sillycup/MouseDrop(obj/over_object as obj)
+ if(!reagents.total_volume && istype(over_object, /obj/structure/reagent_dispensers/water_cooler))
+ if(over_object.Adjacent(usr))
+ var/obj/structure/reagent_dispensers/water_cooler/W = over_object
+ if(W.cupholder && W.cups < 10)
+ W.cups++
+ usr << "You put the [src] in the cup dispenser."
+ qdel(src)
+ W.update_icon()
+ else
+ return ..()
+
+//////////////////////////drinkingglass and shaker//
+//Note by Darem: This code handles the mixing of drinks. New drinks go in three places: In Chemistry-Reagents.dm (for the drink
+// itself), in Chemistry-Recipes.dm (for the reaction that changes the components into the drink), and here (for the drinking glass
+// icon states.
+
+/obj/item/weapon/reagent_containers/food/drinks/shaker
+ name = "shaker"
+ desc = "A metal shaker to mix drinks in."
+ icon_state = "shaker"
+ amount_per_transfer_from_this = 10
+ volume = 120
+ center_of_mass = list("x"=17, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/drinks/shaker/on_reagent_change()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/teapot
+ name = "teapot"
+ desc = "An elegant teapot. It simply oozes class."
+ icon_state = "teapot"
+ item_state = "teapot"
+ amount_per_transfer_from_this = 10
+ volume = 120
+ center_of_mass = list("x"=17, "y"=7)
+
+/obj/item/weapon/reagent_containers/food/drinks/teapot/on_reagent_change()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/flask
+ name = "\improper Colony Director's flask"
+ desc = "A metal flask belonging to the Colony Director"
+ icon_state = "flask"
+ volume = 60
+ center_of_mass = list("x"=17, "y"=7)
+
+/obj/item/weapon/reagent_containers/food/drinks/flask/on_reagent_change()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/flask/shiny
+ name = "shiny flask"
+ desc = "A shiny metal flask. It appears to have a Greek symbol inscribed on it."
+ icon_state = "shinyflask"
+
+/obj/item/weapon/reagent_containers/food/drinks/flask/lithium
+ name = "lithium flask"
+ desc = "A flask with a Lithium Atom symbol on it."
+ icon_state = "lithiumflask"
+
+/obj/item/weapon/reagent_containers/food/drinks/flask/detflask
+ name = "\improper Detective's flask"
+ desc = "A metal flask with a leather band and golden badge belonging to the detective."
+ icon_state = "detflask"
+ volume = 60
+ center_of_mass = list("x"=17, "y"=8)
+
+/obj/item/weapon/reagent_containers/food/drinks/flask/barflask
+ name = "flask"
+ desc = "For those who can't be bothered to hang out at the bar to drink."
+ icon_state = "barflask"
+ volume = 60
+ center_of_mass = list("x"=17, "y"=7)
+
+/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask
+ name = "vacuum flask"
+ desc = "Keeping your drinks at the perfect temperature since 1892."
+ icon_state = "vacuumflask"
+ volume = 60
+ center_of_mass = list("x"=15, "y"=4)
+
+/obj/item/weapon/reagent_containers/food/drinks/britcup
+ name = "cup"
+ desc = "A cup with the British flag emblazoned on it."
+ icon_state = "britcup"
+ volume = 30
+ center_of_mass = list("x"=15, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/drinks/britcup/on_reagent_change()
+ ..()
+
diff --git a/code/modules/reagents/reagent_containers/food/drinks/bottle.dm b/code/modules/food/food/drinks/bottle.dm
similarity index 97%
rename from code/modules/reagents/reagent_containers/food/drinks/bottle.dm
rename to code/modules/food/food/drinks/bottle.dm
index 0a09b22fe9..d3b5e5bc66 100644
--- a/code/modules/reagents/reagent_containers/food/drinks/bottle.dm
+++ b/code/modules/food/food/drinks/bottle.dm
@@ -1,551 +1,551 @@
-///////////////////////////////////////////////Alchohol bottles! -Agouri //////////////////////////
-//Functionally identical to regular drinks. The only difference is that the default bottle size is 100. - Darem
-//Bottles now weaken and break when smashed on people's heads. - Giacom
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle
- amount_per_transfer_from_this = 10
- volume = 100
- item_state = "broken_beer" //Generic held-item sprite until unique ones are made.
- force = 6
- var/smash_duration = 5 //Directly relates to the 'weaken' duration. Lowered by armor (i.e. helmets)
- var/isGlass = 1 //Whether the 'bottle' is made of glass or not so that milk cartons dont shatter when someone gets hit by it
-
- var/obj/item/weapon/reagent_containers/glass/rag/rag = null
- var/rag_underlay = "rag"
- on_reagent_change() return // To suppress price updating. Bottles have their own price tags.
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/New()
- ..()
- if(isGlass) unacidable = 1
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/Destroy()
- if(rag)
- rag.forceMove(src.loc)
- rag = null
- return ..()
-
-//when thrown on impact, bottles smash and spill their contents
-/obj/item/weapon/reagent_containers/food/drinks/bottle/throw_impact(atom/hit_atom, var/speed)
- ..()
-
- var/mob/M = thrower
- if(isGlass && istype(M) && M.a_intent == I_HURT)
- var/throw_dist = get_dist(throw_source, loc)
- if(speed >= throw_speed && smash_check(throw_dist)) //not as reliable as smashing directly
- if(reagents)
- hit_atom.visible_message("The contents of \the [src] splash all over [hit_atom]!")
- reagents.splash(hit_atom, reagents.total_volume)
- src.smash(loc, hit_atom)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/smash_check(var/distance)
- if(!isGlass || !smash_duration)
- return 0
-
- var/list/chance_table = list(100, 95, 90, 85, 75, 55, 35) //starting from distance 0
- var/idx = max(distance + 1, 1) //since list indices start at 1
- if(idx > chance_table.len)
- return 0
- return prob(chance_table[idx])
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/smash(var/newloc, atom/against = null)
- if(ismob(loc))
- var/mob/M = loc
- M.drop_from_inventory(src)
-
- //Creates a shattering noise and replaces the bottle with a broken_bottle
- var/obj/item/weapon/broken_bottle/B = new /obj/item/weapon/broken_bottle(newloc)
- if(prob(33))
- new/obj/item/weapon/material/shard(newloc) // Create a glass shard at the target's location!
- B.icon_state = src.icon_state
-
- var/icon/I = new('icons/obj/drinks.dmi', src.icon_state)
- I.Blend(B.broken_outline, ICON_OVERLAY, rand(5), 1)
- I.SwapColor(rgb(255, 0, 220, 255), rgb(0, 0, 0, 0))
- B.icon = I
-
- if(rag && rag.on_fire && isliving(against))
- rag.forceMove(loc)
- var/mob/living/L = against
- L.IgniteMob()
-
- playsound(src, "shatter", 70, 1)
- src.transfer_fingerprints_to(B)
-
- qdel(src)
- return B
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/verb/smash_bottle()
- set name = "Smash Bottle"
- set category = "Object"
-
- var/list/things_to_smash_on = list()
- for(var/atom/A in range (1, usr))
- if(A.density && usr.Adjacent(A) && !istype(A, /mob))
- things_to_smash_on += A
-
- var/atom/choice = input("Select what you want to smash the bottle on.") as null|anything in things_to_smash_on
- if(!choice)
- return
- if(!(choice.density && usr.Adjacent(choice)))
- usr << "You must stay close to your target! You moved away from \the [choice]"
- return
-
- usr.put_in_hands(src.smash(usr.loc, choice))
- usr.visible_message("\The [usr] smashed \the [src] on \the [choice]!")
- usr << "You smash \the [src] on \the [choice]!"
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/attackby(obj/item/W, mob/user)
- if(!rag && istype(W, /obj/item/weapon/reagent_containers/glass/rag))
- insert_rag(W, user)
- return
- if(rag && istype(W, /obj/item/weapon/flame))
- rag.attackby(W, user)
- return
- ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/attack_self(mob/user)
- if(rag)
- remove_rag(user)
- else
- ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/insert_rag(obj/item/weapon/reagent_containers/glass/rag/R, mob/user)
- if(!isGlass || rag) return
- if(user.unEquip(R))
- user << "You stuff [R] into [src]."
- rag = R
- rag.forceMove(src)
- flags &= ~OPENCONTAINER
- update_icon()
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/remove_rag(mob/user)
- if(!rag) return
- user.put_in_hands(rag)
- rag = null
- flags |= (initial(flags) & OPENCONTAINER)
- update_icon()
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/open(mob/user)
- if(rag) return
- ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/update_icon()
- underlays.Cut()
- if(rag)
- var/underlay_image = image(icon='icons/obj/drinks.dmi', icon_state=rag.on_fire? "[rag_underlay]_lit" : rag_underlay)
- underlays += underlay_image
- set_light(rag.light_range, rag.light_power, rag.light_color)
- else
- set_light(0)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/apply_hit_effect(mob/living/target, mob/living/user, var/hit_zone)
- var/blocked = ..()
-
- if(user.a_intent != I_HURT)
- return
- if(!smash_check(1))
- return //won't always break on the first hit
-
- // You are going to knock someone out for longer if they are not wearing a helmet.
- var/weaken_duration = 0
- if(blocked < 100)
- weaken_duration = smash_duration + min(0, force - target.getarmor(hit_zone, "melee") + 10)
-
- if(hit_zone == "head" && istype(target, /mob/living/carbon/))
- user.visible_message("\The [user] smashes [src] over [target]'s head!")
- if(weaken_duration)
- target.apply_effect(min(weaken_duration, 5), WEAKEN, blocked) // Never weaken more than a flash!
- else
- user.visible_message("\The [user] smashes [src] into [target]!")
-
- //The reagents in the bottle splash all over the target, thanks for the idea Nodrak
- if(reagents)
- user.visible_message("The contents of \the [src] splash all over [target]!")
- reagents.splash(target, reagents.total_volume)
-
- //Finally, smash the bottle. This kills (qdel) the bottle.
- var/obj/item/weapon/broken_bottle/B = smash(target.loc, target)
- user.put_in_active_hand(B)
-
-//Keeping this here for now, I'll ask if I should keep it here.
-/obj/item/weapon/broken_bottle
- name = "Broken Bottle"
- desc = "A bottle with a sharp broken bottom."
- icon = 'icons/obj/drinks.dmi'
- icon_state = "broken_bottle"
- force = 10
- throwforce = 5
- throw_speed = 3
- throw_range = 5
- item_state = "beer"
- attack_verb = list("stabbed", "slashed", "attacked")
- sharp = 1
- edge = 0
- var/icon/broken_outline = icon('icons/obj/drinks.dmi', "broken")
-
-/obj/item/weapon/broken_bottle/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
- playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
- return ..()
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/gin
- name = "Griffeater Gin"
- desc = "A bottle of high quality gin, produced in Alpha Centauri."
- icon_state = "ginbottle"
- center_of_mass = list("x"=16, "y"=4)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/gin/New()
- ..()
- reagents.add_reagent("gin", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey
- name = "Uncle Git's Special Reserve"
- desc = "A premium single-malt whiskey, gently matured inside the tunnels of a nuclear shelter."
- icon_state = "whiskeybottle"
- center_of_mass = list("x"=16, "y"=3)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey/New()
- ..()
- reagents.add_reagent("whiskey", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey
- name = "Special Blend Whiskey"
- desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything."
- icon_state = "whiskeybottle2"
- center_of_mass = list("x"=16, "y"=3)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey/New()
- ..()
- reagents.add_reagent("specialwhiskey", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka
- name = "Tunguska Triple Distilled"
- desc = "Aah, vodka. Prime choice of drink and fuel by Russians worldwide."
- icon_state = "vodkabottle"
- center_of_mass = list("x"=17, "y"=3)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/New()
- ..()
- reagents.add_reagent("vodka", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla
- name = "Caccavo Guaranteed Quality Tequilla"
- desc = "Made from premium petroleum distillates, pure thalidomide and other fine quality ingredients!"
- icon_state = "tequillabottle"
- center_of_mass = list("x"=16, "y"=3)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla/New()
- ..()
- reagents.add_reagent("tequilla", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing
- name = "Bottle of Nothing"
- desc = "A bottle filled with nothing"
- icon_state = "bottleofnothing"
- center_of_mass = list("x"=17, "y"=5)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing/New()
- ..()
- reagents.add_reagent("nothing", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/patron
- name = "Wrapp Artiste Patron"
- desc = "Silver laced tequilla, served in space night clubs across the galaxy."
- icon_state = "patronbottle"
- center_of_mass = list("x"=16, "y"=6)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/patron/New()
- ..()
- reagents.add_reagent("patron", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/rum
- name = "Captain Pete's Cuban Spiced Rum"
- desc = "This isn't just rum, oh no. It's practically Cuba in a bottle."
- icon_state = "rumbottle"
- center_of_mass = list("x"=16, "y"=8)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/rum/New()
- ..()
- reagents.add_reagent("rum", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater
- name = "Flask of Holy Water"
- desc = "A flask of the chaplain's holy water."
- icon_state = "holyflask"
- center_of_mass = list("x"=17, "y"=10)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater/New()
- ..()
- reagents.add_reagent("holywater", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth
- name = "Goldeneye Vermouth"
- desc = "Sweet, sweet dryness~"
- icon_state = "vermouthbottle"
- center_of_mass = list("x"=17, "y"=3)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth/New()
- ..()
- reagents.add_reagent("vermouth", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua
- name = "Robert Robust's Coffee Liqueur"
- desc = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936."
- icon_state = "kahluabottle"
- center_of_mass = list("x"=17, "y"=3)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua/New()
- ..()
- reagents.add_reagent("kahlua", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager
- name = "College Girl Goldschlager"
- desc = "Because they are the only ones who will drink 100 proof cinnamon schnapps."
- icon_state = "goldschlagerbottle"
- center_of_mass = list("x"=15, "y"=3)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager/New()
- ..()
- reagents.add_reagent("goldschlager", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/cognac
- name = "Chateau De Baton Premium Cognac"
- desc = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing."
- icon_state = "cognacbottle"
- center_of_mass = list("x"=16, "y"=6)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/cognac/New()
- ..()
- reagents.add_reagent("cognac", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/wine
- name = "Doublebeard Bearded Special Wine"
- desc = "Cheap cooking wine pretending to be drinkable."
- icon_state = "winebottle"
- center_of_mass = list("x"=16, "y"=4)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/wine/New()
- ..()
- reagents.add_reagent("wine", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe
- name = "Jailbreaker Verte"
- desc = "One sip of this and you just know you're gonna have a good time."
- icon_state = "absinthebottle"
- center_of_mass = list("x"=16, "y"=6)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe/New()
- ..()
- reagents.add_reagent("absinthe", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor
- name = "Emeraldine Melon Liquor"
- desc = "A bottle of 46 proof Emeraldine Melon Liquor. Sweet and light."
- icon_state = "alco-green" //Placeholder.
- center_of_mass = list("x"=16, "y"=6)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor/New()
- ..()
- reagents.add_reagent("melonliquor", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao
- name = "Miss Blue Curacao"
- desc = "A fruity, exceptionally azure drink. Does not allow the imbiber to use the fifth magic."
- icon_state = "alco-blue" //Placeholder.
- center_of_mass = list("x"=16, "y"=6)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao/New()
- ..()
- reagents.add_reagent("bluecuracao", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine
- name = "Briar Rose Grenadine Syrup"
- desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks."
- icon_state = "grenadinebottle"
- center_of_mass = list("x"=16, "y"=6)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine/New()
- ..()
- reagents.add_reagent("grenadine", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/cola
- name = "\improper Space Cola"
- desc = "Cola. in space"
- icon_state = "colabottle"
- center_of_mass = list("x"=16, "y"=6)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/cola/New()
- ..()
- reagents.add_reagent("cola", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up
- name = "\improper Space-Up"
- desc = "Tastes like a hull breach in your mouth."
- icon_state = "space-up_bottle"
- center_of_mass = list("x"=16, "y"=6)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up/New()
- ..()
- reagents.add_reagent("space_up", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind
- name = "\improper Space Mountain Wind"
- desc = "Blows right through you like a space wind."
- icon_state = "space_mountain_wind_bottle"
- center_of_mass = list("x"=16, "y"=6)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind/New()
- ..()
- reagents.add_reagent("spacemountainwind", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/pwine
- name = "Warlock's Velvet"
- desc = "What a delightful packaging for a surely high quality wine! The vintage must be amazing!"
- icon_state = "pwinebottle"
- center_of_mass = list("x"=16, "y"=4)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/pwine/New()
- ..()
- reagents.add_reagent("pwine", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/redeemersbrew
- name = "Redeemer's Brew"
- desc = "Just opening the top of this bottle makes you feel a bit tipsy. Not for the faint of heart."
- icon_state = "redeemersbrew"
- center_of_mass = list("x"=16, "y"=3)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/redeemersbrew/New()
- ..()
- reagents.add_reagent("unathiliquor", 100)
-
-//////////////////////////JUICES AND STUFF ///////////////////////
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice
- name = "Orange Juice"
- desc = "Full of vitamins and deliciousness!"
- icon_state = "orangejuice"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=7)
- isGlass = 0
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice/New()
- ..()
- reagents.add_reagent("orangejuice", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/applejuice
- name = "Apple Juice"
- desc = "Squeezed, pressed and ground to perfection!"
- icon_state = "applejuice"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=7)
- isGlass = 0
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/applejuice/New()
- ..()
- reagents.add_reagent("applejuice", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/milk
- name = "Large Milk Carton"
- desc = "It's milk. This carton's large enough to serve your biggest milk drinkers."
- icon_state = "milk"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=9)
- isGlass = 0
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/milk/New()
- ..()
- reagents.add_reagent("milk", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/cream
- name = "Milk Cream"
- desc = "It's cream. Made from milk. What else did you think you'd find in there?"
- icon_state = "cream"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=8)
- isGlass = 0
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/cream/New()
- ..()
- reagents.add_reagent("cream", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice
- name = "Tomato Juice"
- desc = "Well, at least it LOOKS like tomato juice. You can't tell with all that redness."
- icon_state = "tomatojuice"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=8)
- isGlass = 0
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice/New()
- ..()
- reagents.add_reagent("tomatojuice", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice
- name = "Lime Juice"
- desc = "Sweet-sour goodness."
- icon_state = "limejuice"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=8)
- isGlass = 0
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice/New()
- ..()
- reagents.add_reagent("limejuice", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/lemonjuice
- name = "Lemon Juice"
- desc = "Sweet-sour goodness. Minus the sweet."
- icon_state = "lemonjuice"
- item_state = "carton"
- center_of_mass = list("x"=16, "y"=8)
- isGlass = 0
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/lemonjuice/New()
- ..()
- reagents.add_reagent("lemonjuice", 100)
-
-//Small bottles
-/obj/item/weapon/reagent_containers/food/drinks/bottle/small
- volume = 50
- smash_duration = 1
- flags = 0 //starts closed
- rag_underlay = "rag_small"
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer
- name = "space beer"
- desc = "Contains only water, malt and hops."
- icon_state = "beer"
- center_of_mass = list("x"=16, "y"=12)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer/New()
- ..()
- reagents.add_reagent("beer", 30)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale
- name = "\improper Magm-Ale"
- desc = "A true dorf's drink of choice."
- icon_state = "alebottle"
- item_state = "beer"
- center_of_mass = list("x"=16, "y"=10)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale/New()
- ..()
- reagents.add_reagent("ale", 30)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/sake
- name = "Mono-No-Aware Luxury Sake"
- desc = "Dry alcohol made from rice, a favorite of businessmen."
- icon_state = "sakebottle"
- center_of_mass = list("x"=16, "y"=3)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/sake/New()
- ..()
- reagents.add_reagent("sake", 100)
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/champagne
- name = "Gilthari Luxury Champagne"
- desc = "For those special occassions."
- icon_state = "champagne"
-
-/obj/item/weapon/reagent_containers/food/drinks/bottle/champagne/New()
- ..()
+///////////////////////////////////////////////Alchohol bottles! -Agouri //////////////////////////
+//Functionally identical to regular drinks. The only difference is that the default bottle size is 100. - Darem
+//Bottles now weaken and break when smashed on people's heads. - Giacom
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle
+ amount_per_transfer_from_this = 10
+ volume = 100
+ item_state = "broken_beer" //Generic held-item sprite until unique ones are made.
+ force = 6
+ var/smash_duration = 5 //Directly relates to the 'weaken' duration. Lowered by armor (i.e. helmets)
+ var/isGlass = 1 //Whether the 'bottle' is made of glass or not so that milk cartons dont shatter when someone gets hit by it
+
+ var/obj/item/weapon/reagent_containers/glass/rag/rag = null
+ var/rag_underlay = "rag"
+ on_reagent_change() return // To suppress price updating. Bottles have their own price tags.
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/New()
+ ..()
+ if(isGlass) unacidable = 1
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/Destroy()
+ if(rag)
+ rag.forceMove(src.loc)
+ rag = null
+ return ..()
+
+//when thrown on impact, bottles smash and spill their contents
+/obj/item/weapon/reagent_containers/food/drinks/bottle/throw_impact(atom/hit_atom, var/speed)
+ ..()
+
+ var/mob/M = thrower
+ if(isGlass && istype(M) && M.a_intent == I_HURT)
+ var/throw_dist = get_dist(throw_source, loc)
+ if(speed >= throw_speed && smash_check(throw_dist)) //not as reliable as smashing directly
+ if(reagents)
+ hit_atom.visible_message("The contents of \the [src] splash all over [hit_atom]!")
+ reagents.splash(hit_atom, reagents.total_volume)
+ src.smash(loc, hit_atom)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/smash_check(var/distance)
+ if(!isGlass || !smash_duration)
+ return 0
+
+ var/list/chance_table = list(100, 95, 90, 85, 75, 55, 35) //starting from distance 0
+ var/idx = max(distance + 1, 1) //since list indices start at 1
+ if(idx > chance_table.len)
+ return 0
+ return prob(chance_table[idx])
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/smash(var/newloc, atom/against = null)
+ if(ismob(loc))
+ var/mob/M = loc
+ M.drop_from_inventory(src)
+
+ //Creates a shattering noise and replaces the bottle with a broken_bottle
+ var/obj/item/weapon/broken_bottle/B = new /obj/item/weapon/broken_bottle(newloc)
+ if(prob(33))
+ new/obj/item/weapon/material/shard(newloc) // Create a glass shard at the target's location!
+ B.icon_state = src.icon_state
+
+ var/icon/I = new('icons/obj/drinks.dmi', src.icon_state)
+ I.Blend(B.broken_outline, ICON_OVERLAY, rand(5), 1)
+ I.SwapColor(rgb(255, 0, 220, 255), rgb(0, 0, 0, 0))
+ B.icon = I
+
+ if(rag && rag.on_fire && isliving(against))
+ rag.forceMove(loc)
+ var/mob/living/L = against
+ L.IgniteMob()
+
+ playsound(src, "shatter", 70, 1)
+ src.transfer_fingerprints_to(B)
+
+ qdel(src)
+ return B
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/verb/smash_bottle()
+ set name = "Smash Bottle"
+ set category = "Object"
+
+ var/list/things_to_smash_on = list()
+ for(var/atom/A in range (1, usr))
+ if(A.density && usr.Adjacent(A) && !istype(A, /mob))
+ things_to_smash_on += A
+
+ var/atom/choice = input("Select what you want to smash the bottle on.") as null|anything in things_to_smash_on
+ if(!choice)
+ return
+ if(!(choice.density && usr.Adjacent(choice)))
+ usr << "You must stay close to your target! You moved away from \the [choice]"
+ return
+
+ usr.put_in_hands(src.smash(usr.loc, choice))
+ usr.visible_message("\The [usr] smashed \the [src] on \the [choice]!")
+ usr << "You smash \the [src] on \the [choice]!"
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/attackby(obj/item/W, mob/user)
+ if(!rag && istype(W, /obj/item/weapon/reagent_containers/glass/rag))
+ insert_rag(W, user)
+ return
+ if(rag && istype(W, /obj/item/weapon/flame))
+ rag.attackby(W, user)
+ return
+ ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/attack_self(mob/user)
+ if(rag)
+ remove_rag(user)
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/insert_rag(obj/item/weapon/reagent_containers/glass/rag/R, mob/user)
+ if(!isGlass || rag) return
+ if(user.unEquip(R))
+ user << "You stuff [R] into [src]."
+ rag = R
+ rag.forceMove(src)
+ flags &= ~OPENCONTAINER
+ update_icon()
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/proc/remove_rag(mob/user)
+ if(!rag) return
+ user.put_in_hands(rag)
+ rag = null
+ flags |= (initial(flags) & OPENCONTAINER)
+ update_icon()
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/open(mob/user)
+ if(rag) return
+ ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/update_icon()
+ underlays.Cut()
+ if(rag)
+ var/underlay_image = image(icon='icons/obj/drinks.dmi', icon_state=rag.on_fire? "[rag_underlay]_lit" : rag_underlay)
+ underlays += underlay_image
+ set_light(rag.light_range, rag.light_power, rag.light_color)
+ else
+ set_light(0)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/apply_hit_effect(mob/living/target, mob/living/user, var/hit_zone)
+ var/blocked = ..()
+
+ if(user.a_intent != I_HURT)
+ return
+ if(!smash_check(1))
+ return //won't always break on the first hit
+
+ // You are going to knock someone out for longer if they are not wearing a helmet.
+ var/weaken_duration = 0
+ if(blocked < 100)
+ weaken_duration = smash_duration + min(0, force - target.getarmor(hit_zone, "melee") + 10)
+
+ if(hit_zone == "head" && istype(target, /mob/living/carbon/))
+ user.visible_message("\The [user] smashes [src] over [target]'s head!")
+ if(weaken_duration)
+ target.apply_effect(min(weaken_duration, 5), WEAKEN, blocked) // Never weaken more than a flash!
+ else
+ user.visible_message("\The [user] smashes [src] into [target]!")
+
+ //The reagents in the bottle splash all over the target, thanks for the idea Nodrak
+ if(reagents)
+ user.visible_message("The contents of \the [src] splash all over [target]!")
+ reagents.splash(target, reagents.total_volume)
+
+ //Finally, smash the bottle. This kills (qdel) the bottle.
+ var/obj/item/weapon/broken_bottle/B = smash(target.loc, target)
+ user.put_in_active_hand(B)
+
+//Keeping this here for now, I'll ask if I should keep it here.
+/obj/item/weapon/broken_bottle
+ name = "Broken Bottle"
+ desc = "A bottle with a sharp broken bottom."
+ icon = 'icons/obj/drinks.dmi'
+ icon_state = "broken_bottle"
+ force = 10
+ throwforce = 5
+ throw_speed = 3
+ throw_range = 5
+ item_state = "beer"
+ attack_verb = list("stabbed", "slashed", "attacked")
+ sharp = 1
+ edge = 0
+ var/icon/broken_outline = icon('icons/obj/drinks.dmi', "broken")
+
+/obj/item/weapon/broken_bottle/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
+ playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
+ return ..()
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/gin
+ name = "Griffeater Gin"
+ desc = "A bottle of high quality gin, produced in Alpha Centauri."
+ icon_state = "ginbottle"
+ center_of_mass = list("x"=16, "y"=4)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/gin/New()
+ ..()
+ reagents.add_reagent("gin", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey
+ name = "Uncle Git's Special Reserve"
+ desc = "A premium single-malt whiskey, gently matured inside the tunnels of a nuclear shelter."
+ icon_state = "whiskeybottle"
+ center_of_mass = list("x"=16, "y"=3)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey/New()
+ ..()
+ reagents.add_reagent("whiskey", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey
+ name = "Special Blend Whiskey"
+ desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything."
+ icon_state = "whiskeybottle2"
+ center_of_mass = list("x"=16, "y"=3)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey/New()
+ ..()
+ reagents.add_reagent("specialwhiskey", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka
+ name = "Tunguska Triple Distilled"
+ desc = "Aah, vodka. Prime choice of drink and fuel by Russians worldwide."
+ icon_state = "vodkabottle"
+ center_of_mass = list("x"=17, "y"=3)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/New()
+ ..()
+ reagents.add_reagent("vodka", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla
+ name = "Caccavo Guaranteed Quality Tequilla"
+ desc = "Made from premium petroleum distillates, pure thalidomide and other fine quality ingredients!"
+ icon_state = "tequillabottle"
+ center_of_mass = list("x"=16, "y"=3)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla/New()
+ ..()
+ reagents.add_reagent("tequilla", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing
+ name = "Bottle of Nothing"
+ desc = "A bottle filled with nothing"
+ icon_state = "bottleofnothing"
+ center_of_mass = list("x"=17, "y"=5)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing/New()
+ ..()
+ reagents.add_reagent("nothing", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/patron
+ name = "Wrapp Artiste Patron"
+ desc = "Silver laced tequilla, served in space night clubs across the galaxy."
+ icon_state = "patronbottle"
+ center_of_mass = list("x"=16, "y"=6)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/patron/New()
+ ..()
+ reagents.add_reagent("patron", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/rum
+ name = "Captain Pete's Cuban Spiced Rum"
+ desc = "This isn't just rum, oh no. It's practically Cuba in a bottle."
+ icon_state = "rumbottle"
+ center_of_mass = list("x"=16, "y"=8)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/rum/New()
+ ..()
+ reagents.add_reagent("rum", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater
+ name = "Flask of Holy Water"
+ desc = "A flask of the chaplain's holy water."
+ icon_state = "holyflask"
+ center_of_mass = list("x"=17, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater/New()
+ ..()
+ reagents.add_reagent("holywater", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth
+ name = "Goldeneye Vermouth"
+ desc = "Sweet, sweet dryness~"
+ icon_state = "vermouthbottle"
+ center_of_mass = list("x"=17, "y"=3)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth/New()
+ ..()
+ reagents.add_reagent("vermouth", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua
+ name = "Robert Robust's Coffee Liqueur"
+ desc = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936."
+ icon_state = "kahluabottle"
+ center_of_mass = list("x"=17, "y"=3)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua/New()
+ ..()
+ reagents.add_reagent("kahlua", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager
+ name = "College Girl Goldschlager"
+ desc = "Because they are the only ones who will drink 100 proof cinnamon schnapps."
+ icon_state = "goldschlagerbottle"
+ center_of_mass = list("x"=15, "y"=3)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager/New()
+ ..()
+ reagents.add_reagent("goldschlager", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/cognac
+ name = "Chateau De Baton Premium Cognac"
+ desc = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing."
+ icon_state = "cognacbottle"
+ center_of_mass = list("x"=16, "y"=6)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/cognac/New()
+ ..()
+ reagents.add_reagent("cognac", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/wine
+ name = "Doublebeard Bearded Special Wine"
+ desc = "Cheap cooking wine pretending to be drinkable."
+ icon_state = "winebottle"
+ center_of_mass = list("x"=16, "y"=4)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/wine/New()
+ ..()
+ reagents.add_reagent("wine", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe
+ name = "Jailbreaker Verte"
+ desc = "One sip of this and you just know you're gonna have a good time."
+ icon_state = "absinthebottle"
+ center_of_mass = list("x"=16, "y"=6)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe/New()
+ ..()
+ reagents.add_reagent("absinthe", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor
+ name = "Emeraldine Melon Liquor"
+ desc = "A bottle of 46 proof Emeraldine Melon Liquor. Sweet and light."
+ icon_state = "alco-green" //Placeholder.
+ center_of_mass = list("x"=16, "y"=6)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor/New()
+ ..()
+ reagents.add_reagent("melonliquor", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao
+ name = "Miss Blue Curacao"
+ desc = "A fruity, exceptionally azure drink. Does not allow the imbiber to use the fifth magic."
+ icon_state = "alco-blue" //Placeholder.
+ center_of_mass = list("x"=16, "y"=6)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao/New()
+ ..()
+ reagents.add_reagent("bluecuracao", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine
+ name = "Briar Rose Grenadine Syrup"
+ desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks."
+ icon_state = "grenadinebottle"
+ center_of_mass = list("x"=16, "y"=6)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine/New()
+ ..()
+ reagents.add_reagent("grenadine", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/cola
+ name = "\improper Space Cola"
+ desc = "Cola. in space"
+ icon_state = "colabottle"
+ center_of_mass = list("x"=16, "y"=6)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/cola/New()
+ ..()
+ reagents.add_reagent("cola", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up
+ name = "\improper Space-Up"
+ desc = "Tastes like a hull breach in your mouth."
+ icon_state = "space-up_bottle"
+ center_of_mass = list("x"=16, "y"=6)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up/New()
+ ..()
+ reagents.add_reagent("space_up", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind
+ name = "\improper Space Mountain Wind"
+ desc = "Blows right through you like a space wind."
+ icon_state = "space_mountain_wind_bottle"
+ center_of_mass = list("x"=16, "y"=6)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind/New()
+ ..()
+ reagents.add_reagent("spacemountainwind", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/pwine
+ name = "Warlock's Velvet"
+ desc = "What a delightful packaging for a surely high quality wine! The vintage must be amazing!"
+ icon_state = "pwinebottle"
+ center_of_mass = list("x"=16, "y"=4)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/pwine/New()
+ ..()
+ reagents.add_reagent("pwine", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/redeemersbrew
+ name = "Redeemer's Brew"
+ desc = "Just opening the top of this bottle makes you feel a bit tipsy. Not for the faint of heart."
+ icon_state = "redeemersbrew"
+ center_of_mass = list("x"=16, "y"=3)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/redeemersbrew/New()
+ ..()
+ reagents.add_reagent("unathiliquor", 100)
+
+//////////////////////////JUICES AND STUFF ///////////////////////
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice
+ name = "Orange Juice"
+ desc = "Full of vitamins and deliciousness!"
+ icon_state = "orangejuice"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=7)
+ isGlass = 0
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice/New()
+ ..()
+ reagents.add_reagent("orangejuice", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/applejuice
+ name = "Apple Juice"
+ desc = "Squeezed, pressed and ground to perfection!"
+ icon_state = "applejuice"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=7)
+ isGlass = 0
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/applejuice/New()
+ ..()
+ reagents.add_reagent("applejuice", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/milk
+ name = "Large Milk Carton"
+ desc = "It's milk. This carton's large enough to serve your biggest milk drinkers."
+ icon_state = "milk"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=9)
+ isGlass = 0
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/milk/New()
+ ..()
+ reagents.add_reagent("milk", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/cream
+ name = "Milk Cream"
+ desc = "It's cream. Made from milk. What else did you think you'd find in there?"
+ icon_state = "cream"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=8)
+ isGlass = 0
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/cream/New()
+ ..()
+ reagents.add_reagent("cream", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice
+ name = "Tomato Juice"
+ desc = "Well, at least it LOOKS like tomato juice. You can't tell with all that redness."
+ icon_state = "tomatojuice"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=8)
+ isGlass = 0
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice/New()
+ ..()
+ reagents.add_reagent("tomatojuice", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice
+ name = "Lime Juice"
+ desc = "Sweet-sour goodness."
+ icon_state = "limejuice"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=8)
+ isGlass = 0
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice/New()
+ ..()
+ reagents.add_reagent("limejuice", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/lemonjuice
+ name = "Lemon Juice"
+ desc = "Sweet-sour goodness. Minus the sweet."
+ icon_state = "lemonjuice"
+ item_state = "carton"
+ center_of_mass = list("x"=16, "y"=8)
+ isGlass = 0
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/lemonjuice/New()
+ ..()
+ reagents.add_reagent("lemonjuice", 100)
+
+//Small bottles
+/obj/item/weapon/reagent_containers/food/drinks/bottle/small
+ volume = 50
+ smash_duration = 1
+ flags = 0 //starts closed
+ rag_underlay = "rag_small"
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer
+ name = "space beer"
+ desc = "Contains only water, malt and hops."
+ icon_state = "beer"
+ center_of_mass = list("x"=16, "y"=12)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer/New()
+ ..()
+ reagents.add_reagent("beer", 30)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale
+ name = "\improper Magm-Ale"
+ desc = "A true dorf's drink of choice."
+ icon_state = "alebottle"
+ item_state = "beer"
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale/New()
+ ..()
+ reagents.add_reagent("ale", 30)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/sake
+ name = "Mono-No-Aware Luxury Sake"
+ desc = "Dry alcohol made from rice, a favorite of businessmen."
+ icon_state = "sakebottle"
+ center_of_mass = list("x"=16, "y"=3)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/sake/New()
+ ..()
+ reagents.add_reagent("sake", 100)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/champagne
+ name = "Gilthari Luxury Champagne"
+ desc = "For those special occassions."
+ icon_state = "champagne"
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/champagne/New()
+ ..()
reagents.add_reagent("champagne", 100)
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/food/drinks/bottle/robot.dm b/code/modules/food/food/drinks/bottle/robot.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/food/drinks/bottle/robot.dm
rename to code/modules/food/food/drinks/bottle/robot.dm
diff --git a/code/modules/reagents/reagent_containers/food/drinks/cup.dm b/code/modules/food/food/drinks/cup.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/food/drinks/cup.dm
rename to code/modules/food/food/drinks/cup.dm
diff --git a/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm b/code/modules/food/food/drinks/drinkingglass.dm
similarity index 96%
rename from code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm
rename to code/modules/food/food/drinks/drinkingglass.dm
index b10feb2b59..b8183fd1fc 100644
--- a/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm
+++ b/code/modules/food/food/drinks/drinkingglass.dm
@@ -1,178 +1,178 @@
-
-
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass
- name = "glass"
- desc = "Your standard drinking glass."
- icon_state = "glass_empty"
- amount_per_transfer_from_this = 5
- volume = 30
- unacidable = 1 //glass
- center_of_mass = list("x"=16, "y"=10)
- matter = list("glass" = 500)
-
- on_reagent_change()
- /*if(reagents.reagent_list.len > 1 )
- icon_state = "glass_brown"
- name = "Glass of Hooch"
- desc = "Two or more drinks, mixed together."*/
- /*else if(reagents.reagent_list.len == 1)
- for(var/datum/reagent/R in reagents.reagent_list)
- switch(R.id)*/
- if (reagents.reagent_list.len > 0)
- var/datum/reagent/R = reagents.get_master_reagent()
-
- if(R.glass_icon_state)
- icon_state = R.glass_icon_state
- else
- icon_state = "glass_brown"
-
- if(R.glass_name)
- name = R.glass_name
- else
- name = "Glass of.. what?"
-
- if(R.glass_desc)
- desc = R.glass_desc
- else
- desc = "You can't really tell what this is."
-
- if(R.glass_center_of_mass)
- center_of_mass = R.glass_center_of_mass
- else
- center_of_mass = list("x"=16, "y"=10)
-
- if(R.price_tag)
- price_tag = R.price_tag
- else
- price_tag = null
- else
- icon_state = "glass_empty"
- name = "glass"
- desc = "Your standard drinking glass."
- center_of_mass = list("x"=16, "y"=10)
- return
-
-/obj/item/weapon/reagent_containers/food/drinks/cup
- name = "coffee cup"
- desc = "The container of oriental luxuries."
- icon_state = "cup_empty"
- amount_per_transfer_from_this = 5
- volume = 30
- center_of_mass = list("x"=16, "y"=16)
-
- on_reagent_change()
- if (reagents.reagent_list.len > 0)
- var/datum/reagent/R = reagents.get_master_reagent()
-
- if(R.cup_icon_state)
- icon_state = R.cup_icon_state
- else
- icon_state = "cup_brown"
-
- if(R.cup_name)
- name = R.cup_name
- else
- name = "Cup of.. what?"
-
- if(R.cup_desc)
- desc = R.cup_desc
- else
- desc = "You can't really tell what this is."
-
- if(R.cup_center_of_mass)
- center_of_mass = R.cup_center_of_mass
- else
- center_of_mass = list("x"=16, "y"=16)
-
- if(R.price_tag)
- price_tag = R.price_tag
- else
- price_tag = null
-
- else
- icon_state = "cup_empty"
- name = "coffee cup"
- desc = "The container of oriental luxuries."
- center_of_mass = list("x"=16, "y"=16)
- return
-
-// for /obj/machinery/vending/sovietsoda
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/soda
- New()
- ..()
- reagents.add_reagent("sodawater", 50)
- on_reagent_change()
-
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/cola
- New()
- ..()
- reagents.add_reagent("cola", 50)
- on_reagent_change()
-
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass
- name = "shot glass"
- desc = "No glasses were shot in the making of this glass."
- icon_state = "shotglass"
- amount_per_transfer_from_this = 10
- volume = 10
- matter = list("glass" = 175)
-
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/on_reagent_change()
- overlays.Cut()
-
- if(reagents.total_volume)
- var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]1")
-
- switch(reagents.total_volume)
- if(0 to 3) filling.icon_state = "[icon_state]1"
- if(4 to 7) filling.icon_state = "[icon_state]5"
- if(8 to INFINITY) filling.icon_state = "[icon_state]12"
-
- filling.color += reagents.get_color()
- overlays += filling
- name = "shot glass of " + reagents.get_master_reagent_name() //No matter what, the glass will tell you the reagent's name. Might be too abusable in the future.
- else
- name = "shot glass"
-
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask
- name = "fitness shaker"
- desc = "Big enough to contain enough protein to get perfectly swole. Don't mind the bits."
- icon_state = "fitness-cup_black"
- volume = 100
- matter = list("plastic" = 2000)
-
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/New()
- ..()
- icon_state = pick("fitness-cup_black", "fitness-cup_red", "fitness-cup_black")
-
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/on_reagent_change()
- overlays.Cut()
-
- if(reagents.total_volume)
- var/image/filling = image('icons/obj/reagentfillings.dmi', src, "fitness-cup10")
-
- switch(reagents.total_volume)
- if(0 to 10) filling.icon_state = "fitness-cup10"
- if(11 to 20) filling.icon_state = "fitness-cup20"
- if(21 to 29) filling.icon_state = "fitness-cup30"
- if(30 to 39) filling.icon_state = "fitness-cup40"
- if(40 to 49) filling.icon_state = "fitness-cup50"
- if(50 to 59) filling.icon_state = "fitness-cup60"
- if(60 to 69) filling.icon_state = "fitness-cup70"
- if(70 to 79) filling.icon_state = "fitness-cup80"
- if(80 to 89) filling.icon_state = "fitness-cup90"
- if(90 to INFINITY) filling.icon_state = "fitness-cup100"
-
- filling.color += reagents.get_color()
- overlays += filling
-
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake
- name = "protein shake"
-
-/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake/New()
- ..()
- reagents.add_reagent("nutriment", 30)
- reagents.add_reagent("iron", 10)
- reagents.add_reagent("protein", 15)
- reagents.add_reagent("water", 45)
+
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass
+ name = "glass"
+ desc = "Your standard drinking glass."
+ icon_state = "glass_empty"
+ amount_per_transfer_from_this = 5
+ volume = 30
+ unacidable = 1 //glass
+ center_of_mass = list("x"=16, "y"=10)
+ matter = list("glass" = 500)
+
+ on_reagent_change()
+ /*if(reagents.reagent_list.len > 1 )
+ icon_state = "glass_brown"
+ name = "Glass of Hooch"
+ desc = "Two or more drinks, mixed together."*/
+ /*else if(reagents.reagent_list.len == 1)
+ for(var/datum/reagent/R in reagents.reagent_list)
+ switch(R.id)*/
+ if (reagents.reagent_list.len > 0)
+ var/datum/reagent/R = reagents.get_master_reagent()
+
+ if(R.glass_icon_state)
+ icon_state = R.glass_icon_state
+ else
+ icon_state = "glass_brown"
+
+ if(R.glass_name)
+ name = R.glass_name
+ else
+ name = "Glass of.. what?"
+
+ if(R.glass_desc)
+ desc = R.glass_desc
+ else
+ desc = "You can't really tell what this is."
+
+ if(R.glass_center_of_mass)
+ center_of_mass = R.glass_center_of_mass
+ else
+ center_of_mass = list("x"=16, "y"=10)
+
+ if(R.price_tag)
+ price_tag = R.price_tag
+ else
+ price_tag = null
+ else
+ icon_state = "glass_empty"
+ name = "glass"
+ desc = "Your standard drinking glass."
+ center_of_mass = list("x"=16, "y"=10)
+ return
+
+/obj/item/weapon/reagent_containers/food/drinks/cup
+ name = "coffee cup"
+ desc = "The container of oriental luxuries."
+ icon_state = "cup_empty"
+ amount_per_transfer_from_this = 5
+ volume = 30
+ center_of_mass = list("x"=16, "y"=16)
+
+ on_reagent_change()
+ if (reagents.reagent_list.len > 0)
+ var/datum/reagent/R = reagents.get_master_reagent()
+
+ if(R.cup_icon_state)
+ icon_state = R.cup_icon_state
+ else
+ icon_state = "cup_brown"
+
+ if(R.cup_name)
+ name = R.cup_name
+ else
+ name = "Cup of.. what?"
+
+ if(R.cup_desc)
+ desc = R.cup_desc
+ else
+ desc = "You can't really tell what this is."
+
+ if(R.cup_center_of_mass)
+ center_of_mass = R.cup_center_of_mass
+ else
+ center_of_mass = list("x"=16, "y"=16)
+
+ if(R.price_tag)
+ price_tag = R.price_tag
+ else
+ price_tag = null
+
+ else
+ icon_state = "cup_empty"
+ name = "coffee cup"
+ desc = "The container of oriental luxuries."
+ center_of_mass = list("x"=16, "y"=16)
+ return
+
+// for /obj/machinery/vending/sovietsoda
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/soda
+ New()
+ ..()
+ reagents.add_reagent("sodawater", 50)
+ on_reagent_change()
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/cola
+ New()
+ ..()
+ reagents.add_reagent("cola", 50)
+ on_reagent_change()
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass
+ name = "shot glass"
+ desc = "No glasses were shot in the making of this glass."
+ icon_state = "shotglass"
+ amount_per_transfer_from_this = 10
+ volume = 10
+ matter = list("glass" = 175)
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass/on_reagent_change()
+ overlays.Cut()
+
+ if(reagents.total_volume)
+ var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]1")
+
+ switch(reagents.total_volume)
+ if(0 to 3) filling.icon_state = "[icon_state]1"
+ if(4 to 7) filling.icon_state = "[icon_state]5"
+ if(8 to INFINITY) filling.icon_state = "[icon_state]12"
+
+ filling.color += reagents.get_color()
+ overlays += filling
+ name = "shot glass of " + reagents.get_master_reagent_name() //No matter what, the glass will tell you the reagent's name. Might be too abusable in the future.
+ else
+ name = "shot glass"
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask
+ name = "fitness shaker"
+ desc = "Big enough to contain enough protein to get perfectly swole. Don't mind the bits."
+ icon_state = "fitness-cup_black"
+ volume = 100
+ matter = list("plastic" = 2000)
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/New()
+ ..()
+ icon_state = pick("fitness-cup_black", "fitness-cup_red", "fitness-cup_black")
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/on_reagent_change()
+ overlays.Cut()
+
+ if(reagents.total_volume)
+ var/image/filling = image('icons/obj/reagentfillings.dmi', src, "fitness-cup10")
+
+ switch(reagents.total_volume)
+ if(0 to 10) filling.icon_state = "fitness-cup10"
+ if(11 to 20) filling.icon_state = "fitness-cup20"
+ if(21 to 29) filling.icon_state = "fitness-cup30"
+ if(30 to 39) filling.icon_state = "fitness-cup40"
+ if(40 to 49) filling.icon_state = "fitness-cup50"
+ if(50 to 59) filling.icon_state = "fitness-cup60"
+ if(60 to 69) filling.icon_state = "fitness-cup70"
+ if(70 to 79) filling.icon_state = "fitness-cup80"
+ if(80 to 89) filling.icon_state = "fitness-cup90"
+ if(90 to INFINITY) filling.icon_state = "fitness-cup100"
+
+ filling.color += reagents.get_color()
+ overlays += filling
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake
+ name = "protein shake"
+
+/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake/New()
+ ..()
+ reagents.add_reagent("nutriment", 30)
+ reagents.add_reagent("iron", 10)
+ reagents.add_reagent("protein", 15)
+ reagents.add_reagent("water", 45)
on_reagent_change()
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/food/drinks/jar.dm b/code/modules/food/food/drinks/jar.dm
similarity index 96%
rename from code/modules/reagents/reagent_containers/food/drinks/jar.dm
rename to code/modules/food/food/drinks/jar.dm
index b4d305bae7..2167eb48a4 100644
--- a/code/modules/reagents/reagent_containers/food/drinks/jar.dm
+++ b/code/modules/food/food/drinks/jar.dm
@@ -1,25 +1,25 @@
-///jar
-/obj/item/weapon/reagent_containers/food/drinks/jar
- name = "empty jar"
- desc = "A jar. You're not sure what it's supposed to hold."
- icon_state = "jar"
- item_state = "beaker"
- center_of_mass = list("x"=15, "y"=8)
- unacidable = 1
-
-/obj/item/weapon/reagent_containers/food/drinks/jar/on_reagent_change()
- if (reagents.reagent_list.len > 0)
- switch(reagents.get_master_reagent_id())
- if("slime")
- icon_state = "jar_slime"
- name = "slime jam"
- desc = "A jar of slime jam. Delicious!"
- else
- icon_state ="jar_what"
- name = "jar of something"
- desc = "You can't really tell what this is."
- else
- icon_state = "jar"
- name = "empty jar"
- desc = "A jar. You're not sure what it's supposed to hold."
- return
+///jar
+/obj/item/weapon/reagent_containers/food/drinks/jar
+ name = "empty jar"
+ desc = "A jar. You're not sure what it's supposed to hold."
+ icon_state = "jar"
+ item_state = "beaker"
+ center_of_mass = list("x"=15, "y"=8)
+ unacidable = 1
+
+/obj/item/weapon/reagent_containers/food/drinks/jar/on_reagent_change()
+ if (reagents.reagent_list.len > 0)
+ switch(reagents.get_master_reagent_id())
+ if("slime")
+ icon_state = "jar_slime"
+ name = "slime jam"
+ desc = "A jar of slime jam. Delicious!"
+ else
+ icon_state ="jar_what"
+ name = "jar of something"
+ desc = "You can't really tell what this is."
+ else
+ icon_state = "jar"
+ name = "empty jar"
+ desc = "A jar. You're not sure what it's supposed to hold."
+ return
diff --git a/code/modules/reagents/reagent_containers/food/lunch.dm b/code/modules/food/food/lunch.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/food/lunch.dm
rename to code/modules/food/food/lunch.dm
diff --git a/code/modules/reagents/reagent_containers/food/sandwich.dm b/code/modules/food/food/sandwich.dm
similarity index 100%
rename from code/modules/reagents/reagent_containers/food/sandwich.dm
rename to code/modules/food/food/sandwich.dm
diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm
new file mode 100644
index 0000000000..048221ff16
--- /dev/null
+++ b/code/modules/food/food/snacks.dm
@@ -0,0 +1,7740 @@
+<<<<<<< HEAD:code/modules/reagents/reagent_containers/food/snacks.dm
+//Food items that are eaten normally and don't leave anything behind.
+/obj/item/weapon/reagent_containers/food/snacks
+ name = "snack"
+ desc = "yummy"
+ icon = 'icons/obj/food.dmi'
+ icon_state = null
+ var/bitesize = 1
+ var/bitecount = 0
+ var/trash = null
+ var/slice_path
+ var/slices_num
+ var/dried_type = null
+ var/dry = 0
+ var/nutriment_amt = 0
+ var/list/nutriment_desc = list("food" = 1)
+ center_of_mass = list("x"=16, "y"=16)
+ w_class = ITEMSIZE_SMALL
+ force = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/New()
+ ..()
+ if(nutriment_amt)
+ reagents.add_reagent("nutriment",nutriment_amt,nutriment_desc)
+
+/obj/item/weapon/reagent_containers/food/snacks/New()
+ ..()
+ if(nutriment_amt)
+ reagents.add_reagent("nutriment", nutriment_amt)
+
+ //Placeholder for effect that trigger on eating that aren't tied to reagents.
+/obj/item/weapon/reagent_containers/food/snacks/proc/On_Consume(var/mob/M)
+ if(!usr)
+ usr = M
+ if(!reagents.total_volume)
+ M.visible_message("[M] finishes eating \the [src].","You finish eating \the [src].")
+ usr.drop_from_inventory(src) //so icons update :[
+
+ if(trash)
+ if(ispath(trash,/obj/item))
+ var/obj/item/TrashItem = new trash(usr)
+ usr.put_in_hands(TrashItem)
+ else if(istype(trash,/obj/item))
+ usr.put_in_hands(trash)
+ qdel(src)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/attack_self(mob/user as mob)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/attack(mob/M as mob, mob/user as mob, def_zone)
+ if(reagents && !reagents.total_volume)
+ user << "None of [src] left!"
+ user.drop_from_inventory(src)
+ qdel(src)
+ return 0
+
+ if(istype(M, /mob/living/carbon))
+ //TODO: replace with standard_feed_mob() call.
+
+ var/fullness = M.nutrition + (M.reagents.get_reagent_amount("nutriment") * 25)
+ if(M == user) //If you're eating it yourself
+ if(istype(M,/mob/living/carbon/human))
+ var/mob/living/carbon/human/H = M
+ if(!H.check_has_mouth())
+ user << "Where do you intend to put \the [src]? You don't have a mouth!"
+ return
+ var/obj/item/blocked = H.check_mouth_coverage()
+ if(blocked)
+ user << "\The [blocked] is in the way!"
+ return
+
+ // Vorestation edits in this section.
+ user.setClickCooldown(user.get_attack_speed(src)) //puts a limit on how fast people can eat/drink things
+ if (fullness <= 50)
+ M << "You hungrily chew out a piece of [src] and gobble it!"
+ if (fullness > 50 && fullness <= 150)
+ M << "You hungrily begin to eat [src]."
+ if (fullness > 150 && fullness <= 350)
+ M << "You take a bite of [src]."
+ if (fullness > 350 && fullness <= 550)
+ M << "You unwillingly chew a bit of [src]."
+ if (fullness > 550 && fullness <= 650)
+ M << "You swallow some more of the [src], causing your belly to swell out a little."
+ if (fullness > 650 && fullness <= 1000)
+ M << "You stuff yourself with the [src]. Your stomach feels very heavy."
+ if (fullness > 1000 && fullness <= 3000)
+ M << "You gluttonously swallow down the hunk of [src]. You're so gorged, it's hard to stand."
+ if (fullness > 3000 && fullness <= 5500)
+ M << "You force the piece of [src] down your throat. You can feel your stomach getting firm as it reaches its limits."
+ if (fullness > 5500 && fullness <= 6000)
+ M << "You barely glug down the bite of [src], causing undigested food to force into your intestines. You can't take much more of this!"
+ if (fullness > 6000) // There has to be a limit eventually.
+ M << "Your stomach blorts and aches, prompting you to stop. You literally cannot force any more of [src] to go down your throat."
+ return 0
+ /*if (fullness > (550 * (1 + M.overeatduration / 2000))) // The more you eat - the more you can eat
+ M << "You cannot force any more of [src] to go down your throat."
+ return 0*/
+
+ else
+ if(istype(M,/mob/living/carbon/human))
+ var/mob/living/carbon/human/H = M
+ if(!H.check_has_mouth())
+ user << "Where do you intend to put \the [src]? \The [H] doesn't have a mouth!"
+ return
+ var/obj/item/blocked = H.check_mouth_coverage()
+ if(blocked)
+ user << "\The [blocked] is in the way!"
+ return
+
+ if(!istype(M, /mob/living/carbon/slime)) //If you're feeding it to someone else.
+
+ /*if (fullness <= (550 * (1 + M.overeatduration / 1000))) // Vorestation edit
+ user.visible_message("[user] attempts to feed [M] [src].")
+ else
+ user.visible_message("[user] cannot force anymore of [src] down [M]'s throat.")
+ return 0*/
+ user.visible_message("[user] attempts to feed [M] [src].") // Vorestation edit
+
+ user.setClickCooldown(user.get_attack_speed(src))
+ if(!do_mob(user, M)) return
+
+ //Do we really care about this
+ add_attack_logs(user,M,"Fed with [src.name] containing [reagentlist(src)]", admin_notify = FALSE)
+
+ user.visible_message("[user] feeds [M] [src].")
+
+ else
+ user << "This creature does not seem to have a mouth!"
+ return
+
+ if(reagents) //Handle ingestion of the reagent.
+ playsound(M.loc,'sound/items/eatfood.ogg', rand(10,50), 1)
+ if(reagents.total_volume)
+ if(reagents.total_volume > bitesize)
+ reagents.trans_to_mob(M, bitesize, CHEM_INGEST)
+ else
+ reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST)
+ bitecount++
+ On_Consume(M)
+ return 1
+
+ return 0
+
+/obj/item/weapon/reagent_containers/food/snacks/examine(mob/user)
+ if(!..(user, 1))
+ return
+ if (bitecount==0)
+ return
+ else if (bitecount==1)
+ user << "\The [src] was bitten by someone!"
+ else if (bitecount<=3)
+ user << "\The [src] was bitten [bitecount] times!"
+ else
+ user << "\The [src] was bitten multiple times!"
+
+/obj/item/weapon/reagent_containers/food/snacks/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype(W,/obj/item/weapon/storage))
+ ..() // -> item/attackby()
+ return
+
+ // Eating with forks
+ if(istype(W,/obj/item/weapon/material/kitchen/utensil))
+ var/obj/item/weapon/material/kitchen/utensil/U = W
+ if(U.scoop_food)
+ if(!U.reagents)
+ U.create_reagents(5)
+
+ if (U.reagents.total_volume > 0)
+ user << "You already have something on your [U]."
+ return
+
+ user.visible_message( \
+ "[user] scoops up some [src] with \the [U]!", \
+ "You scoop up some [src] with \the [U]!" \
+ )
+
+ src.bitecount++
+ U.overlays.Cut()
+ U.loaded = "[src]"
+ var/image/I = new(U.icon, "loadedfood")
+ I.color = src.filling_color
+ U.overlays += I
+
+ reagents.trans_to_obj(U, min(reagents.total_volume,5))
+
+ if (reagents.total_volume <= 0)
+ qdel(src)
+ return
+
+ if (is_sliceable())
+ //these are used to allow hiding edge items in food that is not on a table/tray
+ var/can_slice_here = isturf(src.loc) && ((locate(/obj/structure/table) in src.loc) || (locate(/obj/machinery/optable) in src.loc) || (locate(/obj/item/weapon/tray) in src.loc))
+ var/hide_item = !has_edge(W) || !can_slice_here
+
+ if (hide_item)
+ if (W.w_class >= src.w_class || is_robot_module(W))
+ return
+
+ to_chat(user, "You slip \the [W] inside \the [src].")
+ user.drop_from_inventory(W, src)
+ add_fingerprint(user)
+ contents += W
+ return
+
+ if (has_edge(W))
+ if (!can_slice_here)
+ to_chat(user, "You cannot slice \the [src] here! You need a table or at least a tray to do it.")
+ return
+
+ var/slices_lost = 0
+ if (W.w_class > 3)
+ user.visible_message("\The [user] crudely slices \the [src] with [W]!", "You crudely slice \the [src] with your [W]!")
+ slices_lost = rand(1,min(1,round(slices_num/2)))
+ else
+ user.visible_message("\The [user] slices \the [src]!", "You slice \the [src]!")
+
+ var/reagents_per_slice = reagents.total_volume/slices_num
+ for(var/i=1 to (slices_num-slices_lost))
+ var/obj/slice = new slice_path (src.loc)
+ reagents.trans_to_obj(slice, reagents_per_slice)
+ qdel(src)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/proc/is_sliceable()
+ return (slices_num && slice_path && slices_num > 0)
+
+/obj/item/weapon/reagent_containers/food/snacks/Destroy()
+ if(contents)
+ for(var/atom/movable/something in contents)
+ something.dropInto(loc)
+ . = ..()
+
+////////////////////////////////////////////////////////////////////////////////
+/// FOOD END
+////////////////////////////////////////////////////////////////////////////////
+/obj/item/weapon/reagent_containers/food/snacks/attack_generic(var/mob/living/user)
+ if(!isanimal(user) && !isalien(user))
+ return
+ user.visible_message("[user] nibbles away at \the [src].","You nibble away at \the [src].")
+ bitecount++
+ if(reagents)
+ reagents.trans_to_mob(user, bitesize, CHEM_INGEST)
+ spawn(5)
+ if(!src && !user.client)
+ user.custom_emote(1,"[pick("burps", "cries for more", "burps twice", "looks at the area where the food was")]")
+ qdel(src)
+ On_Consume(user)
+
+//////////////////////////////////////////////////
+////////////////////////////////////////////Snacks
+//////////////////////////////////////////////////
+//Items in the "Snacks" subcategory are food items that people actually eat. The key points are that they are created
+// already filled with reagents and are destroyed when empty. Additionally, they make a "munching" noise when eaten.
+
+//Notes by Darem: Food in the "snacks" subtype can hold a maximum of 50 units Generally speaking, you don't want to go over 40
+// total for the item because you want to leave space for extra condiments. If you want effect besides healing, add a reagent for
+// it. Try to stick to existing reagents when possible (so if you want a stronger healing effect, just use Tricordrazine). On use
+// effect (such as the old officer eating a donut code) requires a unique reagent (unless you can figure out a better way).
+
+//The nutriment reagent and bitesize variable replace the old heal_amt and amount variables. Each unit of nutriment is equal to
+// 2 of the old heal_amt variable. Bitesize is the rate at which the reagents are consumed. So if you have 6 nutriment and a
+// bitesize of 2, then it'll take 3 bites to eat. Unlike the old system, the contained reagents are evenly spread among all
+// the bites. No more contained reagents = no more bites.
+
+//Here is an example of the new formatting for anyone who wants to add more food items.
+///obj/item/weapon/reagent_containers/food/snacks/xenoburger //Identification path for the object.
+// name = "Xenoburger" //Name that displays in the UI.
+// desc = "Smells caustic. Tastes like heresy." //Duh
+// icon_state = "xburger" //Refers to an icon in food.dmi
+// New() //Don't mess with this.
+// ..() //Same here.
+// reagents.add_reagent("xenomicrobes", 10) //This is what is in the food item. you may copy/paste
+// reagents.add_reagent("nutriment", 2) // this line of code for all the contents.
+// bitesize = 3 //This is the amount each bite consumes.
+
+
+
+
+/obj/item/weapon/reagent_containers/food/snacks/aesirsalad
+ name = "Aesir salad"
+ desc = "Probably too incredible for mortal men to fully enjoy."
+ icon_state = "aesirsalad"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#468C00"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 8
+ nutriment_desc = list("apples" = 3,"salad" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/aesirsalad/New()
+ ..()
+ reagents.add_reagent("doctorsdelight", 8)
+ reagents.add_reagent("tricordrazine", 8)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/candy
+ name = "candy"
+ desc = "Nougat, love it or hate it."
+ icon_state = "candy"
+ trash = /obj/item/trash/candy
+ filling_color = "#7D5F46"
+ center_of_mass = list("x"=15, "y"=15)
+ nutriment_amt = 1
+ nutriment_desc = list("candy" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/New()
+ ..()
+ reagents.add_reagent("sugar", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar
+ name = "protein bar"
+ desc = "SwoleMAX brand protein bars, guaranteed to get you feeling perfectly overconfident."
+ icon_state = "proteinbar"
+ trash = /obj/item/trash/candy/proteinbar
+ nutriment_amt = 9
+ nutriment_desc = list("candy" = 1, "protein" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ reagents.add_reagent("sugar", 4)
+ bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/donor
+ name = "Donor Candy"
+ desc = "A little treat for blood donors."
+ trash = /obj/item/trash/candy
+ nutriment_amt = 9
+ nutriment_desc = list("candy" = 10)
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/donor/New()
+ ..()
+ reagents.add_reagent("sugar", 3)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/candy_corn
+ name = "candy corn"
+ desc = "It's a handful of candy corn. Cannot be stored in a detective's hat, alas."
+ icon_state = "candy_corn"
+ filling_color = "#FFFCB0"
+ center_of_mass = list("x"=14, "y"=10)
+ nutriment_amt = 4
+ nutriment_desc = list("candy corn" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/candy_corn/New()
+ ..()
+ reagents.add_reagent("sugar", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/chips
+ name = "chips"
+ desc = "Commander Riker's What-The-Crisps"
+ icon_state = "chips"
+ trash = /obj/item/trash/chips
+ filling_color = "#E8C31E"
+ center_of_mass = list("x"=15, "y"=15)
+ nutriment_amt = 3
+ nutriment_desc = list("salt" = 1, "chips" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/chips/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/cookie
+ name = "cookie"
+ desc = "COOKIE!!!"
+ icon_state = "COOKIE!!!"
+ filling_color = "#DBC94F"
+ center_of_mass = list("x"=17, "y"=18)
+ nutriment_amt = 5
+ nutriment_desc = list("sweetness" = 3, "cookie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/cookie/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatebar
+ name = "Chocolate Bar"
+ desc = "Such sweet, fattening food."
+ icon_state = "chocolatebar"
+ filling_color = "#7D5F46"
+ center_of_mass = list("x"=15, "y"=15)
+ nutriment_amt = 2
+ nutriment_desc = list("chocolate" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatebar/New()
+ ..()
+ reagents.add_reagent("sugar", 2)
+ reagents.add_reagent("coco", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatepiece
+ name = "chocolate piece"
+ desc = "A luscious milk chocolate piece filled with gooey caramel."
+ icon_state = "chocolatepiece"
+ filling_color = "#7D5F46"
+ center_of_mass = list("x"=15, "y"=15)
+ nutriment_amt = 1
+ nutriment_desc = list("chocolate" = 3, "caramel" = 2, "lusciousness" = 1)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatepiece/white
+ name = "white chocolate piece"
+ desc = "A creamy white chocolate piece drizzled in milk chocolate."
+ icon_state = "chocolatepiece_white"
+ filling_color = "#E2DAD3"
+ nutriment_desc = list("white chocolate" = 3, "creaminess" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatepiece/truffle
+ name = "chocolate truffle"
+ desc = "A bite-sized milk chocolate truffle that could buy anyone's love."
+ icon_state = "chocolatepiece_truffle"
+ nutriment_desc = list("chocolate" = 3, "undying devotion" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolateegg
+ name = "Chocolate Egg"
+ desc = "Such sweet, fattening food."
+ icon_state = "chocolateegg"
+ filling_color = "#7D5F46"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 3
+ nutriment_desc = list("chocolate" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolateegg/New()
+ ..()
+ reagents.add_reagent("sugar", 2)
+ reagents.add_reagent("coco", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/donut
+ name = "donut"
+ desc = "Goes great with Robust Coffee."
+ icon_state = "donut1"
+ filling_color = "#D9C386"
+ var/overlay_state = "box-donut1"
+ center_of_mass = list("x"=13, "y"=16)
+ nutriment_desc = list("sweetness", "donut")
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/normal
+ name = "donut"
+ desc = "Goes great with Robust Coffee."
+ icon_state = "donut1"
+ nutriment_amt = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/normal/New()
+ ..()
+ reagents.add_reagent("nutriment", 3)
+ reagents.add_reagent("sprinkles", 1)
+ src.bitesize = 3
+ if(prob(30))
+ src.icon_state = "donut2"
+ src.overlay_state = "box-donut2"
+ src.name = "frosted donut"
+ reagents.add_reagent("sprinkles", 2)
+ center_of_mass = list("x"=19, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/chaos
+ name = "Chaos Donut"
+ desc = "Like life, it never quite tastes the same."
+ icon_state = "donut1"
+ filling_color = "#ED11E6"
+ nutriment_amt = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/chaos/New()
+ ..()
+ reagents.add_reagent("sprinkles", 1)
+ bitesize = 10
+ var/chaosselect = pick(1,2,3,4,5,6,7,8,9,10)
+ switch(chaosselect)
+ if(1)
+ reagents.add_reagent("nutriment", 3)
+ if(2)
+ reagents.add_reagent("capsaicin", 3)
+ if(3)
+ reagents.add_reagent("frostoil", 3)
+ if(4)
+ reagents.add_reagent("sprinkles", 3)
+ if(5)
+ reagents.add_reagent("phoron", 3)
+ if(6)
+ reagents.add_reagent("coco", 3)
+ if(7)
+ reagents.add_reagent("slimejelly", 3)
+ if(8)
+ reagents.add_reagent("banana", 3)
+ if(9)
+ reagents.add_reagent("berryjuice", 3)
+ if(10)
+ reagents.add_reagent("tricordrazine", 3)
+ if(prob(30))
+ src.icon_state = "donut2"
+ src.overlay_state = "box-donut2"
+ src.name = "Frosted Chaos Donut"
+ reagents.add_reagent("sprinkles", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/jelly
+ name = "Jelly Donut"
+ desc = "You jelly?"
+ icon_state = "jdonut1"
+ filling_color = "#ED1169"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/jelly/New()
+ ..()
+ reagents.add_reagent("sprinkles", 1)
+ reagents.add_reagent("berryjuice", 5)
+ bitesize = 5
+ if(prob(30))
+ src.icon_state = "jdonut2"
+ src.overlay_state = "box-donut2"
+ src.name = "Frosted Jelly Donut"
+ reagents.add_reagent("sprinkles", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/slimejelly
+ name = "Jelly Donut"
+ desc = "You jelly?"
+ icon_state = "jdonut1"
+ filling_color = "#ED1169"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/slimejelly/New()
+ ..()
+ reagents.add_reagent("sprinkles", 1)
+ reagents.add_reagent("slimejelly", 5)
+ bitesize = 5
+ if(prob(30))
+ src.icon_state = "jdonut2"
+ src.overlay_state = "box-donut2"
+ src.name = "Frosted Jelly Donut"
+ reagents.add_reagent("sprinkles", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/cherryjelly
+ name = "Jelly Donut"
+ desc = "You jelly?"
+ icon_state = "jdonut1"
+ filling_color = "#ED1169"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/cherryjelly/New()
+ ..()
+ reagents.add_reagent("sprinkles", 1)
+ reagents.add_reagent("cherryjelly", 5)
+ bitesize = 5
+ if(prob(30))
+ src.icon_state = "jdonut2"
+ src.overlay_state = "box-donut2"
+ src.name = "Frosted Jelly Donut"
+ reagents.add_reagent("sprinkles", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg
+ name = "egg"
+ desc = "An egg!"
+ icon_state = "egg"
+ filling_color = "#FDFFD1"
+ volume = 10
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/New()
+ ..()
+ reagents.add_reagent("egg", 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/afterattack(obj/O as obj, mob/user as mob, proximity)
+ if(istype(O,/obj/machinery/microwave))
+ return ..()
+ if(!(proximity && O.is_open_container()))
+ return
+ user << "You crack \the [src] into \the [O]."
+ reagents.trans_to(O, reagents.total_volume)
+ user.drop_from_inventory(src)
+ qdel(src)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/throw_impact(atom/hit_atom)
+ ..()
+ new/obj/effect/decal/cleanable/egg_smudge(src.loc)
+ src.reagents.splash(hit_atom, reagents.total_volume)
+ src.visible_message("[src.name] has been squashed.","You hear a smack.")
+ qdel(src)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype( W, /obj/item/weapon/pen/crayon ))
+ var/obj/item/weapon/pen/crayon/C = W
+ var/clr = C.colourName
+
+ if(!(clr in list("blue","green","mime","orange","purple","rainbow","red","yellow")))
+ usr << "The egg refuses to take on this color!"
+ return
+
+ usr << "You color \the [src] [clr]"
+ icon_state = "egg-[clr]"
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/blue
+ icon_state = "egg-blue"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/green
+ icon_state = "egg-green"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/mime
+ icon_state = "egg-mime"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/orange
+ icon_state = "egg-orange"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/purple
+ icon_state = "egg-purple"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/rainbow
+ icon_state = "egg-rainbow"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/red
+ icon_state = "egg-red"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/yellow
+ icon_state = "egg-yellow"
+
+/obj/item/weapon/reagent_containers/food/snacks/friedegg
+ name = "Fried egg"
+ desc = "A fried egg, with a touch of salt and pepper."
+ icon_state = "friedegg"
+ filling_color = "#FFDF78"
+ center_of_mass = list("x"=16, "y"=14)
+
+/obj/item/weapon/reagent_containers/food/snacks/friedegg/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("sodiumchloride", 1)
+ reagents.add_reagent("blackpepper", 1)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledegg
+ name = "Boiled egg"
+ desc = "A hard boiled egg."
+ icon_state = "egg"
+ filling_color = "#FFFFFF"
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledegg/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/organ
+ name = "organ"
+ desc = "It's good for you."
+ icon = 'icons/obj/surgery.dmi'
+ icon_state = "appendix"
+ filling_color = "#E00D34"
+ center_of_mass = list("x"=16, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/organ/New()
+ ..()
+ reagents.add_reagent("protein", rand(3,5))
+ reagents.add_reagent("toxin", rand(1,3))
+ src.bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/tofu
+ name = "Tofu"
+ icon_state = "tofu"
+ desc = "We all love tofu."
+ filling_color = "#FFFEE0"
+ center_of_mass = list("x"=17, "y"=10)
+ nutriment_amt = 3
+ nutriment_desc = list("tofu" = 3, "goeyness" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofu/New()
+ ..()
+ src.bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/tofurkey
+ name = "Tofurkey"
+ desc = "A fake turkey made from tofu."
+ icon_state = "tofurkey"
+ filling_color = "#FFFEE0"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 12
+ nutriment_desc = list("turkey" = 3, "tofu" = 5, "goeyness" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofurkey/New()
+ ..()
+ reagents.add_reagent("stoxin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/stuffing
+ name = "Stuffing"
+ desc = "Moist, peppery breadcrumbs for filling the body cavities of dead birds. Dig in!"
+ icon_state = "stuffing"
+ filling_color = "#C9AC83"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 3
+ nutriment_desc = list("dryness" = 2, "bread" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/stuffing/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/carpmeat
+ name = "carp fillet"
+ desc = "A fillet of spess carp meat"
+ icon_state = "fishfillet"
+ filling_color = "#FFDEFE"
+ center_of_mass = list("x"=17, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/carpmeat/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("carpotoxin", 3)
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/fishfingers
+ name = "Fish Fingers"
+ desc = "A finger of fish."
+ icon_state = "fishfingers"
+ filling_color = "#FFDEFE"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/fishfingers/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ reagents.add_reagent("carpotoxin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice
+ name = "huge mushroom slice"
+ desc = "A slice from a huge mushroom."
+ icon_state = "hugemushroomslice"
+ filling_color = "#E0D7C5"
+ center_of_mass = list("x"=17, "y"=16)
+ nutriment_amt = 3
+ nutriment_desc = list("raw" = 2, "mushroom" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice/New()
+ ..()
+ reagents.add_reagent("psilocybin", 3)
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/tomatomeat
+ name = "tomato slice"
+ desc = "A slice from a huge tomato"
+ icon_state = "tomatomeat"
+ filling_color = "#DB0000"
+ center_of_mass = list("x"=17, "y"=16)
+ nutriment_amt = 3
+ nutriment_desc = list("raw" = 2, "tomato" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/tomatomeat/New()
+ ..()
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/bearmeat
+ name = "bear meat"
+ desc = "A very manly slab of meat."
+ icon_state = "bearmeat"
+ filling_color = "#DB0000"
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/bearmeat/New()
+ ..()
+ reagents.add_reagent("protein", 12)
+ reagents.add_reagent("hyperzine", 5)
+ src.bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/xenomeat
+ name = "xenomeat"
+ desc = "A slab of green meat. Smells like acid."
+ icon_state = "xenomeat"
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/xenomeat/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ reagents.add_reagent("pacid",6)
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat // Substitute for recipes requiring xeno meat.
+ name = "spider meat"
+ desc = "A slab of green meat."
+ icon_state = "xenomeat"
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat/New()
+ ..()
+ reagents.add_reagent("spidertoxin",6)
+ reagents.remove_reagent("pacid",6)
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/meatball
+ name = "meatball"
+ desc = "A great meal all round."
+ icon_state = "meatball"
+ filling_color = "#DB0000"
+ center_of_mass = list("x"=16, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatball/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/sausage
+ name = "Sausage"
+ desc = "A piece of mixed, long meat."
+ icon_state = "sausage"
+ filling_color = "#DB0000"
+ center_of_mass = list("x"=16, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/sausage/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket
+ name = "Donk-pocket"
+ desc = "The food of choice for the seasoned traitor."
+ icon_state = "donkpocket"
+ filling_color = "#DEDEAB"
+ center_of_mass = list("x"=16, "y"=10)
+ var/warm
+ var/list/heated_reagents
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/New()
+ ..()
+ reagents.add_reagent("nutriment", 2)
+ reagents.add_reagent("protein", 2)
+
+ warm = 0
+ heated_reagents = list("tricordrazine" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/proc/heat()
+ warm = 1
+ for(var/reagent in heated_reagents)
+ reagents.add_reagent(reagent, heated_reagents[reagent])
+ bitesize = 6
+ name = "Warm " + name
+ cooltime()
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/proc/cooltime()
+ if (src.warm)
+ spawn(4200)
+ src.warm = 0
+ for(var/reagent in heated_reagents)
+ src.reagents.del_reagent(reagent)
+ src.name = initial(name)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket
+ name = "\improper Sin-pocket"
+ desc = "The food of choice for the veteran. Do NOT overconsume."
+ filling_color = "#6D6D00"
+ heated_reagents = list("doctorsdelight" = 5, "hyperzine" = 0.75, "synaptizine" = 0.25)
+ var/has_been_heated = 0
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket/attack_self(mob/user)
+ if(has_been_heated)
+ 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.")
+ spawn(200)
+ user << "You think \the [src] is ready to eat about now."
+ heat()
+
+/obj/item/weapon/reagent_containers/food/snacks/brainburger
+ name = "brainburger"
+ desc = "A strange looking burger. It looks almost sentient."
+ icon_state = "brainburger"
+ filling_color = "#F2B6EA"
+ center_of_mass = list("x"=15, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/brainburger/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ reagents.add_reagent("alkysine", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/ghostburger
+ name = "Ghost Burger"
+ desc = "Spooky! It doesn't look very filling."
+ icon_state = "ghostburger"
+ filling_color = "#FFF2FF"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("buns" = 3, "spookiness" = 3)
+ nutriment_amt = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/ghostburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/human
+ var/hname = ""
+ var/job = null
+ filling_color = "#D63C3C"
+
+/obj/item/weapon/reagent_containers/food/snacks/human/burger
+ name = "-burger"
+ desc = "A bloody burger."
+ icon_state = "hburger"
+ center_of_mass = list("x"=16, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/human/burger/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cheeseburger
+ name = "cheeseburger"
+ desc = "The cheese adds a good flavor."
+ icon_state = "cheeseburger"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 2
+ nutriment_desc = list("cheese" = 2, "bun" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheeseburger/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeyburger
+ name = "burger"
+ desc = "The cornerstone of every nutritious breakfast."
+ icon_state = "hburger"
+ filling_color = "#D63C3C"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+ nutriment_desc = list("bun" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeyburger/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fishburger
+ name = "Fillet -o- Carp Sandwich"
+ desc = "Almost like a carp is yelling somewhere... Give me back that fillet -o- carp, give me that carp."
+ icon_state = "fishburger"
+ filling_color = "#FFDEFE"
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/fishburger/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ reagents.add_reagent("carpotoxin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/tofuburger
+ name = "Tofu Burger"
+ desc = "What.. is that meat?"
+ icon_state = "tofuburger"
+ filling_color = "#FFFEE0"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 6
+ nutriment_desc = list("bun" = 2, "pseudo-soy meat" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofuburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/roburger
+ name = "roburger"
+ desc = "The lettuce is the only organic component. Beep."
+ icon_state = "roburger"
+ filling_color = "#CCCCCC"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 2
+ nutriment_desc = list("bun" = 2, "metal" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/roburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/roburgerbig
+ name = "roburger"
+ desc = "This massive patty looks like poison. Beep."
+ icon_state = "roburger"
+ filling_color = "#CCCCCC"
+ volume = 100
+ center_of_mass = list("x"=16, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/roburgerbig/New()
+ ..()
+ bitesize = 0.1
+
+/obj/item/weapon/reagent_containers/food/snacks/xenoburger
+ name = "xenoburger"
+ desc = "Smells caustic. Tastes like heresy."
+ icon_state = "xburger"
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=16, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/xenoburger/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/clownburger
+ name = "Clown Burger"
+ desc = "This tastes funny..."
+ icon_state = "clownburger"
+ filling_color = "#FF00FF"
+ center_of_mass = list("x"=17, "y"=12)
+ nutriment_amt = 6
+ nutriment_desc = list("bun" = 2, "clown shoe" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/clownburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/mimeburger
+ name = "Mime Burger"
+ desc = "Its taste defies language."
+ icon_state = "mimeburger"
+ filling_color = "#FFFFFF"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 6
+ nutriment_desc = list("bun" = 2, "face paint" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/mimeburger/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/omelette
+ name = "Omelette Du Fromage"
+ desc = "That's all you can say!"
+ icon_state = "omelette"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFF9A8"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/omelette/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/muffin
+ name = "Muffin"
+ desc = "A delicious and spongy little cake"
+ icon_state = "muffin"
+ filling_color = "#E0CF9B"
+ center_of_mass = list("x"=17, "y"=4)
+ nutriment_amt = 6
+ nutriment_desc = list("sweetness" = 3, "muffin" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/muffin/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/pie
+ name = "Banana Cream Pie"
+ desc = "Just like back home, on clown planet! HONK!"
+ icon_state = "pie"
+ trash = /obj/item/trash/plate
+ filling_color = "#FBFFB8"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 4
+ nutriment_desc = list("pie" = 3, "cream" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/pie/New()
+ ..()
+ reagents.add_reagent("banana",5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/pie/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.")
+ qdel(src)
+
+/obj/item/weapon/reagent_containers/food/snacks/berryclafoutis
+ name = "Berry Clafoutis"
+ desc = "No black birds, this is a good sign."
+ icon_state = "berryclafoutis"
+ trash = /obj/item/trash/plate
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 4
+ nutriment_desc = list("sweetness" = 2, "pie" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/berryclafoutis/New()
+ ..()
+ reagents.add_reagent("berryjuice", 5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/waffles
+ name = "waffles"
+ desc = "Mmm, waffles"
+ icon_state = "waffles"
+ trash = /obj/item/trash/waffles
+ filling_color = "#E6DEB5"
+ center_of_mass = list("x"=15, "y"=11)
+ nutriment_amt = 8
+ nutriment_desc = list("waffle" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/waffles/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/eggplantparm
+ name = "Eggplant Parmigiana"
+ desc = "The only good recipe for eggplant."
+ icon_state = "eggplantparm"
+ trash = /obj/item/trash/plate
+ filling_color = "#4D2F5E"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 6
+ nutriment_desc = list("cheese" = 3, "eggplant" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/eggplantparm/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/soylentgreen
+ name = "Soylent Green"
+ desc = "Not made of people. Honest." //Totally people.
+ icon_state = "soylent_green"
+ trash = /obj/item/trash/waffles
+ filling_color = "#B8E6B5"
+ center_of_mass = list("x"=15, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/soylentgreen/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/soylenviridians
+ name = "Soylen Virdians"
+ desc = "Not made of people. Honest." //Actually honest for once.
+ icon_state = "soylent_yellow"
+ trash = /obj/item/trash/waffles
+ filling_color = "#E6FA61"
+ center_of_mass = list("x"=15, "y"=11)
+ nutriment_amt = 10
+ nutriment_desc = list("some sort of protein" = 10) //seasoned VERY well.
+
+/obj/item/weapon/reagent_containers/food/snacks/soylenviridians/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatpie
+ name = "Meat-pie"
+ icon_state = "meatpie"
+ desc = "An old barber recipe, very delicious!"
+ trash = /obj/item/trash/plate
+ filling_color = "#948051"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatpie/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tofupie
+ name = "Tofu-pie"
+ icon_state = "meatpie"
+ desc = "A delicious tofu pie."
+ trash = /obj/item/trash/plate
+ filling_color = "#FFFEE0"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 10
+ nutriment_desc = list("tofu" = 2, "pie" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofupie/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/amanita_pie
+ name = "amanita pie"
+ desc = "Sweet and tasty poison pie."
+ icon_state = "amanita_pie"
+ filling_color = "#FFCCCC"
+ center_of_mass = list("x"=17, "y"=9)
+ nutriment_amt = 5
+ nutriment_desc = list("sweetness" = 3, "mushroom" = 3, "pie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/amanita_pie/New()
+ ..()
+ reagents.add_reagent("amatoxin", 3)
+ reagents.add_reagent("psilocybin", 1)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/plump_pie
+ name = "plump pie"
+ desc = "I bet you love stuff made out of plump helmets!"
+ icon_state = "plump_pie"
+ filling_color = "#B8279B"
+ center_of_mass = list("x"=17, "y"=9)
+ nutriment_amt = 8
+ nutriment_desc = list("heartiness" = 2, "mushroom" = 3, "pie" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/plump_pie/New()
+ ..()
+ if(prob(10))
+ name = "exceptional plump pie"
+ desc = "Microwave is taken by a fey mood! It has cooked an exceptional plump pie!"
+ reagents.add_reagent("nutriment", 8)
+ reagents.add_reagent("tricordrazine", 5)
+ bitesize = 2
+ else
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/xemeatpie
+ name = "Xeno-pie"
+ icon_state = "xenomeatpie"
+ desc = "A delicious meatpie. Probably heretical."
+ trash = /obj/item/trash/plate
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/xemeatpie/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/wingfangchu
+ name = "Wing Fang Chu"
+ desc = "A savory dish of alien wing wang in soy."
+ icon_state = "wingfangchu"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=17, "y"=9)
+
+/obj/item/weapon/reagent_containers/food/snacks/wingfangchu/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/human/kabob
+ name = "-kabob"
+ icon_state = "kabob"
+ desc = "A human meat, on a stick."
+ trash = /obj/item/stack/rods
+ filling_color = "#A85340"
+ center_of_mass = list("x"=17, "y"=15)
+
+/obj/item/weapon/reagent_containers/food/snacks/human/kabob/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeykabob
+ name = "Meat-kabob"
+ icon_state = "kabob"
+ desc = "Delicious meat, on a stick."
+ trash = /obj/item/stack/rods
+ filling_color = "#A85340"
+ center_of_mass = list("x"=17, "y"=15)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeykabob/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tofukabob
+ name = "Tofu-kabob"
+ icon_state = "kabob"
+ desc = "Vegan meat, on a stick."
+ trash = /obj/item/stack/rods
+ filling_color = "#FFFEE0"
+
+ center_of_mass = list("x"=17, "y"=15)
+ nutriment_amt = 8
+ nutriment_desc = list("tofu" = 3, "metal" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofukabob/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cubancarp
+ name = "Cuban Carp"
+ desc = "A sandwich that burns your tongue and then leaves it numb!"
+ icon_state = "cubancarp"
+ trash = /obj/item/trash/plate
+ filling_color = "#E9ADFF"
+ center_of_mass = list("x"=12, "y"=5)
+ nutriment_amt = 3
+ nutriment_desc = list("toasted bread" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cubancarp/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("carpotoxin", 3)
+ reagents.add_reagent("capsaicin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/popcorn
+ name = "Popcorn"
+ desc = "Now let's find some cinema."
+ icon_state = "popcorn"
+ trash = /obj/item/trash/popcorn
+ var/unpopped = 0
+ filling_color = "#FFFAD4"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 2
+ nutriment_desc = list("popcorn" = 3)
+
+
+/obj/item/weapon/reagent_containers/food/snacks/popcorn/New()
+ ..()
+ unpopped = rand(1,10)
+ bitesize = 0.1 //this snack is supposed to be eating during looooong time. And this it not dinner food! --rastaf0
+
+/obj/item/weapon/reagent_containers/food/snacks/popcorn/On_Consume()
+ if(prob(unpopped)) //lol ...what's the point?
+ usr << "You bite down on an un-popped kernel!"
+ unpopped = max(0, unpopped-1)
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/sosjerky
+ name = "Scaredy's Private Reserve Beef Jerky"
+ icon_state = "sosjerky"
+ desc = "Beef jerky made from the finest space cows."
+ trash = /obj/item/trash/sosjerky
+ filling_color = "#631212"
+ center_of_mass = list("x"=15, "y"=9)
+
+/obj/item/weapon/reagent_containers/food/snacks/sosjerky/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/no_raisin
+ name = "4no Raisins"
+ icon_state = "4no_raisins"
+ desc = "Best raisins in the universe. Not sure why."
+ trash = /obj/item/trash/raisins
+ filling_color = "#343834"
+ center_of_mass = list("x"=15, "y"=4)
+ nutriment_amt = 6
+ nutriment_desc = list("dried raisins" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/no_raisin/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie
+ name = "Space Twinkie"
+ icon_state = "space_twinkie"
+ desc = "Guaranteed to survive longer then you will."
+ filling_color = "#FFE591"
+ center_of_mass = list("x"=15, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie/New()
+ ..()
+ reagents.add_reagent("sugar", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers
+ name = "Cheesie Honkers"
+ icon_state = "cheesie_honkers"
+ desc = "Bite sized cheesie snacks that will honk all over your mouth"
+ trash = /obj/item/trash/cheesie
+ filling_color = "#FFA305"
+ center_of_mass = list("x"=15, "y"=9)
+ nutriment_amt = 4
+ nutriment_desc = list("cheese" = 5, "chips" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/syndicake
+ name = "Syndi-Cakes"
+ icon_state = "syndi_cakes"
+ desc = "An extremely moist snack cake that tastes just as good after being nuked."
+ filling_color = "#FF5D05"
+ center_of_mass = list("x"=16, "y"=10)
+ trash = /obj/item/trash/syndi_cakes
+ nutriment_amt = 4
+ nutriment_desc = list("sweetness" = 3, "cake" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/syndicake/New()
+ ..()
+ reagents.add_reagent("doctorsdelight", 5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/loadedbakedpotato
+ name = "Loaded Baked Potato"
+ desc = "Totally baked."
+ icon_state = "loadedbakedpotato"
+ filling_color = "#9C7A68"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 3
+ nutriment_desc = list("baked potato" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/loadedbakedpotato/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fries
+ name = "Space Fries"
+ desc = "AKA: French Fries, Freedom Fries, etc."
+ icon_state = "fries"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("fresh fries" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/fries/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/mashedpotato
+ name = "Mashed Potato"
+ desc = "Pillowy mounds of mashed potato."
+ icon_state = "mashedpotato"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("fluffy mashed potatoes" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/mashedpotato/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/bangersandmash
+ name = "Bangers and Mash"
+ desc = "An English treat."
+ icon_state = "bangersandmash"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("fluffy potato" = 3, "sausage" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/bangersandmash/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesymash
+ name = "Cheesy Mashed Potato"
+ desc = "The only thing that could make mash better."
+ icon_state = "cheesymash"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("cheesy potato" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesymash/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/blackpudding
+ name = "Black Pudding"
+ desc = "This doesn't seem like a pudding at all."
+ icon_state = "blackpudding"
+ filling_color = "#FF0000"
+ center_of_mass = list("x"=16, "y"=7)
+
+/obj/item/weapon/reagent_containers/food/snacks/blackpudding/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ reagents.add_reagent("blood", 5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/soydope
+ name = "Soy Dope"
+ desc = "Dope from a soy."
+ icon_state = "soydope"
+ trash = /obj/item/trash/plate
+ filling_color = "#C4BF76"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 2
+ nutriment_desc = list("slime" = 2, "soy" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/soydope/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/spagetti
+ name = "Spaghetti"
+ desc = "A bundle of raw spaghetti."
+ icon_state = "spagetti"
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=16)
+ nutriment_amt = 1
+ nutriment_desc = list("noodles" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/spagetti/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesyfries
+ name = "Cheesy Fries"
+ desc = "Fries. Covered in cheese. Duh."
+ icon_state = "cheesyfries"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("fresh fries" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesyfries/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fortunecookie
+ name = "Fortune cookie"
+ desc = "A true prophecy in each cookie!"
+ icon_state = "fortune_cookie"
+ filling_color = "#E8E79E"
+ center_of_mass = list("x"=15, "y"=14)
+ nutriment_amt = 3
+ nutriment_desc = list("fortune cookie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/badrecipe
+ name = "Burned mess"
+ desc = "Someone should be demoted from chef for this."
+ icon_state = "badrecipe"
+ filling_color = "#211F02"
+ center_of_mass = list("x"=16, "y"=12)
+
+/obj/item/weapon/reagent_containers/food/snacks/badrecipe/New()
+ ..()
+ reagents.add_reagent("toxin", 1)
+ reagents.add_reagent("carbon", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatsteak
+ name = "Meat steak"
+ desc = "A piece of hot spicy meat."
+ icon_state = "meatstake"
+ trash = /obj/item/trash/plate
+ filling_color = "#7A3D11"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatsteak/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ reagents.add_reagent("sodiumchloride", 1)
+ reagents.add_reagent("blackpepper", 1)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/spacylibertyduff
+ name = "Spacy Liberty Duff"
+ desc = "Jello gelatin, from Alfred Hubbard's cookbook"
+ icon_state = "spacylibertyduff"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#42B873"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 6
+ nutriment_desc = list("mushroom" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/spacylibertyduff/New()
+ ..()
+ reagents.add_reagent("psilocybin", 6)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/amanitajelly
+ name = "Amanita Jelly"
+ desc = "Looks curiously toxic"
+ icon_state = "amanitajelly"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#ED0758"
+ center_of_mass = list("x"=16, "y"=5)
+ nutriment_amt = 6
+ nutriment_desc = list("jelly" = 3, "mushroom" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/amanitajelly/New()
+ ..()
+ reagents.add_reagent("amatoxin", 6)
+ reagents.add_reagent("psilocybin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/poppypretzel
+ name = "Poppy pretzel"
+ desc = "It's all twisted up!"
+ icon_state = "poppypretzel"
+ bitesize = 2
+ filling_color = "#916E36"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 5
+ nutriment_desc = list("poppy seeds" = 2, "pretzel" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/poppypretzel/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatballsoup
+ name = "Meatball soup"
+ desc = "You've got balls kid, BALLS!"
+ icon_state = "meatballsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#785210"
+ center_of_mass = list("x"=16, "y"=8)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatballsoup/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ reagents.add_reagent("water", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/slimesoup
+ name = "slime soup"
+ desc = "If no water is available, you may substitute tears."
+ icon_state = "slimesoup" //nonexistant?
+ filling_color = "#C4DBA0"
+
+/obj/item/weapon/reagent_containers/food/snacks/slimesoup/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+ reagents.add_reagent("water", 10)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/bloodsoup
+ name = "Tomato soup"
+ desc = "Smells like copper."
+ icon_state = "tomatosoup"
+ filling_color = "#FF0000"
+ center_of_mass = list("x"=16, "y"=7)
+
+/obj/item/weapon/reagent_containers/food/snacks/bloodsoup/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ reagents.add_reagent("blood", 10)
+ reagents.add_reagent("water", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/clownstears
+ name = "Clown's Tears"
+ desc = "Not very funny."
+ icon_state = "clownstears"
+ filling_color = "#C4FBFF"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 4
+ nutriment_desc = list("salt" = 1, "the worst joke" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/clownstears/New()
+ ..()
+ reagents.add_reagent("banana", 5)
+ reagents.add_reagent("water", 10)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/vegetablesoup
+ name = "Vegetable soup"
+ desc = "A true vegan meal" //TODO
+ icon_state = "vegetablesoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#AFC4B5"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 8
+ nutriment_desc = list("carot" = 2, "corn" = 2, "eggplant" = 2, "potato" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/vegetablesoup/New()
+ ..()
+ reagents.add_reagent("water", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/nettlesoup
+ name = "Nettle soup"
+ desc = "To think, the botanist would've beat you to death with one of these."
+ icon_state = "nettlesoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#AFC4B5"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 8
+ nutriment_desc = list("salad" = 4, "egg" = 2, "potato" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/nettlesoup/New()
+ ..()
+ reagents.add_reagent("water", 5)
+ reagents.add_reagent("tricordrazine", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/mysterysoup
+ name = "Mystery soup"
+ desc = "The mystery is, why aren't you eating it?"
+ icon_state = "mysterysoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#F082FF"
+ center_of_mass = list("x"=16, "y"=6)
+ nutriment_amt = 1
+ nutriment_desc = list("backwash" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/mysterysoup/New()
+ ..()
+ var/mysteryselect = pick(1,2,3,4,5,6,7,8,9,10)
+ switch(mysteryselect)
+ if(1)
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("capsaicin", 3)
+ reagents.add_reagent("tomatojuice", 2)
+ if(2)
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("frostoil", 3)
+ reagents.add_reagent("tomatojuice", 2)
+ if(3)
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("water", 5)
+ reagents.add_reagent("tricordrazine", 5)
+ if(4)
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("water", 10)
+ if(5)
+ reagents.add_reagent("nutriment", 2)
+ reagents.add_reagent("banana", 10)
+ if(6)
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("blood", 10)
+ if(7)
+ reagents.add_reagent("slimejelly", 10)
+ reagents.add_reagent("water", 10)
+ if(8)
+ reagents.add_reagent("carbon", 10)
+ reagents.add_reagent("toxin", 10)
+ if(9)
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("tomatojuice", 10)
+ if(10)
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("tomatojuice", 5)
+ reagents.add_reagent("imidazoline", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/wishsoup
+ name = "Wish Soup"
+ desc = "I wish this was soup."
+ icon_state = "wishsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#D1F4FF"
+ center_of_mass = list("x"=16, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/wishsoup/New()
+ ..()
+ reagents.add_reagent("water", 10)
+ bitesize = 5
+ if(prob(25))
+ src.desc = "A wish come true!"
+ reagents.add_reagent("nutriment", 8, list("something good" = 8))
+
+/obj/item/weapon/reagent_containers/food/snacks/hotchili
+ name = "Hot Chili"
+ desc = "A five alarm Texan Chili!"
+ icon_state = "hotchili"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FF3C00"
+ center_of_mass = list("x"=15, "y"=9)
+ nutriment_amt = 3
+ nutriment_desc = list("chilli peppers" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotchili/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("capsaicin", 3)
+ reagents.add_reagent("tomatojuice", 2)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/coldchili
+ name = "Cold Chili"
+ desc = "This slush is barely a liquid!"
+ icon_state = "coldchili"
+ filling_color = "#2B00FF"
+ center_of_mass = list("x"=15, "y"=9)
+ trash = /obj/item/trash/snack_bowl
+ nutriment_amt = 3
+ nutriment_desc = list("ice peppers" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/coldchili/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("frostoil", 3)
+ reagents.add_reagent("tomatojuice", 2)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube
+ name = "monkey cube"
+ desc = "Just add water!"
+ flags = OPENCONTAINER
+ icon_state = "monkeycube"
+ bitesize = 12
+ filling_color = "#ADAC7F"
+ center_of_mass = list("x"=16, "y"=14)
+
+ var/wrapped = 0
+ var/monkey_type = "Monkey"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/New()
+ ..()
+ 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()
+ 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)
+ qdel(src)
+ return 1
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/proc/Unwrap(mob/user as mob)
+ icon_state = "monkeycube"
+ desc = "Just add water!"
+ to_chat(user, "You unwrap the cube.")
+ wrapped = 0
+ flags |= OPENCONTAINER
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/On_Consume(var/mob/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")
+ Expand()
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/on_reagent_change()
+ if(reagents.has_reagent("water"))
+ Expand()
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped
+ desc = "Still wrapped in some paper."
+ icon_state = "monkeycubewrap"
+ flags = 0
+ wrapped = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/farwacube
+ name = "farwa cube"
+ monkey_type = "Farwa"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/farwacube
+ name = "farwa cube"
+ monkey_type = "Farwa"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/stokcube
+ name = "stok cube"
+ monkey_type = "Stok"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/stokcube
+ name = "stok cube"
+ monkey_type = "Stok"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/neaeracube
+ name = "neaera cube"
+ monkey_type = "Neaera"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/neaeracube
+ name = "neaera cube"
+ monkey_type = "Neaera"
+
+/obj/item/weapon/reagent_containers/food/snacks/spellburger
+ name = "Spell Burger"
+ desc = "This is absolutely Ei Nath."
+ icon_state = "spellburger"
+ filling_color = "#D505FF"
+ nutriment_amt = 6
+ nutriment_desc = list("magic" = 3, "buns" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/spellburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/bigbiteburger
+ name = "Big Bite Burger"
+ desc = "Forget the Big Mac. THIS is the future!"
+ icon_state = "bigbiteburger"
+ filling_color = "#E3D681"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("buns" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/bigbiteburger/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/enchiladas
+ name = "Enchiladas"
+ desc = "Viva La Mexico!"
+ icon_state = "enchiladas"
+ trash = /obj/item/trash/tray
+ filling_color = "#A36A1F"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 2
+ nutriment_desc = list("tortilla" = 3, "corn" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/enchiladas/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ reagents.add_reagent("capsaicin", 6)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeysdelight
+ name = "monkey's Delight"
+ desc = "Eeee Eee!"
+ icon_state = "monkeysdelight"
+ trash = /obj/item/trash/tray
+ filling_color = "#5C3C11"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeysdelight/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ reagents.add_reagent("banana", 5)
+ reagents.add_reagent("blackpepper", 1)
+ reagents.add_reagent("sodiumchloride", 1)
+ bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/baguette
+ name = "Baguette"
+ desc = "Bon appetit!"
+ icon_state = "baguette"
+ filling_color = "#E3D796"
+ center_of_mass = list("x"=18, "y"=12)
+ nutriment_amt = 6
+ nutriment_desc = list("french bread" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/baguette/New()
+ ..()
+ reagents.add_reagent("blackpepper", 1)
+ reagents.add_reagent("sodiumchloride", 1)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/fishandchips
+ name = "Fish and Chips"
+ desc = "I do say so myself chap."
+ icon_state = "fishandchips"
+ filling_color = "#E3D796"
+ center_of_mass = list("x"=16, "y"=16)
+ nutriment_amt = 3
+ nutriment_desc = list("salt" = 1, "chips" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/fishandchips/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("carpotoxin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/sandwich
+ name = "Sandwich"
+ desc = "A grand creation of meat, cheese, bread, and several leaves of lettuce! Arthur Dent would be proud."
+ icon_state = "sandwich"
+ trash = /obj/item/trash/plate
+ filling_color = "#D9BE29"
+ center_of_mass = list("x"=16, "y"=4)
+ nutriment_amt = 3
+ nutriment_desc = list("bread" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/sandwich/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/toastedsandwich
+ name = "Toasted Sandwich"
+ desc = "Now if you only had a pepper bar."
+ icon_state = "toastedsandwich"
+ trash = /obj/item/trash/plate
+ filling_color = "#D9BE29"
+ center_of_mass = list("x"=16, "y"=4)
+ nutriment_amt = 3
+ nutriment_desc = list("toasted bread" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/toastedsandwich/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("carbon", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/grilledcheese
+ name = "Grilled Cheese Sandwich"
+ desc = "Goes great with Tomato soup!"
+ icon_state = "toastedsandwich"
+ trash = /obj/item/trash/plate
+ filling_color = "#D9BE29"
+ nutriment_amt = 3
+ nutriment_desc = list("toasted bread" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/grilledcheese/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tomatosoup
+ name = "Tomato Soup"
+ desc = "Drinking this feels like being a vampire! A tomato vampire..."
+ icon_state = "tomatosoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#D92929"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 5
+ nutriment_desc = list("soup" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/tomatosoup/New()
+ ..()
+ reagents.add_reagent("tomatojuice", 10)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/onionsoup
+ name = "Onion Soup"
+ desc = "A soup with layers."
+ icon_state = "onionsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#E0C367"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 5
+ nutriment_desc = list("onion" = 2, "soup" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/onionsoup/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/onionrings
+ name = "Onion Rings"
+ desc = "Crispy rings."
+ icon_state = "onionrings"
+ trash = /obj/item/trash/plate
+ filling_color = "#E0C367"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 5
+ nutriment_desc = list("onion" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/onionrings/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/rofflewaffles
+ name = "Roffle Waffles"
+ desc = "Waffles from Roffle. Co."
+ icon_state = "rofflewaffles"
+ trash = /obj/item/trash/waffles
+ filling_color = "#FF00F7"
+ center_of_mass = list("x"=15, "y"=11)
+ nutriment_amt = 8
+ nutriment_desc = list("waffle" = 7, "sweetness" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/rofflewaffles/New()
+ ..()
+ reagents.add_reagent("psilocybin", 8)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/stew
+ name = "Stew"
+ desc = "A nice and warm stew. Healthy and strong."
+ icon_state = "stew"
+ filling_color = "#9E673A"
+ center_of_mass = list("x"=16, "y"=5)
+ nutriment_amt = 6
+ nutriment_desc = list("tomato" = 2, "potato" = 2, "carrot" = 2, "eggplant" = 2, "mushroom" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/stew/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ reagents.add_reagent("tomatojuice", 5)
+ reagents.add_reagent("imidazoline", 5)
+ reagents.add_reagent("water", 5)
+ bitesize = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast
+ name = "Jellied Toast"
+ desc = "A slice of bread covered with delicious jam."
+ icon_state = "jellytoast"
+ trash = /obj/item/trash/plate
+ filling_color = "#B572AB"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 1
+ nutriment_desc = list("toasted bread" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast/cherry/New()
+ ..()
+ reagents.add_reagent("cherryjelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast/slime/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellyburger
+ name = "Jelly Burger"
+ desc = "Culinary delight..?"
+ icon_state = "jellyburger"
+ filling_color = "#B572AB"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 5
+ nutriment_desc = list("buns" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellyburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/jellyburger/slime/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellyburger/cherry/New()
+ ..()
+ reagents.add_reagent("cherryjelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/milosoup
+ name = "Milosoup"
+ desc = "The universes best soup! Yum!!!"
+ icon_state = "milosoup"
+ trash = /obj/item/trash/snack_bowl
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 8
+ nutriment_desc = list("soy" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/milosoup/New()
+ ..()
+ reagents.add_reagent("water", 5)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/stewedsoymeat
+ name = "Stewed Soy Meat"
+ desc = "Even non-vegetarians will LOVE this!"
+ icon_state = "stewedsoymeat"
+ trash = /obj/item/trash/plate
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 8
+ nutriment_desc = list("soy" = 4, "tomato" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/stewedsoymeat/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledspagetti
+ name = "Boiled Spaghetti"
+ desc = "A plain dish of noodles, this sucks."
+ icon_state = "spagettiboiled"
+ trash = /obj/item/trash/plate
+ filling_color = "#FCEE81"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 2
+ nutriment_desc = list("noodles" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledspagetti/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledrice
+ name = "Boiled Rice"
+ desc = "A boring dish of boring rice."
+ icon_state = "boiledrice"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FFFBDB"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 2
+ nutriment_desc = list("rice" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledrice/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/ricepudding
+ name = "Rice Pudding"
+ desc = "Where's the jam?"
+ icon_state = "rpudding"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FFFBDB"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("rice" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/ricepudding/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/pastatomato
+ name = "Spaghetti"
+ desc = "Spaghetti and crushed tomatoes. Just like your abusive father used to make!"
+ icon_state = "pastatomato"
+ trash = /obj/item/trash/plate
+ filling_color = "#DE4545"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 6
+ nutriment_desc = list("tomato" = 3, "noodles" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/pastatomato/New()
+ ..()
+ reagents.add_reagent("tomatojuice", 10)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/meatballspagetti
+ name = "Spaghetti & Meatballs"
+ desc = "Now thats a nic'e meatball!"
+ icon_state = "meatballspagetti"
+ trash = /obj/item/trash/plate
+ filling_color = "#DE4545"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 4
+ nutriment_desc = list("noodles" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatballspagetti/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/spesslaw
+ name = "Spesslaw"
+ desc = "A lawyers favourite"
+ icon_state = "spesslaw"
+ filling_color = "#DE4545"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 4
+ nutriment_desc = list("noodles" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/spesslaw/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/carrotfries
+ name = "Carrot Fries"
+ desc = "Tasty fries from fresh Carrots."
+ icon_state = "carrotfries"
+ trash = /obj/item/trash/plate
+ filling_color = "#FAA005"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+ nutriment_desc = list("carrot" = 3, "salt" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/carrotfries/New()
+ ..()
+ reagents.add_reagent("imidazoline", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/superbiteburger
+ name = "Super Bite Burger"
+ desc = "This is a mountain of a burger. FOOD!"
+ icon_state = "superbiteburger"
+ filling_color = "#CCA26A"
+ center_of_mass = list("x"=16, "y"=3)
+ nutriment_amt = 25
+ nutriment_desc = list("buns" = 25)
+
+/obj/item/weapon/reagent_containers/food/snacks/superbiteburger/New()
+ ..()
+ reagents.add_reagent("protein", 25)
+ bitesize = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/candiedapple
+ name = "Candied Apple"
+ desc = "An apple coated in sugary sweetness."
+ icon_state = "candiedapple"
+ filling_color = "#F21873"
+ center_of_mass = list("x"=15, "y"=13)
+ nutriment_amt = 3
+ nutriment_desc = list("apple" = 3, "caramel" = 3, "sweetness" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/candiedapple/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/applepie
+ name = "Apple Pie"
+ desc = "A pie containing sweet sweet love... or apple."
+ icon_state = "applepie"
+ filling_color = "#E0EDC5"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 4
+ nutriment_desc = list("sweetness" = 2, "apple" = 2, "pie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/applepie/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/cherrypie
+ name = "Cherry Pie"
+ desc = "Taste so good, make a grown man cry."
+ icon_state = "cherrypie"
+ filling_color = "#FF525A"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("sweetness" = 2, "cherry" = 2, "pie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/cherrypie/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/twobread
+ name = "Two Bread"
+ desc = "It is very bitter and winy."
+ icon_state = "twobread"
+ filling_color = "#DBCC9A"
+ center_of_mass = list("x"=15, "y"=12)
+ nutriment_amt = 2
+ nutriment_desc = list("sourness" = 2, "bread" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/twobread/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/jellysandwich
+ name = "Jelly Sandwich"
+ desc = "You wish you had some peanut butter to go with this..."
+ icon_state = "jellysandwich"
+ trash = /obj/item/trash/plate
+ filling_color = "#9E3A78"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 2
+ nutriment_desc = list("bread" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellysandwich/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/jellysandwich/slime/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellysandwich/cherry/New()
+ ..()
+ reagents.add_reagent("cherryjelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledslimecore
+ name = "Boiled slime Core"
+ desc = "A boiled red thing."
+ icon_state = "boiledslimecore" //nonexistant?
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledslimecore/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/mint
+ name = "mint"
+ desc = "it is only wafer thin."
+ icon_state = "mint"
+ filling_color = "#F2F2F2"
+ center_of_mass = list("x"=16, "y"=14)
+
+/obj/item/weapon/reagent_containers/food/snacks/mint/New()
+ ..()
+ reagents.add_reagent("mint", 1)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/mushroomsoup
+ name = "chantrelle soup"
+ desc = "A delicious and hearty mushroom soup."
+ icon_state = "mushroomsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#E386BF"
+ center_of_mass = list("x"=17, "y"=10)
+ nutriment_amt = 8
+ nutriment_desc = list("mushroom" = 8, "milk" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/mushroomsoup/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/plumphelmetbiscuit
+ name = "plump helmet biscuit"
+ desc = "This is a finely-prepared plump helmet biscuit. The ingredients are exceptionally minced plump helmet, and well-minced dwarven wheat flour."
+ icon_state = "phelmbiscuit"
+ filling_color = "#CFB4C4"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 5
+ nutriment_desc = list("mushroom" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/plumphelmetbiscuit/New()
+ ..()
+ if(prob(10))
+ name = "exceptional plump helmet biscuit"
+ desc = "Microwave is taken by a fey mood! It has cooked an exceptional plump helmet biscuit!"
+ reagents.add_reagent("nutriment", 8)
+ bitesize = 2
+ else
+ reagents.add_reagent("nutriment", 5)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/chawanmushi
+ name = "chawanmushi"
+ desc = "A legendary egg custard that makes friends out of enemies. Probably too hot for a cat to eat."
+ icon_state = "chawanmushi"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#F0F2E4"
+ center_of_mass = list("x"=17, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/chawanmushi/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/beetsoup
+ name = "beet soup"
+ desc = "Wait, how do you spell it again..?"
+ icon_state = "beetsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FAC9FF"
+ center_of_mass = list("x"=15, "y"=8)
+ nutriment_amt = 8
+ nutriment_desc = list("tomato" = 4, "beet" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/beetsoup/New()
+ ..()
+ name = pick(list("borsch","bortsch","borstch","borsh","borshch","borscht"))
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tossedsalad
+ name = "tossed salad"
+ desc = "A proper salad, basic and simple, with little bits of carrot, tomato and apple intermingled. Vegan!"
+ icon_state = "herbsalad"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#76B87F"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 8
+ nutriment_desc = list("salad" = 2, "tomato" = 2, "carrot" = 2, "apple" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/tossedsalad/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/validsalad
+ name = "valid salad"
+ desc = "It's just a salad of questionable 'herbs' with meatballs and fried potato slices. Nothing suspicious about it."
+ icon_state = "validsalad"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#76B87F"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 6
+ nutriment_desc = list("100% real salad")
+
+/obj/item/weapon/reagent_containers/food/snacks/validsalad/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/appletart
+ name = "golden apple streusel tart"
+ desc = "A tasty dessert that won't make it through a metal detector."
+ icon_state = "gappletart"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFFF00"
+ center_of_mass = list("x"=16, "y"=18)
+ nutriment_amt = 8
+ nutriment_desc = list("apple" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/appletart/New()
+ ..()
+ reagents.add_reagent("gold", 5)
+ bitesize = 3
+
+/////////////////////////////////////////////////Sliceable////////////////////////////////////////
+// All the food items that can be sliced into smaller bits like Meatbread and Cheesewheels
+
+// sliceable is just an organization type path, it doesn't have any additional code or variables tied to it.
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable
+ w_class = ITEMSIZE_NORMAL //Whole pizzas and cakes shouldn't fit in a pocket, you can slice them if you want to do that.
+
+/**
+ * A food item slice
+ *
+ * This path contains some extra code for spawning slices pre-filled with
+ * reagents.
+ */
+/obj/item/weapon/reagent_containers/food/snacks/slice
+ name = "slice of... something"
+ var/whole_path // path for the item from which this slice comes
+ var/filled = FALSE // should the slice spawn with any reagents
+
+/**
+ * Spawn a new slice of food
+ *
+ * If the slice's filled is TRUE, this will also fill the slice with the
+ * appropriate amount of reagents. Note that this is done by spawning a new
+ * whole item, transferring the reagents and deleting the whole item, which may
+ * have performance implications.
+ */
+/obj/item/weapon/reagent_containers/food/snacks/slice/New()
+ ..()
+ if(filled)
+ var/obj/item/weapon/reagent_containers/food/snacks/whole = new whole_path()
+ if(whole && whole.slices_num)
+ var/reagent_amount = whole.reagents.total_volume/whole.slices_num
+ whole.reagents.trans_to_obj(src, reagent_amount)
+
+ qdel(whole)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/meatbread
+ name = "meatbread loaf"
+ desc = "The culinary base of every self-respecting eloquent gentleman."
+ icon_state = "meatbread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/meatbread
+ slices_num = 5
+ filling_color = "#FF7575"
+ center_of_mass = list("x"=19, "y"=9)
+ nutriment_desc = list("bread" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/meatbread/New()
+ ..()
+ reagents.add_reagent("protein", 20)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/meatbread
+ name = "meatbread slice"
+ desc = "A slice of delicious meatbread."
+ icon_state = "meatbreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FF7575"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=16)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/meatbread
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/meatbread/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/xenomeatbread
+ name = "xenomeatbread loaf"
+ desc = "The culinary base of every self-respecting eloquent gentleman. Extra Heretical."
+ icon_state = "xenomeatbread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/xenomeatbread
+ slices_num = 5
+ filling_color = "#8AFF75"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("bread" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/xenomeatbread/New()
+ ..()
+ reagents.add_reagent("protein", 20)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/xenomeatbread
+ name = "xenomeatbread slice"
+ desc = "A slice of delicious meatbread. Extra Heretical."
+ icon_state = "xenobreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#8AFF75"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/xenomeatbread
+
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/xenomeatbread/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/bananabread
+ name = "Banana-nut bread"
+ desc = "A heavenly and filling treat."
+ icon_state = "bananabread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/bananabread
+ slices_num = 5
+ filling_color = "#EDE5AD"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("bread" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/bananabread/New()
+ ..()
+ reagents.add_reagent("banana", 20)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/bananabread
+ name = "Banana-nut bread slice"
+ desc = "A slice of delicious banana bread."
+ icon_state = "bananabreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDE5AD"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=8)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/bananabread
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/bananabread/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/tofubread
+ name = "Tofubread"
+ icon_state = "Like meatbread but for vegetarians. Not guaranteed to give superpowers."
+ icon_state = "tofubread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/tofubread
+ slices_num = 5
+ filling_color = "#F7FFE0"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("tofu" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/tofubread/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/tofubread
+ name = "Tofubread slice"
+ desc = "A slice of delicious tofubread."
+ icon_state = "tofubreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#F7FFE0"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/tofubread
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/tofubread/filled
+ filled = TRUE
+
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/carrotcake
+ name = "Carrot Cake"
+ desc = "A favorite desert of a certain wascally wabbit. Not a lie."
+ icon_state = "carrotcake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/carrotcake
+ slices_num = 5
+ filling_color = "#FFD675"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "carrot" = 15)
+ nutriment_amt = 25
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/carrotcake/New()
+ ..()
+ reagents.add_reagent("imidazoline", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/carrotcake
+ name = "Carrot Cake slice"
+ desc = "Carrotty slice of Carrot Cake, carrots are good for your eyes! Also not a lie."
+ icon_state = "carrotcake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFD675"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/carrotcake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/carrotcake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/braincake
+ name = "Brain Cake"
+ desc = "A squishy cake-thing."
+ icon_state = "braincake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/braincake
+ slices_num = 5
+ filling_color = "#E6AEDB"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "slime" = 15)
+ nutriment_amt = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/braincake/New()
+ ..()
+ reagents.add_reagent("protein", 25)
+ reagents.add_reagent("alkysine", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/braincake
+ name = "Brain Cake slice"
+ desc = "Lemme tell you something about prions. THEY'RE DELICIOUS."
+ icon_state = "braincakeslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#E6AEDB"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=12)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/braincake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/braincake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesecake
+ name = "Cheese Cake"
+ desc = "DANGEROUSLY cheesy."
+ icon_state = "cheesecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/cheesecake
+ slices_num = 5
+ filling_color = "#FAF7AF"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "cream" = 10, "cheese" = 15)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesecake/New()
+ ..()
+ reagents.add_reagent("protein", 15)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/cheesecake
+ name = "Cheese Cake slice"
+ desc = "Slice of pure cheestisfaction."
+ icon_state = "cheesecake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FAF7AF"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/cheesecake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/plaincake
+ name = "Vanilla Cake"
+ desc = "A plain cake, not a lie."
+ icon_state = "plaincake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/plaincake
+ slices_num = 5
+ filling_color = "#F7EDD5"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "vanilla" = 15)
+ nutriment_amt = 20
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/plaincake
+ name = "Vanilla Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "plaincake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#F7EDD5"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/plaincake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/plaincake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/orangecake
+ name = "Orange Cake"
+ desc = "A cake with added orange."
+ icon_state = "orangecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/orangecake
+ slices_num = 5
+ filling_color = "#FADA8E"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "orange" = 15)
+ nutriment_amt = 20
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/orangecake
+ name = "Orange Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "orangecake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FADA8E"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/orangecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/orangecake/filled
+ filled = TRUE
+
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/limecake
+ name = "Lime Cake"
+ desc = "A cake with added lime."
+ icon_state = "limecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/limecake
+ slices_num = 5
+ filling_color = "#CBFA8E"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "lime" = 15)
+ nutriment_amt = 20
+
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/limecake
+ name = "Lime Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "limecake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#CBFA8E"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/limecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/limecake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/lemoncake
+ name = "Lemon Cake"
+ desc = "A cake with added lemon."
+ icon_state = "lemoncake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/lemoncake
+ slices_num = 5
+ filling_color = "#FAFA8E"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "lemon" = 15)
+ nutriment_amt = 20
+
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/lemoncake
+ name = "Lemon Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "lemoncake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FAFA8E"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/lemoncake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/lemoncake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/chocolatecake
+ name = "Chocolate Cake"
+ desc = "A cake with added chocolate."
+ icon_state = "chocolatecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/chocolatecake
+ slices_num = 5
+ filling_color = "#805930"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "chocolate" = 15)
+ nutriment_amt = 20
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/chocolatecake
+ name = "Chocolate Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "chocolatecake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#805930"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/chocolatecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/chocolatecake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesewheel
+ name = "Cheese wheel"
+ desc = "A big wheel of delcious Cheddar."
+ icon_state = "cheesewheel"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/cheesewedge
+ slices_num = 5
+ filling_color = "#FFF700"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cheese" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesewheel/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesewedge
+ name = "Cheese wedge"
+ desc = "A wedge of delicious Cheddar. The cheese wheel it was cut from can't have gone far."
+ icon_state = "cheesewedge"
+ filling_color = "#FFF700"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/birthdaycake
+ name = "Birthday Cake"
+ desc = "Happy Birthday..."
+ icon_state = "birthdaycake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/birthdaycake
+ slices_num = 5
+ filling_color = "#FFD6D6"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10)
+ nutriment_amt = 20
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/birthdaycake/New()
+ ..()
+ reagents.add_reagent("sprinkles", 10)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/birthdaycake
+ name = "Birthday Cake slice"
+ desc = "A slice of your birthday."
+ icon_state = "birthdaycakeslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFD6D6"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/birthdaycake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/birthdaycake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/bread
+ name = "Bread"
+ icon_state = "Some plain old Earthen bread."
+ icon_state = "bread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/bread
+ slices_num = 5
+ filling_color = "#FFE396"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("bread" = 6)
+ nutriment_amt = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/bread/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/bread
+ name = "Bread slice"
+ desc = "A slice of home."
+ icon_state = "breadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#D27332"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=4)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/bread
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/bread/filled
+ filled = TRUE
+
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/creamcheesebread
+ name = "Cream Cheese Bread"
+ desc = "Yum yum yum!"
+ icon_state = "creamcheesebread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/creamcheesebread
+ slices_num = 5
+ filling_color = "#FFF896"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("bread" = 6, "cream" = 3, "cheese" = 3)
+ nutriment_amt = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/creamcheesebread/New()
+ ..()
+ reagents.add_reagent("protein", 15)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/creamcheesebread
+ name = "Cream Cheese Bread slice"
+ desc = "A slice of yum!"
+ icon_state = "creamcheesebreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFF896"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/creamcheesebread
+
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/creamcheesebread/filled
+ filled = TRUE
+
+
+/obj/item/weapon/reagent_containers/food/snacks/watermelonslice
+ name = "Watermelon Slice"
+ desc = "A slice of watery goodness."
+ icon_state = "watermelonslice"
+ filling_color = "#FF3867"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/applecake
+ name = "Apple Cake"
+ desc = "A cake centred with apples."
+ icon_state = "applecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/applecake
+ slices_num = 5
+ filling_color = "#EBF5B8"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "apple" = 15)
+ nutriment_amt = 15
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/applecake
+ name = "Apple Cake slice"
+ desc = "A slice of heavenly cake."
+ icon_state = "applecakeslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#EBF5B8"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/applecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/applecake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pumpkinpie
+ name = "Pumpkin Pie"
+ desc = "A delicious treat for the autumn months."
+ icon_state = "pumpkinpie"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/pumpkinpie
+ slices_num = 5
+ filling_color = "#F5B951"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("pie" = 5, "cream" = 5, "pumpkin" = 5)
+ nutriment_amt = 15
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/pumpkinpie
+ name = "Pumpkin Pie slice"
+ desc = "A slice of pumpkin pie, with whipped cream on top. Perfection."
+ icon_state = "pumpkinpieslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#F5B951"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=12)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pumpkinpie
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/pumpkinpie/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/cracker
+ name = "Cracker"
+ desc = "It's a salted cracker."
+ icon_state = "cracker"
+ filling_color = "#F5DEB8"
+ center_of_mass = list("x"=16, "y"=6)
+ nutriment_desc = list("salt" = 1, "cracker" = 2)
+ nutriment_amt = 1
+
+
+
+/////////////////////////////////////////////////PIZZA////////////////////////////////////////
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza
+ slices_num = 6
+ filling_color = "#BAA14C"
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margherita
+ name = "Margherita"
+ desc = "The golden standard of pizzas."
+ icon_state = "pizzamargherita"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/margherita
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("pizza crust" = 10, "tomato" = 10, "cheese" = 15)
+ nutriment_amt = 35
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margherita/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ reagents.add_reagent("tomatojuice", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/margherita
+ name = "Margherita slice"
+ desc = "A slice of the classic pizza."
+ icon_state = "pizzamargheritaslice"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margherita
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/margherita/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza
+ name = "Meatpizza"
+ desc = "A pizza with meat topping."
+ icon_state = "meatpizza"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/meatpizza
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("pizza crust" = 10, "tomato" = 10, "cheese" = 15)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza/New()
+ ..()
+ reagents.add_reagent("protein", 34)
+ reagents.add_reagent("tomatojuice", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/meatpizza
+ name = "Meatpizza slice"
+ desc = "A slice of a meaty pizza."
+ icon_state = "meatpizzaslice"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/meatpizza/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushroompizza
+ name = "Mushroompizza"
+ desc = "Very special pizza."
+ icon_state = "mushroompizza"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/mushroompizza
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("pizza crust" = 10, "tomato" = 10, "cheese" = 5, "mushroom" = 10)
+ nutriment_amt = 35
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushroompizza/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/mushroompizza
+ name = "Mushroompizza slice"
+ desc = "Maybe it is the last slice of pizza in your life."
+ icon_state = "mushroompizzaslice"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushroompizza
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/mushroompizza/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegetablepizza
+ name = "Vegetable pizza"
+ desc = "No one of Tomato Sapiens were harmed during making this pizza."
+ icon_state = "vegetablepizza"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/vegetablepizza
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("pizza crust" = 10, "tomato" = 10, "cheese" = 5, "eggplant" = 5, "carrot" = 5, "corn" = 5)
+ nutriment_amt = 25
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegetablepizza/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ reagents.add_reagent("tomatojuice", 6)
+ reagents.add_reagent("imidazoline", 12)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/vegetablepizza
+ name = "Vegetable pizza slice"
+ desc = "A slice of the most green pizza of all pizzas not containing green ingredients."
+ icon_state = "vegetablepizzaslice"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegetablepizza
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/vegetablepizza/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/oldpizza
+ name = "moldy pizza"
+ desc = "This pizza might actually be alive. There's mold all over."
+ icon_state = "oldpizza"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/oldpizza
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("stale pizza crust" = 10, "moldy tomato" = 10, "moldy cheese" = 5)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/oldpizza/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ reagents.add_reagent("tomatojuice", 6)
+ reagents.add_reagent("mold", 8)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/oldpizza
+ name = "moldy pizza slice"
+ desc = "This used to be pizza..."
+ icon_state = "old_pizza"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/oldpizza
+
+/obj/item/pizzabox
+ name = "pizza box"
+ desc = "A box suited for pizzas."
+ icon = 'icons/obj/food.dmi'
+ icon_state = "pizzabox1"
+
+ var/open = 0 // Is the box open?
+ var/ismessy = 0 // Fancy mess on the lid
+ var/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/pizza // Content pizza
+ var/list/boxes = list() // If the boxes are stacked, they come here
+ var/boxtag = ""
+
+/obj/item/pizzabox/update_icon()
+
+ overlays = list()
+
+ // Set appropriate description
+ if( open && pizza )
+ desc = "A box suited for pizzas. It appears to have a [pizza.name] inside."
+ else if( boxes.len > 0 )
+ desc = "A pile of boxes suited for pizzas. There appears to be [boxes.len + 1] boxes in the pile."
+
+ var/obj/item/pizzabox/topbox = boxes[boxes.len]
+ var/toptag = topbox.boxtag
+ if( toptag != "" )
+ desc = "[desc] The box on top has a tag, it reads: '[toptag]'."
+ else
+ desc = "A box suited for pizzas."
+
+ if( boxtag != "" )
+ desc = "[desc] The box has a tag, it reads: '[boxtag]'."
+
+ // Icon states and overlays
+ if( open )
+ if( ismessy )
+ icon_state = "pizzabox_messy"
+ else
+ icon_state = "pizzabox_open"
+
+ if( pizza )
+ var/image/pizzaimg = image("food.dmi", icon_state = pizza.icon_state)
+ pizzaimg.pixel_y = -3
+ overlays += pizzaimg
+
+ return
+ else
+ // Stupid code because byondcode sucks
+ var/doimgtag = 0
+ if( boxes.len > 0 )
+ var/obj/item/pizzabox/topbox = boxes[boxes.len]
+ if( topbox.boxtag != "" )
+ doimgtag = 1
+ else
+ if( boxtag != "" )
+ doimgtag = 1
+
+ if( doimgtag )
+ var/image/tagimg = image("food.dmi", icon_state = "pizzabox_tag")
+ tagimg.pixel_y = boxes.len * 3
+ overlays += tagimg
+
+ icon_state = "pizzabox[boxes.len+1]"
+
+/obj/item/pizzabox/attack_hand( mob/user as mob )
+
+ if( open && pizza )
+ user.put_in_hands( pizza )
+
+ to_chat(user, "You take \the [src.pizza] out of \the [src].")
+ src.pizza = null
+ update_icon()
+ return
+
+ if( boxes.len > 0 )
+ if( user.get_inactive_hand() != src )
+ ..()
+ return
+
+ var/obj/item/pizzabox/box = boxes[boxes.len]
+ boxes -= box
+
+ user.put_in_hands( box )
+ to_chat(user, "You remove the topmost [src] from your hand.")
+ box.update_icon()
+ update_icon()
+ return
+ ..()
+
+/obj/item/pizzabox/attack_self( mob/user as mob )
+
+ if( boxes.len > 0 )
+ return
+
+ open = !open
+
+ if( open && pizza )
+ ismessy = 1
+
+ update_icon()
+
+/obj/item/pizzabox/attackby( obj/item/I as obj, mob/user as mob )
+ if( istype(I, /obj/item/pizzabox/) )
+ var/obj/item/pizzabox/box = I
+
+ if( !box.open && !src.open )
+ // Make a list of all boxes to be added
+ var/list/boxestoadd = list()
+ boxestoadd += box
+ for(var/obj/item/pizzabox/i in box.boxes)
+ boxestoadd += i
+
+ if( (boxes.len+1) + boxestoadd.len <= 5 )
+ user.drop_item()
+
+ box.loc = src
+ box.boxes = list() // Clear the box boxes so we don't have boxes inside boxes. - Xzibit
+ src.boxes.Add( boxestoadd )
+
+ box.update_icon()
+ update_icon()
+
+ to_chat(user, "You put \the [box] ontop of \the [src]!")
+ else
+ to_chat(user, "The stack is too high!")
+ else
+ to_chat(user, "Close \the [box] first!")
+
+ return
+
+ if( istype(I, /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/) ) // Long ass fucking object name
+
+ if( src.open )
+ user.drop_item()
+ I.loc = src
+ src.pizza = I
+
+ update_icon()
+
+ to_chat(user, "You put \the [I] in \the [src]!")
+ else
+ to_chat(user, "You try to push \the [I] through the lid but it doesn't work!")
+ return
+
+ if( istype(I, /obj/item/weapon/pen/) )
+
+ if( src.open )
+ return
+
+ var/t = sanitize(input("Enter what you want to add to the tag:", "Write", null, null) as text, 30)
+
+ var/obj/item/pizzabox/boxtotagto = src
+ if( boxes.len > 0 )
+ boxtotagto = boxes[boxes.len]
+
+ boxtotagto.boxtag = copytext("[boxtotagto.boxtag][t]", 1, 30)
+
+ update_icon()
+ return
+ ..()
+
+/obj/item/pizzabox/margherita/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margherita(src)
+ boxtag = "Margherita Deluxe"
+
+/obj/item/pizzabox/vegetable/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegetablepizza(src)
+ boxtag = "Gourmet Vegatable"
+
+/obj/item/pizzabox/mushroom/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushroompizza(src)
+ boxtag = "Mushroom Special"
+
+/obj/item/pizzabox/meat/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza(src)
+ boxtag = "Meatlover's Supreme"
+
+/obj/item/pizzabox/old/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/oldpizza(src)
+ boxtag = "Deluxe Gourmet"
+
+/obj/item/weapon/reagent_containers/food/snacks/dionaroast
+ name = "roast diona"
+ desc = "It's like an enormous, leathery carrot. With an eye."
+ icon_state = "dionaroast"
+ trash = /obj/item/trash/plate
+ filling_color = "#75754B"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 6
+ nutriment_desc = list("a chorus of flavor" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/dionaroast/New()
+ ..()
+ reagents.add_reagent("radium", 2)
+ bitesize = 2
+
+///////////////////////////////////////////
+// new old food stuff from bs12
+///////////////////////////////////////////
+/obj/item/weapon/reagent_containers/food/snacks/dough
+ name = "dough"
+ desc = "A piece of dough."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "dough"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 3
+ nutriment_desc = list("uncooked dough" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/dough/New()
+ ..()
+ reagents.add_reagent("protein", 1)
+
+// Dough + rolling pin = flat dough
+/obj/item/weapon/reagent_containers/food/snacks/dough/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype(W,/obj/item/weapon/material/kitchen/rollingpin))
+ new /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough(src)
+ user << "You flatten the dough."
+ qdel(src)
+
+// slicable into 3xdoughslices
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
+ name = "flat dough"
+ desc = "A flattened dough."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "flat dough"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/doughslice
+ slices_num = 3
+ center_of_mass = list("x"=16, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough/New()
+ ..()
+ reagents.add_reagent("protein", 1)
+ reagents.add_reagent("nutriment", 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/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/weapon/reagent_containers/food/snacks/spagetti
+ slices_num = 1
+ bitesize = 2
+ center_of_mass = list("x"=17, "y"=19)
+ nutriment_amt = 1
+ nutriment_desc = list("uncooked dough" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/doughslice/New()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/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 = list("x"=16, "y"=12)
+ nutriment_amt = 4
+ nutriment_desc = "bun"
+
+/obj/item/weapon/reagent_containers/food/snacks/bun/New()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/bun/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ // Bun + meatball = burger
+ if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/meatball))
+ new /obj/item/weapon/reagent_containers/food/snacks/monkeyburger(src)
+ user << "You make a burger."
+ qdel(W)
+ qdel(src)
+
+ // Bun + cutlet = hamburger
+ else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/cutlet))
+ new /obj/item/weapon/reagent_containers/food/snacks/monkeyburger(src)
+ user << "You make a burger."
+ qdel(W)
+ qdel(src)
+
+ // Bun + sausage = hotdog
+ else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/sausage))
+ new /obj/item/weapon/reagent_containers/food/snacks/hotdog(src)
+ user << "You make a hotdog."
+ qdel(W)
+ qdel(src)
+
+// Burger + cheese wedge = cheeseburger
+/obj/item/weapon/reagent_containers/food/snacks/monkeyburger/attackby(obj/item/weapon/reagent_containers/food/snacks/cheesewedge/W as obj, mob/user as mob)
+ if(istype(W))// && !istype(src,/obj/item/weapon/reagent_containers/food/snacks/cheesewedge))
+ new /obj/item/weapon/reagent_containers/food/snacks/cheeseburger(src)
+ user << "You make a cheeseburger."
+ qdel(W)
+ qdel(src)
+ return
+ else
+ ..()
+
+// Human Burger + cheese wedge = cheeseburger
+/obj/item/weapon/reagent_containers/food/snacks/human/burger/attackby(obj/item/weapon/reagent_containers/food/snacks/cheesewedge/W as obj, mob/user as mob)
+ if(istype(W))
+ new /obj/item/weapon/reagent_containers/food/snacks/cheeseburger(src)
+ user << "You make a cheeseburger."
+ qdel(W)
+ qdel(src)
+ return
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/bunbun
+ name = "\improper Bun Bun"
+ desc = "A small bread monkey fashioned from two burger buns."
+ icon_state = "bunbun"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 8
+ nutriment_desc = list("bun" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/bunbun/New()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/taco
+ name = "taco"
+ desc = "Take a bite!"
+ icon_state = "taco"
+ bitesize = 3
+ center_of_mass = list("x"=21, "y"=12)
+ nutriment_amt = 4
+ nutriment_desc = list("cheese" = 2,"taco shell" = 2)
+/obj/item/weapon/reagent_containers/food/snacks/taco/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawcutlet
+ name = "raw cutlet"
+ desc = "A thin piece of raw meat."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "rawcutlet"
+ bitesize = 1
+ center_of_mass = list("x"=17, "y"=20)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawcutlet/New()
+ ..()
+ reagents.add_reagent("protein", 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/cutlet
+ name = "cutlet"
+ desc = "A tasty meat slice."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "cutlet"
+ bitesize = 2
+ center_of_mass = list("x"=17, "y"=20)
+
+/obj/item/weapon/reagent_containers/food/snacks/cutlet/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawmeatball
+ name = "raw meatball"
+ desc = "A raw meatball."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "rawmeatball"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=15)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawmeatball/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotdog
+ name = "hotdog"
+ desc = "Unrelated to dogs, maybe."
+ icon_state = "hotdog"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=17)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotdog/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotdog/old
+ name = "old hotdog"
+ desc = "Covered in mold. You're not gonna eat that, are you?"
+
+/obj/item/weapon/reagent_containers/food/snacks/hotdog/old/New()
+ ..()
+ reagents.add_reagent("mold", 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/flatbread
+ name = "flatbread"
+ desc = "Bland but filling."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "flatbread"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=16)
+ nutriment_amt = 3
+ nutriment_desc = list("bread" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/flatbread/New()
+ ..()
+
+// potato + knife = raw sticks
+/obj/item/weapon/reagent_containers/food/snacks/grown/attackby(obj/item/weapon/W, mob/user)
+ if(seed && seed.kitchen_tag && seed.kitchen_tag == "potato" && istype(W,/obj/item/weapon/material/knife))
+ new /obj/item/weapon/reagent_containers/food/snacks/rawsticks(get_turf(src))
+ user << "You cut the potato."
+ qdel(src)
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/rawsticks
+ name = "raw potato sticks"
+ desc = "Raw fries, not very tasty."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "rawsticks"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=12)
+ nutriment_amt = 3
+ nutriment_desc = list("raw potato" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawsticks/New()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/liquidfood
+ name = "\improper LiquidFood Ration"
+ desc = "A prepackaged grey slurry of all the essential nutrients for a spacefarer on the go. Should this be crunchy?"
+ icon_state = "liquidfood"
+ trash = /obj/item/trash/liquidfood
+ filling_color = "#A8A8A8"
+ center_of_mass = list("x"=16, "y"=15)
+ nutriment_amt = 20
+ nutriment_desc = list("chalk" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/liquidfood/New()
+ ..()
+ reagents.add_reagent("iron", 3)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/tastybread
+ name = "bread tube"
+ desc = "Bread in a tube. Chewy...and surprisingly tasty."
+ icon_state = "tastybread"
+ trash = /obj/item/trash/tastybread
+ filling_color = "#A66829"
+ center_of_mass = list("x"=17, "y"=16)
+ nutriment_amt = 6
+ nutriment_desc = list("bread" = 2, "sweetness" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/tastybread/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/skrellsnacks
+ name = "\improper SkrellSnax"
+ desc = "Cured fungus shipped all the way from Qerr'balak, almost like jerky! Almost."
+ icon_state = "skrellsnacks"
+ filling_color = "#A66829"
+ center_of_mass = list("x"=15, "y"=12)
+ nutriment_amt = 10
+ nutriment_desc = list("mushroom" = 5, "salt" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/skrellsnacks/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/unajerky
+ name = "Moghes Imported Sissalik Jerky"
+ icon_state = "unathitinred"
+ desc = "An incredibly well made jerky, shipped in all the way from Moghes."
+ trash = /obj/item/trash/unajerky
+ filling_color = "#631212"
+ center_of_mass = list("x"=15, "y"=9)
+
+/obj/item/weapon/reagent_containers/food/snacks/unajerky/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ reagents.add_reagent("capsaicin", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/croissant
+ name = "croissant"
+ desc = "True French cuisine."
+ filling_color = "#E3D796"
+ icon_state = "croissant"
+ nutriment_amt = 6
+ nutriment_desc = list("french bread" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/croissant/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatbun
+ name = "meat bun"
+ desc = "Chinese street food, in neither China nor a street."
+ filling_color = "#DEDEAB"
+ icon_state = "meatbun"
+ nutriment_amt = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/meatbun/New()
+ ..()
+ bitesize = 2
+ reagents.add_reagent("protein", 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/sashimi
+ name = "carp sashimi"
+ desc = "Expertly prepared. Still toxic."
+ filling_color = "#FFDEFE"
+ icon_state = "sashimi"
+ nutriment_amt = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/sashimi/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ reagents.add_reagent("carpotoxin", 2)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/benedict
+ name = "eggs benedict"
+ desc = "Hey, there's only one egg in this!"
+ filling_color = "#FFDF78"
+ icon_state = "benedict"
+ nutriment_amt = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/benedict/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/beans
+ name = "baked beans"
+ desc = "Musical fruit in a slightly less musical container."
+ filling_color = "#FC6F28"
+ icon_state = "beans"
+ nutriment_amt = 4
+ nutriment_desc = list("beans" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/beans/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/sugarcookie
+ name = "sugar cookie"
+ desc = "Just like your little sister used to make."
+ filling_color = "#DBC94F"
+ icon_state = "sugarcookie"
+ nutriment_amt = 5
+ nutriment_desc = list("sweetness" = 4, "cookie" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/sugarcookie/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/berrymuffin
+ name = "berry muffin"
+ desc = "A delicious and spongy little cake, with berries."
+ icon_state = "berrymuffin"
+ filling_color = "#E0CF9B"
+ center_of_mass = list("x"=17, "y"=4)
+ nutriment_amt = 6
+ nutriment_desc = list("sweetness" = 2, "muffin" = 2, "berries" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/berrymuffin/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/ghostmuffin
+ name = "booberry muffin"
+ desc = "My stomach is a graveyard! No living being can quench my bloodthirst!"
+ icon_state = "berrymuffin"
+ filling_color = "#799ACE"
+ center_of_mass = list("x"=17, "y"=4)
+ nutriment_amt = 6
+ nutriment_desc = list("spookiness" = 4, "muffin" = 1, "berries" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/ghostmuffin/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/eggroll
+ name = "egg roll"
+ desc = "Free with orders over 10 thalers."
+ icon_state = "eggroll"
+ filling_color = "#799ACE"
+ center_of_mass = list("x"=17, "y"=4)
+ nutriment_amt = 4
+ nutriment_desc = list("egg" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/eggroll/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fruitsalad
+ name = "fruit salad"
+ desc = "Your standard fruit salad."
+ icon_state = "fruitsalad"
+ filling_color = "#FF3867"
+ nutriment_amt = 10
+ nutriment_desc = list("fruit" = 10)
+
+/obj/item/weapon/reagent_containers/food/snacks/fruitsalad/New()
+ ..()
+ reagents.add_reagent("nutriment", 10)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/eggbowl
+ name = "egg bowl"
+ desc = "A bowl of fried rice with egg mixed in."
+ icon_state = "eggbowl"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FFFBDB"
+ nutriment_amt = 6
+ nutriment_desc = list("rice" = 2, "egg" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/eggbowl/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/porkbowl
+ name = "pork bowl"
+ desc = "A bowl of fried rice with cuts of meat."
+ icon_state = "porkbowl"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FFFBDB"
+ nutriment_amt = 6
+ nutriment_desc = list("rice" = 2, "meat" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/porkbowl/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tortilla
+ name = "tortilla"
+ desc = "The base for all your burritos."
+ icon_state = "tortilla"
+ nutriment_amt = 1
+ nutriment_desc = list("bread" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/tortilla/New()
+ ..()
+ reagents.add_reagent("nutriment", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatburrito
+ name = "carne asada burrito"
+ desc = "The best burrito for meat lovers."
+ icon_state = "carneburrito"
+ nutriment_amt = 6
+ nutriment_desc = list("tortilla" = 3, "meat" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatburrito/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cheeseburrito
+ name = "Cheese burrito"
+ desc = "It's a burrito filled with cheese."
+ icon_state = "cheeseburrito"
+ nutriment_amt = 6
+ nutriment_desc = list("tortilla" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheeseburrito/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fuegoburrito
+ name = "fuego phoron burrito"
+ desc = "A super spicy burrito."
+ icon_state = "fuegoburrito"
+ nutriment_amt = 6
+ nutriment_desc = list("chili peppers" = 5, "tortilla" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/fuegoburrito/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("capsaicin", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/nachos
+ name = "nachos"
+ desc = "Chips from Old Mexico."
+ icon_state = "nachos"
+ nutriment_amt = 2
+ nutriment_desc = list("salt" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/nachos/New()
+ ..()
+ reagents.add_reagent("nutriment", 1)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesenachos
+ name = "cheesy nachos"
+ desc = "The delicious combination of nachos and melting cheese."
+ icon_state = "cheesenachos"
+ nutriment_amt = 5
+ nutriment_desc = list("salt" = 2, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesenachos/New()
+ ..()
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cubannachos
+ name = "cuban nachos"
+ desc = "That's some dangerously spicy nachos."
+ icon_state = "cubannachos"
+ nutriment_amt = 6
+ nutriment_desc = list("salt" = 1, "cheese" = 2, "chili peppers" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cubannachos/New()
+ ..()
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("capsaicin", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/piginblanket
+ name = "pig in a blanket"
+ desc = "A sausage embedded in soft, fluffy pastry. Free this pig from its blanket prison by eating it."
+ icon_state = "piginblanket"
+ nutriment_amt = 6
+ nutriment_desc = list("meat" = 3, "pastry" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/piginblanket/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 4)
+=======
+//Food items that are eaten normally and don't leave anything behind.
+/obj/item/weapon/reagent_containers/food/snacks
+ name = "snack"
+ desc = "yummy"
+ icon = 'icons/obj/food.dmi'
+ icon_state = null
+ var/bitesize = 1
+ var/bitecount = 0
+ var/trash = null
+ var/slice_path
+ var/slices_num
+ var/dried_type = null
+ var/dry = 0
+ var/nutriment_amt = 0
+ var/list/nutriment_desc = list("food" = 1)
+ center_of_mass = list("x"=16, "y"=16)
+ w_class = ITEMSIZE_SMALL
+ force = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/New()
+ ..()
+ if(nutriment_amt)
+ reagents.add_reagent("nutriment",nutriment_amt,nutriment_desc)
+
+/obj/item/weapon/reagent_containers/food/snacks/New()
+ ..()
+ if(nutriment_amt)
+ reagents.add_reagent("nutriment", nutriment_amt)
+
+ //Placeholder for effect that trigger on eating that aren't tied to reagents.
+/obj/item/weapon/reagent_containers/food/snacks/proc/On_Consume(var/mob/M)
+ if(!usr)
+ usr = M
+ if(!reagents.total_volume)
+ M.visible_message("[M] finishes eating \the [src].","You finish eating \the [src].")
+ usr.drop_from_inventory(src) //so icons update :[
+
+ if(trash)
+ if(ispath(trash,/obj/item))
+ var/obj/item/TrashItem = new trash(usr)
+ usr.put_in_hands(TrashItem)
+ else if(istype(trash,/obj/item))
+ usr.put_in_hands(trash)
+ qdel(src)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/attack_self(mob/user as mob)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/attack(mob/M as mob, mob/user as mob, def_zone)
+ if(reagents && !reagents.total_volume)
+ user << "None of [src] left!"
+ user.drop_from_inventory(src)
+ qdel(src)
+ return 0
+
+ if(istype(M, /mob/living/carbon))
+ //TODO: replace with standard_feed_mob() call.
+
+ var/fullness = M.nutrition + (M.reagents.get_reagent_amount("nutriment") * 25)
+ if(M == user) //If you're eating it yourself
+ if(istype(M,/mob/living/carbon/human))
+ var/mob/living/carbon/human/H = M
+ if(!H.check_has_mouth())
+ user << "Where do you intend to put \the [src]? You don't have a mouth!"
+ return
+ var/obj/item/blocked = H.check_mouth_coverage()
+ if(blocked)
+ user << "\The [blocked] is in the way!"
+ return
+
+ user.setClickCooldown(user.get_attack_speed(src)) //puts a limit on how fast people can eat/drink things
+ if (fullness <= 50)
+ M << "You hungrily chew out a piece of [src] and gobble it!"
+ if (fullness > 50 && fullness <= 150)
+ M << "You hungrily begin to eat [src]."
+ if (fullness > 150 && fullness <= 350)
+ M << "You take a bite of [src]."
+ if (fullness > 350 && fullness <= 550)
+ M << "You unwillingly chew a bit of [src]."
+ if (fullness > (550 * (1 + M.overeatduration / 2000))) // The more you eat - the more you can eat
+ M << "You cannot force any more of [src] to go down your throat."
+ return 0
+
+ else if(user.a_intent == I_HURT)
+ return ..()
+
+ else
+ if(istype(M,/mob/living/carbon/human))
+ var/mob/living/carbon/human/H = M
+ if(!H.check_has_mouth())
+ user << "Where do you intend to put \the [src]? \The [H] doesn't have a mouth!"
+ return
+ var/obj/item/blocked = H.check_mouth_coverage()
+ if(blocked)
+ user << "\The [blocked] is in the way!"
+ return
+
+ if (fullness <= (550 * (1 + M.overeatduration / 1000)))
+ user.visible_message("[user] attempts to feed [M] [src].")
+ else
+ user.visible_message("[user] cannot force anymore of [src] down [M]'s throat.")
+ return 0
+
+ user.setClickCooldown(user.get_attack_speed(src))
+ if(!do_mob(user, M)) return
+
+ //Do we really care about this
+ add_attack_logs(user,M,"Fed with [src.name] containing [reagentlist(src)]", admin_notify = FALSE)
+
+ user.visible_message("[user] feeds [M] [src].")
+
+ else
+ user << "This creature does not seem to have a mouth!"
+ return
+
+ if(reagents) //Handle ingestion of the reagent.
+ playsound(M.loc,'sound/items/eatfood.ogg', rand(10,50), 1)
+ if(reagents.total_volume)
+ if(reagents.total_volume > bitesize)
+ reagents.trans_to_mob(M, bitesize, CHEM_INGEST)
+ else
+ reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST)
+ bitecount++
+ On_Consume(M)
+ return 1
+
+ return 0
+
+/obj/item/weapon/reagent_containers/food/snacks/examine(mob/user)
+ if(!..(user, 1))
+ return
+ if (bitecount==0)
+ return
+ else if (bitecount==1)
+ user << "\The [src] was bitten by someone!"
+ else if (bitecount<=3)
+ user << "\The [src] was bitten [bitecount] times!"
+ else
+ user << "\The [src] was bitten multiple times!"
+
+/obj/item/weapon/reagent_containers/food/snacks/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype(W,/obj/item/weapon/storage))
+ ..() // -> item/attackby()
+ return
+
+ // Eating with forks
+ if(istype(W,/obj/item/weapon/material/kitchen/utensil))
+ var/obj/item/weapon/material/kitchen/utensil/U = W
+ if(U.scoop_food)
+ if(!U.reagents)
+ U.create_reagents(5)
+
+ if (U.reagents.total_volume > 0)
+ user << "You already have something on your [U]."
+ return
+
+ user.visible_message( \
+ "[user] scoops up some [src] with \the [U]!", \
+ "You scoop up some [src] with \the [U]!" \
+ )
+
+ src.bitecount++
+ U.overlays.Cut()
+ U.loaded = "[src]"
+ var/image/I = new(U.icon, "loadedfood")
+ I.color = src.filling_color
+ U.overlays += I
+
+ reagents.trans_to_obj(U, min(reagents.total_volume,5))
+
+ if (reagents.total_volume <= 0)
+ qdel(src)
+ return
+
+ if (is_sliceable())
+ //these are used to allow hiding edge items in food that is not on a table/tray
+ var/can_slice_here = isturf(src.loc) && ((locate(/obj/structure/table) in src.loc) || (locate(/obj/machinery/optable) in src.loc) || (locate(/obj/item/weapon/tray) in src.loc))
+ var/hide_item = !has_edge(W) || !can_slice_here
+
+ if (hide_item)
+ if (W.w_class >= src.w_class || is_robot_module(W))
+ return
+
+ to_chat(user, "You slip \the [W] inside \the [src].")
+ user.drop_from_inventory(W, src)
+ add_fingerprint(user)
+ contents += W
+ return
+
+ if (has_edge(W))
+ if (!can_slice_here)
+ to_chat(user, "You cannot slice \the [src] here! You need a table or at least a tray to do it.")
+ return
+
+ var/slices_lost = 0
+ if (W.w_class > 3)
+ user.visible_message("\The [user] crudely slices \the [src] with [W]!", "You crudely slice \the [src] with your [W]!")
+ slices_lost = rand(1,min(1,round(slices_num/2)))
+ else
+ user.visible_message("\The [user] slices \the [src]!", "You slice \the [src]!")
+
+ var/reagents_per_slice = reagents.total_volume/slices_num
+ for(var/i=1 to (slices_num-slices_lost))
+ var/obj/slice = new slice_path (src.loc)
+ reagents.trans_to_obj(slice, reagents_per_slice)
+ qdel(src)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/proc/is_sliceable()
+ return (slices_num && slice_path && slices_num > 0)
+
+/obj/item/weapon/reagent_containers/food/snacks/Destroy()
+ if(contents)
+ for(var/atom/movable/something in contents)
+ something.dropInto(loc)
+ . = ..()
+
+////////////////////////////////////////////////////////////////////////////////
+/// FOOD END
+////////////////////////////////////////////////////////////////////////////////
+/obj/item/weapon/reagent_containers/food/snacks/attack_generic(var/mob/living/user)
+ if(!isanimal(user) && !isalien(user))
+ return
+ user.visible_message("[user] nibbles away at \the [src].","You nibble away at \the [src].")
+ bitecount++
+ if(reagents)
+ reagents.trans_to_mob(user, bitesize, CHEM_INGEST)
+ spawn(5)
+ if(!src && !user.client)
+ user.custom_emote(1,"[pick("burps", "cries for more", "burps twice", "looks at the area where the food was")]")
+ qdel(src)
+ On_Consume(user)
+
+//////////////////////////////////////////////////
+////////////////////////////////////////////Snacks
+//////////////////////////////////////////////////
+//Items in the "Snacks" subcategory are food items that people actually eat. The key points are that they are created
+// already filled with reagents and are destroyed when empty. Additionally, they make a "munching" noise when eaten.
+
+//Notes by Darem: Food in the "snacks" subtype can hold a maximum of 50 units Generally speaking, you don't want to go over 40
+// total for the item because you want to leave space for extra condiments. If you want effect besides healing, add a reagent for
+// it. Try to stick to existing reagents when possible (so if you want a stronger healing effect, just use Tricordrazine). On use
+// effect (such as the old officer eating a donut code) requires a unique reagent (unless you can figure out a better way).
+
+//The nutriment reagent and bitesize variable replace the old heal_amt and amount variables. Each unit of nutriment is equal to
+// 2 of the old heal_amt variable. Bitesize is the rate at which the reagents are consumed. So if you have 6 nutriment and a
+// bitesize of 2, then it'll take 3 bites to eat. Unlike the old system, the contained reagents are evenly spread among all
+// the bites. No more contained reagents = no more bites.
+
+//Here is an example of the new formatting for anyone who wants to add more food items.
+///obj/item/weapon/reagent_containers/food/snacks/xenoburger //Identification path for the object.
+// name = "Xenoburger" //Name that displays in the UI.
+// desc = "Smells caustic. Tastes like heresy." //Duh
+// icon_state = "xburger" //Refers to an icon in food.dmi
+// New() //Don't mess with this.
+// ..() //Same here.
+// reagents.add_reagent("xenomicrobes", 10) //This is what is in the food item. you may copy/paste
+// reagents.add_reagent("nutriment", 2) // this line of code for all the contents.
+// bitesize = 3 //This is the amount each bite consumes.
+
+
+
+
+/obj/item/weapon/reagent_containers/food/snacks/aesirsalad
+ name = "Aesir salad"
+ desc = "Probably too incredible for mortal men to fully enjoy."
+ icon_state = "aesirsalad"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#468C00"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 8
+ nutriment_desc = list("apples" = 3,"salad" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/aesirsalad/New()
+ ..()
+ reagents.add_reagent("doctorsdelight", 8)
+ reagents.add_reagent("tricordrazine", 8)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/candy
+ name = "candy"
+ desc = "Nougat, love it or hate it."
+ icon_state = "candy"
+ trash = /obj/item/trash/candy
+ filling_color = "#7D5F46"
+ center_of_mass = list("x"=15, "y"=15)
+ nutriment_amt = 1
+ nutriment_desc = list("candy" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/New()
+ ..()
+ reagents.add_reagent("sugar", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar
+ name = "protein bar"
+ desc = "SwoleMAX brand protein bars, guaranteed to get you feeling perfectly overconfident."
+ icon_state = "proteinbar"
+ trash = /obj/item/trash/candy/proteinbar
+ nutriment_amt = 9
+ nutriment_desc = list("candy" = 1, "protein" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ reagents.add_reagent("sugar", 4)
+ bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/donor
+ name = "Donor Candy"
+ desc = "A little treat for blood donors."
+ trash = /obj/item/trash/candy
+ nutriment_amt = 9
+ nutriment_desc = list("candy" = 10)
+
+/obj/item/weapon/reagent_containers/food/snacks/candy/donor/New()
+ ..()
+ reagents.add_reagent("sugar", 3)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/candy_corn
+ name = "candy corn"
+ desc = "It's a handful of candy corn. Cannot be stored in a detective's hat, alas."
+ icon_state = "candy_corn"
+ filling_color = "#FFFCB0"
+ center_of_mass = list("x"=14, "y"=10)
+ nutriment_amt = 4
+ nutriment_desc = list("candy corn" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/candy_corn/New()
+ ..()
+ reagents.add_reagent("sugar", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/chips
+ name = "chips"
+ desc = "Commander Riker's What-The-Crisps"
+ icon_state = "chips"
+ trash = /obj/item/trash/chips
+ filling_color = "#E8C31E"
+ center_of_mass = list("x"=15, "y"=15)
+ nutriment_amt = 3
+ nutriment_desc = list("salt" = 1, "chips" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/chips/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/cookie
+ name = "cookie"
+ desc = "COOKIE!!!"
+ icon_state = "COOKIE!!!"
+ filling_color = "#DBC94F"
+ center_of_mass = list("x"=17, "y"=18)
+ nutriment_amt = 5
+ nutriment_desc = list("sweetness" = 3, "cookie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/cookie/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatebar
+ name = "Chocolate Bar"
+ desc = "Such sweet, fattening food."
+ icon_state = "chocolatebar"
+ filling_color = "#7D5F46"
+ center_of_mass = list("x"=15, "y"=15)
+ nutriment_amt = 2
+ nutriment_desc = list("chocolate" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatebar/New()
+ ..()
+ reagents.add_reagent("sugar", 2)
+ reagents.add_reagent("coco", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatepiece
+ name = "chocolate piece"
+ desc = "A luscious milk chocolate piece filled with gooey caramel."
+ icon_state = "chocolatepiece"
+ filling_color = "#7D5F46"
+ center_of_mass = list("x"=15, "y"=15)
+ nutriment_amt = 1
+ nutriment_desc = list("chocolate" = 3, "caramel" = 2, "lusciousness" = 1)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatepiece/white
+ name = "white chocolate piece"
+ desc = "A creamy white chocolate piece drizzled in milk chocolate."
+ icon_state = "chocolatepiece_white"
+ filling_color = "#E2DAD3"
+ nutriment_desc = list("white chocolate" = 3, "creaminess" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolatepiece/truffle
+ name = "chocolate truffle"
+ desc = "A bite-sized milk chocolate truffle that could buy anyone's love."
+ icon_state = "chocolatepiece_truffle"
+ nutriment_desc = list("chocolate" = 3, "undying devotion" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolateegg
+ name = "Chocolate Egg"
+ desc = "Such sweet, fattening food."
+ icon_state = "chocolateegg"
+ filling_color = "#7D5F46"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 3
+ nutriment_desc = list("chocolate" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/chocolateegg/New()
+ ..()
+ reagents.add_reagent("sugar", 2)
+ reagents.add_reagent("coco", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/donut
+ name = "donut"
+ desc = "Goes great with Robust Coffee."
+ icon_state = "donut1"
+ filling_color = "#D9C386"
+ var/overlay_state = "box-donut1"
+ center_of_mass = list("x"=13, "y"=16)
+ nutriment_desc = list("sweetness", "donut")
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/normal
+ name = "donut"
+ desc = "Goes great with Robust Coffee."
+ icon_state = "donut1"
+ nutriment_amt = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/normal/New()
+ ..()
+ reagents.add_reagent("nutriment", 3)
+ reagents.add_reagent("sprinkles", 1)
+ src.bitesize = 3
+ if(prob(30))
+ src.icon_state = "donut2"
+ src.overlay_state = "box-donut2"
+ src.name = "frosted donut"
+ reagents.add_reagent("sprinkles", 2)
+ center_of_mass = list("x"=19, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/chaos
+ name = "Chaos Donut"
+ desc = "Like life, it never quite tastes the same."
+ icon_state = "donut1"
+ filling_color = "#ED11E6"
+ nutriment_amt = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/chaos/New()
+ ..()
+ reagents.add_reagent("sprinkles", 1)
+ bitesize = 10
+ var/chaosselect = pick(1,2,3,4,5,6,7,8,9,10)
+ switch(chaosselect)
+ if(1)
+ reagents.add_reagent("nutriment", 3)
+ if(2)
+ reagents.add_reagent("capsaicin", 3)
+ if(3)
+ reagents.add_reagent("frostoil", 3)
+ if(4)
+ reagents.add_reagent("sprinkles", 3)
+ if(5)
+ reagents.add_reagent("phoron", 3)
+ if(6)
+ reagents.add_reagent("coco", 3)
+ if(7)
+ reagents.add_reagent("slimejelly", 3)
+ if(8)
+ reagents.add_reagent("banana", 3)
+ if(9)
+ reagents.add_reagent("berryjuice", 3)
+ if(10)
+ reagents.add_reagent("tricordrazine", 3)
+ if(prob(30))
+ src.icon_state = "donut2"
+ src.overlay_state = "box-donut2"
+ src.name = "Frosted Chaos Donut"
+ reagents.add_reagent("sprinkles", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/jelly
+ name = "Jelly Donut"
+ desc = "You jelly?"
+ icon_state = "jdonut1"
+ filling_color = "#ED1169"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/jelly/New()
+ ..()
+ reagents.add_reagent("sprinkles", 1)
+ reagents.add_reagent("berryjuice", 5)
+ bitesize = 5
+ if(prob(30))
+ src.icon_state = "jdonut2"
+ src.overlay_state = "box-donut2"
+ src.name = "Frosted Jelly Donut"
+ reagents.add_reagent("sprinkles", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/slimejelly
+ name = "Jelly Donut"
+ desc = "You jelly?"
+ icon_state = "jdonut1"
+ filling_color = "#ED1169"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/slimejelly/New()
+ ..()
+ reagents.add_reagent("sprinkles", 1)
+ reagents.add_reagent("slimejelly", 5)
+ bitesize = 5
+ if(prob(30))
+ src.icon_state = "jdonut2"
+ src.overlay_state = "box-donut2"
+ src.name = "Frosted Jelly Donut"
+ reagents.add_reagent("sprinkles", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/cherryjelly
+ name = "Jelly Donut"
+ desc = "You jelly?"
+ icon_state = "jdonut1"
+ filling_color = "#ED1169"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/donut/cherryjelly/New()
+ ..()
+ reagents.add_reagent("sprinkles", 1)
+ reagents.add_reagent("cherryjelly", 5)
+ bitesize = 5
+ if(prob(30))
+ src.icon_state = "jdonut2"
+ src.overlay_state = "box-donut2"
+ src.name = "Frosted Jelly Donut"
+ reagents.add_reagent("sprinkles", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg
+ name = "egg"
+ desc = "An egg!"
+ icon_state = "egg"
+ filling_color = "#FDFFD1"
+ volume = 10
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/New()
+ ..()
+ reagents.add_reagent("egg", 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/afterattack(obj/O as obj, mob/user as mob, proximity)
+ if(istype(O,/obj/machinery/microwave))
+ return ..()
+ if(!(proximity && O.is_open_container()))
+ return
+ user << "You crack \the [src] into \the [O]."
+ reagents.trans_to(O, reagents.total_volume)
+ user.drop_from_inventory(src)
+ qdel(src)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/throw_impact(atom/hit_atom)
+ ..()
+ new/obj/effect/decal/cleanable/egg_smudge(src.loc)
+ src.reagents.splash(hit_atom, reagents.total_volume)
+ src.visible_message("[src.name] has been squashed.","You hear a smack.")
+ qdel(src)
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype( W, /obj/item/weapon/pen/crayon ))
+ var/obj/item/weapon/pen/crayon/C = W
+ var/clr = C.colourName
+
+ if(!(clr in list("blue","green","mime","orange","purple","rainbow","red","yellow")))
+ usr << "The egg refuses to take on this color!"
+ return
+
+ usr << "You color \the [src] [clr]"
+ icon_state = "egg-[clr]"
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/blue
+ icon_state = "egg-blue"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/green
+ icon_state = "egg-green"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/mime
+ icon_state = "egg-mime"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/orange
+ icon_state = "egg-orange"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/purple
+ icon_state = "egg-purple"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/rainbow
+ icon_state = "egg-rainbow"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/red
+ icon_state = "egg-red"
+
+/obj/item/weapon/reagent_containers/food/snacks/egg/yellow
+ icon_state = "egg-yellow"
+
+/obj/item/weapon/reagent_containers/food/snacks/friedegg
+ name = "Fried egg"
+ desc = "A fried egg, with a touch of salt and pepper."
+ icon_state = "friedegg"
+ filling_color = "#FFDF78"
+ center_of_mass = list("x"=16, "y"=14)
+
+/obj/item/weapon/reagent_containers/food/snacks/friedegg/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("sodiumchloride", 1)
+ reagents.add_reagent("blackpepper", 1)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledegg
+ name = "Boiled egg"
+ desc = "A hard boiled egg."
+ icon_state = "egg"
+ filling_color = "#FFFFFF"
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledegg/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/organ
+ name = "organ"
+ desc = "It's good for you."
+ icon = 'icons/obj/surgery.dmi'
+ icon_state = "appendix"
+ filling_color = "#E00D34"
+ center_of_mass = list("x"=16, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/organ/New()
+ ..()
+ reagents.add_reagent("protein", rand(3,5))
+ reagents.add_reagent("toxin", rand(1,3))
+ src.bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/tofu
+ name = "Tofu"
+ icon_state = "tofu"
+ desc = "We all love tofu."
+ filling_color = "#FFFEE0"
+ center_of_mass = list("x"=17, "y"=10)
+ nutriment_amt = 3
+ nutriment_desc = list("tofu" = 3, "goeyness" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofu/New()
+ ..()
+ src.bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/tofurkey
+ name = "Tofurkey"
+ desc = "A fake turkey made from tofu."
+ icon_state = "tofurkey"
+ filling_color = "#FFFEE0"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 12
+ nutriment_desc = list("turkey" = 3, "tofu" = 5, "goeyness" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofurkey/New()
+ ..()
+ reagents.add_reagent("stoxin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/stuffing
+ name = "Stuffing"
+ desc = "Moist, peppery breadcrumbs for filling the body cavities of dead birds. Dig in!"
+ icon_state = "stuffing"
+ filling_color = "#C9AC83"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 3
+ nutriment_desc = list("dryness" = 2, "bread" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/stuffing/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/carpmeat
+ name = "carp fillet"
+ desc = "A fillet of spess carp meat"
+ icon_state = "fishfillet"
+ filling_color = "#FFDEFE"
+ center_of_mass = list("x"=17, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/carpmeat/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("carpotoxin", 3)
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/fishfingers
+ name = "Fish Fingers"
+ desc = "A finger of fish."
+ icon_state = "fishfingers"
+ filling_color = "#FFDEFE"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/fishfingers/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ reagents.add_reagent("carpotoxin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice
+ name = "huge mushroom slice"
+ desc = "A slice from a huge mushroom."
+ icon_state = "hugemushroomslice"
+ filling_color = "#E0D7C5"
+ center_of_mass = list("x"=17, "y"=16)
+ nutriment_amt = 3
+ nutriment_desc = list("raw" = 2, "mushroom" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice/New()
+ ..()
+ reagents.add_reagent("psilocybin", 3)
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/tomatomeat
+ name = "tomato slice"
+ desc = "A slice from a huge tomato"
+ icon_state = "tomatomeat"
+ filling_color = "#DB0000"
+ center_of_mass = list("x"=17, "y"=16)
+ nutriment_amt = 3
+ nutriment_desc = list("raw" = 2, "tomato" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/tomatomeat/New()
+ ..()
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/bearmeat
+ name = "bear meat"
+ desc = "A very manly slab of meat."
+ icon_state = "bearmeat"
+ filling_color = "#DB0000"
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/bearmeat/New()
+ ..()
+ reagents.add_reagent("protein", 12)
+ reagents.add_reagent("hyperzine", 5)
+ src.bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/xenomeat
+ name = "xenomeat"
+ desc = "A slab of green meat. Smells like acid."
+ icon_state = "xenomeat"
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/xenomeat/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ reagents.add_reagent("pacid",6)
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat // Substitute for recipes requiring xeno meat.
+ name = "spider meat"
+ desc = "A slab of green meat."
+ icon_state = "xenomeat"
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat/New()
+ ..()
+ reagents.add_reagent("spidertoxin",6)
+ reagents.remove_reagent("pacid",6)
+ src.bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/meatball
+ name = "meatball"
+ desc = "A great meal all round."
+ icon_state = "meatball"
+ filling_color = "#DB0000"
+ center_of_mass = list("x"=16, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatball/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/sausage
+ name = "Sausage"
+ desc = "A piece of mixed, long meat."
+ icon_state = "sausage"
+ filling_color = "#DB0000"
+ center_of_mass = list("x"=16, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/sausage/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket
+ name = "Donk-pocket"
+ desc = "The food of choice for the seasoned traitor."
+ icon_state = "donkpocket"
+ filling_color = "#DEDEAB"
+ center_of_mass = list("x"=16, "y"=10)
+ var/warm
+ var/list/heated_reagents
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/New()
+ ..()
+ reagents.add_reagent("nutriment", 2)
+ reagents.add_reagent("protein", 2)
+
+ warm = 0
+ heated_reagents = list("tricordrazine" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/proc/heat()
+ warm = 1
+ for(var/reagent in heated_reagents)
+ reagents.add_reagent(reagent, heated_reagents[reagent])
+ bitesize = 6
+ name = "Warm " + name
+ cooltime()
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/proc/cooltime()
+ if (src.warm)
+ spawn(4200)
+ src.warm = 0
+ for(var/reagent in heated_reagents)
+ src.reagents.del_reagent(reagent)
+ src.name = initial(name)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket
+ name = "\improper Sin-pocket"
+ desc = "The food of choice for the veteran. Do NOT overconsume."
+ filling_color = "#6D6D00"
+ heated_reagents = list("doctorsdelight" = 5, "hyperzine" = 0.75, "synaptizine" = 0.25)
+ var/has_been_heated = 0
+
+/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket/attack_self(mob/user)
+ if(has_been_heated)
+ 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.")
+ spawn(200)
+ user << "You think \the [src] is ready to eat about now."
+ heat()
+
+/obj/item/weapon/reagent_containers/food/snacks/brainburger
+ name = "brainburger"
+ desc = "A strange looking burger. It looks almost sentient."
+ icon_state = "brainburger"
+ filling_color = "#F2B6EA"
+ center_of_mass = list("x"=15, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/brainburger/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ reagents.add_reagent("alkysine", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/ghostburger
+ name = "Ghost Burger"
+ desc = "Spooky! It doesn't look very filling."
+ icon_state = "ghostburger"
+ filling_color = "#FFF2FF"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("buns" = 3, "spookiness" = 3)
+ nutriment_amt = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/ghostburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/human
+ var/hname = ""
+ var/job = null
+ filling_color = "#D63C3C"
+
+/obj/item/weapon/reagent_containers/food/snacks/human/burger
+ name = "-burger"
+ desc = "A bloody burger."
+ icon_state = "hburger"
+ center_of_mass = list("x"=16, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/human/burger/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cheeseburger
+ name = "cheeseburger"
+ desc = "The cheese adds a good flavor."
+ icon_state = "cheeseburger"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 2
+ nutriment_desc = list("cheese" = 2, "bun" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheeseburger/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeyburger
+ name = "burger"
+ desc = "The cornerstone of every nutritious breakfast."
+ icon_state = "hburger"
+ filling_color = "#D63C3C"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+ nutriment_desc = list("bun" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeyburger/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fishburger
+ name = "Fillet -o- Carp Sandwich"
+ desc = "Almost like a carp is yelling somewhere... Give me back that fillet -o- carp, give me that carp."
+ icon_state = "fishburger"
+ filling_color = "#FFDEFE"
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/fishburger/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ reagents.add_reagent("carpotoxin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/tofuburger
+ name = "Tofu Burger"
+ desc = "What.. is that meat?"
+ icon_state = "tofuburger"
+ filling_color = "#FFFEE0"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 6
+ nutriment_desc = list("bun" = 2, "pseudo-soy meat" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofuburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/roburger
+ name = "roburger"
+ desc = "The lettuce is the only organic component. Beep."
+ icon_state = "roburger"
+ filling_color = "#CCCCCC"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 2
+ nutriment_desc = list("bun" = 2, "metal" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/roburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/roburgerbig
+ name = "roburger"
+ desc = "This massive patty looks like poison. Beep."
+ icon_state = "roburger"
+ filling_color = "#CCCCCC"
+ volume = 100
+ center_of_mass = list("x"=16, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/roburgerbig/New()
+ ..()
+ bitesize = 0.1
+
+/obj/item/weapon/reagent_containers/food/snacks/xenoburger
+ name = "xenoburger"
+ desc = "Smells caustic. Tastes like heresy."
+ icon_state = "xburger"
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=16, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/xenoburger/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/clownburger
+ name = "Clown Burger"
+ desc = "This tastes funny..."
+ icon_state = "clownburger"
+ filling_color = "#FF00FF"
+ center_of_mass = list("x"=17, "y"=12)
+ nutriment_amt = 6
+ nutriment_desc = list("bun" = 2, "clown shoe" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/clownburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/mimeburger
+ name = "Mime Burger"
+ desc = "Its taste defies language."
+ icon_state = "mimeburger"
+ filling_color = "#FFFFFF"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 6
+ nutriment_desc = list("bun" = 2, "face paint" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/mimeburger/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/omelette
+ name = "Omelette Du Fromage"
+ desc = "That's all you can say!"
+ icon_state = "omelette"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFF9A8"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/omelette/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/muffin
+ name = "Muffin"
+ desc = "A delicious and spongy little cake"
+ icon_state = "muffin"
+ filling_color = "#E0CF9B"
+ center_of_mass = list("x"=17, "y"=4)
+ nutriment_amt = 6
+ nutriment_desc = list("sweetness" = 3, "muffin" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/muffin/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/pie
+ name = "Banana Cream Pie"
+ desc = "Just like back home, on clown planet! HONK!"
+ icon_state = "pie"
+ trash = /obj/item/trash/plate
+ filling_color = "#FBFFB8"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 4
+ nutriment_desc = list("pie" = 3, "cream" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/pie/New()
+ ..()
+ reagents.add_reagent("banana",5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/pie/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.")
+ qdel(src)
+
+/obj/item/weapon/reagent_containers/food/snacks/berryclafoutis
+ name = "Berry Clafoutis"
+ desc = "No black birds, this is a good sign."
+ icon_state = "berryclafoutis"
+ trash = /obj/item/trash/plate
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 4
+ nutriment_desc = list("sweetness" = 2, "pie" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/berryclafoutis/New()
+ ..()
+ reagents.add_reagent("berryjuice", 5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/waffles
+ name = "waffles"
+ desc = "Mmm, waffles"
+ icon_state = "waffles"
+ trash = /obj/item/trash/waffles
+ filling_color = "#E6DEB5"
+ center_of_mass = list("x"=15, "y"=11)
+ nutriment_amt = 8
+ nutriment_desc = list("waffle" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/waffles/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/eggplantparm
+ name = "Eggplant Parmigiana"
+ desc = "The only good recipe for eggplant."
+ icon_state = "eggplantparm"
+ trash = /obj/item/trash/plate
+ filling_color = "#4D2F5E"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 6
+ nutriment_desc = list("cheese" = 3, "eggplant" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/eggplantparm/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/soylentgreen
+ name = "Soylent Green"
+ desc = "Not made of people. Honest." //Totally people.
+ icon_state = "soylent_green"
+ trash = /obj/item/trash/waffles
+ filling_color = "#B8E6B5"
+ center_of_mass = list("x"=15, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/soylentgreen/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/soylenviridians
+ name = "Soylen Virdians"
+ desc = "Not made of people. Honest." //Actually honest for once.
+ icon_state = "soylent_yellow"
+ trash = /obj/item/trash/waffles
+ filling_color = "#E6FA61"
+ center_of_mass = list("x"=15, "y"=11)
+ nutriment_amt = 10
+ nutriment_desc = list("some sort of protein" = 10) //seasoned VERY well.
+
+/obj/item/weapon/reagent_containers/food/snacks/soylenviridians/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatpie
+ name = "Meat-pie"
+ icon_state = "meatpie"
+ desc = "An old barber recipe, very delicious!"
+ trash = /obj/item/trash/plate
+ filling_color = "#948051"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatpie/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tofupie
+ name = "Tofu-pie"
+ icon_state = "meatpie"
+ desc = "A delicious tofu pie."
+ trash = /obj/item/trash/plate
+ filling_color = "#FFFEE0"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 10
+ nutriment_desc = list("tofu" = 2, "pie" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofupie/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/amanita_pie
+ name = "amanita pie"
+ desc = "Sweet and tasty poison pie."
+ icon_state = "amanita_pie"
+ filling_color = "#FFCCCC"
+ center_of_mass = list("x"=17, "y"=9)
+ nutriment_amt = 5
+ nutriment_desc = list("sweetness" = 3, "mushroom" = 3, "pie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/amanita_pie/New()
+ ..()
+ reagents.add_reagent("amatoxin", 3)
+ reagents.add_reagent("psilocybin", 1)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/plump_pie
+ name = "plump pie"
+ desc = "I bet you love stuff made out of plump helmets!"
+ icon_state = "plump_pie"
+ filling_color = "#B8279B"
+ center_of_mass = list("x"=17, "y"=9)
+ nutriment_amt = 8
+ nutriment_desc = list("heartiness" = 2, "mushroom" = 3, "pie" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/plump_pie/New()
+ ..()
+ if(prob(10))
+ name = "exceptional plump pie"
+ desc = "Microwave is taken by a fey mood! It has cooked an exceptional plump pie!"
+ reagents.add_reagent("nutriment", 8)
+ reagents.add_reagent("tricordrazine", 5)
+ bitesize = 2
+ else
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/xemeatpie
+ name = "Xeno-pie"
+ icon_state = "xenomeatpie"
+ desc = "A delicious meatpie. Probably heretical."
+ trash = /obj/item/trash/plate
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/xemeatpie/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/wingfangchu
+ name = "Wing Fang Chu"
+ desc = "A savory dish of alien wing wang in soy."
+ icon_state = "wingfangchu"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#43DE18"
+ center_of_mass = list("x"=17, "y"=9)
+
+/obj/item/weapon/reagent_containers/food/snacks/wingfangchu/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/human/kabob
+ name = "-kabob"
+ icon_state = "kabob"
+ desc = "A human meat, on a stick."
+ trash = /obj/item/stack/rods
+ filling_color = "#A85340"
+ center_of_mass = list("x"=17, "y"=15)
+
+/obj/item/weapon/reagent_containers/food/snacks/human/kabob/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeykabob
+ name = "Meat-kabob"
+ icon_state = "kabob"
+ desc = "Delicious meat, on a stick."
+ trash = /obj/item/stack/rods
+ filling_color = "#A85340"
+ center_of_mass = list("x"=17, "y"=15)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeykabob/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tofukabob
+ name = "Tofu-kabob"
+ icon_state = "kabob"
+ desc = "Vegan meat, on a stick."
+ trash = /obj/item/stack/rods
+ filling_color = "#FFFEE0"
+
+ center_of_mass = list("x"=17, "y"=15)
+ nutriment_amt = 8
+ nutriment_desc = list("tofu" = 3, "metal" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/tofukabob/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cubancarp
+ name = "Cuban Carp"
+ desc = "A sandwich that burns your tongue and then leaves it numb!"
+ icon_state = "cubancarp"
+ trash = /obj/item/trash/plate
+ filling_color = "#E9ADFF"
+ center_of_mass = list("x"=12, "y"=5)
+ nutriment_amt = 3
+ nutriment_desc = list("toasted bread" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cubancarp/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("carpotoxin", 3)
+ reagents.add_reagent("capsaicin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/popcorn
+ name = "Popcorn"
+ desc = "Now let's find some cinema."
+ icon_state = "popcorn"
+ trash = /obj/item/trash/popcorn
+ var/unpopped = 0
+ filling_color = "#FFFAD4"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 2
+ nutriment_desc = list("popcorn" = 3)
+
+
+/obj/item/weapon/reagent_containers/food/snacks/popcorn/New()
+ ..()
+ unpopped = rand(1,10)
+ bitesize = 0.1 //this snack is supposed to be eating during looooong time. And this it not dinner food! --rastaf0
+
+/obj/item/weapon/reagent_containers/food/snacks/popcorn/On_Consume()
+ if(prob(unpopped)) //lol ...what's the point?
+ usr << "You bite down on an un-popped kernel!"
+ unpopped = max(0, unpopped-1)
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/sosjerky
+ name = "Scaredy's Private Reserve Beef Jerky"
+ icon_state = "sosjerky"
+ desc = "Beef jerky made from the finest space cows."
+ trash = /obj/item/trash/sosjerky
+ filling_color = "#631212"
+ center_of_mass = list("x"=15, "y"=9)
+
+/obj/item/weapon/reagent_containers/food/snacks/sosjerky/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/no_raisin
+ name = "4no Raisins"
+ icon_state = "4no_raisins"
+ desc = "Best raisins in the universe. Not sure why."
+ trash = /obj/item/trash/raisins
+ filling_color = "#343834"
+ center_of_mass = list("x"=15, "y"=4)
+ nutriment_amt = 6
+ nutriment_desc = list("dried raisins" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/no_raisin/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie
+ name = "Space Twinkie"
+ icon_state = "space_twinkie"
+ desc = "Guaranteed to survive longer then you will."
+ filling_color = "#FFE591"
+ center_of_mass = list("x"=15, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie/New()
+ ..()
+ reagents.add_reagent("sugar", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers
+ name = "Cheesie Honkers"
+ icon_state = "cheesie_honkers"
+ desc = "Bite sized cheesie snacks that will honk all over your mouth"
+ trash = /obj/item/trash/cheesie
+ filling_color = "#FFA305"
+ center_of_mass = list("x"=15, "y"=9)
+ nutriment_amt = 4
+ nutriment_desc = list("cheese" = 5, "chips" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/syndicake
+ name = "Syndi-Cakes"
+ icon_state = "syndi_cakes"
+ desc = "An extremely moist snack cake that tastes just as good after being nuked."
+ filling_color = "#FF5D05"
+ center_of_mass = list("x"=16, "y"=10)
+ trash = /obj/item/trash/syndi_cakes
+ nutriment_amt = 4
+ nutriment_desc = list("sweetness" = 3, "cake" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/syndicake/New()
+ ..()
+ reagents.add_reagent("doctorsdelight", 5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/loadedbakedpotato
+ name = "Loaded Baked Potato"
+ desc = "Totally baked."
+ icon_state = "loadedbakedpotato"
+ filling_color = "#9C7A68"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 3
+ nutriment_desc = list("baked potato" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/loadedbakedpotato/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fries
+ name = "Space Fries"
+ desc = "AKA: French Fries, Freedom Fries, etc."
+ icon_state = "fries"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("fresh fries" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/fries/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/mashedpotato
+ name = "Mashed Potato"
+ desc = "Pillowy mounds of mashed potato."
+ icon_state = "mashedpotato"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("fluffy mashed potatoes" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/mashedpotato/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/bangersandmash
+ name = "Bangers and Mash"
+ desc = "An English treat."
+ icon_state = "bangersandmash"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("fluffy potato" = 3, "sausage" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/bangersandmash/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesymash
+ name = "Cheesy Mashed Potato"
+ desc = "The only thing that could make mash better."
+ icon_state = "cheesymash"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("cheesy potato" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesymash/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/blackpudding
+ name = "Black Pudding"
+ desc = "This doesn't seem like a pudding at all."
+ icon_state = "blackpudding"
+ filling_color = "#FF0000"
+ center_of_mass = list("x"=16, "y"=7)
+
+/obj/item/weapon/reagent_containers/food/snacks/blackpudding/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ reagents.add_reagent("blood", 5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/soydope
+ name = "Soy Dope"
+ desc = "Dope from a soy."
+ icon_state = "soydope"
+ trash = /obj/item/trash/plate
+ filling_color = "#C4BF76"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 2
+ nutriment_desc = list("slime" = 2, "soy" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/soydope/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/spagetti
+ name = "Spaghetti"
+ desc = "A bundle of raw spaghetti."
+ icon_state = "spagetti"
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=16)
+ nutriment_amt = 1
+ nutriment_desc = list("noodles" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/spagetti/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesyfries
+ name = "Cheesy Fries"
+ desc = "Fries. Covered in cheese. Duh."
+ icon_state = "cheesyfries"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDDD00"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("fresh fries" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesyfries/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fortunecookie
+ name = "Fortune cookie"
+ desc = "A true prophecy in each cookie!"
+ icon_state = "fortune_cookie"
+ filling_color = "#E8E79E"
+ center_of_mass = list("x"=15, "y"=14)
+ nutriment_amt = 3
+ nutriment_desc = list("fortune cookie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/badrecipe
+ name = "Burned mess"
+ desc = "Someone should be demoted from chef for this."
+ icon_state = "badrecipe"
+ filling_color = "#211F02"
+ center_of_mass = list("x"=16, "y"=12)
+
+/obj/item/weapon/reagent_containers/food/snacks/badrecipe/New()
+ ..()
+ reagents.add_reagent("toxin", 1)
+ reagents.add_reagent("carbon", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatsteak
+ name = "Meat steak"
+ desc = "A piece of hot spicy meat."
+ icon_state = "meatstake"
+ trash = /obj/item/trash/plate
+ filling_color = "#7A3D11"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatsteak/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ reagents.add_reagent("sodiumchloride", 1)
+ reagents.add_reagent("blackpepper", 1)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/spacylibertyduff
+ name = "Spacy Liberty Duff"
+ desc = "Jello gelatin, from Alfred Hubbard's cookbook"
+ icon_state = "spacylibertyduff"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#42B873"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 6
+ nutriment_desc = list("mushroom" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/spacylibertyduff/New()
+ ..()
+ reagents.add_reagent("psilocybin", 6)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/amanitajelly
+ name = "Amanita Jelly"
+ desc = "Looks curiously toxic"
+ icon_state = "amanitajelly"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#ED0758"
+ center_of_mass = list("x"=16, "y"=5)
+ nutriment_amt = 6
+ nutriment_desc = list("jelly" = 3, "mushroom" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/amanitajelly/New()
+ ..()
+ reagents.add_reagent("amatoxin", 6)
+ reagents.add_reagent("psilocybin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/poppypretzel
+ name = "Poppy pretzel"
+ desc = "It's all twisted up!"
+ icon_state = "poppypretzel"
+ bitesize = 2
+ filling_color = "#916E36"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 5
+ nutriment_desc = list("poppy seeds" = 2, "pretzel" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/poppypretzel/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatballsoup
+ name = "Meatball soup"
+ desc = "You've got balls kid, BALLS!"
+ icon_state = "meatballsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#785210"
+ center_of_mass = list("x"=16, "y"=8)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatballsoup/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ reagents.add_reagent("water", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/slimesoup
+ name = "slime soup"
+ desc = "If no water is available, you may substitute tears."
+ icon_state = "slimesoup" //nonexistant?
+ filling_color = "#C4DBA0"
+
+/obj/item/weapon/reagent_containers/food/snacks/slimesoup/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+ reagents.add_reagent("water", 10)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/bloodsoup
+ name = "Tomato soup"
+ desc = "Smells like copper."
+ icon_state = "tomatosoup"
+ filling_color = "#FF0000"
+ center_of_mass = list("x"=16, "y"=7)
+
+/obj/item/weapon/reagent_containers/food/snacks/bloodsoup/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ reagents.add_reagent("blood", 10)
+ reagents.add_reagent("water", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/clownstears
+ name = "Clown's Tears"
+ desc = "Not very funny."
+ icon_state = "clownstears"
+ filling_color = "#C4FBFF"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 4
+ nutriment_desc = list("salt" = 1, "the worst joke" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/clownstears/New()
+ ..()
+ reagents.add_reagent("banana", 5)
+ reagents.add_reagent("water", 10)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/vegetablesoup
+ name = "Vegetable soup"
+ desc = "A true vegan meal" //TODO
+ icon_state = "vegetablesoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#AFC4B5"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 8
+ nutriment_desc = list("carot" = 2, "corn" = 2, "eggplant" = 2, "potato" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/vegetablesoup/New()
+ ..()
+ reagents.add_reagent("water", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/nettlesoup
+ name = "Nettle soup"
+ desc = "To think, the botanist would've beat you to death with one of these."
+ icon_state = "nettlesoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#AFC4B5"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 8
+ nutriment_desc = list("salad" = 4, "egg" = 2, "potato" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/nettlesoup/New()
+ ..()
+ reagents.add_reagent("water", 5)
+ reagents.add_reagent("tricordrazine", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/mysterysoup
+ name = "Mystery soup"
+ desc = "The mystery is, why aren't you eating it?"
+ icon_state = "mysterysoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#F082FF"
+ center_of_mass = list("x"=16, "y"=6)
+ nutriment_amt = 1
+ nutriment_desc = list("backwash" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/mysterysoup/New()
+ ..()
+ var/mysteryselect = pick(1,2,3,4,5,6,7,8,9,10)
+ switch(mysteryselect)
+ if(1)
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("capsaicin", 3)
+ reagents.add_reagent("tomatojuice", 2)
+ if(2)
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("frostoil", 3)
+ reagents.add_reagent("tomatojuice", 2)
+ if(3)
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("water", 5)
+ reagents.add_reagent("tricordrazine", 5)
+ if(4)
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("water", 10)
+ if(5)
+ reagents.add_reagent("nutriment", 2)
+ reagents.add_reagent("banana", 10)
+ if(6)
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("blood", 10)
+ if(7)
+ reagents.add_reagent("slimejelly", 10)
+ reagents.add_reagent("water", 10)
+ if(8)
+ reagents.add_reagent("carbon", 10)
+ reagents.add_reagent("toxin", 10)
+ if(9)
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("tomatojuice", 10)
+ if(10)
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("tomatojuice", 5)
+ reagents.add_reagent("imidazoline", 5)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/wishsoup
+ name = "Wish Soup"
+ desc = "I wish this was soup."
+ icon_state = "wishsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#D1F4FF"
+ center_of_mass = list("x"=16, "y"=11)
+
+/obj/item/weapon/reagent_containers/food/snacks/wishsoup/New()
+ ..()
+ reagents.add_reagent("water", 10)
+ bitesize = 5
+ if(prob(25))
+ src.desc = "A wish come true!"
+ reagents.add_reagent("nutriment", 8, list("something good" = 8))
+
+/obj/item/weapon/reagent_containers/food/snacks/hotchili
+ name = "Hot Chili"
+ desc = "A five alarm Texan Chili!"
+ icon_state = "hotchili"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FF3C00"
+ center_of_mass = list("x"=15, "y"=9)
+ nutriment_amt = 3
+ nutriment_desc = list("chilli peppers" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotchili/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("capsaicin", 3)
+ reagents.add_reagent("tomatojuice", 2)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/coldchili
+ name = "Cold Chili"
+ desc = "This slush is barely a liquid!"
+ icon_state = "coldchili"
+ filling_color = "#2B00FF"
+ center_of_mass = list("x"=15, "y"=9)
+ trash = /obj/item/trash/snack_bowl
+ nutriment_amt = 3
+ nutriment_desc = list("ice peppers" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/coldchili/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("frostoil", 3)
+ reagents.add_reagent("tomatojuice", 2)
+ bitesize = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube
+ name = "monkey cube"
+ desc = "Just add water!"
+ flags = OPENCONTAINER
+ icon_state = "monkeycube"
+ bitesize = 12
+ filling_color = "#ADAC7F"
+ center_of_mass = list("x"=16, "y"=14)
+
+ var/wrapped = 0
+ var/monkey_type = "Monkey"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/New()
+ ..()
+ 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()
+ 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)
+ qdel(src)
+ return 1
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/proc/Unwrap(mob/user as mob)
+ icon_state = "monkeycube"
+ desc = "Just add water!"
+ to_chat(user, "You unwrap the cube.")
+ wrapped = 0
+ flags |= OPENCONTAINER
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/On_Consume(var/mob/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")
+ Expand()
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/on_reagent_change()
+ if(reagents.has_reagent("water"))
+ Expand()
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped
+ desc = "Still wrapped in some paper."
+ icon_state = "monkeycubewrap"
+ flags = 0
+ wrapped = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/farwacube
+ name = "farwa cube"
+ monkey_type = "Farwa"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/farwacube
+ name = "farwa cube"
+ monkey_type = "Farwa"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/stokcube
+ name = "stok cube"
+ monkey_type = "Stok"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/stokcube
+ name = "stok cube"
+ monkey_type = "Stok"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/neaeracube
+ name = "neaera cube"
+ monkey_type = "Neaera"
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/neaeracube
+ name = "neaera cube"
+ monkey_type = "Neaera"
+
+/obj/item/weapon/reagent_containers/food/snacks/spellburger
+ name = "Spell Burger"
+ desc = "This is absolutely Ei Nath."
+ icon_state = "spellburger"
+ filling_color = "#D505FF"
+ nutriment_amt = 6
+ nutriment_desc = list("magic" = 3, "buns" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/spellburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/bigbiteburger
+ name = "Big Bite Burger"
+ desc = "Forget the Big Mac. THIS is the future!"
+ icon_state = "bigbiteburger"
+ filling_color = "#E3D681"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("buns" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/bigbiteburger/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/enchiladas
+ name = "Enchiladas"
+ desc = "Viva La Mexico!"
+ icon_state = "enchiladas"
+ trash = /obj/item/trash/tray
+ filling_color = "#A36A1F"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 2
+ nutriment_desc = list("tortilla" = 3, "corn" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/enchiladas/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ reagents.add_reagent("capsaicin", 6)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeysdelight
+ name = "monkey's Delight"
+ desc = "Eeee Eee!"
+ icon_state = "monkeysdelight"
+ trash = /obj/item/trash/tray
+ filling_color = "#5C3C11"
+ center_of_mass = list("x"=16, "y"=13)
+
+/obj/item/weapon/reagent_containers/food/snacks/monkeysdelight/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ reagents.add_reagent("banana", 5)
+ reagents.add_reagent("blackpepper", 1)
+ reagents.add_reagent("sodiumchloride", 1)
+ bitesize = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/baguette
+ name = "Baguette"
+ desc = "Bon appetit!"
+ icon_state = "baguette"
+ filling_color = "#E3D796"
+ center_of_mass = list("x"=18, "y"=12)
+ nutriment_amt = 6
+ nutriment_desc = list("french bread" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/baguette/New()
+ ..()
+ reagents.add_reagent("blackpepper", 1)
+ reagents.add_reagent("sodiumchloride", 1)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/fishandchips
+ name = "Fish and Chips"
+ desc = "I do say so myself chap."
+ icon_state = "fishandchips"
+ filling_color = "#E3D796"
+ center_of_mass = list("x"=16, "y"=16)
+ nutriment_amt = 3
+ nutriment_desc = list("salt" = 1, "chips" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/fishandchips/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("carpotoxin", 3)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/sandwich
+ name = "Sandwich"
+ desc = "A grand creation of meat, cheese, bread, and several leaves of lettuce! Arthur Dent would be proud."
+ icon_state = "sandwich"
+ trash = /obj/item/trash/plate
+ filling_color = "#D9BE29"
+ center_of_mass = list("x"=16, "y"=4)
+ nutriment_amt = 3
+ nutriment_desc = list("bread" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/sandwich/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/toastedsandwich
+ name = "Toasted Sandwich"
+ desc = "Now if you only had a pepper bar."
+ icon_state = "toastedsandwich"
+ trash = /obj/item/trash/plate
+ filling_color = "#D9BE29"
+ center_of_mass = list("x"=16, "y"=4)
+ nutriment_amt = 3
+ nutriment_desc = list("toasted bread" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/toastedsandwich/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+ reagents.add_reagent("carbon", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/grilledcheese
+ name = "Grilled Cheese Sandwich"
+ desc = "Goes great with Tomato soup!"
+ icon_state = "toastedsandwich"
+ trash = /obj/item/trash/plate
+ filling_color = "#D9BE29"
+ nutriment_amt = 3
+ nutriment_desc = list("toasted bread" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/grilledcheese/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tomatosoup
+ name = "Tomato Soup"
+ desc = "Drinking this feels like being a vampire! A tomato vampire..."
+ icon_state = "tomatosoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#D92929"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 5
+ nutriment_desc = list("soup" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/tomatosoup/New()
+ ..()
+ reagents.add_reagent("tomatojuice", 10)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/onionsoup
+ name = "Onion Soup"
+ desc = "A soup with layers."
+ icon_state = "onionsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#E0C367"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 5
+ nutriment_desc = list("onion" = 2, "soup" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/onionsoup/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/onionrings
+ name = "Onion Rings"
+ desc = "Crispy rings."
+ icon_state = "onionrings"
+ trash = /obj/item/trash/plate
+ filling_color = "#E0C367"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 5
+ nutriment_desc = list("onion" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/onionrings/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/rofflewaffles
+ name = "Roffle Waffles"
+ desc = "Waffles from Roffle. Co."
+ icon_state = "rofflewaffles"
+ trash = /obj/item/trash/waffles
+ filling_color = "#FF00F7"
+ center_of_mass = list("x"=15, "y"=11)
+ nutriment_amt = 8
+ nutriment_desc = list("waffle" = 7, "sweetness" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/rofflewaffles/New()
+ ..()
+ reagents.add_reagent("psilocybin", 8)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/stew
+ name = "Stew"
+ desc = "A nice and warm stew. Healthy and strong."
+ icon_state = "stew"
+ filling_color = "#9E673A"
+ center_of_mass = list("x"=16, "y"=5)
+ nutriment_amt = 6
+ nutriment_desc = list("tomato" = 2, "potato" = 2, "carrot" = 2, "eggplant" = 2, "mushroom" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/stew/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ reagents.add_reagent("tomatojuice", 5)
+ reagents.add_reagent("imidazoline", 5)
+ reagents.add_reagent("water", 5)
+ bitesize = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast
+ name = "Jellied Toast"
+ desc = "A slice of bread covered with delicious jam."
+ icon_state = "jellytoast"
+ trash = /obj/item/trash/plate
+ filling_color = "#B572AB"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 1
+ nutriment_desc = list("toasted bread" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast/cherry/New()
+ ..()
+ reagents.add_reagent("cherryjelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast/slime/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellyburger
+ name = "Jelly Burger"
+ desc = "Culinary delight..?"
+ icon_state = "jellyburger"
+ filling_color = "#B572AB"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 5
+ nutriment_desc = list("buns" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellyburger/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/jellyburger/slime/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellyburger/cherry/New()
+ ..()
+ reagents.add_reagent("cherryjelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/milosoup
+ name = "Milosoup"
+ desc = "The universes best soup! Yum!!!"
+ icon_state = "milosoup"
+ trash = /obj/item/trash/snack_bowl
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 8
+ nutriment_desc = list("soy" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/milosoup/New()
+ ..()
+ reagents.add_reagent("water", 5)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/stewedsoymeat
+ name = "Stewed Soy Meat"
+ desc = "Even non-vegetarians will LOVE this!"
+ icon_state = "stewedsoymeat"
+ trash = /obj/item/trash/plate
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 8
+ nutriment_desc = list("soy" = 4, "tomato" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/stewedsoymeat/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledspagetti
+ name = "Boiled Spaghetti"
+ desc = "A plain dish of noodles, this sucks."
+ icon_state = "spagettiboiled"
+ trash = /obj/item/trash/plate
+ filling_color = "#FCEE81"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 2
+ nutriment_desc = list("noodles" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledspagetti/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledrice
+ name = "Boiled Rice"
+ desc = "A boring dish of boring rice."
+ icon_state = "boiledrice"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FFFBDB"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 2
+ nutriment_desc = list("rice" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledrice/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/ricepudding
+ name = "Rice Pudding"
+ desc = "Where's the jam?"
+ icon_state = "rpudding"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FFFBDB"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("rice" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/ricepudding/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/pastatomato
+ name = "Spaghetti"
+ desc = "Spaghetti and crushed tomatoes. Just like your abusive father used to make!"
+ icon_state = "pastatomato"
+ trash = /obj/item/trash/plate
+ filling_color = "#DE4545"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 6
+ nutriment_desc = list("tomato" = 3, "noodles" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/pastatomato/New()
+ ..()
+ reagents.add_reagent("tomatojuice", 10)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/meatballspagetti
+ name = "Spaghetti & Meatballs"
+ desc = "Now thats a nic'e meatball!"
+ icon_state = "meatballspagetti"
+ trash = /obj/item/trash/plate
+ filling_color = "#DE4545"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 4
+ nutriment_desc = list("noodles" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatballspagetti/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/spesslaw
+ name = "Spesslaw"
+ desc = "A lawyers favourite"
+ icon_state = "spesslaw"
+ filling_color = "#DE4545"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_amt = 4
+ nutriment_desc = list("noodles" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/spesslaw/New()
+ ..()
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/carrotfries
+ name = "Carrot Fries"
+ desc = "Tasty fries from fresh Carrots."
+ icon_state = "carrotfries"
+ trash = /obj/item/trash/plate
+ filling_color = "#FAA005"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 3
+ nutriment_desc = list("carrot" = 3, "salt" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/carrotfries/New()
+ ..()
+ reagents.add_reagent("imidazoline", 3)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/superbiteburger
+ name = "Super Bite Burger"
+ desc = "This is a mountain of a burger. FOOD!"
+ icon_state = "superbiteburger"
+ filling_color = "#CCA26A"
+ center_of_mass = list("x"=16, "y"=3)
+ nutriment_amt = 25
+ nutriment_desc = list("buns" = 25)
+
+/obj/item/weapon/reagent_containers/food/snacks/superbiteburger/New()
+ ..()
+ reagents.add_reagent("protein", 25)
+ bitesize = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/candiedapple
+ name = "Candied Apple"
+ desc = "An apple coated in sugary sweetness."
+ icon_state = "candiedapple"
+ filling_color = "#F21873"
+ center_of_mass = list("x"=15, "y"=13)
+ nutriment_amt = 3
+ nutriment_desc = list("apple" = 3, "caramel" = 3, "sweetness" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/candiedapple/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/applepie
+ name = "Apple Pie"
+ desc = "A pie containing sweet sweet love... or apple."
+ icon_state = "applepie"
+ filling_color = "#E0EDC5"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 4
+ nutriment_desc = list("sweetness" = 2, "apple" = 2, "pie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/applepie/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/cherrypie
+ name = "Cherry Pie"
+ desc = "Taste so good, make a grown man cry."
+ icon_state = "cherrypie"
+ filling_color = "#FF525A"
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_amt = 4
+ nutriment_desc = list("sweetness" = 2, "cherry" = 2, "pie" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/cherrypie/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/twobread
+ name = "Two Bread"
+ desc = "It is very bitter and winy."
+ icon_state = "twobread"
+ filling_color = "#DBCC9A"
+ center_of_mass = list("x"=15, "y"=12)
+ nutriment_amt = 2
+ nutriment_desc = list("sourness" = 2, "bread" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/twobread/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/jellysandwich
+ name = "Jelly Sandwich"
+ desc = "You wish you had some peanut butter to go with this..."
+ icon_state = "jellysandwich"
+ trash = /obj/item/trash/plate
+ filling_color = "#9E3A78"
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 2
+ nutriment_desc = list("bread" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellysandwich/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/jellysandwich/slime/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/jellysandwich/cherry/New()
+ ..()
+ reagents.add_reagent("cherryjelly", 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledslimecore
+ name = "Boiled slime Core"
+ desc = "A boiled red thing."
+ icon_state = "boiledslimecore" //nonexistant?
+
+/obj/item/weapon/reagent_containers/food/snacks/boiledslimecore/New()
+ ..()
+ reagents.add_reagent("slimejelly", 5)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/mint
+ name = "mint"
+ desc = "it is only wafer thin."
+ icon_state = "mint"
+ filling_color = "#F2F2F2"
+ center_of_mass = list("x"=16, "y"=14)
+
+/obj/item/weapon/reagent_containers/food/snacks/mint/New()
+ ..()
+ reagents.add_reagent("mint", 1)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/mushroomsoup
+ name = "chantrelle soup"
+ desc = "A delicious and hearty mushroom soup."
+ icon_state = "mushroomsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#E386BF"
+ center_of_mass = list("x"=17, "y"=10)
+ nutriment_amt = 8
+ nutriment_desc = list("mushroom" = 8, "milk" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/mushroomsoup/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/plumphelmetbiscuit
+ name = "plump helmet biscuit"
+ desc = "This is a finely-prepared plump helmet biscuit. The ingredients are exceptionally minced plump helmet, and well-minced dwarven wheat flour."
+ icon_state = "phelmbiscuit"
+ filling_color = "#CFB4C4"
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 5
+ nutriment_desc = list("mushroom" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/plumphelmetbiscuit/New()
+ ..()
+ if(prob(10))
+ name = "exceptional plump helmet biscuit"
+ desc = "Microwave is taken by a fey mood! It has cooked an exceptional plump helmet biscuit!"
+ reagents.add_reagent("nutriment", 8)
+ bitesize = 2
+ else
+ reagents.add_reagent("nutriment", 5)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/chawanmushi
+ name = "chawanmushi"
+ desc = "A legendary egg custard that makes friends out of enemies. Probably too hot for a cat to eat."
+ icon_state = "chawanmushi"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#F0F2E4"
+ center_of_mass = list("x"=17, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/chawanmushi/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/beetsoup
+ name = "beet soup"
+ desc = "Wait, how do you spell it again..?"
+ icon_state = "beetsoup"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FAC9FF"
+ center_of_mass = list("x"=15, "y"=8)
+ nutriment_amt = 8
+ nutriment_desc = list("tomato" = 4, "beet" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/beetsoup/New()
+ ..()
+ name = pick(list("borsch","bortsch","borstch","borsh","borshch","borscht"))
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tossedsalad
+ name = "tossed salad"
+ desc = "A proper salad, basic and simple, with little bits of carrot, tomato and apple intermingled. Vegan!"
+ icon_state = "herbsalad"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#76B87F"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 8
+ nutriment_desc = list("salad" = 2, "tomato" = 2, "carrot" = 2, "apple" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/tossedsalad/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/validsalad
+ name = "valid salad"
+ desc = "It's just a salad of questionable 'herbs' with meatballs and fried potato slices. Nothing suspicious about it."
+ icon_state = "validsalad"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#76B87F"
+ center_of_mass = list("x"=17, "y"=11)
+ nutriment_amt = 6
+ nutriment_desc = list("100% real salad")
+
+/obj/item/weapon/reagent_containers/food/snacks/validsalad/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/appletart
+ name = "golden apple streusel tart"
+ desc = "A tasty dessert that won't make it through a metal detector."
+ icon_state = "gappletart"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFFF00"
+ center_of_mass = list("x"=16, "y"=18)
+ nutriment_amt = 8
+ nutriment_desc = list("apple" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/appletart/New()
+ ..()
+ reagents.add_reagent("gold", 5)
+ bitesize = 3
+
+/////////////////////////////////////////////////Sliceable////////////////////////////////////////
+// All the food items that can be sliced into smaller bits like Meatbread and Cheesewheels
+
+// sliceable is just an organization type path, it doesn't have any additional code or variables tied to it.
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable
+ w_class = ITEMSIZE_NORMAL //Whole pizzas and cakes shouldn't fit in a pocket, you can slice them if you want to do that.
+
+/**
+ * A food item slice
+ *
+ * This path contains some extra code for spawning slices pre-filled with
+ * reagents.
+ */
+/obj/item/weapon/reagent_containers/food/snacks/slice
+ name = "slice of... something"
+ var/whole_path // path for the item from which this slice comes
+ var/filled = FALSE // should the slice spawn with any reagents
+
+/**
+ * Spawn a new slice of food
+ *
+ * If the slice's filled is TRUE, this will also fill the slice with the
+ * appropriate amount of reagents. Note that this is done by spawning a new
+ * whole item, transferring the reagents and deleting the whole item, which may
+ * have performance implications.
+ */
+/obj/item/weapon/reagent_containers/food/snacks/slice/New()
+ ..()
+ if(filled)
+ var/obj/item/weapon/reagent_containers/food/snacks/whole = new whole_path()
+ if(whole && whole.slices_num)
+ var/reagent_amount = whole.reagents.total_volume/whole.slices_num
+ whole.reagents.trans_to_obj(src, reagent_amount)
+
+ qdel(whole)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/meatbread
+ name = "meatbread loaf"
+ desc = "The culinary base of every self-respecting eloquent gentleman."
+ icon_state = "meatbread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/meatbread
+ slices_num = 5
+ filling_color = "#FF7575"
+ center_of_mass = list("x"=19, "y"=9)
+ nutriment_desc = list("bread" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/meatbread/New()
+ ..()
+ reagents.add_reagent("protein", 20)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/meatbread
+ name = "meatbread slice"
+ desc = "A slice of delicious meatbread."
+ icon_state = "meatbreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FF7575"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=16)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/meatbread
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/meatbread/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/xenomeatbread
+ name = "xenomeatbread loaf"
+ desc = "The culinary base of every self-respecting eloquent gentleman. Extra Heretical."
+ icon_state = "xenomeatbread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/xenomeatbread
+ slices_num = 5
+ filling_color = "#8AFF75"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("bread" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/xenomeatbread/New()
+ ..()
+ reagents.add_reagent("protein", 20)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/xenomeatbread
+ name = "xenomeatbread slice"
+ desc = "A slice of delicious meatbread. Extra Heretical."
+ icon_state = "xenobreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#8AFF75"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/xenomeatbread
+
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/xenomeatbread/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/bananabread
+ name = "Banana-nut bread"
+ desc = "A heavenly and filling treat."
+ icon_state = "bananabread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/bananabread
+ slices_num = 5
+ filling_color = "#EDE5AD"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("bread" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/bananabread/New()
+ ..()
+ reagents.add_reagent("banana", 20)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/bananabread
+ name = "Banana-nut bread slice"
+ desc = "A slice of delicious banana bread."
+ icon_state = "bananabreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#EDE5AD"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=8)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/bananabread
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/bananabread/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/tofubread
+ name = "Tofubread"
+ icon_state = "Like meatbread but for vegetarians. Not guaranteed to give superpowers."
+ icon_state = "tofubread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/tofubread
+ slices_num = 5
+ filling_color = "#F7FFE0"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("tofu" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/tofubread/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/tofubread
+ name = "Tofubread slice"
+ desc = "A slice of delicious tofubread."
+ icon_state = "tofubreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#F7FFE0"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/tofubread
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/tofubread/filled
+ filled = TRUE
+
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/carrotcake
+ name = "Carrot Cake"
+ desc = "A favorite desert of a certain wascally wabbit. Not a lie."
+ icon_state = "carrotcake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/carrotcake
+ slices_num = 5
+ filling_color = "#FFD675"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "carrot" = 15)
+ nutriment_amt = 25
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/carrotcake/New()
+ ..()
+ reagents.add_reagent("imidazoline", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/carrotcake
+ name = "Carrot Cake slice"
+ desc = "Carrotty slice of Carrot Cake, carrots are good for your eyes! Also not a lie."
+ icon_state = "carrotcake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFD675"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/carrotcake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/carrotcake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/braincake
+ name = "Brain Cake"
+ desc = "A squishy cake-thing."
+ icon_state = "braincake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/braincake
+ slices_num = 5
+ filling_color = "#E6AEDB"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "slime" = 15)
+ nutriment_amt = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/braincake/New()
+ ..()
+ reagents.add_reagent("protein", 25)
+ reagents.add_reagent("alkysine", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/braincake
+ name = "Brain Cake slice"
+ desc = "Lemme tell you something about prions. THEY'RE DELICIOUS."
+ icon_state = "braincakeslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#E6AEDB"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=12)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/braincake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/braincake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesecake
+ name = "Cheese Cake"
+ desc = "DANGEROUSLY cheesy."
+ icon_state = "cheesecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/cheesecake
+ slices_num = 5
+ filling_color = "#FAF7AF"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "cream" = 10, "cheese" = 15)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesecake/New()
+ ..()
+ reagents.add_reagent("protein", 15)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/cheesecake
+ name = "Cheese Cake slice"
+ desc = "Slice of pure cheestisfaction."
+ icon_state = "cheesecake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FAF7AF"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/cheesecake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/plaincake
+ name = "Vanilla Cake"
+ desc = "A plain cake, not a lie."
+ icon_state = "plaincake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/plaincake
+ slices_num = 5
+ filling_color = "#F7EDD5"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "vanilla" = 15)
+ nutriment_amt = 20
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/plaincake
+ name = "Vanilla Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "plaincake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#F7EDD5"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/plaincake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/plaincake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/orangecake
+ name = "Orange Cake"
+ desc = "A cake with added orange."
+ icon_state = "orangecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/orangecake
+ slices_num = 5
+ filling_color = "#FADA8E"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "orange" = 15)
+ nutriment_amt = 20
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/orangecake
+ name = "Orange Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "orangecake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FADA8E"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/orangecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/orangecake/filled
+ filled = TRUE
+
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/limecake
+ name = "Lime Cake"
+ desc = "A cake with added lime."
+ icon_state = "limecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/limecake
+ slices_num = 5
+ filling_color = "#CBFA8E"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "lime" = 15)
+ nutriment_amt = 20
+
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/limecake
+ name = "Lime Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "limecake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#CBFA8E"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/limecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/limecake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/lemoncake
+ name = "Lemon Cake"
+ desc = "A cake with added lemon."
+ icon_state = "lemoncake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/lemoncake
+ slices_num = 5
+ filling_color = "#FAFA8E"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "lemon" = 15)
+ nutriment_amt = 20
+
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/lemoncake
+ name = "Lemon Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "lemoncake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FAFA8E"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/lemoncake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/lemoncake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/chocolatecake
+ name = "Chocolate Cake"
+ desc = "A cake with added chocolate."
+ icon_state = "chocolatecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/chocolatecake
+ slices_num = 5
+ filling_color = "#805930"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "chocolate" = 15)
+ nutriment_amt = 20
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/chocolatecake
+ name = "Chocolate Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "chocolatecake_slice"
+ trash = /obj/item/trash/plate
+ filling_color = "#805930"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/chocolatecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/chocolatecake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesewheel
+ name = "Cheese wheel"
+ desc = "A big wheel of delcious Cheddar."
+ icon_state = "cheesewheel"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/cheesewedge
+ slices_num = 5
+ filling_color = "#FFF700"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cheese" = 10)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesewheel/New()
+ ..()
+ reagents.add_reagent("protein", 10)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesewedge
+ name = "Cheese wedge"
+ desc = "A wedge of delicious Cheddar. The cheese wheel it was cut from can't have gone far."
+ icon_state = "cheesewedge"
+ filling_color = "#FFF700"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/birthdaycake
+ name = "Birthday Cake"
+ desc = "Happy Birthday..."
+ icon_state = "birthdaycake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/birthdaycake
+ slices_num = 5
+ filling_color = "#FFD6D6"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10)
+ nutriment_amt = 20
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/birthdaycake/New()
+ ..()
+ reagents.add_reagent("sprinkles", 10)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/birthdaycake
+ name = "Birthday Cake slice"
+ desc = "A slice of your birthday."
+ icon_state = "birthdaycakeslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFD6D6"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/birthdaycake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/birthdaycake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/bread
+ name = "Bread"
+ icon_state = "Some plain old Earthen bread."
+ icon_state = "bread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/bread
+ slices_num = 5
+ filling_color = "#FFE396"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("bread" = 6)
+ nutriment_amt = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/bread/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/bread
+ name = "Bread slice"
+ desc = "A slice of home."
+ icon_state = "breadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#D27332"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=4)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/bread
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/bread/filled
+ filled = TRUE
+
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/creamcheesebread
+ name = "Cream Cheese Bread"
+ desc = "Yum yum yum!"
+ icon_state = "creamcheesebread"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/creamcheesebread
+ slices_num = 5
+ filling_color = "#FFF896"
+ center_of_mass = list("x"=16, "y"=9)
+ nutriment_desc = list("bread" = 6, "cream" = 3, "cheese" = 3)
+ nutriment_amt = 5
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/creamcheesebread/New()
+ ..()
+ reagents.add_reagent("protein", 15)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/creamcheesebread
+ name = "Cream Cheese Bread slice"
+ desc = "A slice of yum!"
+ icon_state = "creamcheesebreadslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#FFF896"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/creamcheesebread
+
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/creamcheesebread/filled
+ filled = TRUE
+
+
+/obj/item/weapon/reagent_containers/food/snacks/watermelonslice
+ name = "Watermelon Slice"
+ desc = "A slice of watery goodness."
+ icon_state = "watermelonslice"
+ filling_color = "#FF3867"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=10)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/applecake
+ name = "Apple Cake"
+ desc = "A cake centred with apples."
+ icon_state = "applecake"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/applecake
+ slices_num = 5
+ filling_color = "#EBF5B8"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("cake" = 10, "sweetness" = 10, "apple" = 15)
+ nutriment_amt = 15
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/applecake
+ name = "Apple Cake slice"
+ desc = "A slice of heavenly cake."
+ icon_state = "applecakeslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#EBF5B8"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=14)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/applecake
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/applecake/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pumpkinpie
+ name = "Pumpkin Pie"
+ desc = "A delicious treat for the autumn months."
+ icon_state = "pumpkinpie"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/pumpkinpie
+ slices_num = 5
+ filling_color = "#F5B951"
+ center_of_mass = list("x"=16, "y"=10)
+ nutriment_desc = list("pie" = 5, "cream" = 5, "pumpkin" = 5)
+ nutriment_amt = 15
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/pumpkinpie
+ name = "Pumpkin Pie slice"
+ desc = "A slice of pumpkin pie, with whipped cream on top. Perfection."
+ icon_state = "pumpkinpieslice"
+ trash = /obj/item/trash/plate
+ filling_color = "#F5B951"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=12)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pumpkinpie
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/pumpkinpie/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/cracker
+ name = "Cracker"
+ desc = "It's a salted cracker."
+ icon_state = "cracker"
+ filling_color = "#F5DEB8"
+ center_of_mass = list("x"=16, "y"=6)
+ nutriment_desc = list("salt" = 1, "cracker" = 2)
+ nutriment_amt = 1
+
+
+
+/////////////////////////////////////////////////PIZZA////////////////////////////////////////
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza
+ slices_num = 6
+ filling_color = "#BAA14C"
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margherita
+ name = "Margherita"
+ desc = "The golden standard of pizzas."
+ icon_state = "pizzamargherita"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/margherita
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("pizza crust" = 10, "tomato" = 10, "cheese" = 15)
+ nutriment_amt = 35
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margherita/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ reagents.add_reagent("tomatojuice", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/margherita
+ name = "Margherita slice"
+ desc = "A slice of the classic pizza."
+ icon_state = "pizzamargheritaslice"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margherita
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/margherita/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza
+ name = "Meatpizza"
+ desc = "A pizza with meat topping."
+ icon_state = "meatpizza"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/meatpizza
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("pizza crust" = 10, "tomato" = 10, "cheese" = 15)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza/New()
+ ..()
+ reagents.add_reagent("protein", 34)
+ reagents.add_reagent("tomatojuice", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/meatpizza
+ name = "Meatpizza slice"
+ desc = "A slice of a meaty pizza."
+ icon_state = "meatpizzaslice"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/meatpizza/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushroompizza
+ name = "Mushroompizza"
+ desc = "Very special pizza."
+ icon_state = "mushroompizza"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/mushroompizza
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("pizza crust" = 10, "tomato" = 10, "cheese" = 5, "mushroom" = 10)
+ nutriment_amt = 35
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushroompizza/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/mushroompizza
+ name = "Mushroompizza slice"
+ desc = "Maybe it is the last slice of pizza in your life."
+ icon_state = "mushroompizzaslice"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushroompizza
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/mushroompizza/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegetablepizza
+ name = "Vegetable pizza"
+ desc = "No one of Tomato Sapiens were harmed during making this pizza."
+ icon_state = "vegetablepizza"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/vegetablepizza
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("pizza crust" = 10, "tomato" = 10, "cheese" = 5, "eggplant" = 5, "carrot" = 5, "corn" = 5)
+ nutriment_amt = 25
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegetablepizza/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ reagents.add_reagent("tomatojuice", 6)
+ reagents.add_reagent("imidazoline", 12)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/vegetablepizza
+ name = "Vegetable pizza slice"
+ desc = "A slice of the most green pizza of all pizzas not containing green ingredients."
+ icon_state = "vegetablepizzaslice"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegetablepizza
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/vegetablepizza/filled
+ filled = TRUE
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/oldpizza
+ name = "moldy pizza"
+ desc = "This pizza might actually be alive. There's mold all over."
+ icon_state = "oldpizza"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/oldpizza
+ slices_num = 6
+ center_of_mass = list("x"=16, "y"=11)
+ nutriment_desc = list("stale pizza crust" = 10, "moldy tomato" = 10, "moldy cheese" = 5)
+ nutriment_amt = 10
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/oldpizza/New()
+ ..()
+ reagents.add_reagent("protein", 5)
+ reagents.add_reagent("tomatojuice", 6)
+ reagents.add_reagent("mold", 8)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/slice/oldpizza
+ name = "moldy pizza slice"
+ desc = "This used to be pizza..."
+ icon_state = "old_pizza"
+ filling_color = "#BAA14C"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/oldpizza
+
+/obj/item/pizzabox
+ name = "pizza box"
+ desc = "A box suited for pizzas."
+ icon = 'icons/obj/food.dmi'
+ icon_state = "pizzabox1"
+
+ var/open = 0 // Is the box open?
+ var/ismessy = 0 // Fancy mess on the lid
+ var/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/pizza // Content pizza
+ var/list/boxes = list() // If the boxes are stacked, they come here
+ var/boxtag = ""
+
+/obj/item/pizzabox/update_icon()
+
+ overlays = list()
+
+ // Set appropriate description
+ if( open && pizza )
+ desc = "A box suited for pizzas. It appears to have a [pizza.name] inside."
+ else if( boxes.len > 0 )
+ desc = "A pile of boxes suited for pizzas. There appears to be [boxes.len + 1] boxes in the pile."
+
+ var/obj/item/pizzabox/topbox = boxes[boxes.len]
+ var/toptag = topbox.boxtag
+ if( toptag != "" )
+ desc = "[desc] The box on top has a tag, it reads: '[toptag]'."
+ else
+ desc = "A box suited for pizzas."
+
+ if( boxtag != "" )
+ desc = "[desc] The box has a tag, it reads: '[boxtag]'."
+
+ // Icon states and overlays
+ if( open )
+ if( ismessy )
+ icon_state = "pizzabox_messy"
+ else
+ icon_state = "pizzabox_open"
+
+ if( pizza )
+ var/image/pizzaimg = image("food.dmi", icon_state = pizza.icon_state)
+ pizzaimg.pixel_y = -3
+ overlays += pizzaimg
+
+ return
+ else
+ // Stupid code because byondcode sucks
+ var/doimgtag = 0
+ if( boxes.len > 0 )
+ var/obj/item/pizzabox/topbox = boxes[boxes.len]
+ if( topbox.boxtag != "" )
+ doimgtag = 1
+ else
+ if( boxtag != "" )
+ doimgtag = 1
+
+ if( doimgtag )
+ var/image/tagimg = image("food.dmi", icon_state = "pizzabox_tag")
+ tagimg.pixel_y = boxes.len * 3
+ overlays += tagimg
+
+ icon_state = "pizzabox[boxes.len+1]"
+
+/obj/item/pizzabox/attack_hand( mob/user as mob )
+
+ if( open && pizza )
+ user.put_in_hands( pizza )
+
+ to_chat(user, "You take \the [src.pizza] out of \the [src].")
+ src.pizza = null
+ update_icon()
+ return
+
+ if( boxes.len > 0 )
+ if( user.get_inactive_hand() != src )
+ ..()
+ return
+
+ var/obj/item/pizzabox/box = boxes[boxes.len]
+ boxes -= box
+
+ user.put_in_hands( box )
+ to_chat(user, "You remove the topmost [src] from your hand.")
+ box.update_icon()
+ update_icon()
+ return
+ ..()
+
+/obj/item/pizzabox/attack_self( mob/user as mob )
+
+ if( boxes.len > 0 )
+ return
+
+ open = !open
+
+ if( open && pizza )
+ ismessy = 1
+
+ update_icon()
+
+/obj/item/pizzabox/attackby( obj/item/I as obj, mob/user as mob )
+ if( istype(I, /obj/item/pizzabox/) )
+ var/obj/item/pizzabox/box = I
+
+ if( !box.open && !src.open )
+ // Make a list of all boxes to be added
+ var/list/boxestoadd = list()
+ boxestoadd += box
+ for(var/obj/item/pizzabox/i in box.boxes)
+ boxestoadd += i
+
+ if( (boxes.len+1) + boxestoadd.len <= 5 )
+ user.drop_item()
+
+ box.loc = src
+ box.boxes = list() // Clear the box boxes so we don't have boxes inside boxes. - Xzibit
+ src.boxes.Add( boxestoadd )
+
+ box.update_icon()
+ update_icon()
+
+ to_chat(user, "You put \the [box] ontop of \the [src]!")
+ else
+ to_chat(user, "The stack is too high!")
+ else
+ to_chat(user, "Close \the [box] first!")
+
+ return
+
+ if( istype(I, /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/) ) // Long ass fucking object name
+
+ if( src.open )
+ user.drop_item()
+ I.loc = src
+ src.pizza = I
+
+ update_icon()
+
+ to_chat(user, "You put \the [I] in \the [src]!")
+ else
+ to_chat(user, "You try to push \the [I] through the lid but it doesn't work!")
+ return
+
+ if( istype(I, /obj/item/weapon/pen/) )
+
+ if( src.open )
+ return
+
+ var/t = sanitize(input("Enter what you want to add to the tag:", "Write", null, null) as text, 30)
+
+ var/obj/item/pizzabox/boxtotagto = src
+ if( boxes.len > 0 )
+ boxtotagto = boxes[boxes.len]
+
+ boxtotagto.boxtag = copytext("[boxtotagto.boxtag][t]", 1, 30)
+
+ update_icon()
+ return
+ ..()
+
+/obj/item/pizzabox/margherita/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margherita(src)
+ boxtag = "Margherita Deluxe"
+
+/obj/item/pizzabox/vegetable/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegetablepizza(src)
+ boxtag = "Gourmet Vegatable"
+
+/obj/item/pizzabox/mushroom/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushroompizza(src)
+ boxtag = "Mushroom Special"
+
+/obj/item/pizzabox/meat/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza(src)
+ boxtag = "Meatlover's Supreme"
+
+/obj/item/pizzabox/old/New()
+ pizza = new /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/oldpizza(src)
+ boxtag = "Deluxe Gourmet"
+
+/obj/item/weapon/reagent_containers/food/snacks/dionaroast
+ name = "roast diona"
+ desc = "It's like an enormous, leathery carrot. With an eye."
+ icon_state = "dionaroast"
+ trash = /obj/item/trash/plate
+ filling_color = "#75754B"
+ center_of_mass = list("x"=16, "y"=7)
+ nutriment_amt = 6
+ nutriment_desc = list("a chorus of flavor" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/dionaroast/New()
+ ..()
+ reagents.add_reagent("radium", 2)
+ bitesize = 2
+
+///////////////////////////////////////////
+// new old food stuff from bs12
+///////////////////////////////////////////
+/obj/item/weapon/reagent_containers/food/snacks/dough
+ name = "dough"
+ desc = "A piece of dough."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "dough"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=13)
+ nutriment_amt = 3
+ nutriment_desc = list("uncooked dough" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/dough/New()
+ ..()
+ reagents.add_reagent("protein", 1)
+
+// Dough + rolling pin = flat dough
+/obj/item/weapon/reagent_containers/food/snacks/dough/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype(W,/obj/item/weapon/material/kitchen/rollingpin))
+ new /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough(src)
+ user << "You flatten the dough."
+ qdel(src)
+
+// slicable into 3xdoughslices
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
+ name = "flat dough"
+ desc = "A flattened dough."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "flat dough"
+ slice_path = /obj/item/weapon/reagent_containers/food/snacks/doughslice
+ slices_num = 3
+ center_of_mass = list("x"=16, "y"=16)
+
+/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough/New()
+ ..()
+ reagents.add_reagent("protein", 1)
+ reagents.add_reagent("nutriment", 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/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/weapon/reagent_containers/food/snacks/spagetti
+ slices_num = 1
+ bitesize = 2
+ center_of_mass = list("x"=17, "y"=19)
+ nutriment_amt = 1
+ nutriment_desc = list("uncooked dough" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/doughslice/New()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/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 = list("x"=16, "y"=12)
+ nutriment_amt = 4
+ nutriment_desc = "bun"
+
+/obj/item/weapon/reagent_containers/food/snacks/bun/New()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/bun/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ // Bun + meatball = burger
+ if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/meatball))
+ new /obj/item/weapon/reagent_containers/food/snacks/monkeyburger(src)
+ user << "You make a burger."
+ qdel(W)
+ qdel(src)
+
+ // Bun + cutlet = hamburger
+ else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/cutlet))
+ new /obj/item/weapon/reagent_containers/food/snacks/monkeyburger(src)
+ user << "You make a burger."
+ qdel(W)
+ qdel(src)
+
+ // Bun + sausage = hotdog
+ else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/sausage))
+ new /obj/item/weapon/reagent_containers/food/snacks/hotdog(src)
+ user << "You make a hotdog."
+ qdel(W)
+ qdel(src)
+
+// Burger + cheese wedge = cheeseburger
+/obj/item/weapon/reagent_containers/food/snacks/monkeyburger/attackby(obj/item/weapon/reagent_containers/food/snacks/cheesewedge/W as obj, mob/user as mob)
+ if(istype(W))// && !istype(src,/obj/item/weapon/reagent_containers/food/snacks/cheesewedge))
+ new /obj/item/weapon/reagent_containers/food/snacks/cheeseburger(src)
+ user << "You make a cheeseburger."
+ qdel(W)
+ qdel(src)
+ return
+ else
+ ..()
+
+// Human Burger + cheese wedge = cheeseburger
+/obj/item/weapon/reagent_containers/food/snacks/human/burger/attackby(obj/item/weapon/reagent_containers/food/snacks/cheesewedge/W as obj, mob/user as mob)
+ if(istype(W))
+ new /obj/item/weapon/reagent_containers/food/snacks/cheeseburger(src)
+ user << "You make a cheeseburger."
+ qdel(W)
+ qdel(src)
+ return
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/bunbun
+ name = "\improper Bun Bun"
+ desc = "A small bread monkey fashioned from two burger buns."
+ icon_state = "bunbun"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=8)
+ nutriment_amt = 8
+ nutriment_desc = list("bun" = 8)
+
+/obj/item/weapon/reagent_containers/food/snacks/bunbun/New()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/taco
+ name = "taco"
+ desc = "Take a bite!"
+ icon_state = "taco"
+ bitesize = 3
+ center_of_mass = list("x"=21, "y"=12)
+ nutriment_amt = 4
+ nutriment_desc = list("cheese" = 2,"taco shell" = 2)
+/obj/item/weapon/reagent_containers/food/snacks/taco/New()
+ ..()
+ reagents.add_reagent("protein", 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawcutlet
+ name = "raw cutlet"
+ desc = "A thin piece of raw meat."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "rawcutlet"
+ bitesize = 1
+ center_of_mass = list("x"=17, "y"=20)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawcutlet/New()
+ ..()
+ reagents.add_reagent("protein", 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/cutlet
+ name = "cutlet"
+ desc = "A tasty meat slice."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "cutlet"
+ bitesize = 2
+ center_of_mass = list("x"=17, "y"=20)
+
+/obj/item/weapon/reagent_containers/food/snacks/cutlet/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawmeatball
+ name = "raw meatball"
+ desc = "A raw meatball."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "rawmeatball"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=15)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawmeatball/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotdog
+ name = "hotdog"
+ desc = "Unrelated to dogs, maybe."
+ icon_state = "hotdog"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=17)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotdog/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/hotdog/old
+ name = "old hotdog"
+ desc = "Covered in mold. You're not gonna eat that, are you?"
+
+/obj/item/weapon/reagent_containers/food/snacks/hotdog/old/New()
+ ..()
+ reagents.add_reagent("mold", 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/flatbread
+ name = "flatbread"
+ desc = "Bland but filling."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "flatbread"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=16)
+ nutriment_amt = 3
+ nutriment_desc = list("bread" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/flatbread/New()
+ ..()
+
+// potato + knife = raw sticks
+/obj/item/weapon/reagent_containers/food/snacks/grown/attackby(obj/item/weapon/W, mob/user)
+ if(seed && seed.kitchen_tag && seed.kitchen_tag == "potato" && istype(W,/obj/item/weapon/material/knife))
+ new /obj/item/weapon/reagent_containers/food/snacks/rawsticks(get_turf(src))
+ user << "You cut the potato."
+ qdel(src)
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/rawsticks
+ name = "raw potato sticks"
+ desc = "Raw fries, not very tasty."
+ icon = 'icons/obj/food_ingredients.dmi'
+ icon_state = "rawsticks"
+ bitesize = 2
+ center_of_mass = list("x"=16, "y"=12)
+ nutriment_amt = 3
+ nutriment_desc = list("raw potato" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/rawsticks/New()
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/liquidfood
+ name = "\improper LiquidFood Ration"
+ desc = "A prepackaged grey slurry of all the essential nutrients for a spacefarer on the go. Should this be crunchy?"
+ icon_state = "liquidfood"
+ trash = /obj/item/trash/liquidfood
+ filling_color = "#A8A8A8"
+ center_of_mass = list("x"=16, "y"=15)
+ nutriment_amt = 20
+ nutriment_desc = list("chalk" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/liquidfood/New()
+ ..()
+ reagents.add_reagent("iron", 3)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/tastybread
+ name = "bread tube"
+ desc = "Bread in a tube. Chewy...and surprisingly tasty."
+ icon_state = "tastybread"
+ trash = /obj/item/trash/tastybread
+ filling_color = "#A66829"
+ center_of_mass = list("x"=17, "y"=16)
+ nutriment_amt = 6
+ nutriment_desc = list("bread" = 2, "sweetness" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/tastybread/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/skrellsnacks
+ name = "\improper SkrellSnax"
+ desc = "Cured fungus shipped all the way from Qerr'balak, almost like jerky! Almost."
+ icon_state = "skrellsnacks"
+ filling_color = "#A66829"
+ center_of_mass = list("x"=15, "y"=12)
+ nutriment_amt = 10
+ nutriment_desc = list("mushroom" = 5, "salt" = 5)
+
+/obj/item/weapon/reagent_containers/food/snacks/skrellsnacks/New()
+ ..()
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/unajerky
+ name = "Moghes Imported Sissalik Jerky"
+ icon_state = "unathitinred"
+ desc = "An incredibly well made jerky, shipped in all the way from Moghes."
+ trash = /obj/item/trash/unajerky
+ filling_color = "#631212"
+ center_of_mass = list("x"=15, "y"=9)
+
+/obj/item/weapon/reagent_containers/food/snacks/unajerky/New()
+ ..()
+ reagents.add_reagent("protein", 8)
+ reagents.add_reagent("capsaicin", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/croissant
+ name = "croissant"
+ desc = "True French cuisine."
+ filling_color = "#E3D796"
+ icon_state = "croissant"
+ nutriment_amt = 6
+ nutriment_desc = list("french bread" = 6)
+
+/obj/item/weapon/reagent_containers/food/snacks/croissant/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatbun
+ name = "meat bun"
+ desc = "Chinese street food, in neither China nor a street."
+ filling_color = "#DEDEAB"
+ icon_state = "meatbun"
+ nutriment_amt = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/meatbun/New()
+ ..()
+ bitesize = 2
+ reagents.add_reagent("protein", 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/sashimi
+ name = "carp sashimi"
+ desc = "Expertly prepared. Still toxic."
+ filling_color = "#FFDEFE"
+ icon_state = "sashimi"
+ nutriment_amt = 6
+
+/obj/item/weapon/reagent_containers/food/snacks/sashimi/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ reagents.add_reagent("carpotoxin", 2)
+ bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/benedict
+ name = "eggs benedict"
+ desc = "Hey, there's only one egg in this!"
+ filling_color = "#FFDF78"
+ icon_state = "benedict"
+ nutriment_amt = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/benedict/New()
+ ..()
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/beans
+ name = "baked beans"
+ desc = "Musical fruit in a slightly less musical container."
+ filling_color = "#FC6F28"
+ icon_state = "beans"
+ nutriment_amt = 4
+ nutriment_desc = list("beans" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/beans/New()
+ ..()
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/sugarcookie
+ name = "sugar cookie"
+ desc = "Just like your little sister used to make."
+ filling_color = "#DBC94F"
+ icon_state = "sugarcookie"
+ nutriment_amt = 5
+ nutriment_desc = list("sweetness" = 4, "cookie" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/sugarcookie/New()
+ ..()
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/berrymuffin
+ name = "berry muffin"
+ desc = "A delicious and spongy little cake, with berries."
+ icon_state = "berrymuffin"
+ filling_color = "#E0CF9B"
+ center_of_mass = list("x"=17, "y"=4)
+ nutriment_amt = 6
+ nutriment_desc = list("sweetness" = 2, "muffin" = 2, "berries" = 2)
+
+/obj/item/weapon/reagent_containers/food/snacks/berrymuffin/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/ghostmuffin
+ name = "booberry muffin"
+ desc = "My stomach is a graveyard! No living being can quench my bloodthirst!"
+ icon_state = "berrymuffin"
+ filling_color = "#799ACE"
+ center_of_mass = list("x"=17, "y"=4)
+ nutriment_amt = 6
+ nutriment_desc = list("spookiness" = 4, "muffin" = 1, "berries" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/ghostmuffin/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/eggroll
+ name = "egg roll"
+ desc = "Free with orders over 10 thalers."
+ icon_state = "eggroll"
+ filling_color = "#799ACE"
+ center_of_mass = list("x"=17, "y"=4)
+ nutriment_amt = 4
+ nutriment_desc = list("egg" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/eggroll/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fruitsalad
+ name = "fruit salad"
+ desc = "Your standard fruit salad."
+ icon_state = "fruitsalad"
+ filling_color = "#FF3867"
+ nutriment_amt = 10
+ nutriment_desc = list("fruit" = 10)
+
+/obj/item/weapon/reagent_containers/food/snacks/fruitsalad/New()
+ ..()
+ reagents.add_reagent("nutriment", 10)
+ bitesize = 4
+
+/obj/item/weapon/reagent_containers/food/snacks/eggbowl
+ name = "egg bowl"
+ desc = "A bowl of fried rice with egg mixed in."
+ icon_state = "eggbowl"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FFFBDB"
+ nutriment_amt = 6
+ nutriment_desc = list("rice" = 2, "egg" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/eggbowl/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/porkbowl
+ name = "pork bowl"
+ desc = "A bowl of fried rice with cuts of meat."
+ icon_state = "porkbowl"
+ trash = /obj/item/trash/snack_bowl
+ filling_color = "#FFFBDB"
+ nutriment_amt = 6
+ nutriment_desc = list("rice" = 2, "meat" = 4)
+
+/obj/item/weapon/reagent_containers/food/snacks/porkbowl/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/tortilla
+ name = "tortilla"
+ desc = "The base for all your burritos."
+ icon_state = "tortilla"
+ nutriment_amt = 1
+ nutriment_desc = list("bread" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/tortilla/New()
+ ..()
+ reagents.add_reagent("nutriment", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/meatburrito
+ name = "carne asada burrito"
+ desc = "The best burrito for meat lovers."
+ icon_state = "carneburrito"
+ nutriment_amt = 6
+ nutriment_desc = list("tortilla" = 3, "meat" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/meatburrito/New()
+ ..()
+ reagents.add_reagent("protein", 6)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cheeseburrito
+ name = "Cheese burrito"
+ desc = "It's a burrito filled with cheese."
+ icon_state = "cheeseburrito"
+ nutriment_amt = 6
+ nutriment_desc = list("tortilla" = 3, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheeseburrito/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/fuegoburrito
+ name = "fuego phoron burrito"
+ desc = "A super spicy burrito."
+ icon_state = "fuegoburrito"
+ nutriment_amt = 6
+ nutriment_desc = list("chili peppers" = 5, "tortilla" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/fuegoburrito/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("capsaicin", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/nachos
+ name = "nachos"
+ desc = "Chips from Old Mexico."
+ icon_state = "nachos"
+ nutriment_amt = 2
+ nutriment_desc = list("salt" = 1)
+
+/obj/item/weapon/reagent_containers/food/snacks/nachos/New()
+ ..()
+ reagents.add_reagent("nutriment", 1)
+ bitesize = 1
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesenachos
+ name = "cheesy nachos"
+ desc = "The delicious combination of nachos and melting cheese."
+ icon_state = "cheesenachos"
+ nutriment_amt = 5
+ nutriment_desc = list("salt" = 2, "cheese" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesenachos/New()
+ ..()
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("protein", 2)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/cubannachos
+ name = "cuban nachos"
+ desc = "That's some dangerously spicy nachos."
+ icon_state = "cubannachos"
+ nutriment_amt = 6
+ nutriment_desc = list("salt" = 1, "cheese" = 2, "chili peppers" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/cubannachos/New()
+ ..()
+ reagents.add_reagent("nutriment", 5)
+ reagents.add_reagent("capsaicin", 4)
+ bitesize = 2
+
+/obj/item/weapon/reagent_containers/food/snacks/piginblanket
+ name = "pig in a blanket"
+ desc = "A sausage embedded in soft, fluffy pastry. Free this pig from its blanket prison by eating it."
+ icon_state = "piginblanket"
+ nutriment_amt = 6
+ nutriment_desc = list("meat" = 3, "pastry" = 3)
+
+/obj/item/weapon/reagent_containers/food/snacks/piginblanket/New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
+ reagents.add_reagent("protein", 4)
+>>>>>>> 10e7a49... Merge pull request #5626 from lbnesquik/Kates-kitchen-fix:code/modules/food/food/snacks.dm
+ bitesize = 3
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/food/snacks/meat.dm b/code/modules/food/food/snacks/meat.dm
similarity index 94%
rename from code/modules/reagents/reagent_containers/food/snacks/meat.dm
rename to code/modules/food/food/snacks/meat.dm
index 9e1dc52536..d6ecacea48 100644
--- a/code/modules/reagents/reagent_containers/food/snacks/meat.dm
+++ b/code/modules/food/food/snacks/meat.dm
@@ -1,37 +1,37 @@
-/obj/item/weapon/reagent_containers/food/snacks/meat
- name = "meat"
- desc = "A slab of meat."
- icon_state = "meat"
- health = 180
- filling_color = "#FF1C1C"
- center_of_mass = list("x"=16, "y"=14)
-
-/obj/item/weapon/reagent_containers/food/snacks/meat/New()
- ..()
- reagents.add_reagent("protein", 9)
- src.bitesize = 3
-
-/obj/item/weapon/reagent_containers/food/snacks/meat/attackby(obj/item/weapon/W as obj, mob/user as mob)
- if(istype(W,/obj/item/weapon/material/knife))
- new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
- new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
- new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
- user << "You cut the meat into thin strips."
- qdel(src)
- else
- ..()
-
-/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh
- name = "synthetic meat"
- desc = "A synthetic slab of flesh."
-
-// Seperate definitions because some food likes to know if it's human.
-// TODO: rewrite kitchen code to check a var on the meat item so we can remove
-// all these sybtypes.
-/obj/item/weapon/reagent_containers/food/snacks/meat/human
-/obj/item/weapon/reagent_containers/food/snacks/meat/monkey
- //same as plain meat
-
-/obj/item/weapon/reagent_containers/food/snacks/meat/corgi
- name = "Corgi meat"
+/obj/item/weapon/reagent_containers/food/snacks/meat
+ name = "meat"
+ desc = "A slab of meat."
+ icon_state = "meat"
+ health = 180
+ filling_color = "#FF1C1C"
+ center_of_mass = list("x"=16, "y"=14)
+
+/obj/item/weapon/reagent_containers/food/snacks/meat/New()
+ ..()
+ reagents.add_reagent("protein", 9)
+ src.bitesize = 3
+
+/obj/item/weapon/reagent_containers/food/snacks/meat/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype(W,/obj/item/weapon/material/knife))
+ new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/rawcutlet(src)
+ user << "You cut the meat into thin strips."
+ qdel(src)
+ else
+ ..()
+
+/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh
+ name = "synthetic meat"
+ desc = "A synthetic slab of flesh."
+
+// Seperate definitions because some food likes to know if it's human.
+// TODO: rewrite kitchen code to check a var on the meat item so we can remove
+// all these sybtypes.
+/obj/item/weapon/reagent_containers/food/snacks/meat/human
+/obj/item/weapon/reagent_containers/food/snacks/meat/monkey
+ //same as plain meat
+
+/obj/item/weapon/reagent_containers/food/snacks/meat/corgi
+ name = "Corgi meat"
desc = "Tastes like... well, you know."
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/glass/bottle.dm b/code/modules/food/glass/bottle.dm
similarity index 96%
rename from code/modules/reagents/reagent_containers/glass/bottle.dm
rename to code/modules/food/glass/bottle.dm
index 159ac6acf3..fcf618c201 100644
--- a/code/modules/reagents/reagent_containers/glass/bottle.dm
+++ b/code/modules/food/glass/bottle.dm
@@ -1,175 +1,175 @@
-
-//Not to be confused with /obj/item/weapon/reagent_containers/food/drinks/bottle
-
-/obj/item/weapon/reagent_containers/glass/bottle
- name = "bottle"
- desc = "A small bottle."
- icon = 'icons/obj/chemical.dmi'
- icon_state = null
- item_state = "atoxinbottle"
- amount_per_transfer_from_this = 10
- possible_transfer_amounts = list(5,10,15,25,30,60)
- flags = 0
- volume = 60
-
-/obj/item/weapon/reagent_containers/glass/bottle/on_reagent_change()
- update_icon()
-
-/obj/item/weapon/reagent_containers/glass/bottle/pickup(mob/user)
- ..()
- update_icon()
-
-/obj/item/weapon/reagent_containers/glass/bottle/dropped(mob/user)
- ..()
- update_icon()
-
-/obj/item/weapon/reagent_containers/glass/bottle/attack_hand()
- ..()
- update_icon()
-
-/obj/item/weapon/reagent_containers/glass/bottle/New()
- ..()
- if(!icon_state)
- icon_state = "bottle-[rand(1,4)]"
-
-/obj/item/weapon/reagent_containers/glass/bottle/update_icon()
- overlays.Cut()
-
- if(reagents.total_volume && (icon_state == "bottle-1" || icon_state == "bottle-2" || icon_state == "bottle-3" || icon_state == "bottle-4"))
- var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]10")
-
- var/percent = round((reagents.total_volume / volume) * 100)
- switch(percent)
- if(0 to 9) filling.icon_state = "[icon_state]--10"
- if(10 to 24) filling.icon_state = "[icon_state]-10"
- if(25 to 49) filling.icon_state = "[icon_state]-25"
- if(50 to 74) filling.icon_state = "[icon_state]-50"
- if(75 to 79) filling.icon_state = "[icon_state]-75"
- if(80 to 90) filling.icon_state = "[icon_state]-80"
- if(91 to INFINITY) filling.icon_state = "[icon_state]-100"
-
- filling.color = reagents.get_color()
- overlays += filling
-
- if (!is_open_container())
- var/image/lid = image(icon, src, "lid_bottle")
- overlays += lid
-
-/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline
- name = "inaprovaline bottle"
- desc = "A small bottle. Contains inaprovaline - used to stabilize patients."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- prefill = list("inaprovaline" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/toxin
- name = "toxin bottle"
- desc = "A small bottle of toxins. Do not drink, it is poisonous."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-3"
- prefill = list("toxin" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/cyanide
- name = "cyanide bottle"
- desc = "A small bottle of cyanide. Bitter almonds?"
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-3"
- prefill = list("cyanide" = 30) //volume changed to match chloral
-
-/obj/item/weapon/reagent_containers/glass/bottle/stoxin
- name = "soporific bottle"
- desc = "A small bottle of soporific. Just the fumes make you sleepy."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-3"
- prefill = list("stoxin" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/chloralhydrate
- name = "chloral hydrate bottle"
- desc = "A small bottle of Choral Hydrate. Mickey's Favorite!"
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-3"
- prefill = list("chloralhydrate" = 30) //Intentionally low since it is so strong. Still enough to knock someone out.
-
-/obj/item/weapon/reagent_containers/glass/bottle/antitoxin
- name = "dylovene bottle"
- desc = "A small bottle of dylovene. Counters poisons, and repairs damage. A wonder drug."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- prefill = list("anti_toxin" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/mutagen
- name = "unstable mutagen bottle"
- desc = "A small bottle of unstable mutagen. Randomly changes the DNA structure of whoever comes in contact."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-1"
- prefill = list("mutagen" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/ammonia
- name = "ammonia bottle"
- desc = "A small bottle."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-1"
- prefill = list("ammonia" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/eznutrient
- name = "\improper EZ NUtrient bottle"
- desc = "A small bottle."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- prefill = list("eznutrient" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/left4zed
- name = "\improper Left-4-Zed bottle"
- desc = "A small bottle."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- prefill = list("left4zed" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/robustharvest
- name = "\improper Robust Harvest"
- desc = "A small bottle."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- prefill = list("robustharvest" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/diethylamine
- name = "diethylamine bottle"
- desc = "A small bottle."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- prefill = list("diethylamine" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/pacid
- name = "polytrinic acid bottle"
- desc = "A small bottle. Contains a small amount of Polytrinic Acid"
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- prefill = list("pacid" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/adminordrazine
- name = "adminordrazine bottle"
- desc = "A small bottle. Contains the liquid essence of the gods."
- icon = 'icons/obj/drinks.dmi'
- icon_state = "holyflask"
- prefill = list("adminordrazine" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/capsaicin
- name = "capsaicin bottle"
- desc = "A small bottle. Contains hot sauce."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- prefill = list("capsaicin" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/frostoil
- name = "frost oil bottle"
- desc = "A small bottle. Contains cold sauce."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- prefill = list("frostoil" = 60)
-
-/obj/item/weapon/reagent_containers/glass/bottle/biomass
- name = "biomass bottle"
- desc = "A bottle of raw biomass! Gross!"
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-3"
+
+//Not to be confused with /obj/item/weapon/reagent_containers/food/drinks/bottle
+
+/obj/item/weapon/reagent_containers/glass/bottle
+ name = "bottle"
+ desc = "A small bottle."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = null
+ item_state = "atoxinbottle"
+ amount_per_transfer_from_this = 10
+ possible_transfer_amounts = list(5,10,15,25,30,60)
+ flags = 0
+ volume = 60
+
+/obj/item/weapon/reagent_containers/glass/bottle/on_reagent_change()
+ update_icon()
+
+/obj/item/weapon/reagent_containers/glass/bottle/pickup(mob/user)
+ ..()
+ update_icon()
+
+/obj/item/weapon/reagent_containers/glass/bottle/dropped(mob/user)
+ ..()
+ update_icon()
+
+/obj/item/weapon/reagent_containers/glass/bottle/attack_hand()
+ ..()
+ update_icon()
+
+/obj/item/weapon/reagent_containers/glass/bottle/New()
+ ..()
+ if(!icon_state)
+ icon_state = "bottle-[rand(1,4)]"
+
+/obj/item/weapon/reagent_containers/glass/bottle/update_icon()
+ overlays.Cut()
+
+ if(reagents.total_volume && (icon_state == "bottle-1" || icon_state == "bottle-2" || icon_state == "bottle-3" || icon_state == "bottle-4"))
+ var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]10")
+
+ var/percent = round((reagents.total_volume / volume) * 100)
+ switch(percent)
+ if(0 to 9) filling.icon_state = "[icon_state]--10"
+ if(10 to 24) filling.icon_state = "[icon_state]-10"
+ if(25 to 49) filling.icon_state = "[icon_state]-25"
+ if(50 to 74) filling.icon_state = "[icon_state]-50"
+ if(75 to 79) filling.icon_state = "[icon_state]-75"
+ if(80 to 90) filling.icon_state = "[icon_state]-80"
+ if(91 to INFINITY) filling.icon_state = "[icon_state]-100"
+
+ filling.color = reagents.get_color()
+ overlays += filling
+
+ if (!is_open_container())
+ var/image/lid = image(icon, src, "lid_bottle")
+ overlays += lid
+
+/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline
+ name = "inaprovaline bottle"
+ desc = "A small bottle. Contains inaprovaline - used to stabilize patients."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ prefill = list("inaprovaline" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/toxin
+ name = "toxin bottle"
+ desc = "A small bottle of toxins. Do not drink, it is poisonous."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-3"
+ prefill = list("toxin" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/cyanide
+ name = "cyanide bottle"
+ desc = "A small bottle of cyanide. Bitter almonds?"
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-3"
+ prefill = list("cyanide" = 30) //volume changed to match chloral
+
+/obj/item/weapon/reagent_containers/glass/bottle/stoxin
+ name = "soporific bottle"
+ desc = "A small bottle of soporific. Just the fumes make you sleepy."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-3"
+ prefill = list("stoxin" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/chloralhydrate
+ name = "chloral hydrate bottle"
+ desc = "A small bottle of Choral Hydrate. Mickey's Favorite!"
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-3"
+ prefill = list("chloralhydrate" = 30) //Intentionally low since it is so strong. Still enough to knock someone out.
+
+/obj/item/weapon/reagent_containers/glass/bottle/antitoxin
+ name = "dylovene bottle"
+ desc = "A small bottle of dylovene. Counters poisons, and repairs damage. A wonder drug."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ prefill = list("anti_toxin" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/mutagen
+ name = "unstable mutagen bottle"
+ desc = "A small bottle of unstable mutagen. Randomly changes the DNA structure of whoever comes in contact."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-1"
+ prefill = list("mutagen" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/ammonia
+ name = "ammonia bottle"
+ desc = "A small bottle."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-1"
+ prefill = list("ammonia" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/eznutrient
+ name = "\improper EZ NUtrient bottle"
+ desc = "A small bottle."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ prefill = list("eznutrient" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/left4zed
+ name = "\improper Left-4-Zed bottle"
+ desc = "A small bottle."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ prefill = list("left4zed" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/robustharvest
+ name = "\improper Robust Harvest"
+ desc = "A small bottle."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ prefill = list("robustharvest" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/diethylamine
+ name = "diethylamine bottle"
+ desc = "A small bottle."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ prefill = list("diethylamine" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/pacid
+ name = "polytrinic acid bottle"
+ desc = "A small bottle. Contains a small amount of Polytrinic Acid"
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ prefill = list("pacid" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/adminordrazine
+ name = "adminordrazine bottle"
+ desc = "A small bottle. Contains the liquid essence of the gods."
+ icon = 'icons/obj/drinks.dmi'
+ icon_state = "holyflask"
+ prefill = list("adminordrazine" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/capsaicin
+ name = "capsaicin bottle"
+ desc = "A small bottle. Contains hot sauce."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ prefill = list("capsaicin" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/frostoil
+ name = "frost oil bottle"
+ desc = "A small bottle. Contains cold sauce."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ prefill = list("frostoil" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/biomass
+ name = "biomass bottle"
+ desc = "A bottle of raw biomass! Gross!"
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-3"
prefill = list("biomass" = 60)
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/glass/bottle/robot.dm b/code/modules/food/glass/bottle/robot.dm
similarity index 97%
rename from code/modules/reagents/reagent_containers/glass/bottle/robot.dm
rename to code/modules/food/glass/bottle/robot.dm
index fec991ab3f..78638235a2 100644
--- a/code/modules/reagents/reagent_containers/glass/bottle/robot.dm
+++ b/code/modules/food/glass/bottle/robot.dm
@@ -1,25 +1,25 @@
-
-/obj/item/weapon/reagent_containers/glass/bottle/robot
- amount_per_transfer_from_this = 10
- possible_transfer_amounts = list(5,10,15,25,30,50,100)
- flags = OPENCONTAINER
- volume = 60
- var/reagent = ""
-
-
-/obj/item/weapon/reagent_containers/glass/bottle/robot/inaprovaline
- name = "internal inaprovaline bottle"
- desc = "A small bottle. Contains inaprovaline - used to stabilize patients."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- reagent = "inaprovaline"
- prefill = list("inaprovaline" = 60)
-
-
-/obj/item/weapon/reagent_containers/glass/bottle/robot/antitoxin
- name = "internal anti-toxin bottle"
- desc = "A small bottle of Anti-toxins. Counters poisons, and repairs damage, a wonder drug."
- icon = 'icons/obj/chemical.dmi'
- icon_state = "bottle-4"
- reagent = "anti_toxin"
- prefill = list("anti_toxin" = 60)
+
+/obj/item/weapon/reagent_containers/glass/bottle/robot
+ amount_per_transfer_from_this = 10
+ possible_transfer_amounts = list(5,10,15,25,30,50,100)
+ flags = OPENCONTAINER
+ volume = 60
+ var/reagent = ""
+
+
+/obj/item/weapon/reagent_containers/glass/bottle/robot/inaprovaline
+ name = "internal inaprovaline bottle"
+ desc = "A small bottle. Contains inaprovaline - used to stabilize patients."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ reagent = "inaprovaline"
+ prefill = list("inaprovaline" = 60)
+
+
+/obj/item/weapon/reagent_containers/glass/bottle/robot/antitoxin
+ name = "internal anti-toxin bottle"
+ desc = "A small bottle of Anti-toxins. Counters poisons, and repairs damage, a wonder drug."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle-4"
+ reagent = "anti_toxin"
+ prefill = list("anti_toxin" = 60)
diff --git a/code/game/machinery/kitchen/cooking_machines/_cooker.dm b/code/modules/food/kitchen/cooking_machines/_cooker.dm
similarity index 100%
rename from code/game/machinery/kitchen/cooking_machines/_cooker.dm
rename to code/modules/food/kitchen/cooking_machines/_cooker.dm
diff --git a/code/game/machinery/kitchen/cooking_machines/_cooker_output.dm b/code/modules/food/kitchen/cooking_machines/_cooker_output.dm
similarity index 100%
rename from code/game/machinery/kitchen/cooking_machines/_cooker_output.dm
rename to code/modules/food/kitchen/cooking_machines/_cooker_output.dm
diff --git a/code/game/machinery/kitchen/cooking_machines/candy.dm b/code/modules/food/kitchen/cooking_machines/candy.dm
similarity index 100%
rename from code/game/machinery/kitchen/cooking_machines/candy.dm
rename to code/modules/food/kitchen/cooking_machines/candy.dm
diff --git a/code/game/machinery/kitchen/cooking_machines/cereal.dm b/code/modules/food/kitchen/cooking_machines/cereal.dm
similarity index 100%
rename from code/game/machinery/kitchen/cooking_machines/cereal.dm
rename to code/modules/food/kitchen/cooking_machines/cereal.dm
diff --git a/code/game/machinery/kitchen/cooking_machines/fryer.dm b/code/modules/food/kitchen/cooking_machines/fryer.dm
similarity index 100%
rename from code/game/machinery/kitchen/cooking_machines/fryer.dm
rename to code/modules/food/kitchen/cooking_machines/fryer.dm
diff --git a/code/game/machinery/kitchen/cooking_machines/grill.dm b/code/modules/food/kitchen/cooking_machines/grill.dm
similarity index 100%
rename from code/game/machinery/kitchen/cooking_machines/grill.dm
rename to code/modules/food/kitchen/cooking_machines/grill.dm
diff --git a/code/game/machinery/kitchen/cooking_machines/oven.dm b/code/modules/food/kitchen/cooking_machines/oven.dm
similarity index 100%
rename from code/game/machinery/kitchen/cooking_machines/oven.dm
rename to code/modules/food/kitchen/cooking_machines/oven.dm
diff --git a/code/game/machinery/kitchen/gibber.dm b/code/modules/food/kitchen/gibber.dm
similarity index 96%
rename from code/game/machinery/kitchen/gibber.dm
rename to code/modules/food/kitchen/gibber.dm
index d695253aa9..4799002cb5 100644
--- a/code/game/machinery/kitchen/gibber.dm
+++ b/code/modules/food/kitchen/gibber.dm
@@ -1,236 +1,236 @@
-
-/obj/machinery/gibber
- name = "gibber"
- desc = "The name isn't descriptive enough?"
- icon = 'icons/obj/kitchen.dmi'
- icon_state = "grinder"
- density = 1
- anchored = 1
- req_access = list(access_kitchen,access_morgue)
-
- var/operating = 0 //Is it on?
- var/dirty = 0 // Does it need cleaning?
- var/mob/living/occupant // Mob who has been put inside
- var/gib_time = 40 // Time from starting until meat appears
- var/gib_throw_dir = WEST // Direction to spit meat and gibs in.
-
- use_power = 1
- idle_power_usage = 2
- active_power_usage = 500
-
-//auto-gibs anything that bumps into it
-/obj/machinery/gibber/autogibber
- var/turf/input_plate
-
-/obj/machinery/gibber/autogibber/New()
- ..()
- spawn(5)
- for(var/i in cardinal)
- var/obj/machinery/mineral/input/input_obj = locate( /obj/machinery/mineral/input, get_step(src.loc, i) )
- if(input_obj)
- if(isturf(input_obj.loc))
- input_plate = input_obj.loc
- gib_throw_dir = i
- qdel(input_obj)
- break
-
- if(!input_plate)
- log_misc("a [src] didn't find an input plate.")
- return
-
-/obj/machinery/gibber/autogibber/Bumped(var/atom/A)
- if(!input_plate) return
-
- if(ismob(A))
- var/mob/M = A
-
- if(M.loc == input_plate
- )
- M.loc = src
- M.gib()
-
-
-/obj/machinery/gibber/New()
- ..()
- src.overlays += image('icons/obj/kitchen.dmi', "grjam")
-
-/obj/machinery/gibber/update_icon()
- overlays.Cut()
- if (dirty)
- src.overlays += image('icons/obj/kitchen.dmi', "grbloody")
- if(stat & (NOPOWER|BROKEN))
- return
- if (!occupant)
- src.overlays += image('icons/obj/kitchen.dmi', "grjam")
- else if (operating)
- src.overlays += image('icons/obj/kitchen.dmi', "gruse")
- else
- src.overlays += image('icons/obj/kitchen.dmi', "gridle")
-
-/obj/machinery/gibber/relaymove(mob/user as mob)
- src.go_out()
- return
-
-/obj/machinery/gibber/attack_hand(mob/user as mob)
- if(stat & (NOPOWER|BROKEN))
- return
- if(operating)
- user << "The gibber is locked and running, wait for it to finish."
- return
- else
- src.startgibbing(user)
-
-/obj/machinery/gibber/examine()
- ..()
- usr << "The safety guard is [emagged ? "disabled" : "enabled"]."
-
-/obj/machinery/gibber/emag_act(var/remaining_charges, var/mob/user)
- emagged = !emagged
- user << "You [emagged ? "disable" : "enable"] the gibber safety guard."
- return 1
-
-/obj/machinery/gibber/attackby(var/obj/item/W, var/mob/user)
- var/obj/item/weapon/grab/G = W
-
- if(default_unfasten_wrench(user, W, 40))
- return
-
- if(!istype(G))
- return ..()
-
- if(G.state < 2)
- user << "You need a better grip to do that!"
- return
-
- move_into_gibber(user,G.affecting)
- // Grab() process should clean up the grab item, no need to del it.
-
-/obj/machinery/gibber/MouseDrop_T(mob/target, mob/user)
- if(user.stat || user.restrained())
- return
- move_into_gibber(user,target)
-
-/obj/machinery/gibber/proc/move_into_gibber(var/mob/user,var/mob/living/victim)
-
- if(src.occupant)
- user << "The gibber is full, empty it first!"
- return
-
- if(operating)
- user << "The gibber is locked and running, wait for it to finish."
- return
-
- if(!(istype(victim, /mob/living/carbon)) && !(istype(victim, /mob/living/simple_animal)) )
- user << "This is not suitable for the gibber!"
- return
-
- if(istype(victim,/mob/living/carbon/human) && !emagged)
- user << "The gibber safety guard is engaged!"
- return
-
-
- if(victim.abiotic(1))
- user << "Subject may not have abiotic items on."
- return
-
- user.visible_message("[user] starts to put [victim] into the gibber!")
- src.add_fingerprint(user)
- if(do_after(user, 30) && victim.Adjacent(src) && user.Adjacent(src) && victim.Adjacent(user) && !occupant)
- user.visible_message("[user] stuffs [victim] into the gibber!")
- if(victim.client)
- victim.client.perspective = EYE_PERSPECTIVE
- victim.client.eye = src
- victim.loc = src
- src.occupant = victim
- update_icon()
-
-/obj/machinery/gibber/verb/eject()
- set category = "Object"
- set name = "Empty Gibber"
- set src in oview(1)
-
- if (usr.stat != 0)
- return
- src.go_out()
- add_fingerprint(usr)
- return
-
-/obj/machinery/gibber/proc/go_out()
- if(operating || !src.occupant)
- return
- for(var/obj/O in src)
- O.loc = src.loc
- if (src.occupant.client)
- src.occupant.client.eye = src.occupant.client.mob
- src.occupant.client.perspective = MOB_PERSPECTIVE
- src.occupant.loc = src.loc
- src.occupant = null
- update_icon()
- return
-
-
-/obj/machinery/gibber/proc/startgibbing(mob/user as mob)
- if(src.operating)
- return
- if(!src.occupant)
- visible_message("You hear a loud metallic grinding sound.")
- return
-
- use_power(1000)
- visible_message("You hear a loud [occupant.isSynthetic() ? "metallic" : "squelchy"] grinding sound.")
- src.operating = 1
- update_icon()
-
- var/slab_name = occupant.name
- var/slab_count = 3
- var/slab_type = /obj/item/weapon/reagent_containers/food/snacks/meat
- var/slab_nutrition = src.occupant.nutrition / 15
-
- // Some mobs have specific meat item types.
- if(istype(src.occupant,/mob/living/simple_animal))
- var/mob/living/simple_animal/critter = src.occupant
- if(critter.meat_amount)
- slab_count = critter.meat_amount
- if(critter.meat_type)
- slab_type = critter.meat_type
- else if(istype(src.occupant,/mob/living/carbon/human))
- var/mob/living/carbon/human/H = occupant
- slab_name = src.occupant.real_name
- slab_type = H.isSynthetic() ? /obj/item/stack/material/steel : H.species.meat_type
-
- // Small mobs don't give as much nutrition.
- if(issmall(src.occupant))
- slab_nutrition *= 0.5
- slab_nutrition /= slab_count
-
- for(var/i=1 to slab_count)
- var/obj/item/weapon/reagent_containers/food/snacks/meat/new_meat = new slab_type(src, rand(3,8))
- if(istype(new_meat))
- new_meat.name = "[slab_name] [new_meat.name]"
- new_meat.reagents.add_reagent("nutriment",slab_nutrition)
- if(src.occupant.reagents)
- src.occupant.reagents.trans_to_obj(new_meat, round(occupant.reagents.total_volume/slab_count,1))
-
- add_attack_logs(user,occupant,"Used [src] to gib")
-
- src.occupant.ghostize()
-
- spawn(gib_time)
-
- src.operating = 0
- src.occupant.gib()
- qdel(src.occupant)
-
- playsound(src.loc, 'sound/effects/splat.ogg', 50, 1)
- operating = 0
- for (var/obj/item/thing in contents)
- // There's a chance that the gibber will fail to destroy some evidence.
- if(istype(thing,/obj/item/organ) && prob(80))
- qdel(thing)
- continue
- thing.forceMove(get_turf(thing)) // Drop it onto the turf for throwing.
- thing.throw_at(get_edge_target_turf(src,gib_throw_dir),rand(0,3),emagged ? 100 : 50) // Being pelted with bits of meat and bone would hurt.
-
- update_icon()
-
-
+
+/obj/machinery/gibber
+ name = "gibber"
+ desc = "The name isn't descriptive enough?"
+ icon = 'icons/obj/kitchen.dmi'
+ icon_state = "grinder"
+ density = 1
+ anchored = 1
+ req_access = list(access_kitchen,access_morgue)
+
+ var/operating = 0 //Is it on?
+ var/dirty = 0 // Does it need cleaning?
+ var/mob/living/occupant // Mob who has been put inside
+ var/gib_time = 40 // Time from starting until meat appears
+ var/gib_throw_dir = WEST // Direction to spit meat and gibs in.
+
+ use_power = 1
+ idle_power_usage = 2
+ active_power_usage = 500
+
+//auto-gibs anything that bumps into it
+/obj/machinery/gibber/autogibber
+ var/turf/input_plate
+
+/obj/machinery/gibber/autogibber/New()
+ ..()
+ spawn(5)
+ for(var/i in cardinal)
+ var/obj/machinery/mineral/input/input_obj = locate( /obj/machinery/mineral/input, get_step(src.loc, i) )
+ if(input_obj)
+ if(isturf(input_obj.loc))
+ input_plate = input_obj.loc
+ gib_throw_dir = i
+ qdel(input_obj)
+ break
+
+ if(!input_plate)
+ log_misc("a [src] didn't find an input plate.")
+ return
+
+/obj/machinery/gibber/autogibber/Bumped(var/atom/A)
+ if(!input_plate) return
+
+ if(ismob(A))
+ var/mob/M = A
+
+ if(M.loc == input_plate
+ )
+ M.loc = src
+ M.gib()
+
+
+/obj/machinery/gibber/New()
+ ..()
+ src.overlays += image('icons/obj/kitchen.dmi', "grjam")
+
+/obj/machinery/gibber/update_icon()
+ overlays.Cut()
+ if (dirty)
+ src.overlays += image('icons/obj/kitchen.dmi', "grbloody")
+ if(stat & (NOPOWER|BROKEN))
+ return
+ if (!occupant)
+ src.overlays += image('icons/obj/kitchen.dmi', "grjam")
+ else if (operating)
+ src.overlays += image('icons/obj/kitchen.dmi', "gruse")
+ else
+ src.overlays += image('icons/obj/kitchen.dmi', "gridle")
+
+/obj/machinery/gibber/relaymove(mob/user as mob)
+ src.go_out()
+ return
+
+/obj/machinery/gibber/attack_hand(mob/user as mob)
+ if(stat & (NOPOWER|BROKEN))
+ return
+ if(operating)
+ user << "The gibber is locked and running, wait for it to finish."
+ return
+ else
+ src.startgibbing(user)
+
+/obj/machinery/gibber/examine()
+ ..()
+ usr << "The safety guard is [emagged ? "disabled" : "enabled"]."
+
+/obj/machinery/gibber/emag_act(var/remaining_charges, var/mob/user)
+ emagged = !emagged
+ user << "You [emagged ? "disable" : "enable"] the gibber safety guard."
+ return 1
+
+/obj/machinery/gibber/attackby(var/obj/item/W, var/mob/user)
+ var/obj/item/weapon/grab/G = W
+
+ if(default_unfasten_wrench(user, W, 40))
+ return
+
+ if(!istype(G))
+ return ..()
+
+ if(G.state < 2)
+ user << "You need a better grip to do that!"
+ return
+
+ move_into_gibber(user,G.affecting)
+ // Grab() process should clean up the grab item, no need to del it.
+
+/obj/machinery/gibber/MouseDrop_T(mob/target, mob/user)
+ if(user.stat || user.restrained())
+ return
+ move_into_gibber(user,target)
+
+/obj/machinery/gibber/proc/move_into_gibber(var/mob/user,var/mob/living/victim)
+
+ if(src.occupant)
+ user << "The gibber is full, empty it first!"
+ return
+
+ if(operating)
+ user << "The gibber is locked and running, wait for it to finish."
+ return
+
+ if(!(istype(victim, /mob/living/carbon)) && !(istype(victim, /mob/living/simple_animal)) )
+ user << "This is not suitable for the gibber!"
+ return
+
+ if(istype(victim,/mob/living/carbon/human) && !emagged)
+ user << "The gibber safety guard is engaged!"
+ return
+
+
+ if(victim.abiotic(1))
+ user << "Subject may not have abiotic items on."
+ return
+
+ user.visible_message("[user] starts to put [victim] into the gibber!")
+ src.add_fingerprint(user)
+ if(do_after(user, 30) && victim.Adjacent(src) && user.Adjacent(src) && victim.Adjacent(user) && !occupant)
+ user.visible_message("[user] stuffs [victim] into the gibber!")
+ if(victim.client)
+ victim.client.perspective = EYE_PERSPECTIVE
+ victim.client.eye = src
+ victim.loc = src
+ src.occupant = victim
+ update_icon()
+
+/obj/machinery/gibber/verb/eject()
+ set category = "Object"
+ set name = "Empty Gibber"
+ set src in oview(1)
+
+ if (usr.stat != 0)
+ return
+ src.go_out()
+ add_fingerprint(usr)
+ return
+
+/obj/machinery/gibber/proc/go_out()
+ if(operating || !src.occupant)
+ return
+ for(var/obj/O in src)
+ O.loc = src.loc
+ if (src.occupant.client)
+ src.occupant.client.eye = src.occupant.client.mob
+ src.occupant.client.perspective = MOB_PERSPECTIVE
+ src.occupant.loc = src.loc
+ src.occupant = null
+ update_icon()
+ return
+
+
+/obj/machinery/gibber/proc/startgibbing(mob/user as mob)
+ if(src.operating)
+ return
+ if(!src.occupant)
+ visible_message("You hear a loud metallic grinding sound.")
+ return
+
+ use_power(1000)
+ visible_message("You hear a loud [occupant.isSynthetic() ? "metallic" : "squelchy"] grinding sound.")
+ src.operating = 1
+ update_icon()
+
+ var/slab_name = occupant.name
+ var/slab_count = 3
+ var/slab_type = /obj/item/weapon/reagent_containers/food/snacks/meat
+ var/slab_nutrition = src.occupant.nutrition / 15
+
+ // Some mobs have specific meat item types.
+ if(istype(src.occupant,/mob/living/simple_animal))
+ var/mob/living/simple_animal/critter = src.occupant
+ if(critter.meat_amount)
+ slab_count = critter.meat_amount
+ if(critter.meat_type)
+ slab_type = critter.meat_type
+ else if(istype(src.occupant,/mob/living/carbon/human))
+ var/mob/living/carbon/human/H = occupant
+ slab_name = src.occupant.real_name
+ slab_type = H.isSynthetic() ? /obj/item/stack/material/steel : H.species.meat_type
+
+ // Small mobs don't give as much nutrition.
+ if(issmall(src.occupant))
+ slab_nutrition *= 0.5
+ slab_nutrition /= slab_count
+
+ for(var/i=1 to slab_count)
+ var/obj/item/weapon/reagent_containers/food/snacks/meat/new_meat = new slab_type(src, rand(3,8))
+ if(istype(new_meat))
+ new_meat.name = "[slab_name] [new_meat.name]"
+ new_meat.reagents.add_reagent("nutriment",slab_nutrition)
+ if(src.occupant.reagents)
+ src.occupant.reagents.trans_to_obj(new_meat, round(occupant.reagents.total_volume/slab_count,1))
+
+ add_attack_logs(user,occupant,"Used [src] to gib")
+
+ src.occupant.ghostize()
+
+ spawn(gib_time)
+
+ src.operating = 0
+ src.occupant.gib()
+ qdel(src.occupant)
+
+ playsound(src.loc, 'sound/effects/splat.ogg', 50, 1)
+ operating = 0
+ for (var/obj/item/thing in contents)
+ // There's a chance that the gibber will fail to destroy some evidence.
+ if(istype(thing,/obj/item/organ) && prob(80))
+ qdel(thing)
+ continue
+ thing.forceMove(get_turf(thing)) // Drop it onto the turf for throwing.
+ thing.throw_at(get_edge_target_turf(src,gib_throw_dir),rand(0,3),emagged ? 100 : 50) // Being pelted with bits of meat and bone would hurt.
+
+ update_icon()
+
+
diff --git a/code/game/machinery/kitchen/icecream.dm b/code/modules/food/kitchen/icecream.dm
similarity index 100%
rename from code/game/machinery/kitchen/icecream.dm
rename to code/modules/food/kitchen/icecream.dm
diff --git a/code/game/machinery/kitchen/microwave.dm b/code/modules/food/kitchen/microwave.dm
similarity index 97%
rename from code/game/machinery/kitchen/microwave.dm
rename to code/modules/food/kitchen/microwave.dm
index 1ece9225b1..7357dd5568 100644
--- a/code/game/machinery/kitchen/microwave.dm
+++ b/code/modules/food/kitchen/microwave.dm
@@ -1,392 +1,392 @@
-/obj/machinery/microwave
- name = "microwave"
- icon = 'icons/obj/kitchen.dmi'
- icon_state = "mw"
- density = 1
- anchored = 1
- use_power = 1
- idle_power_usage = 5
- active_power_usage = 100
- flags = OPENCONTAINER | NOREACT
- circuit = /obj/item/weapon/circuitboard/microwave
- var/operating = 0 // Is it on?
- var/dirty = 0 // = {0..100} Does it need cleaning?
- var/broken = 0 // ={0,1,2} How broken is it???
- var/global/list/datum/recipe/available_recipes // List of the recipes you can use
- var/global/list/acceptable_items // List of the items you can put in
- var/global/list/acceptable_reagents // List of the reagents you can put in
- var/global/max_n_of_items = 0
-
-
-// see code/modules/food/recipes_microwave.dm for recipes
-
-/*******************
-* Initialising
-********************/
-
-/obj/machinery/microwave/New()
- ..()
- reagents = new/datum/reagents(100)
- reagents.my_atom = src
-
- component_parts = list()
- component_parts += new /obj/item/weapon/stock_parts/console_screen(src)
- component_parts += new /obj/item/weapon/stock_parts/motor(src)
- component_parts += new /obj/item/weapon/stock_parts/capacitor(src)
-
- if (!available_recipes)
- available_recipes = new
- for (var/type in (typesof(/datum/recipe)-/datum/recipe))
- available_recipes+= new type
- acceptable_items = new
- acceptable_reagents = new
- for (var/datum/recipe/recipe in available_recipes)
- for (var/item in recipe.items)
- acceptable_items |= item
- for (var/reagent in recipe.reagents)
- acceptable_reagents |= reagent
- if (recipe.items)
- max_n_of_items = max(max_n_of_items,recipe.items.len)
- // This will do until I can think of a fun recipe to use dionaea in -
- // will also allow anything using the holder item to be microwaved into
- // impure carbon. ~Z
- acceptable_items |= /obj/item/weapon/holder
- acceptable_items |= /obj/item/weapon/reagent_containers/food/snacks/grown
-
- RefreshParts()
-
-/*******************
-* Item Adding
-********************/
-
-/obj/machinery/microwave/attackby(var/obj/item/O as obj, var/mob/user as mob)
- if(src.broken > 0)
- if(src.broken == 2 && O.is_screwdriver()) // If it's broken and they're using a screwdriver
- user.visible_message( \
- "\The [user] starts to fix part of the microwave.", \
- "You start to fix part of the microwave." \
- )
- playsound(src, O.usesound, 50, 1)
- if (do_after(user,20 * O.toolspeed))
- user.visible_message( \
- "\The [user] fixes part of the microwave.", \
- "You have fixed part of the microwave." \
- )
- src.broken = 1 // Fix it a bit
- else if(src.broken == 1 && O.is_wrench()) // If it's broken and they're doing the wrench
- user.visible_message( \
- "\The [user] starts to fix part of the microwave.", \
- "You start to fix part of the microwave." \
- )
- if (do_after(user,20 * O.toolspeed))
- user.visible_message( \
- "\The [user] fixes the microwave.", \
- "You have fixed the microwave." \
- )
- src.icon_state = "mw"
- src.broken = 0 // Fix it!
- src.dirty = 0 // just to be sure
- src.flags = OPENCONTAINER | NOREACT
- else
- to_chat(user, "It's broken!")
- return 1
- else if(default_deconstruction_screwdriver(user, O))
- return
- else if(default_deconstruction_crowbar(user, O))
- return
- else if(default_unfasten_wrench(user, O, 10))
- return
-
- else if(src.dirty==100) // The microwave is all dirty so can't be used!
- if(istype(O, /obj/item/weapon/reagent_containers/spray/cleaner) || istype(O, /obj/item/weapon/soap)) // If they're trying to clean it then let them
- user.visible_message( \
- "\The [user] starts to clean the microwave.", \
- "You start to clean the microwave." \
- )
- if (do_after(user,20))
- user.visible_message( \
- "\The [user] has cleaned the microwave.", \
- "You have cleaned the microwave." \
- )
- src.dirty = 0 // It's clean!
- src.broken = 0 // just to be sure
- src.icon_state = "mw"
- src.flags = OPENCONTAINER | NOREACT
- else //Otherwise bad luck!!
- to_chat(user, "It's dirty!")
- return 1
- else if(is_type_in_list(O,acceptable_items))
- if (contents.len>=(max_n_of_items + component_parts.len + 1)) //Adds component_parts to the maximum number of items. The 1 is from the circuit
- to_chat(user, "This [src] is full of ingredients, you cannot put more.")
- return 1
- if(istype(O, /obj/item/stack) && O:get_amount() > 1) // This is bad, but I can't think of how to change it
- var/obj/item/stack/S = O
- new O.type (src)
- S.use(1)
- user.visible_message( \
- "\The [user] has added one of [O] to \the [src].", \
- "You add one of [O] to \the [src].")
- return
- else
- // user.remove_from_mob(O) //This just causes problems so far as I can tell. -Pete
- user.drop_item()
- O.loc = src
- user.visible_message( \
- "\The [user] has added \the [O] to \the [src].", \
- "You add \the [O] to \the [src].")
- return
- else if(istype(O,/obj/item/weapon/reagent_containers/glass) || \
- istype(O,/obj/item/weapon/reagent_containers/food/drinks) || \
- istype(O,/obj/item/weapon/reagent_containers/food/condiment) \
- )
- if (!O.reagents)
- return 1
- for (var/datum/reagent/R in O.reagents.reagent_list)
- if (!(R.id in acceptable_reagents))
- to_chat(user, "Your [O] contains components unsuitable for cookery.")
- return 1
- return
- else if(istype(O,/obj/item/weapon/grab))
- var/obj/item/weapon/grab/G = O
- to_chat(user, "This is ridiculous. You can not fit \the [G.affecting] in this [src].")
- return 1
- else
- to_chat(user, "You have no idea what you can cook with this [O].")
- ..()
- src.updateUsrDialog()
-
-/obj/machinery/microwave/attack_ai(mob/user as mob)
- if(istype(user, /mob/living/silicon/robot) && Adjacent(user))
- attack_hand(user)
-
-/obj/machinery/microwave/attack_hand(mob/user as mob)
- user.set_machine(src)
- interact(user)
-
-/*******************
-* Microwave Menu
-********************/
-
-/obj/machinery/microwave/interact(mob/user as mob) // The microwave Menu
- var/dat = ""
- if(src.broken > 0)
- dat = {"Bzzzzttttt"}
- else if(src.operating)
- dat = {"Microwaving in progress!
Please wait...!"}
- else if(src.dirty==100)
- dat = {"This microwave is dirty!
Please clean it before use!"}
- else
- var/list/items_counts = new
- var/list/items_measures = new
- var/list/items_measures_p = new
- for (var/obj/O in ((contents - component_parts) - circuit))
- var/display_name = O.name
- if (istype(O,/obj/item/weapon/reagent_containers/food/snacks/egg))
- items_measures[display_name] = "egg"
- items_measures_p[display_name] = "eggs"
- if (istype(O,/obj/item/weapon/reagent_containers/food/snacks/tofu))
- items_measures[display_name] = "tofu chunk"
- items_measures_p[display_name] = "tofu chunks"
- if (istype(O,/obj/item/weapon/reagent_containers/food/snacks/meat)) //any meat
- items_measures[display_name] = "slab of meat"
- items_measures_p[display_name] = "slabs of meat"
- if (istype(O,/obj/item/weapon/reagent_containers/food/snacks/donkpocket))
- display_name = "Turnovers"
- items_measures[display_name] = "turnover"
- items_measures_p[display_name] = "turnovers"
- if (istype(O,/obj/item/weapon/reagent_containers/food/snacks/carpmeat))
- items_measures[display_name] = "fillet of meat"
- items_measures_p[display_name] = "fillets of meat"
- items_counts[display_name]++
- for (var/O in items_counts)
- var/N = items_counts[O]
- if (!(O in items_measures))
- dat += {"[capitalize(O)]: [N] [lowertext(O)]\s
"}
- else
- if (N==1)
- dat += {"[capitalize(O)]: [N] [items_measures[O]]
"}
- else
- dat += {"[capitalize(O)]: [N] [items_measures_p[O]]
"}
-
- for (var/datum/reagent/R in reagents.reagent_list)
- var/display_name = R.name
- if (R.id == "capsaicin")
- display_name = "Hotsauce"
- if (R.id == "frostoil")
- display_name = "Coldsauce"
- dat += {"[display_name]: [R.volume] unit\s
"}
-
- if (items_counts.len==0 && reagents.reagent_list.len==0)
- dat = {"The microwave is empty
"}
- else
- dat = {"Ingredients:
[dat]"}
- dat += {"