From 0f8bfb27934b540e52b9ef8fb423c7dca67e16ed Mon Sep 17 00:00:00 2001 From: Geeves Date: Sun, 27 Oct 2019 23:02:13 +0200 Subject: [PATCH] Improves Donkcode (#7177) Donk Pockets can now be heated properly in a microwave, they gain additional nutriment, animal protein and healing juice. Sin-Pockets now heat properly when used in hand, heats instantly, and gives slightly more hyperzine and synaptizine than before. A curious side-effect I encountered in testing. You have to chew a lot more with the added reagents. But the benefit outweighs the consequence. Also, a traitor ravenously chewing a sin-pocket with a revolver in the other hand, bleeding profusely from everywhere, makes me giggle like a child. Resolves #6802 --- code/modules/food/recipes_microwave.dm | 34 +-------- .../reagent_containers/food/snacks.dm | 72 +++++++++---------- html/changelogs/geeves-DONKBASEDDONK.yml | 42 +++++++++++ 3 files changed, 77 insertions(+), 71 deletions(-) create mode 100644 html/changelogs/geeves-DONKBASEDDONK.yml diff --git a/code/modules/food/recipes_microwave.dm b/code/modules/food/recipes_microwave.dm index 0dbae72ff12..3086dfbdb09 100644 --- a/code/modules/food/recipes_microwave.dm +++ b/code/modules/food/recipes_microwave.dm @@ -1,24 +1,6 @@ // see code/datums/recipe.dm - -/* No telebacon. just no... -/datum/recipe/telebacon - items = list( - /obj/item/weapon/reagent_containers/food/snacks/meat, - /obj/item/device/assembly/signaler - ) - result = /obj/item/weapon/reagent_containers/food/snacks/telebacon - -I said no! -/datum/recipe/syntitelebacon - items = list( - /obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh, - /obj/item/device/assembly/signaler - ) - result = /obj/item/weapon/reagent_containers/food/snacks/telebacon -*/ - /datum/recipe/friedegg reagents = list("sodiumchloride" = 1, "blackpepper" = 1) items = list( @@ -146,23 +128,13 @@ I said no! /obj/item/weapon/reagent_containers/food/snacks/dough, /obj/item/weapon/reagent_containers/food/snacks/meatball ) - result = /obj/item/weapon/reagent_containers/food/snacks/donkpocket //SPECIAL - proc/warm_up(var/obj/item/weapon/reagent_containers/food/snacks/donkpocket/being_cooked) - being_cooked.heat() - make_food(var/obj/container as obj) - . = ..(container) - for (var/obj/item/weapon/reagent_containers/food/snacks/donkpocket/D in .) - if (!D.warm) - warm_up(D) + result = /obj/item/weapon/reagent_containers/food/snacks/donkpocket //does it make sense for newly made donk to come out cold? no, do I care? coincidentally, also no. -/datum/recipe/donkpocket/warm - reagents = list() //This is necessary since this is a child object of the above recipe and we don't want donk pockets to need flour +/datum/recipe/hotdiggitydonk //heated donk items = list( /obj/item/weapon/reagent_containers/food/snacks/donkpocket ) - result = /obj/item/weapon/reagent_containers/food/snacks/donkpocket //SPECIAL - - + result = /obj/item/weapon/reagent_containers/food/snacks/donkpocket/warm /datum/recipe/omelette items = list( diff --git a/code/modules/reagents/reagent_containers/food/snacks.dm b/code/modules/reagents/reagent_containers/food/snacks.dm index 65d547c1cc9..b3cd6b298d7 100644 --- a/code/modules/reagents/reagent_containers/food/snacks.dm +++ b/code/modules/reagents/reagent_containers/food/snacks.dm @@ -1014,61 +1014,53 @@ reagents.add_reagent("batter", 2) reagents.add_reagent("oil", 2) - -/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) - to_chat(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) - to_chat(user, "You think \the [src] is ready to eat about now.") - heat() - /obj/item/weapon/reagent_containers/food/snacks/donkpocket name = "Donk-pocket" - desc = "The food of choice for the seasoned traitor." + desc = "The cold, reheatable food of choice for the seasoned spaceman." icon_state = "donkpocket" filling_color = "#DEDEAB" center_of_mass = list("x"=16, "y"=10) nutriment_desc = list("heartiness" = 1, "dough" = 2) nutriment_amt = 2 - var/warm = 0 - var/list/heated_reagents = list("tricordrazine" = 5) /obj/item/weapon/reagent_containers/food/snacks/donkpocket/Initialize() . = ..() reagents.add_reagent("protein", 2) -/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/warm + name = "cooked Donk-pocket" + desc = "The cooked, reheatable food of choice for the seasoned spaceman." + nutriment_desc = list("warm heartiness" = 1, "dough" = 2) + nutriment_amt = 3 -/obj/item/weapon/reagent_containers/food/snacks/donkpocket/proc/cooltime() - if (src.warm) - addtimer(CALLBACK(src, .proc/cool_down)) +/obj/item/weapon/reagent_containers/food/snacks/donkpocket/warm/Initialize() + . = ..() + reagents.add_reagent("protein", 1) + reagents.add_reagent("tricordrazine", 5) -/obj/item/weapon/reagent_containers/food/snacks/donkpocket/proc/cool_down() - warm = FALSE - for(var/reagent in heated_reagents) - reagents.del_reagent(reagent) - name = initial(name) +/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket + name = "\improper Sin-pocket" + desc = "The food of choice for the veteran. Do NOT overconsume. Use it in hand to heat and release chemicals." + nutriment_desc = list("delicious cruelty" = 1, "dough" = 2) + filling_color = "#6D6D00" + nutriment_amt = 3 + var/has_been_heated = FALSE -/obj/item/weapon/reagent_containers/food/snacks/donkpocket/cook() - ..() - if (!warm) - heat() +/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket/Initialize() + . = ..() + reagents.add_reagent("protein", 1) + +/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket/attack_self(mob/user) + if(has_been_heated) + to_chat(user, "The heating chemicals have already been spent.") + return + has_been_heated = TRUE + user.visible_message("[user] crushes \the [src] package.", "You crush \the [src] package and feel it rapidly heat up.") + name = "cooked Sin-pocket" + desc = "The food of choice for the veteran. Do NOT overconsume." + reagents.add_reagent("doctorsdelight", 5) + reagents.add_reagent("hyperzine", 1.5) + reagents.add_reagent("synaptizine", 1.25) /obj/item/weapon/reagent_containers/food/snacks/burger/brain name = "brainburger" diff --git a/html/changelogs/geeves-DONKBASEDDONK.yml b/html/changelogs/geeves-DONKBASEDDONK.yml new file mode 100644 index 00000000000..43e8756e696 --- /dev/null +++ b/html/changelogs/geeves-DONKBASEDDONK.yml @@ -0,0 +1,42 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: Geeves + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Donk Pockets can now be heated properly in a microwave, they gain additional nutriment, animal protein and healing juice." + - tweak: "Sin-Pockets now heat properly when used in hand, heats instantly, and gives slightly more hyperzine and synaptizine than before."