diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm index bedf2c894b03..e43ffd7cb182 100644 --- a/code/game/objects/effects/spawners/lootdrop.dm +++ b/code/game/objects/effects/spawners/lootdrop.dm @@ -1273,5 +1273,5 @@ /obj/item/storage/ration/blackened_calamari = 5, /obj/item/storage/ration/elbow_macaroni = 5, /obj/item/storage/ration/cheese_pizza_slice = 5, - /obj/item/storage/ration/crayons + /obj/item/storage/ration/crayons = 2 // :) ) diff --git a/code/game/objects/items/storage/ration.dm b/code/game/objects/items/storage/ration.dm index 5d0e2972954e..482ba202a73e 100644 --- a/code/game/objects/items/storage/ration.dm +++ b/code/game/objects/items/storage/ration.dm @@ -35,7 +35,6 @@ icon_state = "[icon_state]_open" return ..() - /obj/item/storage/ration/vegan_chili name = "vegan chili with beans ration" desc = "A complete meal package containing a hearty vegan chili with beans, complemented by vegetable crackers, savory cornbread, flavorful pizza crackers, and more. A perfect choice for plant-based nourishment." @@ -47,7 +46,7 @@ /obj/item/reagent_containers/food/snacks/ration/side/cornbread = 1, /obj/item/reagent_containers/food/snacks/ration/snack/pizza_crackers = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/cheese_spread = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/grape_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/grape_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside,src) @@ -63,7 +62,7 @@ /obj/item/reagent_containers/food/snacks/ration/snack/fruit_puree = 1, /obj/item/reagent_containers/food/snacks/ration/snack/cinnamon_bun = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/hot_cheese_spread = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/chocolate_protein_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/chocolate_protein_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside,src) @@ -79,7 +78,7 @@ /obj/item/reagent_containers/food/snacks/ration/snack/dried_raisins = 1, /obj/item/reagent_containers/food/snacks/ration/side/bread_sticks = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/cheese_spread = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/lemonade_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/lemonade_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside,src) @@ -96,7 +95,7 @@ /obj/item/reagent_containers/food/snacks/ration/snack/corn_kernels = 1, /obj/item/reagent_containers/food/snacks/ration/bar/energy_bar = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/cheese_spread = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/fruit_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/fruit_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside,src) @@ -113,12 +112,11 @@ /obj/item/reagent_containers/food/snacks/ration/snack/blackberry_preserves = 1, /obj/item/reagent_containers/food/snacks/ration/snack/candy_rings = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/peanut_butter = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/fruit_smoothie_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/fruit_smoothie_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside,src) - /obj/item/storage/ration/chili_macaroni name = "chili and macaroni ration" desc = "Indulge in the comforting combination of chili and macaroni in this flavorful ration. Satisfy your taste buds with a mix of sweet and savory treats." @@ -131,7 +129,7 @@ /obj/item/reagent_containers/food/snacks/ration/snack/lemon_pound_cake = 1, /obj/item/reagent_containers/food/snacks/ration/snack/cherry_snackers = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/hot_cheese_spread = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/orange_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/orange_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -147,7 +145,7 @@ /obj/item/reagent_containers/food/snacks/ration/snack/strawberry_preserves = 1, /obj/item/reagent_containers/food/snacks/ration/snack/mint_chocolate_snack_cake = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/peanut_butter = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/cherry_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/cherry_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -164,7 +162,7 @@ /obj/item/reagent_containers/food/snacks/ration/side/wheat_bread = 1, /obj/item/reagent_containers/food/snacks/ration/snack/sour_gummy_worms = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/garlic_cheese_spread = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/freeze_dried_coffee_orange = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/freeze_dried_coffee_orange = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -180,7 +178,7 @@ /obj/item/reagent_containers/food/snacks/ration/side/pretzel_sticks_honey_mustard = 1, /obj/item/reagent_containers/food/snacks/ration/snack/blue_raspberry_candies = 1, /obj/item/reagent_containers/food/snacks/ration/snack/peanut_cranberry_mix = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/freeze_dried_coffee_chocolate = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/freeze_dried_coffee_chocolate = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -212,7 +210,7 @@ /obj/item/reagent_containers/food/snacks/ration/side/pretzel_sticks_honey_mustard = 1, /obj/item/reagent_containers/food/snacks/ration/snack/pick_me_up_energy_gum = 1, /obj/item/reagent_containers/food/snacks/ration/bar/rationers_guild_chocolate_bar = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/freeze_dried_coffee_hazelnut = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/freeze_dried_coffee_hazelnut = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -228,7 +226,7 @@ /obj/item/reagent_containers/food/snacks/ration/side/fried_potato_curls = 1, /obj/item/reagent_containers/food/snacks/ration/snack/chocolate_orange_snack_cake = 1, /obj/item/reagent_containers/food/snacks/ration/snack/apple_slices = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/pineapple_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/pineapple_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -237,7 +235,6 @@ name = "assorted salted offal ration" desc = "An adventurous choice, this ration offers an assortment of salted offal, providing a unique culinary experience." - /obj/item/storage/ration/assorted_salted_offal/PopulateContents() var/static/items_inside = list( /obj/item/reagent_containers/food/snacks/ration/entree/assorted_salted_offal = 1, @@ -262,7 +259,7 @@ /obj/item/reagent_containers/food/snacks/ration/side/maple_muffin = 1, /obj/item/reagent_containers/food/snacks/ration/snack/smoked_almonds = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/maple_syrup = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/grape_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/grape_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -279,7 +276,7 @@ /obj/item/reagent_containers/food/snacks/ration/snack/chocolate_chunk_oatmeal_cookie = 1, /obj/item/reagent_containers/food/snacks/ration/snack/peanut_candies = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/bacon_cheddar_cheese_spread = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/orange_beverage_sugar_free = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/orange_beverage_sugar_free = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -296,7 +293,7 @@ /obj/item/reagent_containers/food/snacks/ration/snack/strawberry_preserves = 1, /obj/item/reagent_containers/food/snacks/ration/snack/patriotic_sugar_cookies = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/chunky_peanut_butter = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/orange_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/orange_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -312,7 +309,7 @@ /obj/item/reagent_containers/food/snacks/ration/side/vegan_crackers = 1, /obj/item/reagent_containers/food/snacks/ration/snack/oatmeal_cookie = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/hot_cheese_spread = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/lemonade_beverage_suger_free = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/lemonade_beverage_suger_free = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -329,7 +326,7 @@ /obj/item/reagent_containers/food/snacks/ration/snack/dried_cranberries = 1, /obj/item/reagent_containers/food/snacks/ration/snack/dry_roasted_peanuts = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/cheese_spread = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/orange_beverage_sugar_free = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/orange_beverage_sugar_free = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -346,7 +343,7 @@ /obj/item/reagent_containers/food/snacks/ration/side/white_bread_mini_loaf = 1, /obj/item/reagent_containers/food/snacks/ration/snack/strawberry_preserves = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/peanut_butter = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/chocolate_protein_beverage = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/chocolate_protein_beverage = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) @@ -363,7 +360,7 @@ /obj/item/reagent_containers/food/snacks/ration/snack/jalapeno_cashews = 1, /obj/item/reagent_containers/food/snacks/ration/bar/quik_energy_bar_chocolate = 1, /obj/item/reagent_containers/food/snacks/ration/condiment/chunky_peanut_butter = 1, - /obj/item/reagent_containers/food/snacks/ration/condiment/grape_beverage_sugar_free = 1, + /obj/item/reagent_containers/food/snacks/ration/pack/grape_beverage_sugar_free = 1, /obj/item/ration_heater = 1 ) generate_items_inside(items_inside, src) diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 06c2b28e903c..8db4c2846dcb 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -772,4 +772,6 @@ return ..() /obj/item/reagent_containers/food/drinks/ration/pan_genezan_vodka - list_reagents = list(/datum/reagent/consumable/ethanol/vodka = 30) + name = "Pan-Genezan vodka" + desc = "Vodka made from the finest potatoes." + list_reagents = list(/datum/reagent/consumable/ethanol/vodka = 15) diff --git a/code/modules/food_and_drinks/food/ration.dm b/code/modules/food_and_drinks/food/ration.dm index ab6c72d55516..b74db1f0ccb7 100644 --- a/code/modules/food_and_drinks/food/ration.dm +++ b/code/modules/food_and_drinks/food/ration.dm @@ -33,7 +33,6 @@ to_chat(user, "You tear open \the [src].") playsound(user.loc, 'sound/effects/rip3.ogg', 50) reagents.flags |= OPENCONTAINER - spillable = TRUE desc += "\nIt's been opened." update_overlays() @@ -52,6 +51,8 @@ /obj/item/reagent_containers/food/snacks/ration/microwave_act(obj/machinery/microwave/Heater) if (cookable == FALSE) ..() + else if (cooked == TRUE) + ..() else name = "warm [initial(name)]" bonus_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/nutriment/vitamin = 2) @@ -60,7 +61,7 @@ /obj/item/reagent_containers/food/snacks/ration/examine(mob/user) . = ..() if(cookable && !cooked) - . += "It can be cooked in a microwave or warmed using a flameless ration heater.\n" + . += "It can be cooked in a microwave or warmed using a flameless ration heater." /obj/item/reagent_containers/food/snacks/ration/entree icon_state = "ration_main" @@ -79,6 +80,71 @@ icon_state = "ration_bar" list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/sugar = 2) +/obj/item/reagent_containers/food/snacks/ration/condiment + name = "condiment pack" + desc = "Just your average condiment pacl." + icon_state = "ration_condi" + volume = 10 + amount_per_transfer_from_this = 10 + possible_transfer_amounts = list() + +/obj/item/reagent_containers/food/snacks/ration/condiment/attack(mob/living/M, mob/user, def_zone) + if (!is_drainable()) + to_chat(user, "[src] is sealed shut!") + return 0 + else + to_chat(user, "[src] cant be eaten like that!") + return 0 + +/obj/item/reagent_containers/food/snacks/ration/condiment/afterattack(obj/target, mob/user , proximity) + . = ..() + if(!is_drainable()) + to_chat(user, "[src] is sealed shut!") + return + if(!proximity) + return + //You can tear the bag open above food to put the condiments on it, obviously. + if(istype(target, /obj/item/reagent_containers/food/snacks)) + if(target.reagents.total_volume >= target.reagents.maximum_volume) + to_chat(user, "[target] is too full!" ) + return + else + to_chat(user, "You tear open [src] above [target] and the condiments drip onto it.") + src.reagents.trans_to(target, amount_per_transfer_from_this, transfered_by = user) + qdel(src) + +/obj/item/reagent_containers/food/snacks/ration/pack + name = "powder pack" + desc = "Mix into a bottle of water and shake." + icon_state = "ration_condi" + volume = 10 + amount_per_transfer_from_this = 10 + possible_transfer_amounts = list() + +/obj/item/reagent_containers/food/snacks/ration/pack/attack(mob/living/M, mob/user, def_zone) + if (!is_drainable()) + to_chat(user, "[src] is sealed shut!") + return 0 + else + to_chat(user, "[src] cant be eaten like that!") + return 0 + +/obj/item/reagent_containers/food/snacks/ration/pack/afterattack(obj/target, mob/user , proximity) + . = ..() + if(!is_drainable()) + to_chat(user, "[src] is sealed shut!") + return + if(!proximity) + return + if(istype(target, /obj/item/reagent_containers)) + if(target.reagents.total_volume >= target.reagents.maximum_volume) + to_chat(user, "[target] is too full!" ) + return + else + to_chat(user, "You pour the [src] into [target] and shake.") + src.reagents.trans_to(target, amount_per_transfer_from_this, transfered_by = user) + qdel(src) + /obj/item/reagent_containers/food/snacks/ration/entree/vegan_chili name = "vegan chili with beans" desc = "A hearty and flavorful vegan chili made with beans. It's so delicious, you won't believe it's not meat!" @@ -218,6 +284,7 @@ filling_color = "#ffcc00" tastes = list("cheese" = 1, "pizza" = 1) foodtype = GRAIN | DAIRY + /obj/item/reagent_containers/food/snacks/ration/side/vegan_crackers name = "vegetable 'crackers'" desc = "Delicious vegetable-based crackers that are the perfect crunchy and nutritious snack." @@ -277,6 +344,7 @@ filling_color = "#e6e600" tastes = list("garlic" = 1, "potatoes" = 1) foodtype = GRAIN | VEGETABLES + cookable = TRUE /obj/item/reagent_containers/food/snacks/ration/side/soup_crackers name = "soup crackers" @@ -291,6 +359,7 @@ filling_color = "#b82121" tastes = list("mushrooms" = 1, "chili" = 1) foodtype = VEGETABLES | MEAT + cookable = TRUE /obj/item/reagent_containers/food/snacks/ration/side/white_sandwich_bread name = "white sandwich bread" @@ -319,13 +388,15 @@ filling_color = "#99cc00" tastes = list("asparagus" = 1, "butter" = 1) foodtype = VEGETABLES + cookable = TRUE /obj/item/reagent_containers/food/snacks/ration/side/broth_tuna_rice - name = "broth with tuna and rice" + name = "bone broth with tuna and rice" desc = "A warm and comforting broth with tender tuna and rice, offering a nourishing and satisfying meal." filling_color = "#669999" tastes = list("broth" = 1, "tuna" = 1, "rice" = 1) foodtype = MEAT | GRAIN + cookable = TRUE /obj/item/reagent_containers/food/snacks/ration/side/trail_crackers name = "trail crackers" @@ -335,11 +406,12 @@ foodtype = GRAIN | FRUIT /obj/item/reagent_containers/food/snacks/ration/side/hash_brown_bacon - name = "hash brown with bacon" + name = "hash brown potatoes with bacon, peppers and onions" desc = "Crispy hash brown paired with savory bacon, creating a satisfying and indulgent snack option." filling_color = "#ffcc00" tastes = list("hash brown" = 1, "bacon" = 1) foodtype = GRAIN | MEAT + cookable = TRUE /obj/item/reagent_containers/food/snacks/ration/side/granola_milk_blueberries name = "granola with milk and blueberries" @@ -361,6 +433,7 @@ filling_color = "#ffcc00" tastes = list("au gratin potatoes" = 1) foodtype = GRAIN | DAIRY | VEGETABLES + cookable = TRUE /obj/item/reagent_containers/food/snacks/ration/side/applesauce_carb_enhanced name = "carb-enhanced applesauce" @@ -410,6 +483,7 @@ filling_color = "#663300" tastes = list("crackers" = 1) foodtype = GRAIN + /obj/item/reagent_containers/food/snacks/ration/side/barbecue_fried_pork_rinds name = "barbecue fried pork rinds" desc = "Crispy and flavorful fried pork rinds coated in a savory barbecue seasoning, creating a satisfying snack option." @@ -451,6 +525,7 @@ filling_color = "#e2a054" tastes = list("chocolate" = 1, "pastry" = 1, "sweet" = 1) foodtype = SUGAR | GRAIN | JUNKFOOD | BREAKFAST + cookable = TRUE /obj/item/reagent_containers/food/snacks/ration/snack/dried_raisins name = "dried raisins" @@ -655,33 +730,6 @@ tastes = list("chocolate" = 1) foodtype = SUGAR -/obj/item/reagent_containers/food/snacks/ration/condiment - name = "condiment bottle" - desc = "Just your average condiment bottle." - icon_state = "ration_condi" - volume = 10 - amount_per_transfer_from_this = 10 - possible_transfer_amounts = list() - -/obj/item/reagent_containers/food/snacks/ration/condiment/afterattack(obj/target, mob/user , proximity) - . = ..() - if(!is_drainable()) - to_chat(user, "The [src] is sealed shut!") - return - if(!proximity) - return - - //You can tear the bag open above food to put the condiments on it, obviously. - if(istype(target, /obj/item/reagent_containers/food/snacks)) - if(target.reagents.total_volume >= target.reagents.maximum_volume) - to_chat(user, "You tear open [src], but [target] is stacked so high that it just drips off!" ) - qdel(src) - return - else - to_chat(user, "You tear open [src] above [target] and the condiments drip onto it.") - src.reagents.trans_to(target, amount_per_transfer_from_this, transfered_by = user) - qdel(src) - /obj/item/reagent_containers/food/snacks/ration/condiment/cheese_spread name = "cheese spread pack" list_reagents = list(/datum/reagent/consumable/cheese_spread = 8) @@ -710,58 +758,58 @@ name = "maple syrup pack" list_reagents = list(/datum/reagent/consumable/sugar = 10) -/obj/item/reagent_containers/food/snacks/ration/condiment/chocolate_protein_beverage +/obj/item/reagent_containers/food/snacks/ration/pack/chocolate_protein_beverage name = "chocolate hazelnut protein drink powder pack" list_reagents = list(/datum/reagent/consumable/coco = 5, /datum/reagent/consumable/eggyolk = 5) -/obj/item/reagent_containers/food/snacks/ration/condiment/fruit_beverage +/obj/item/reagent_containers/food/snacks/ration/pack/fruit_beverage name = "fruit punch beverage powder, carb-electrolyte pack" list_reagents = list(/datum/reagent/consumable/sugar = 5, /datum/reagent/consumable/applejuice = 2, /datum/reagent/consumable/orangejuice = 2) -/obj/item/reagent_containers/food/snacks/ration/condiment/fruit_smoothie_beverage +/obj/item/reagent_containers/food/snacks/ration/pack/fruit_smoothie_beverage name = "tropical blend fruit and vegetable smoothie powder pack" list_reagents = list(/datum/reagent/consumable/pineapplejuice = 3, /datum/reagent/consumable/orangejuice = 3, /datum/reagent/consumable/eggyolk = 3) -/obj/item/reagent_containers/food/snacks/ration/condiment/grape_beverage +/obj/item/reagent_containers/food/snacks/ration/pack/grape_beverage name = "grape beverage powder, carb-fortified pack" list_reagents = list(/datum/reagent/consumable/sugar = 5, /datum/reagent/consumable/grapejuice = 5) -/obj/item/reagent_containers/food/snacks/ration/condiment/grape_beverage_sugar_free +/obj/item/reagent_containers/food/snacks/ration/pack/grape_beverage_sugar_free name = "sugar-free grape beverage base powder" list_reagents = list(/datum/reagent/consumable/grapejuice = 10) -/obj/item/reagent_containers/food/snacks/ration/condiment/lemonade_beverage +/obj/item/reagent_containers/food/snacks/ration/pack/lemonade_beverage name = "lemonade drink powder pack" list_reagents = list(/datum/reagent/consumable/sugar = 5, /datum/reagent/consumable/lemonjuice = 5) -/obj/item/reagent_containers/food/snacks/ration/condiment/lemonade_beverage_suger_free +/obj/item/reagent_containers/food/snacks/ration/pack/lemonade_beverage_suger_free name = "lemonade sugar-free beverage base pack" list_reagents = list(/datum/reagent/consumable/lemonjuice = 10) -/obj/item/reagent_containers/food/snacks/ration/condiment/orange_beverage +/obj/item/reagent_containers/food/snacks/ration/pack/orange_beverage name = "orange beverage powder, carb-fortified pack" list_reagents = list(/datum/reagent/consumable/sugar = 5, /datum/reagent/consumable/orangejuice = 5) -/obj/item/reagent_containers/food/snacks/ration/condiment/orange_beverage_sugar_free +/obj/item/reagent_containers/food/snacks/ration/pack/orange_beverage_sugar_free name = "orange beverage base, sugar-free pack" list_reagents = list(/datum/reagent/consumable/orangejuice = 10) -/obj/item/reagent_containers/food/snacks/ration/condiment/cherry_beverage +/obj/item/reagent_containers/food/snacks/ration/pack/cherry_beverage name = "cherry high-energy beverage powder pack" list_reagents = list(/datum/reagent/consumable/sugar = 5, /datum/reagent/consumable/cherryjelly = 5) -/obj/item/reagent_containers/food/snacks/ration/condiment/pineapple_beverage +/obj/item/reagent_containers/food/snacks/ration/pack/pineapple_beverage name = "pinapple fruit beverage base pack" list_reagents = list(/datum/reagent/consumable/pineapplejuice = 10) -/obj/item/reagent_containers/food/snacks/ration/condiment/freeze_dried_coffee_orange +/obj/item/reagent_containers/food/snacks/ration/pack/freeze_dried_coffee_orange name = "freeze-dried coffee flavored with orange pack" list_reagents = list(/datum/reagent/consumable/coffee = 5, /datum/reagent/consumable/orangejuice = 3) -/obj/item/reagent_containers/food/snacks/ration/condiment/freeze_dried_coffee_chocolate +/obj/item/reagent_containers/food/snacks/ration/pack/freeze_dried_coffee_chocolate name = "freeze-dried coffee flavored with chocolate pack" list_reagents = list(/datum/reagent/consumable/coffee = 5, /datum/reagent/consumable/coco = 3) -/obj/item/reagent_containers/food/snacks/ration/condiment/freeze_dried_coffee_hazelnut +/obj/item/reagent_containers/food/snacks/ration/pack/freeze_dried_coffee_hazelnut name = "freeze-dried coffee flavored with hazelnut pack" list_reagents = list(/datum/reagent/consumable/coffee = 5, /datum/reagent/consumable/coco = 3) diff --git a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm index ba728daf7797..5736d187fc78 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm @@ -362,6 +362,7 @@ /obj/item/ration_heater name = "flameless ration heater" + desc = "A magnisium based ration heater. It can be used to heat up entrees and other food items. reaches the same temperature as a microwave with half the volume." icon = 'icons/obj/food/ration.dmi' icon_state = "ration_package" grind_results = list(/datum/reagent/iron = 10, /datum/reagent/water = 10, /datum/reagent/consumable/sodiumchloride = 5) @@ -382,7 +383,7 @@ RegisterSignal(tocook, COMSIG_PARENT_QDELETING, PROC_REF(clear_cooking)) target.add_overlay(ration_overlay) addtimer(CALLBACK(src, .proc/cook), 100) - visible_message("\The [target] rapidly begins cooking...") + target.visible_message("\The [target] rapidly begins cooking...") playsound(src, 'sound/items/cig_light.ogg', 50, 1) moveToNullspace() @@ -391,22 +392,27 @@ UnregisterSignal(tocook, COMSIG_PARENT_QDELETING) tocook.cut_overlay(ration_overlay) tocook = null + /obj/item/ration_heater/proc/cook() - var/cookturf = get_turf(tocook) - tocook.visible_message("\The [tocook] is done warming up!") - playsound(tocook, 'sound/items/cig_snuff.ogg', 50, 1) - if(istype(tocook, /obj/item/reagent_containers/food) || istype(tocook, /obj/item/grown)) - clear_cooking() - tocook.microwave_act() - if(uses == 0) - qdel() - else - uses-- - src.forceMove(cookturf) + if(!QDELETED(tocook)) + var/cookturf = get_turf(tocook) + tocook.visible_message("\The [src] lets out a final hiss...") + playsound(tocook, 'sound/items/cig_snuff.ogg', 50, 1) + if(istype(tocook, /obj/item/reagent_containers/food) || istype(tocook, /obj/item/grown)) + tocook.visible_message("\The [tocook] is done warming up!") + tocook.microwave_act() + if(!QDELETED(tocook)) + clear_cooking() + if(uses == 0) + qdel() + else + uses-- + src.forceMove(cookturf) /obj/item/ration_heater/examine(mob/user) . = ..() . += "It has [uses] uses left..." + . += "Examine rations to see which ones can be microwaved." #undef MICROWAVE_NORMAL #undef MICROWAVE_MUCK