This commit fixes a number of bugs with mob grabbing code.
Primary things fixed:
- Aliens grabbing people will no longer break horribly, they call
grabbedby like everything else now.
- Any nulls that do manage to find their way into a grab list will be
cleaned up by the next grab on that person.
- Fixed a number of odd behaviours when grabbing xenomorphs, see
bbcc19c764 for more details.
- Fixed grabs having a tendency to shift someone's pixel_xy and not reset
it when being deleted. This was simply because it previously relied on
del() to stop all procs instantly.
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.