* fixes cleaning animation disappearing if you clean something that's already being cleaned (#71673)
## About The Pull Request
1: Start cleaning something.
2: Clean the same thing again before the original cleaning manages to
finish. This removes the cleaning bubbles animation early, before the
actual cleaning is done. You can also spam the start cleaning message
with this.
The cleaning overlay is removed after the do_after that makes you wait
the time it takes to clean. When you're already waiting and you clean it
a second time the do_after returns instantly and removes the overlay
while the first one is still waiting.
But it seems that we don't even need to bother with any of that code if
we're already cleaning the thing, so we can just return early and
prevent the issue.
## Why It's Good For The Game
Fixes a graphical bug.
## Changelog
🆑
fix: trying to clean something while it's already being cleaned will no
longer prematurely remove the cleaning animation
/🆑
* fixes cleaning animation disappearing if you clean something that's already being cleaned
Co-authored-by: kawoppi <94711066+kawoppi@users.noreply.github.com>
* Replaces some bad trait sources and updates two trait names (#71375)
## About The Pull Request
Traits should never use a hard reference as their trait source, if you
want to use a "reference" to a datum use `REF()` instead, or it will
cause hard deletes
Also renamed some traits which didn't use the "standard" scheme, because
I saw it while regexing
## Why It's Good For The Game
- Prevents some hard deletes
- Uses a less confusing naming scheme
## Changelog
Not necessary
* Replaces some bad trait sources and updates two trait names
* Fixes SR trait sources
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Tastyfish <crazychris32@gmail.com>
* Changing z-level after being cleaned no longer makes the bubbles re-appear (#71201)
* Fixes plants showing up as errors when made into cells when their icon isn't in the same file as the other plants (#71247)
Basically, any cell made from a plant that didn't have its icon located
at the same place as all the other plant icons would turn into an error
(with the proper battery overlay though) when turned into a botanical
cell.
This fixes that, which means that it'll be one less thing to think about
when `harvest.dmi` gets eventually split into multiple files.
* Fixes the arms and legs not being printable from the Limb Grower (#71143)
Basically, https://github.com/tgstation/tgstation/pull/70422 broke the
limb grower's ability to grow limbs, because it was still, for instance,
trying to spawn a `/obj/item/bodypart/r_leg` for right legs, instead of
a `/obj/item/bodypart/leg/right`, because it uses the `id` variable of
the design associated with the limb/organ being grown.
As such, I simply updated the `id` variable of the different arms and
legs, and now they all work as expected again, instead of throwing a
runtime!
* Cleans up the fallout from plane cube (#70235)
* Cleans up the fallout from plane cube
Alright.
Makes cleaning bubbles respect planes
Adds support for updating overlays on move, fixing an issue with pointing at items
Adds better error messages for failing to provide args for mutable_appearance()
Fixes a bug where string overlays were not respecting insertion order
* Adds documentation for offset spokesman and offset_const
* Better stack trace
* Removes some redundant uses of cached MAs
At this scale, attempting to cache MAs like this has 0 impact on anything
And just makes things more messy then they need to be
* ensures fullscreen objects START offset, so things are always proper
* ensures chatmessages always have the right offset
* fixes compile
* whoops, the above lighting plane should actually be ABOVE the lighting plane
* fixes compile, also cleans up the fire overlay a tad
* Adds a unit test for plane masters that are shrunk by multiz being double shrunk
This is slightly hacky because of how I'm handing the plane master
group, but it's not THAT bad, and gives me some real good coverage
* Properly targets the seethrough plane at the game world plate. This fixes unit tests, and also just makes more sense
* whoops
* oh
* adds datum support for allocate(), cleans up a harddel from testing
* Makes camera chunks index at 1, and also makes them support non powers of two sizes, since that was unneeded
* fixes runtime in allocate
* Cleans up the fallout from plane cube
* liquid tweaks
* oop
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>