diff --git a/aurorastation.dme b/aurorastation.dme index 505bd33fd65..97f62585559 100644 --- a/aurorastation.dme +++ b/aurorastation.dme @@ -672,6 +672,7 @@ #include "code\game\mecha\working\working.dm" #include "code\game\modifiers\modifiers.dm" #include "code\game\modifiers\modifiers_chem.dm" +#include "code\game\modifiers\modifiers_food.dm" #include "code\game\objects\buckling.dm" #include "code\game\objects\empulse.dm" #include "code\game\objects\explosion.dm" diff --git a/code/game/modifiers/modifiers.dm b/code/game/modifiers/modifiers.dm index d1fc953bf14..cf632b70a1b 100644 --- a/code/game/modifiers/modifiers.dm +++ b/code/game/modifiers/modifiers.dm @@ -340,7 +340,7 @@ it should be avoided in favour of manual removal where possible for (var/datum/reagent/R in C.touching.reagent_list) if (istype(R, ourtype)) totaldose += R.dose - + for (var/datum/reagent/R in C.breathing.reagent_list) if (istype(R, ourtype)) totaldose += R.dose diff --git a/code/game/modifiers/modifiers_food.dm b/code/game/modifiers/modifiers_food.dm new file mode 100644 index 00000000000..39f58db7ee4 --- /dev/null +++ b/code/game/modifiers/modifiers_food.dm @@ -0,0 +1,48 @@ +/datum/modifier/food + var/regen_added = 0 + var/stamina_added = 0 + var/message = null + +/datum/modifier/food/activate() + ..() + var/mob/living/L = target + if(istype(L)) + regen_added += strength*0.03 + stamina_added += strength + L.stamina_recovery += strength*0.03 + L.max_stamina += strength + if(message) + L << message + +/datum/modifier/food/deactivate() + ..() + var/mob/living/L = target + if(istype(L)) + L.stamina_recovery -= regen_added + L.max_stamina -= stamina_added + regen_added = 0 + stamina_added = 0 + +/datum/modifier/food/custom_override(var/datum/modifier/existing) + existing.duration += duration + qdel(src) + return existing + +/datum/modifier/food/positive + //Blank + +/datum/modifier/food/negative + //Blank + +/datum/modifier/food/sugarcrash + //Blank + +/datum/modifier/food/sugarcrash/custom_validity() + + if (!isnull(duration) && duration <= 0) + return 0 + + if (target.reagents && target.reagents.has_reagent("sugar")) + return 0 + + return 1 \ No newline at end of file diff --git a/code/modules/food/recipes_microwave.dm b/code/modules/food/recipes_microwave.dm index 4ef537ac503..825596802ab 100644 --- a/code/modules/food/recipes_microwave.dm +++ b/code/modules/food/recipes_microwave.dm @@ -1141,3 +1141,13 @@ I said no! /obj/item/weapon/reagent_containers/food/snacks/friedegg ) result = /obj/item/weapon/reagent_containers/food/snacks/bacon_and_eggs + +/datum/recipe/meatloaf_microwave + reagents = list("muck" = 10) + result = /obj/item/weapon/reagent_containers/food/snacks/meatloaf + reagent_mix = RECIPE_REAGENT_SUM + +/datum/recipe/greenloaf_microwave + reagents = list("slop" = 10) + result = /obj/item/weapon/reagent_containers/food/snacks/greenloaf + reagent_mix = RECIPE_REAGENT_SUM \ No newline at end of file diff --git a/code/modules/food/recipes_oven.dm b/code/modules/food/recipes_oven.dm index 34b1d6c305b..2daa107acc3 100644 --- a/code/modules/food/recipes_oven.dm +++ b/code/modules/food/recipes_oven.dm @@ -521,3 +521,15 @@ ) result = /obj/item/weapon/reagent_containers/food/snacks/bacon/oven result_quantity = 6 + +/datum/recipe/meatloaf_oven + appliance = OVEN + reagents = list("muck" = 10) + result = /obj/item/weapon/reagent_containers/food/snacks/meatloaf + reagent_mix = RECIPE_REAGENT_SUM + +/datum/recipe/greenloaf_oven + appliance = OVEN + reagents = list("slop" = 10) + result = /obj/item/weapon/reagent_containers/food/snacks/greenloaf + reagent_mix = RECIPE_REAGENT_SUM diff --git a/code/modules/hydroponics/trays/tray_tools.dm b/code/modules/hydroponics/trays/tray_tools.dm index 2d1e78d8ea6..a3a0f85f71d 100644 --- a/code/modules/hydroponics/trays/tray_tools.dm +++ b/code/modules/hydroponics/trays/tray_tools.dm @@ -92,7 +92,6 @@ if(grown_reagents && grown_reagents.reagent_list && grown_reagents.reagent_list.len) dat += "

Reagent Data

" - dat += "
This sample contains: " for(var/datum/reagent/R in grown_reagents.reagent_list) dat += "
- [R.id], [grown_reagents.get_reagent_amount(R.id)] unit(s)" diff --git a/code/modules/item_worth/reagents.dm b/code/modules/item_worth/reagents.dm index 47d0ea0adec..121c5500d34 100644 --- a/code/modules/item_worth/reagents.dm +++ b/code/modules/item_worth/reagents.dm @@ -69,7 +69,7 @@ /datum/reagent/sodium value = 0.1 -/datum/reagent/sugar +/datum/reagent/nutriment/sugar value = 0.1 /datum/reagent/sulfur diff --git a/code/modules/mob/living/carbon/taste.dm b/code/modules/mob/living/carbon/taste.dm index 592a141cb70..fac7aec2538 100644 --- a/code/modules/mob/living/carbon/taste.dm +++ b/code/modules/mob/living/carbon/taste.dm @@ -27,7 +27,7 @@ calculate text size per text. for(var/datum/reagent/R in reagent_list) if(!R.taste_mult) continue - if(R.id == "nutriment") //this is ugly but apparently only nutriment (not subtypes) has taste data TODO figure out why + if(R.id == "nutriment" || R.id == "flavoring") //this is ugly but apparently only nutriment (not subtypes) has taste data TODO figure out why var/list/taste_data = R.get_data() for(var/taste in taste_data) if(taste in tastes) diff --git a/code/modules/reagents/Chemistry-Holder.dm b/code/modules/reagents/Chemistry-Holder.dm index bfbd7b99ab9..e8efa184c16 100644 --- a/code/modules/reagents/Chemistry-Holder.dm +++ b/code/modules/reagents/Chemistry-Holder.dm @@ -88,6 +88,7 @@ //returns 1 if the holder should continue reactiong, 0 otherwise. /datum/reagents/proc/process_reactions() + if(!my_atom) // No reactions in temporary holders return 0 if(!my_atom.loc) //No reactions inside GC'd containers @@ -252,7 +253,7 @@ return amount /datum/reagents/proc/trans_to_holder(var/datum/reagents/target, var/amount = 1, var/multiplier = 1, var/copy = 0) // Transfers [amount] reagents from [src] to [target], multiplying them by [multiplier]. Returns actual amount removed from [src] (not amount transferred to [target]). - + if(!target || !istype(target)) return 0 @@ -276,7 +277,7 @@ handle_reactions() target.handle_reactions() - + return amount /* Holder-to-atom and similar procs */ @@ -389,7 +390,7 @@ if(!target || !istype(target) || !target.simulated) return 0 - + var/mob/living/carbon/C = target if(istype(C)) if(type == CHEM_BREATHE) diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index 507a73ee591..5c92399f5a9 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -229,7 +229,7 @@ if(inoperable()) return user.set_machine(src) - + var/datum/asset/pill_icons = get_asset_datum(/datum/asset/chem_master) pill_icons.send(user.client) @@ -565,6 +565,11 @@ /obj/item/stack/material/silver = "silver", /obj/item/stack/material/mhydrogen = "hydrazine" //doesn't really make much sense but thank Bay ) + var/list/convert_reagents = list( + "nutriment" = "slop", + "seafood" = "muck", + "protein" = "muck" + ) /obj/machinery/reagentgrinder/Initialize() . = ..() @@ -773,6 +778,14 @@ if (beaker.reagents.total_volume >= beaker.reagents.maximum_volume) break + for(var/datum/reagent/R in beaker.reagents.reagent_list) + var/value = convert_reagents[R.id] + if(!value) + continue + var/vol = R.volume + beaker.reagents.remove_reagent(R.id,vol) + beaker.reagents.add_reagent(value,vol) + #undef REAGENTS_PER_SHEET /obj/machinery/reagentgrinder/MouseDrop_T(mob/living/carbon/human/target as mob, mob/user as mob) diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index 8096750e812..80017f13b59 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -86,11 +86,16 @@ if(CHEM_BREATHE) affect_breathe(M, alien, removed) remove_self(removed) + if(volume <= 0) + final_effect(M, alien) //Initial effect is called once when the reagent first starts affecting a mob. /datum/reagent/proc/initial_effect(var/mob/living/carbon/M, var/alien) return +/datum/reagent/proc/final_effect(var/mob/living/carbon/M, var/alien) + return + /datum/reagent/proc/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) return diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm index b3066981805..4478a1b4a81 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm @@ -440,22 +440,6 @@ color = "#808080" taste_description = "salty metal" -/datum/reagent/sugar - name = "Sugar" - id = "sugar" - description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." - reagent_state = SOLID - color = "#FFFFFF" - taste_description = "sugar" - taste_mult = 1.8 - - glass_icon_state = "iceglass" - glass_name = "glass of sugar" - glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." - -/datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) - M.nutrition += removed * 3 - /datum/reagent/sulfur name = "Sulfur" id = "sulfur" diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index b4f05d5c7a6..8a09dcf3868 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -51,6 +51,37 @@ kois_type = 2 /* Food */ +/datum/reagent/flavoring + name = "Artificial Flavoring" + id = "flavoring" + description = "Put this in food that you want to taste better." + taste_mult = 40 //1 unit of flavoring is equal to 10 + reagent_state = SOLID + metabolism = REM + color = "#FFFFFF" + unaffected_species = IS_MACHINE + +/datum/reagent/flavoring/mix_data(var/list/newdata, var/newamount) //According to a comment, mix_data is really weird when it comes to subtypes. That's why it's not in a subtype. + if(!islist(newdata) || !newdata.len) + return + for(var/i in 1 to newdata.len) + if(!(newdata[i] in data)) + data.Add(newdata[i]) + data[newdata[i]] = 0 + data[newdata[i]] += newdata[newdata[i]] + var/totalFlavor = 0 + for(var/i in 1 to data.len) + totalFlavor += data[data[i]] + + if (!totalFlavor) + return + + for(var/i in 1 to data.len) //cull the tasteless + if(data[data[i]]/totalFlavor * 100 < 10) + data[data[i]] = null + data -= data[i] + data -= null + /datum/reagent/nutriment name = "Nutriment" id = "nutriment" @@ -62,15 +93,43 @@ var/blood_factor = 6 var/regen_factor = 0.8 var/injectable = 0 + var/datum/modifier/modifier var/attrition_factor = -0.1 // Decreases attrition rate. color = "#664330" unaffected_species = IS_MACHINE + var/is_positive_buff = 1 //1 Gives buff, 0 does nothing, -1 gives nerf. /datum/reagent/nutriment/synthetic name = "Synthetic Nutriment" id = "synnutriment" description = "A cheaper alternative to actual nutriment." attrition_factor = (REM * 4)/BASE_MAX_NUTRITION // Increases attrition rate. + is_positive_buff = -1 + +/datum/reagent/nutriment/protein/synthetic + name = "Synthetic Protein" + id = "synprotein" + description = "A cheaper alternative to actual nutriment." + attrition_factor = (REM * 4)/BASE_MAX_NUTRITION // Increases attrition rate. + is_positive_buff = -1 + +/datum/reagent/nutriment/protein/muck //Blended meat + name = "muck" + id = "muck" + description = "A blended mess of cheap meat. Serve this to prisoners." + blood_factor = 6 + taste_description = "meat, I think" + is_positive_buff = 0 + attrition_factor = -(REM * 2)/BASE_MAX_NUTRITION + +/datum/reagent/nutriment/slop //Blended plants + name = "Slop" + id = "slop" + description = "A blended mess of cheap food. Serve this to prisoners." + nutriment_factor = 6 + taste_description = "slop" + is_positive_buff = 0 + attrition_factor = -(REM * 2)/BASE_MAX_NUTRITION /datum/reagent/nutriment/mix_data(var/list/newdata, var/newamount) if(!islist(newdata) || !newdata.len) @@ -110,9 +169,13 @@ M.nutrition += nutriment_factor * removed // For hunger and fatness M.nutrition_attrition_rate = Clamp(M.nutrition_attrition_rate + attrition_factor, 1, 2) M.add_chemical_effect(CE_BLOODRESTORE, blood_factor * removed) - - - + var/added_duration = removed*30 SECONDS + if(modifier) + modifier.duration += added_duration + else if(is_positive_buff == 1) + modifier = M.add_modifier(/datum/modifier/food/positive, MODIFIER_TIMED, src, _strength = 25, _duration = added_duration, override = MODIFIER_OVERRIDE_CUSTOM) + else if(is_positive_buff == -1) + modifier = M.add_modifier(/datum/modifier/food/negative, MODIFIER_TIMED, src, _strength = -25, _duration = added_duration, override = MODIFIER_OVERRIDE_CUSTOM) /* Coatings are used in cooking. Dipping food items in a reagent container with a coating in it allows it to be covered in that, which will add a masked overlay to the sprite. @@ -120,6 +183,7 @@ Coatings have both a raw and a cooked image. Raw coating is generally unhealthy Generally coatings are intended for deep frying foods */ + /datum/reagent/nutriment/coating nutriment_factor = 6 //Less dense than the food itself, but coatings still add extra calories var/messaged = 0 @@ -478,6 +542,25 @@ injectable = 1 taste_description = "sweetness" +/datum/reagent/nutriment/sugar + name = "Sugar" + id = "sugar" + description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." + reagent_state = SOLID + color = "#FFFFFF" + injectable = 1 + taste_description = "sugar" + taste_mult = 1.8 + metabolism = 0.034 // 10 units lasts 5 minutes. + + glass_icon_state = "iceglass" + glass_name = "glass of sugar" + glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." + +/datum/reagent/nutriment/sugar/final_effect(var/mob/living/carbon/M, var/alien) + if(dose > 10) + M.add_modifier(/datum/modifier/food/sugarcrash, MODIFIER_TIMED, src, _strength = -20, _duration = dose*20, override = MODIFIER_OVERRIDE_CUSTOM) + /datum/reagent/lipozine // The anti-nutriment. name = "Lipozine" id = "lipozine" diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/reagents/reagent_containers/food/drinks.dm index bb342cc6ae0..7011f873770 100644 --- a/code/modules/reagents/reagent_containers/food/drinks.dm +++ b/code/modules/reagents/reagent_containers/food/drinks.dm @@ -177,7 +177,7 @@ /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." + desc = "Just add 10u water, self heats! A taste that reminds you of your school years." icon_state = "ramen" center_of_mass = list("x"=16, "y"=11) Initialize() diff --git a/code/modules/reagents/reagent_containers/food/snacks.dm b/code/modules/reagents/reagent_containers/food/snacks.dm index 8ca9b7f91a5..00be50de984 100644 --- a/code/modules/reagents/reagent_containers/food/snacks.dm +++ b/code/modules/reagents/reagent_containers/food/snacks.dm @@ -1,6 +1,9 @@ #define NUTRIMENT_GOOD "nutriment" #define NUTRIMENT_BAD "synnutriment" +#define PROTEIN_GOOD "protein" +#define PROTEIN_BAD "synprotein" + //Food items that are eaten normally and don't leave anything behind. /obj/item/weapon/reagent_containers/food/snacks name = "snack" @@ -15,15 +18,16 @@ var/dried_type = null var/dry = 0 var/nutriment_amt = 0 + var/flavoring_amt = 0 var/nutriment_type = NUTRIMENT_GOOD var/list/nutriment_desc = list("food" = 1) + var/list/flavoring_desc = list("food" = 1) center_of_mass = list("x"=16, "y"=16) w_class = 2 var/datum/reagent/nutriment/coating/coating = null var/icon/flat_icon = null //Used to cache a flat icon generated from dipping in batter. This is used again to make the cooked-batter-overlay var/do_coating_prefix = 1 //If 0, we wont do "battered thing" or similar prefixes. Mainly for recipes that include batter but have a special name - var/cooked_icon = null //Used for foods that are "cooked" without being made into a specific recipe or combination. //Generally applied during modification cooking with oven/fryer @@ -33,8 +37,11 @@ /obj/item/weapon/reagent_containers/food/snacks/Initialize() . = ..() - if (nutriment_amt) - reagents.add_reagent(nutriment_type, nutriment_amt, nutriment_desc) + if(nutriment_amt) + reagents.add_reagent(nutriment_type,nutriment_amt,nutriment_desc) + if(flavoring_amt) + reagents.add_reagent("flavoring",flavoring_amt,flavoring_desc) + /obj/item/weapon/reagent_containers/food/snacks/proc/On_Consume(var/mob/M) if(!reagents.total_volume) @@ -62,7 +69,6 @@ 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)) @@ -449,7 +455,8 @@ . = ..() reagents.add_reagent("koispaste", 10) reagents.add_reagent("phoron", 15) - reagents.add_reagent("hfcs", 2) + bitesize = 5 + /obj/item/weapon/reagent_containers/food/snacks/aesirsalad name = "aesir salad" @@ -468,31 +475,22 @@ reagents.add_reagent("tricordrazine", 8) /obj/item/weapon/reagent_containers/food/snacks/candy - name = "candy" - desc = "Nougat, love it or hate it. Made with real sugar, and no artificial preservatives!" + name = "getmore chocolate bar" + desc = "Uses an ancient, sol-american recipe!" icon_state = "candy" trash = /obj/item/trash/candy filling_color = "#7D5F46" center_of_mass = list("x"=15, "y"=15) - nutriment_amt = 3 - nutriment_desc = list("chocolate" = 2, "nougat" = 1) + nutriment_type = NUTRIMENT_BAD + nutriment_amt = 2 + nutriment_desc = list("vomit" = 2) + flavoring_amt = 6 + flavoring_desc = list("chocolate" = 5) bitesize = 2 /obj/item/weapon/reagent_containers/food/snacks/candy/Initialize() . = ..() - reagents.add_reagent("sugar", 3) - -/obj/item/weapon/reagent_containers/food/snacks/candy/donor - name = "donor candy" - desc = "A little treat for blood donors. Made with real sugar!" - trash = /obj/item/trash/candy - nutriment_desc = list("candy" = 10) - bitesize = 5 - -/obj/item/weapon/reagent_containers/food/snacks/candy/donor/Initialize() - . = ..() - reagents.add_reagent("nutriment", 10) - reagents.add_reagent("sugar", 3) + reagents.add_reagent("sugar", 6) /obj/item/weapon/reagent_containers/food/snacks/candy_corn name = "candy corn" @@ -508,18 +506,6 @@ . = ..() reagents.add_reagent("sugar", 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_type = NUTRIMENT_BAD - nutriment_desc = list("chips" = 3) - bitesize = 1 - /obj/item/weapon/reagent_containers/food/snacks/cookie name = "cookie" desc = "COOKIE!!!" @@ -807,7 +793,7 @@ /obj/item/weapon/reagent_containers/food/snacks/organ/Initialize() . = ..() - reagents.add_reagent("protein", rand(3,5)) + reagents.add_reagent(PROTEIN_GOOD, rand(3,5)) reagents.add_reagent("toxin", rand(1,3)) /obj/item/weapon/reagent_containers/food/snacks/tofu @@ -921,7 +907,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bearmeat/Initialize() . = ..() - reagents.add_reagent("protein", 12) + reagents.add_reagent(PROTEIN_GOOD, 12) reagents.add_reagent("hyperzine", 5) /obj/item/weapon/reagent_containers/food/snacks/xenomeat @@ -934,7 +920,7 @@ /obj/item/weapon/reagent_containers/food/snacks/xenomeat/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("pacid",6) /obj/item/weapon/reagent_containers/food/snacks/meatball @@ -947,7 +933,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meatball/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) /obj/item/weapon/reagent_containers/food/snacks/sausage name = "sausage" @@ -959,7 +945,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sausage/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) /obj/item/weapon/reagent_containers/food/snacks/sausage/battered name = "battered sausage" @@ -972,7 +958,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sausage/battered/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("batter", 1.7) reagents.add_reagent("oil", 1.5) @@ -1023,7 +1009,7 @@ /obj/item/weapon/reagent_containers/food/snacks/donkpocket/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) /obj/item/weapon/reagent_containers/food/snacks/donkpocket/proc/heat() warm = 1 @@ -1058,7 +1044,7 @@ /obj/item/weapon/reagent_containers/food/snacks/brainburger/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("alkysine", 6) /obj/item/weapon/reagent_containers/food/snacks/ghostburger @@ -1085,7 +1071,7 @@ /obj/item/weapon/reagent_containers/food/snacks/human/burger/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) /obj/item/weapon/reagent_containers/food/snacks/cheeseburger name = "cheeseburger" @@ -1179,7 +1165,7 @@ /obj/item/weapon/reagent_containers/food/snacks/xenoburger/Initialize() . = ..() - reagents.add_reagent("protein", 8) + reagents.add_reagent(PROTEIN_GOOD, 8) /obj/item/weapon/reagent_containers/food/snacks/clownburger name = "clown burger" @@ -1210,7 +1196,7 @@ /obj/item/weapon/reagent_containers/food/snacks/mouseburger/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) /obj/item/weapon/reagent_containers/food/snacks/omelette name = "omelette du fromage" @@ -1307,7 +1293,7 @@ /obj/item/weapon/reagent_containers/food/snacks/soylentgreen/Initialize() . = ..() - reagents.add_reagent("protein", 10) + reagents.add_reagent(PROTEIN_GOOD, 10) /obj/item/weapon/reagent_containers/food/snacks/soylenviridians name = "soylen virdians" @@ -1331,7 +1317,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meatpie/Initialize() . = ..() - reagents.add_reagent("protein", 10) + reagents.add_reagent(PROTEIN_GOOD, 10) /obj/item/weapon/reagent_containers/food/snacks/tofupie name = "tofu-pie" @@ -1391,7 +1377,7 @@ /obj/item/weapon/reagent_containers/food/snacks/xemeatpie/Initialize() . = ..() - reagents.add_reagent("protein", 10) + reagents.add_reagent(PROTEIN_GOOD, 10) /obj/item/weapon/reagent_containers/food/snacks/wingfangchu name = "wing fang chu" @@ -1404,7 +1390,7 @@ /obj/item/weapon/reagent_containers/food/snacks/wingfangchu/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) /obj/item/weapon/reagent_containers/food/snacks/human/kabob name = "-kabob" @@ -1417,7 +1403,7 @@ /obj/item/weapon/reagent_containers/food/snacks/human/kabob/Initialize() . = ..() - reagents.add_reagent("protein", 8) + reagents.add_reagent(PROTEIN_GOOD, 8) /obj/item/weapon/reagent_containers/food/snacks/monkeykabob name = "meat-kabob" @@ -1430,7 +1416,7 @@ /obj/item/weapon/reagent_containers/food/snacks/monkeykabob/Initialize() . = ..() - reagents.add_reagent("protein", 8) + reagents.add_reagent(PROTEIN_GOOD, 8) /obj/item/weapon/reagent_containers/food/snacks/tofukabob name = "tofu-kabob" @@ -1473,7 +1459,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chickenkatsu/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("beerbatter", 2) reagents.add_reagent("oil", 1) @@ -1507,11 +1493,14 @@ filling_color = "#631212" center_of_mass = list("x"=15, "y"=9) nutriment_type = NUTRIMENT_BAD - bitesize = 3 + flavoring_desc = list("smoke" = 4) + flavoring_amt = 4 /obj/item/weapon/reagent_containers/food/snacks/sosjerky/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 2) + reagents.add_reagent("muck", 4) + bitesize = 3 /obj/item/weapon/reagent_containers/food/snacks/no_raisin name = "4no Raisins" @@ -1520,41 +1509,70 @@ trash = /obj/item/trash/raisins filling_color = "#343834" center_of_mass = list("x"=15, "y"=4) - nutriment_desc = list("dried raisins" = 6) nutriment_type = NUTRIMENT_BAD - nutriment_amt = 6 + nutriment_desc = list("raisins" = 3) + nutriment_amt = 3 + flavoring_desc = list("fruit juice" = 3) + flavoring_amt = 3 bitesize = 3 +/obj/item/weapon/reagent_containers/food/snacks/no_raisin/Initialize() + . = ..() + reagents.add_reagent("sugar", 4) + /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) - nutriment_desc = list("cake" = 3, "cream filling" = 1) nutriment_type = NUTRIMENT_BAD - nutriment_amt = 4 - bitesize = 2 + nutriment_desc = list("moist cheap pastry" = 6) + nutriment_amt = 6 + flavoring_desc = list("cream" = 2) + flavoring_amt = 2 /obj/item/weapon/reagent_containers/food/snacks/spacetwinkie/Initialize() . = ..() - reagents.add_reagent("sugar", 4) + reagents.add_reagent("sugar", 15) + bitesize = 4 + + +/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_type = NUTRIMENT_BAD + nutriment_desc = list("potato chips" = 5) + nutriment_amt = 5 + flavoring_desc = list("grease" = 3) + flavoring_amt = 3 + bitesize = 2 + +/obj/item/weapon/reagent_containers/food/snacks/chips/Initialize() + . = ..() + reagents.add_reagent("sodiumchloride", 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" + 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_desc = list("chips" = 2) nutriment_type = NUTRIMENT_BAD - nutriment_amt = 4 + nutriment_desc = list("potato chips" = 5) + nutriment_amt = 5 + flavoring_desc = list("cheese powder" = 3) + flavoring_amt = 3 bitesize = 2 - + /obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers/Initialize() . = ..() - reagents.add_reagent("cheese", 3) + reagents.add_reagent("sodiumchloride", 2) /obj/item/weapon/reagent_containers/food/snacks/syndicake name = "Syndi-Cakes" @@ -1563,6 +1581,7 @@ filling_color = "#FF5D05" center_of_mass = list("x"=16, "y"=10) trash = /obj/item/trash/syndi_cakes + nutriment_type = NUTRIMENT_GOOD nutriment_desc = list("cake" = 1,"cream filling" = 3, ) nutriment_amt = 4 bitesize = 3 @@ -1583,7 +1602,7 @@ /obj/item/weapon/reagent_containers/food/snacks/loadedbakedpotato/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) /obj/item/weapon/reagent_containers/food/snacks/fries name = "space fries" @@ -1692,7 +1711,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meatsteak/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("triglyceride", 2) reagents.add_reagent("sodiumchloride", 1) reagents.add_reagent("blackpepper", 1) @@ -1750,7 +1769,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meatballsoup/Initialize() . = ..() - reagents.add_reagent("protein", 8) + reagents.add_reagent(PROTEIN_GOOD, 8) reagents.add_reagent("water", 5) /obj/item/weapon/reagent_containers/food/snacks/slimesoup @@ -1775,7 +1794,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bloodsoup/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) reagents.add_reagent("blood", 10) reagents.add_reagent("water", 5) @@ -1938,7 +1957,7 @@ /obj/item/weapon/reagent_containers/food/snacks/monkeycube/Initialize() . = ..() - reagents.add_reagent("protein", 10) + reagents.add_reagent(PROTEIN_GOOD, 10) /obj/item/weapon/reagent_containers/food/snacks/monkeycube/afterattack(obj/O as obj, var/mob/living/carbon/human/user as mob, proximity) if(!proximity) return @@ -2022,7 +2041,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bigbiteburger/Initialize() . = ..() - reagents.add_reagent("protein", 10) + reagents.add_reagent(PROTEIN_GOOD, 10) /obj/item/weapon/reagent_containers/food/snacks/enchiladas name = "enchiladas" @@ -2037,7 +2056,7 @@ /obj/item/weapon/reagent_containers/food/snacks/enchiladas/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("capsaicin", 6) /obj/item/weapon/reagent_containers/food/snacks/monkeysdelight @@ -2051,7 +2070,7 @@ /obj/item/weapon/reagent_containers/food/snacks/monkeysdelight/Initialize() . = ..() - reagents.add_reagent("protein", 10) + reagents.add_reagent(PROTEIN_GOOD, 10) reagents.add_reagent("banana", 5) reagents.add_reagent("blackpepper", 1) reagents.add_reagent("sodiumchloride", 1) @@ -2099,7 +2118,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sandwich/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) /obj/item/weapon/reagent_containers/food/snacks/toastedsandwich name = "toasted sandwich" @@ -2114,7 +2133,7 @@ /obj/item/weapon/reagent_containers/food/snacks/toastedsandwich/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) reagents.add_reagent("carbon", 2) /obj/item/weapon/reagent_containers/food/snacks/grilledcheese @@ -2129,7 +2148,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grilledcheese/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) /obj/item/weapon/reagent_containers/food/snacks/tomatosoup name = "tomato soup" @@ -2173,7 +2192,7 @@ /obj/item/weapon/reagent_containers/food/snacks/stew/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) reagents.add_reagent("tomatojuice", 5) reagents.add_reagent("imidazoline", 5) reagents.add_reagent("water", 5) @@ -2318,7 +2337,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meatballspagetti/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) /obj/item/weapon/reagent_containers/food/snacks/spesslaw name = "spesslaw" @@ -2332,7 +2351,7 @@ /obj/item/weapon/reagent_containers/food/snacks/spesslaw/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) /obj/item/weapon/reagent_containers/food/snacks/carrotfries name = "carrot fries" @@ -2361,7 +2380,7 @@ /obj/item/weapon/reagent_containers/food/snacks/superbiteburger/Initialize() . = ..() - reagents.add_reagent("protein", 25) + reagents.add_reagent(PROTEIN_GOOD, 25) /obj/item/weapon/reagent_containers/food/snacks/candiedapple name = "candied apple" @@ -2488,7 +2507,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chawanmushi/Initialize() . = ..() - reagents.add_reagent("protein", 5) + reagents.add_reagent(PROTEIN_GOOD, 5) /obj/item/weapon/reagent_containers/food/snacks/beetsoup name = "beet soup" @@ -2529,7 +2548,7 @@ /obj/item/weapon/reagent_containers/food/snacks/validsalad/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) /obj/item/weapon/reagent_containers/food/snacks/appletart name = "golden apple streusel tart" @@ -2560,7 +2579,7 @@ /obj/item/weapon/reagent_containers/food/snacks/redcurry/Initialize() . = ..() - reagents.add_reagent("protein", 7) + reagents.add_reagent(PROTEIN_GOOD, 7) reagents.add_reagent("spacespice", 2) /obj/item/weapon/reagent_containers/food/snacks/greencurry @@ -2607,7 +2626,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bearburger/Initialize() . = ..() - reagents.add_reagent("protein", 10) + reagents.add_reagent(PROTEIN_GOOD, 10) reagents.add_reagent("hyperzine", 5) /obj/item/weapon/reagent_containers/food/snacks/bearchili @@ -2624,7 +2643,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bearchili/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) reagents.add_reagent("capsaicin", 3) reagents.add_reagent("tomatojuice", 2) reagents.add_reagent("hyperzine", 5) @@ -2642,7 +2661,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bearstew/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) reagents.add_reagent("hyperzine", 5) reagents.add_reagent("tomatojuice", 5) reagents.add_reagent("imidazoline", 5) @@ -2661,7 +2680,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bibimbap/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("imidazoline", 3) reagents.add_reagent("spacespice", 2) reagents.add_reagent("egg", 3) @@ -2680,7 +2699,7 @@ /obj/item/weapon/reagent_containers/food/snacks/lomein/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) reagents.add_reagent("carrotjuice", 3) reagents.add_reagent("imidazoline", 1) @@ -2714,7 +2733,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chickenfillet/Initialize() . = ..() - reagents.add_reagent("protein", 8) + reagents.add_reagent(PROTEIN_GOOD, 8) /obj/item/weapon/reagent_containers/food/snacks/chilicheesefries name = "chili cheese fries" @@ -2730,7 +2749,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chilicheesefries/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) reagents.add_reagent("capsaicin", 2) /obj/item/weapon/reagent_containers/food/snacks/friedmushroom @@ -2745,7 +2764,7 @@ /obj/item/weapon/reagent_containers/food/snacks/friedmushroom/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) /obj/item/weapon/reagent_containers/food/snacks/pisanggoreng name = "pisang goreng" @@ -2771,7 +2790,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meatbun/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) /obj/item/weapon/reagent_containers/food/snacks/custardbun name = "custard bun" @@ -2786,7 +2805,7 @@ /obj/item/weapon/reagent_containers/food/snacks/custardbun/Initialize() . = ..() reagents.add_reagent("egg", 2) - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) /obj/item/weapon/reagent_containers/food/snacks/chickenmomo name = "chicken momo" @@ -2802,7 +2821,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chickenmomo/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("spacespice", 2) /obj/item/weapon/reagent_containers/food/snacks/veggiemomo @@ -2837,7 +2856,7 @@ /obj/item/weapon/reagent_containers/food/snacks/risotto/Initialize() . = ..() - reagents.add_reagent("protein", 1) + reagents.add_reagent(PROTEIN_GOOD, 1) /obj/item/weapon/reagent_containers/food/snacks/risottoballs name = "risotto balls" @@ -2898,7 +2917,7 @@ /obj/item/weapon/reagent_containers/food/snacks/ribplate/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("triglyceride", 2) reagents.add_reagent("blackpepper", 1) reagents.add_reagent("honey", 5) @@ -2926,7 +2945,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sliceable/meatbread/Initialize() . = ..() - reagents.add_reagent("protein", 20) + reagents.add_reagent(PROTEIN_GOOD, 20) /obj/item/weapon/reagent_containers/food/snacks/meatbreadslice name = "meatbread slice" @@ -2944,7 +2963,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meatbreadslice/filled/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) reagents.add_reagent("nutriment", 2) /obj/item/weapon/reagent_containers/food/snacks/sliceable/xenomeatbread @@ -2961,7 +2980,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sliceable/xenomeatbread/Initialize() . = ..() - reagents.add_reagent("protein", 20) + reagents.add_reagent(PROTEIN_GOOD, 20) /obj/item/weapon/reagent_containers/food/snacks/xenomeatbreadslice name = "xenomeatbread slice" @@ -2979,7 +2998,7 @@ /obj/item/weapon/reagent_containers/food/snacks/xenomeatbreadslice/filled/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) /obj/item/weapon/reagent_containers/food/snacks/sliceable/bananabread name = "banana-nut bread" @@ -3089,7 +3108,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sliceable/braincake/Initialize() . = ..() - reagents.add_reagent("protein", 25) + reagents.add_reagent(PROTEIN_GOOD, 25) reagents.add_reagent("alkysine", 10) /obj/item/weapon/reagent_containers/food/snacks/braincakeslice @@ -3108,7 +3127,7 @@ /obj/item/weapon/reagent_containers/food/snacks/braincakeslice/filled/Initialize() . = ..() - reagents.add_reagent("protein", 5) + reagents.add_reagent(PROTEIN_GOOD, 5) reagents.add_reagent("alkysine", 2) /obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesecake @@ -3344,7 +3363,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sliceable/bread/Initialize() . = ..() - reagents.add_reagent("protein", 5) + reagents.add_reagent(PROTEIN_GOOD, 5) /obj/item/weapon/reagent_containers/food/snacks/breadslice name = "bread slice" @@ -3648,7 +3667,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatpizza/Initialize() . = ..() - reagents.add_reagent("protein", 44) + reagents.add_reagent(PROTEIN_GOOD, 44) reagents.add_reagent("cheese", 10) reagents.add_reagent("tomatojuice", 6) @@ -3666,7 +3685,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meatpizzaslice/filled/Initialize() . = ..() - reagents.add_reagent("protein", 7) + reagents.add_reagent(PROTEIN_GOOD, 7) reagents.add_reagent("cheese", 2) reagents.add_reagent("tomatojuice", 2) @@ -3973,7 +3992,7 @@ /obj/item/weapon/reagent_containers/food/snacks/dough/Initialize() . = ..() - reagents.add_reagent("protein", 1) + reagents.add_reagent(PROTEIN_GOOD, 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) @@ -3996,7 +4015,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough/Initialize() . = ..() - reagents.add_reagent("protein", 1) + reagents.add_reagent(PROTEIN_GOOD, 1) /obj/item/weapon/reagent_containers/food/snacks/doughslice name = "dough slice" @@ -4094,12 +4113,12 @@ icon_state = "taco" bitesize = 3 center_of_mass = list("x"=21, "y"=12) - nutriment_desc = list("taco shell with cheese") + nutriment_desc = list("taco") nutriment_amt = 4 /obj/item/weapon/reagent_containers/food/snacks/taco/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) /obj/item/weapon/reagent_containers/food/snacks/rawcutlet name = "raw cutlet" @@ -4111,7 +4130,7 @@ /obj/item/weapon/reagent_containers/food/snacks/rawcutlet/Initialize() . = ..() - reagents.add_reagent("protein", 1) + reagents.add_reagent(PROTEIN_GOOD, 1) /obj/item/weapon/reagent_containers/food/snacks/rawcutlet/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W,/obj/item/weapon/material/knife)) @@ -4132,7 +4151,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cutlet/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) /obj/item/weapon/reagent_containers/food/snacks/rawmeatball name = "raw meatball" @@ -4144,7 +4163,7 @@ /obj/item/weapon/reagent_containers/food/snacks/rawmeatball/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) /obj/item/weapon/reagent_containers/food/snacks/hotdog name = "hotdog" @@ -4155,7 +4174,7 @@ /obj/item/weapon/reagent_containers/food/snacks/hotdog/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) /obj/item/weapon/reagent_containers/food/snacks/flatbread name = "flatbread" @@ -4208,9 +4227,16 @@ trash = /obj/item/trash/tastybread filling_color = "#A66829" center_of_mass = list("x"=17, "y"=16) - nutriment_desc = list("stale bread" = 4) nutriment_type = NUTRIMENT_BAD + nutriment_desc = list("carbs" = 4) nutriment_amt = 4 + flavoring_desc = list("bread" = 4) + flavoring_amt = 4 + bitesize = 4 + +/obj/item/weapon/reagent_containers/food/snacks/tastybread/Initialize() + . = ..() + reagents.add_reagent("sodiumchloride", 4) /obj/item/weapon/reagent_containers/food/snacks/skrellsnacks name = "\improper SkrellSnax" @@ -4218,10 +4244,10 @@ icon_state = "skrellsnacks" filling_color = "#A66829" center_of_mass = list("x"=15, "y"=12) - nutriment_desc = list("alien fungus" = 10) nutriment_type = NUTRIMENT_BAD + nutriment_desc = list("fungus" = 10) nutriment_amt = 10 - bitesize = 3 + bitesize = 2 /obj/item/weapon/reagent_containers/food/snacks/friedkois name = "fried k'ois" @@ -4346,14 +4372,17 @@ desc = "Made from stok meat, packed into a crispy crust." trash = /obj/item/trash/meatsnack filling_color = "#631212" - nutriment_desc = list("pie crust" = 2) nutriment_type = NUTRIMENT_BAD - nutriment_amt = 2 - bitesize = 5 + nutriment_desc = list("pastry" = 4) + nutriment_amt = 4 + flavoring_desc = list("stok" = 2) + flavoring_amt = 2 /obj/item/weapon/reagent_containers/food/snacks/meatsnack/Initialize() . = ..() - reagents.add_reagent("protein", 12) + reagents.add_reagent(PROTEIN_BAD, 10) + reagents.add_reagent("sodiumchloride", 5) + bitesize = 5 /obj/item/weapon/reagent_containers/food/snacks/maps name = "maps salty ham" @@ -4362,12 +4391,15 @@ trash = /obj/item/trash/maps filling_color = "#631212" nutriment_type = NUTRIMENT_BAD + flavoring_desc = list("spaced ham" = 6) + flavoring_amt = 6 bitesize = 3 /obj/item/weapon/reagent_containers/food/snacks/maps/Initialize() . = ..() - reagents.add_reagent("protein", 6) - reagents.add_reagent("sodiumchloride", 3) + reagents.add_reagent("water", 1) + reagents.add_reagent(PROTEIN_BAD, 10) + reagents.add_reagent("sodiumchloride", 10) /obj/item/weapon/reagent_containers/food/snacks/nathisnack name = "razi-snack corned beef" @@ -4376,12 +4408,15 @@ trash = /obj/item/trash/nathisnack nutriment_type = NUTRIMENT_BAD filling_color = "#631212" + flavoring_desc = list("spaced beef" = 6) + flavoring_amt = 6 bitesize = 4 /obj/item/weapon/reagent_containers/food/snacks/nathisnack/Initialize() . = ..() - reagents.add_reagent("protein", 10) + reagents.add_reagent(PROTEIN_BAD, 10) reagents.add_reagent("iron", 3) + reagents.add_reagent("sodiumchloride", 10) /obj/item/weapon/reagent_containers/food/snacks/pancakes name = "pancakes" @@ -4402,7 +4437,7 @@ /obj/item/weapon/reagent_containers/food/snacks/classichotdog/Initialize() . = ..() - reagents.add_reagent("protein", 16) + reagents.add_reagent(PROTEIN_GOOD, 16) /obj/item/weapon/reagent_containers/food/snacks/lasagna name = "lasagna" @@ -4416,7 +4451,7 @@ /obj/item/weapon/reagent_containers/food/snacks/classichotdog/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) /obj/item/weapon/reagent_containers/food/snacks/donerkebab name = "doner kebab" @@ -4428,7 +4463,7 @@ /obj/item/weapon/reagent_containers/food/snacks/donerkebab/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) /obj/item/weapon/reagent_containers/food/snacks/sashimi name = "carp sashimi" @@ -4453,7 +4488,7 @@ var/shape = pick("lump", "star", "lizard", "corgi") desc = "A chicken nugget vaguely shaped like a [shape]." icon_state = "nugget_[shape]" - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) /obj/item/weapon/reagent_containers/food/snacks/icecreamsandwich name = "ice cream sandwich" @@ -4660,7 +4695,7 @@ /obj/item/weapon/reagent_containers/food/snacks/burrito/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) /obj/item/weapon/reagent_containers/food/snacks/burrito_vegan @@ -4687,7 +4722,7 @@ /obj/item/weapon/reagent_containers/food/snacks/burrito_spicy/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) /obj/item/weapon/reagent_containers/food/snacks/burrito_cheese name = "meat cheese burrito" @@ -4700,7 +4735,7 @@ /obj/item/weapon/reagent_containers/food/snacks/burrito_cheese/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) /obj/item/weapon/reagent_containers/food/snacks/burrito_cheese_spicy name = "spicy cheese meat burrito" @@ -4713,7 +4748,7 @@ /obj/item/weapon/reagent_containers/food/snacks/burrito_cheese_spicy/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) /obj/item/weapon/reagent_containers/food/snacks/burrito_hell name = "el diablo" @@ -4726,7 +4761,7 @@ /obj/item/weapon/reagent_containers/food/snacks/burrito_hell/Initialize() . = ..() - reagents.add_reagent("protein", 9) + reagents.add_reagent(PROTEIN_GOOD, 9) reagents.add_reagent("condensedcapsaicin", 20) //what could possibly go wrong /obj/item/weapon/reagent_containers/food/snacks/burrito_mystery @@ -4749,7 +4784,7 @@ /obj/item/weapon/reagent_containers/food/snacks/rawbacon/Initialize() . = ..() - reagents.add_reagent("protein", 0.33) + reagents.add_reagent(PROTEIN_GOOD, 0.33) /obj/item/weapon/reagent_containers/food/snacks/bacon name = "bacon" @@ -4777,7 +4812,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bacon/Initialize() . = ..() - reagents.add_reagent("protein", 0.33) + reagents.add_reagent(PROTEIN_GOOD, 0.33) reagents.add_reagent("triglyceride", 1) /obj/item/weapon/reagent_containers/food/snacks/chilied_eggs @@ -4789,7 +4824,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chilied_eggs/Initialize() . = ..() reagents.add_reagent("egg", 6) - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) /obj/item/weapon/reagent_containers/food/snacks/hatchling_suprise name = "hatchling suprise" @@ -4800,7 +4835,7 @@ /obj/item/weapon/reagent_containers/food/snacks/hatchling_suprise/Initialize() . = ..() reagents.add_reagent("egg", 2) - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) /obj/item/weapon/reagent_containers/food/snacks/red_sun_special name = "red sun special" @@ -4810,7 +4845,7 @@ /obj/item/weapon/reagent_containers/food/snacks/red_sun_special/Initialize() . = ..() - reagents.add_reagent("protein", 2) + reagents.add_reagent(PROTEIN_GOOD, 2) /obj/item/weapon/reagent_containers/food/snacks/riztizkzi_sea name = "moghresian sea delight" @@ -4831,7 +4866,7 @@ /obj/item/weapon/reagent_containers/food/snacks/father_breakfast/Initialize() . = ..() reagents.add_reagent("egg", 4) - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) /obj/item/weapon/reagent_containers/food/snacks/stuffed_meatball name = "stuffed meatball" //YES @@ -4840,7 +4875,7 @@ /obj/item/weapon/reagent_containers/food/snacks/stuffed_meatball/Initialize() . = ..() - reagents.add_reagent("protein", 4) + reagents.add_reagent(PROTEIN_GOOD, 4) /obj/item/weapon/reagent_containers/food/snacks/egg_pancake name = "meat pancake" @@ -4850,7 +4885,7 @@ /obj/item/weapon/reagent_containers/food/snacks/stuffed_meatball/Initialize() . = ..() - reagents.add_reagent("protein", 6) + reagents.add_reagent(PROTEIN_GOOD, 6) reagents.add_reagent("egg", 2) /obj/item/weapon/reagent_containers/food/snacks/sliceable/grilled_carp @@ -4902,7 +4937,6 @@ bitesize = 2 center_of_mass = list("x"=16, "y"=16) nutriment_desc = list("butter" = 1) - nutriment_amt = 0 /obj/item/weapon/reagent_containers/food/snacks/spreads/Initialize() . = ..() @@ -4915,7 +4949,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bacon_stick/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) reagents.add_reagent("egg", 1) /obj/item/weapon/reagent_containers/food/snacks/cheese_cracker @@ -4933,7 +4967,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bacon_and_eggs/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) reagents.add_reagent("egg", 1) /obj/item/weapon/reagent_containers/food/snacks/sweet_and_sour @@ -4946,7 +4980,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sweet_and_sour/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) /obj/item/weapon/reagent_containers/food/snacks/corn_dog name = "corn dog" @@ -4957,7 +4991,36 @@ /obj/item/weapon/reagent_containers/food/snacks/corn_dog/Initialize() . = ..() - reagents.add_reagent("protein", 3) + reagents.add_reagent(PROTEIN_GOOD, 3) + +/obj/item/weapon/reagent_containers/food/snacks/meatloaf + name = "meatloaf" + desc = "A hefty slice of meatloaf. Made from the finest leftovers!" + icon_state = "meatloaf" + +/obj/item/weapon/reagent_containers/food/snacks/meatloaf/Initialize() + . = ..() + reagents.add_reagent(PROTEIN_BAD, 10) + +/obj/item/weapon/reagent_containers/food/snacks/meatloaf/cook() //hacky way to deal with a problem but whatever + . = ..() + reagents.remove_reagent(PROTEIN_BAD, 10) + +/obj/item/weapon/reagent_containers/food/snacks/greenloaf + name = "greenloaf" + desc = "Meatloaf that is so cheap it doesn't contain any meat." + icon_state = "greenloaf" + +/obj/item/weapon/reagent_containers/food/snacks/greenloaf/Initialize() + . = ..() + reagents.add_reagent("slop", 10) + +/obj/item/weapon/reagent_containers/food/snacks/greenloaf/cook() + . = ..() + reagents.remove_reagent("slop", 10) #undef NUTRIMENT_GOOD #undef NUTRIMENT_BAD + +#undef PROTEIN_GOOD +#undef PROTEIN_BAD \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/food/snacks/meat.dm b/code/modules/reagents/reagent_containers/food/snacks/meat.dm index da81a724c6a..e3ae29ef6b2 100644 --- a/code/modules/reagents/reagent_containers/food/snacks/meat.dm +++ b/code/modules/reagents/reagent_containers/food/snacks/meat.dm @@ -70,7 +70,8 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/biogenerated/Initialize() . = ..() reagents.clear_reagents() - reagents.add_reagent("nutriment",6) + reagents.add_reagent("synprotein",6) + reagents.add_reagent("triglyceride", 1) /obj/item/weapon/reagent_containers/food/snacks/meat/chicken/Initialize() . = ..() diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 5070f5ffcf5..eb94ce4b47f 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -117,7 +117,7 @@ user << "[target] is empty." return - if(!target.is_open_container() && !istype(target, /obj/structure/reagent_dispensers) && !istype(target, /obj/item/slime_extract)) + if(istype(target, /obj/item/weapon/reagent_containers/food/snacks) || (!target.is_open_container() && !istype(target, /obj/structure/reagent_dispensers) && !istype(target, /obj/item/slime_extract))) user << "You cannot directly remove reagents from this object." return @@ -137,7 +137,7 @@ if(istype(target, /obj/item/weapon/implantcase/chem)) return - if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/weapon/reagent_containers/food) && !istype(target, /obj/item/slime_extract) && !istype(target, /obj/item/clothing/mask/smokable/cigarette) && !istype(target, /obj/item/weapon/storage/fancy/cigarettes)) + if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/slime_extract) && !istype(target, /obj/item/clothing/mask/smokable/cigarette) && !istype(target, /obj/item/weapon/storage/fancy/cigarettes)) user << "You cannot directly fill this object." return if(!target.reagents.get_free_space()) diff --git a/html/changelogs/burgerbb-love.yml b/html/changelogs/burgerbb-love.yml new file mode 100644 index 00000000000..e878dbd9dc4 --- /dev/null +++ b/html/changelogs/burgerbb-love.yml @@ -0,0 +1,10 @@ +author: BurgerBB + +delete-after: True + +changes: + - rscadd: "Added synthetic protein, which exists in vendor food as well as the biogenerated meat." + - rscadd: "Grown food, as well as cooked food in the kitchen, provides slight stamina and stamina regen buffs to crewmembers when consumed. Junkfood is the opposite where it reduces stamina and stamina regen when consumed." + - rscadd: "Consuming too much sugar can lead to sugar crashes. Sugar is now considered a nutrient, and therefor deals damage to Vaurca when consumed." + - balance: "Meat and nutrients processed in the blender turn to muck or slop, respectively. This only affects: Animal protein, seafood, and nutrient. Meatloaf can be made with muck, greenloaf can be made with slop. Slop and muck still give beneifts, but they're not as powerful as their fresh counterparts." + - balance: "Syringes can no longer extract reagents from food." \ No newline at end of file diff --git a/icons/obj/food.dmi b/icons/obj/food.dmi index 582b1dcf091..e30448de9a3 100644 Binary files a/icons/obj/food.dmi and b/icons/obj/food.dmi differ