-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Simplifies the way burning food is handled, kills burns_in_oven and burns_on_grill #77570
Conversation
will clash with #77562 |
Do that one first, I suppose, since it's the one compliant with the current code as opposed to altering it. |
undraft when all fires relating to clashing pr is resolved |
Fixes #77807 |
This PR has been inactive for long enough to be automatically marked as stale. This means it is at risk of being auto closed in ~ 7 days, please address any outstanding review items and ensure your PR is finished, if these are all true and you are auto-staled anyway, you need to actively ask maintainers if your PR will be merged. Once you have done any of the previous actions then you should request a maintainer remove the stale label on your PR, to reset the stale timer. If you feel no maintainer will respond in that time, you may wish to close this PR youself, while you seek maintainer comment, as you will then be able to reopen the PR yourself |
@FernandoJ8 this PR ready? |
Now it is. Apologies for the delay. |
Lots of merge conflicts. |
Should be ready if/when it passes checks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh well, this means every food item now has these two components attached, but I don't think it's a big deal overall.
…ls burns_in_oven and burns_on_grill (#7603) Original PR: tgstation/tgstation#77570 ----- ## About The Pull Request Currently, burning food is handled in the following way (for the sake of brevity I'll explain it with baking but it's essentially the exact same with grilling): - If a recipe has a baking recipe added in it's `make_bakeable`, then it will produce that when baked. - If it does not have a recipe added, but `burns_in_oven` is TRUE, then it will have a negative baking recipe for "burned mess" added by the parent of `make_bakeable`, and be turned to that after 20 to 25 seconds. - If it has neither, it will instantly be set on fire. What this PR does is, basically, remove the check for `burns_in_oven/burns_on_grill` and make food always have a negative burned mess recipe unless overriden by an actual recipe. Also modified the examines a bit to better fit food that hasn't necessarily been baked/grilled before but would still turn to a burnt mess if put in either. ## Why It's Good For The Game My issues with the way it currently works are: 1. The "default" case is one that largely doesn't make sense for food. Most things would logically just get turned to a burnt mess after being overcooked for some time rather than combusting the very moment you close the range. 2. If you make any cooking item the result of a baking recipe, then you must also remember to make its `burns_in_oven` var true, because otherwise it will be set on fire as soon as it finishes baking, making it impossible to cook. (See issue #77377) This is pretty bad because it's easy not to notice or add these vars, given that they're a bit out of the way mechanically and... 3. ...the var names are very unintuitive. In practical terms all `burns_in_oven` and `burns_in_grill` do is add a timer before the item is ruined, not actually cause or prevent the ruining. By removing these vars and their function we deal with all three, as turning into a burnt mess is now the default outcome for food that shouldn't be baked/grilled and coders adding food/recipes don't need to worry about the confusingly-named vars. Also, as mentioned before, fixes #77377. ## Changelog :cl: fix: boiled rice doesn't burn instantly after being baked code: simplifies the way burning food is handled, grilled/baked food now turns to a burnt mess rather than being set on fire, unless they have a baking/grilling recipe /:cl: Co-authored-by: A miscellaneous Fern <80640114+FernandoJ8@users.noreply.github.com> Co-authored-by: Jolly-66 <70232195+Jolly-66@users.noreply.github.com>
* tgstation/tgstation#55319 * tgstation/tgstation#55619 * tgstation/tgstation#57743 * tgstation/tgstation#65833 * tgstation/tgstation#55548 * tgstation/tgstation#56557 * misc fixes * tgstation/tgstation#77570 * No pancakes for beestation (stupidass atom reagent exposure) * 515 and reagent exposure notice * tgstation/tgstation#65783 * unused var * sausage fix * amerikaner sosig * guh * giled chese * pigeon maps * fix broken grill noise? * unrelated, but why not * ummm grill fix * rad typepath fix * tweaks * test * full-replacement * full-replacement2? * kilo try * kilotry2 * delta * fland * echo * fastfood * fuckoff
* tgstation/tgstation#55319 * tgstation/tgstation#55619 * tgstation/tgstation#57743 * tgstation/tgstation#65833 * tgstation/tgstation#55548 * tgstation/tgstation#56557 * misc fixes * tgstation/tgstation#77570 * No pancakes for beestation (stupidass atom reagent exposure) * 515 and reagent exposure notice * tgstation/tgstation#65783 * unused var * sausage fix * amerikaner sosig * guh * giled chese * pigeon maps * fix broken grill noise? * unrelated, but why not * ummm grill fix * rad typepath fix * tweaks * test * full-replacement * full-replacement2? * kilo try * kilotry2 * delta * fland * echo * fastfood * fuckoff
About The Pull Request
Currently, burning food is handled in the following way (for the sake of brevity I'll explain it with baking but it's essentially the exact same with grilling):
make_bakeable
, then it will produce that when baked.burns_in_oven
is TRUE, then it will have a negative baking recipe for "burned mess" added by the parent ofmake_bakeable
, and be turned to that after 20 to 25 seconds.What this PR does is, basically, remove the check for
burns_in_oven/burns_on_grill
and make food always have a negative burned mess recipe unless overriden by an actual recipe.Also modified the examines a bit to better fit food that hasn't necessarily been baked/grilled before but would still turn to a burnt mess if put in either.
Why It's Good For The Game
My issues with the way it currently works are:
burns_in_oven
var true, because otherwise it will be set on fire as soon as it finishes baking, making it impossible to cook. (See issue Baked boiled rice has no after-cook time #77377) This is pretty bad because it's easy not to notice or add these vars, given that they're a bit out of the way mechanically and...burns_in_oven
andburns_in_grill
do is add a timer before the item is ruined, not actually cause or prevent the ruining.By removing these vars and their function we deal with all three, as turning into a burnt mess is now the default outcome for food that shouldn't be baked/grilled and coders adding food/recipes don't need to worry about the confusingly-named vars.
Also, as mentioned before, fixes #77377.
Changelog
🆑
fix: boiled rice doesn't burn instantly after being baked
code: simplifies the way burning food is handled, grilled/baked food now turns to a burnt mess rather than being set on fire, unless they have a baking/grilling recipe
/:cl: