Carbon copy of tgstation/-tg-station#10467.
This should fix not being able to retrieve logs, because BYOND 508 broke
run() again. The main difference is that instead of directly opening a
log, a prompt will come up asking to save the file to a location.
Refactors the code for Microwaves, Ovens, Grills, and Candy Makers to
utilize a shared parent which holds the common procs.
- This means any new additions or fixes will only need to be implemented
in one place, rather than 4, to affect them all.
- Also reduces file sizes on the individual machines' files by removing
a lot of the duplicate code
Updated the code for the kitchen machines to be more modular and fixed
some issues.
- Replaced color macros with span classes
- Replaced hardcoded names with src references
- Each machine has a cook_verbs list which is used to create the in use
message (Microwaving in progress)
- Each machine has variables to define the icon states for the different
states of the machine (on, off, broken, dirty, open).
- Changed a few formerly global variables to not be global, as this
would cause issues with the shared code (microwave with candy maker
recipes for example)
Fixed a bug where the microwave would be considered "full" before having
all of the ingredients for a recipe
- Created a new proc to count the number of items and fruits in a recipe
to determine the max_n_items value
Map Edits to Cyberiad and associated Z-levels for pathing changes
(map-merged)
- MetaStation will need to be updated as well, I'll do this in another
PR unless someone else beats me to it.
Adds the ability to make a chemical reaction only occur when at or below
a specified temperature.
Adds new reaction for freezing water into ice
- Must be at or below 270K to turn water to ice
Adds two new reagents/drinks: Applejack and Jack Rose cocktail
-Applejack is obtained by freezing cider at or below 270K
- Applejack is slightly more potent than cider, due to it's alcohol
concentration being higher
- Jack Rose is a new mixed drink that is 4 parts Applejack, 1 part Lemon
Juice
Only Ice and Applejack utilize the cold reactions at this time, but the
functionality is in place for future reactions.
- This should allow coders more flexibility with defining new reactions
that may realistically occur at low temperatures.
Renamed the existing "required_temp" variable for reactions to
"min_temp" to better communicate it's purpose and differentiate it from
the new "max_temp" variable for cold reactions.