diff --git a/code/modules/food_and_drinks/food/snacks_frozen.dm b/code/modules/food_and_drinks/food/snacks_frozen.dm index b2447460cf4..694fbd55fff 100644 --- a/code/modules/food_and_drinks/food/snacks_frozen.dm +++ b/code/modules/food_and_drinks/food/snacks_frozen.dm @@ -6,7 +6,7 @@ /obj/item/reagent_containers/food/snacks/icecreamsandwich name = "icecream sandwich" desc = "Portable Ice-cream in its own packaging." - icon = 'icons/obj/food/food.dmi' + icon = 'icons/obj/food/frozen_treats.dmi' icon_state = "icecreamsandwich" bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/ice = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/ice = 2) @@ -16,6 +16,7 @@ /obj/item/reagent_containers/food/snacks/spacefreezy name = "space freezy" desc = "The best icecream in space." + icon = 'icons/obj/food/frozen_treats.dmi' icon_state = "spacefreezy" bonus_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/nutriment/vitamin = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/bluecherryjelly = 5, /datum/reagent/consumable/nutriment/vitamin = 4) @@ -26,6 +27,7 @@ /obj/item/reagent_containers/food/snacks/sundae name = "sundae" desc = "A classic dessert." + icon = 'icons/obj/food/frozen_treats.dmi' icon_state = "sundae" bonus_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/nutriment/vitamin = 1) list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/banana = 5, /datum/reagent/consumable/nutriment/vitamin = 2) @@ -36,6 +38,7 @@ /obj/item/reagent_containers/food/snacks/honkdae name = "honkdae" desc = "The clown's favorite dessert." + icon = 'icons/obj/food/frozen_treats.dmi' icon_state = "honkdae" bonus_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/nutriment/vitamin = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/banana = 10, /datum/reagent/consumable/nutriment/vitamin = 4) @@ -50,7 +53,7 @@ /obj/item/reagent_containers/food/snacks/snowcones //We use this as a base for all other snowcones name = "flavorless snowcone" desc = "It's just shaved ice. Still fun to chew on." - icon = 'icons/obj/food/snowcones.dmi' + icon = 'icons/obj/food/frozen_treats.dmi' icon_state = "flavorless_sc" trash = /obj/item/reagent_containers/food/drinks/sillycup //We dont eat paper cups bonus_reagents = list(/datum/reagent/water = 10) //Base line will allways give water @@ -188,3 +191,81 @@ icon_state = "rainbow_sc" list_reagents = list(/datum/reagent/consumable/nutriment = 5, /datum/reagent/consumable/laughter = 25) tastes = list("ice" = 1, "water" = 1, "sunlight" = 5, "light" = 5, "slime" = 5, "paint" = 3, "clouds" = 3) + +/obj/item/reagent_containers/food/snacks/popsicle + name = "bug popsicle" + desc = "Mmmm, this should not exist." + icon = 'icons/obj/food/frozen_treats.dmi' + icon_state = "popsicle_stick_s" + list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 2, /datum/reagent/consumable/sugar = 4) + tastes = list("beetlejuice") + trash = /obj/item/popsicle_stick + w_class = WEIGHT_CLASS_SMALL + var/overlay_state = "creamsicle_o" //This is the edible part of the popsicle. + var/bite_states = 4 //This value value is used for correctly setting the bitesize to ensure every bite changes the sprite. Do not set to zero. + foodtype = DAIRY | SUGAR + +/obj/item/reagent_containers/food/snacks/popsicle/Initialize() + . = ..() + bitesize = reagents.total_volume / bite_states + +/obj/item/reagent_containers/food/snacks/popsicle/update_overlays() + . = ..() + if(bitecount) + . += "[initial(overlay_state)]_[min(bitecount, 3)]" + else + . += initial(overlay_state) + +/obj/item/reagent_containers/food/snacks/popsicle/On_Consume(mob/living/eater) + . = ..() + update_icon() + +/obj/item/popsicle_stick + name = "popsicle stick" + icon = 'icons/obj/food/frozen_treats.dmi' + icon_state = "popsicle_stick" + desc = "This humble little stick usually carries a frozen treat, at the moment it seems freed from this atlassian burden." + custom_materials = list(/datum/material/wood=20) + w_class = WEIGHT_CLASS_TINY + force = 0 + +/obj/item/reagent_containers/food/snacks/popsicle/creamsicle_orange + name = "orange creamsicle" + desc = "A classic orange creamsicle. A sunny frozen treat." + list_reagents = list(/datum/reagent/consumable/orangejuice = 4, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 2, /datum/reagent/consumable/sugar = 4) + bonus_reagents = list(/datum/reagent/consumable/orangejuice = 4, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 2, /datum/reagent/consumable/sugar = 4) + foodtype = FRUIT | DAIRY | SUGAR + +/obj/item/reagent_containers/food/snacks/popsicle/creamsicle_berry + name = "berry creamsicle" + desc = "A vibrant berry creamsicle. A berry good frozen treat." + list_reagents = list(/datum/reagent/consumable/berryjuice = 4, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 2, /datum/reagent/consumable/sugar = 4) + bonus_reagents = list(/datum/reagent/consumable/berryjuice = 4, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 2, /datum/reagent/consumable/sugar = 4) + overlay_state = "creamsicle_m" + foodtype = FRUIT | DAIRY | SUGAR + +/obj/item/reagent_containers/food/snacks/popsicle/jumbo + name = "jumbo icecream" + desc = "A luxurius icecream covered in rich chocolate. It seems smaller than you remember it being." + list_reagents = list(/datum/reagent/consumable/hot_coco = 4, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 3, /datum/reagent/consumable/sugar = 4) + bonus_reagents = list(/datum/reagent/consumable/hot_coco = 4, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 3, /datum/reagent/consumable/sugar = 2) + overlay_state = "jumbo" + +/obj/item/reagent_containers/food/snacks/popsicle/nogga_black + name = "nogga black" + desc = "A salty licorice icecream recently reintroduced due to all the records of the controversy being lost to time. Those who cannot remember the past are doomed to repeat it." + list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/sodiumchloride = 1, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 1, /datum/reagent/consumable/sugar = 4) + bonus_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/sodiumchloride = 1, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 1, /datum/reagent/consumable/sugar = 4) + tastes = list("salty liquorice") + overlay_state = "nogga_black" + +/obj/item/reagent_containers/food/snacks/cornuto + name = "cornuto" + w_class = WEIGHT_CLASS_SMALL + icon = 'icons/obj/food/frozen_treats.dmi' + icon_state = "cornuto" + desc = "A neapolitan vanilla and chocolate icecream cone. It menaces with a sprinkling of caramelized nuts." + tastes = list("chopped hazelnuts", "waffle") + list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/hot_coco = 4, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 4, /datum/reagent/consumable/sugar = 2) + bonus_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/hot_coco = 4, /datum/reagent/consumable/cream = 2, /datum/reagent/consumable/vanilla = 4, /datum/reagent/consumable/sugar = 1) + foodtype = DAIRY | SUGAR diff --git a/code/modules/food_and_drinks/kitchen_machinery/processor.dm b/code/modules/food_and_drinks/kitchen_machinery/processor.dm index 6ae06346636..3d2bf21ac37 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/processor.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/processor.dm @@ -28,7 +28,7 @@ /obj/machinery/processor/proc/process_food(datum/food_processor_process/recipe, atom/movable/what) if (recipe.output && loc && !QDELETED(src)) - for(var/i = 0, i < rating_amount, i++) + for(var/i = 0, i < (rating_amount * recipe.multiplier), i++) new recipe.output(drop_location()) if (ismob(what)) var/mob/themob = what diff --git a/code/modules/food_and_drinks/recipes/processor_recipes.dm b/code/modules/food_and_drinks/recipes/processor_recipes.dm index cc63ff43b5f..4ed027dcdd2 100644 --- a/code/modules/food_and_drinks/recipes/processor_recipes.dm +++ b/code/modules/food_and_drinks/recipes/processor_recipes.dm @@ -3,6 +3,7 @@ var/output var/time = 40 var/required_machine = /obj/machinery/processor + var/multiplier = 1 //This multiplies the number of products produced per object processed. /datum/food_processor_process/meat input = /obj/item/reagent_containers/food/snacks/meat/slab @@ -52,3 +53,8 @@ input = /mob/living/simple_animal/slime output = null required_machine = /obj/machinery/processor/slime + +/datum/food_processor_process/towercap + input = /obj/item/grown/log + output = /obj/item/popsicle_stick + multiplier = 3 diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm index 4c055ff2951..aec81e1785f 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm @@ -46,6 +46,18 @@ result = /obj/item/reagent_containers/food/snacks/honkdae subcategory = CAT_ICE +/datum/crafting_recipe/food/cornuto + name = "Cornuto" + reqs = list( + /obj/item/reagent_containers/food/snacks/pastrybase = 1, + /obj/item/reagent_containers/food/snacks/chocolatebar = 1, + /datum/reagent/consumable/cream = 4, + /datum/reagent/consumable/ice = 2, + /datum/reagent/consumable/sugar = 4 + ) + result = /obj/item/reagent_containers/food/snacks/cornuto + subcategory = CAT_ICE + //////////////////////////SNOW CONES/////////////////////// /datum/crafting_recipe/food/flavorless_sc @@ -229,3 +241,61 @@ ) result = /obj/item/reagent_containers/food/snacks/snowcones/rainbow subcategory = CAT_ICE + +//////////////////////////POPSICLES/////////////////////// + +// This section includes any frozen treat served on a stick. +//////////////////////////////////////////////////////////// + +/datum/crafting_recipe/food/orange_popsicle + name = "Orange popsicle" + reqs = list( + /obj/item/popsicle_stick = 1, + /datum/reagent/consumable/orangejuice = 4, + /datum/reagent/consumable/ice = 2, + /datum/reagent/consumable/cream = 2, + /datum/reagent/consumable/vanilla = 2, + /datum/reagent/consumable/sugar = 2 + ) + result = /obj/item/reagent_containers/food/snacks/popsicle/creamsicle_orange + subcategory = CAT_ICE + +/datum/crafting_recipe/food/berry_popsicle + name = "Berry popsicle" + reqs = list( + /obj/item/popsicle_stick = 1, + /datum/reagent/consumable/berryjuice = 4, + /datum/reagent/consumable/ice = 2, + /datum/reagent/consumable/cream = 2, + /datum/reagent/consumable/vanilla = 2, + /datum/reagent/consumable/sugar = 2 + ) + result = /obj/item/reagent_containers/food/snacks/popsicle/creamsicle_berry + subcategory = CAT_ICE + +/datum/crafting_recipe/food/jumbo + name = "Jumbo icecream" + reqs = list( + /obj/item/popsicle_stick = 1, + /obj/item/reagent_containers/food/snacks/chocolatebar = 1, + /datum/reagent/consumable/ice = 2, + /datum/reagent/consumable/cream = 2, + /datum/reagent/consumable/vanilla = 3, + /datum/reagent/consumable/sugar = 2 + ) + result = /obj/item/reagent_containers/food/snacks/popsicle/jumbo + subcategory = CAT_ICE + +/datum/crafting_recipe/food/nogga_black + name = "Nogga black" + reqs = list( + /obj/item/popsicle_stick = 1, + /datum/reagent/consumable/blumpkinjuice = 4, //natural source of ammonium chloride + /datum/reagent/consumable/sodiumchloride = 2, + /datum/reagent/consumable/ice = 2, + /datum/reagent/consumable/cream = 2, + /datum/reagent/consumable/vanilla = 2, + /datum/reagent/consumable/sugar = 2 + ) + result = /obj/item/reagent_containers/food/snacks/popsicle/nogga_black + subcategory = CAT_ICE diff --git a/icons/obj/food/food.dmi b/icons/obj/food/food.dmi index 9ba5f759413..fc15ca37181 100644 Binary files a/icons/obj/food/food.dmi and b/icons/obj/food/food.dmi differ diff --git a/icons/obj/food/frozen_treats.dmi b/icons/obj/food/frozen_treats.dmi new file mode 100644 index 00000000000..81a230a8634 Binary files /dev/null and b/icons/obj/food/frozen_treats.dmi differ diff --git a/icons/obj/food/snowcones.dmi b/icons/obj/food/snowcones.dmi deleted file mode 100644 index bb098dd390e..00000000000 Binary files a/icons/obj/food/snowcones.dmi and /dev/null differ