Due to some arbitrary change in GZDoom, which was later merged into VKDoom as
well, PostUiTick no longer consistently gets called after WorldTick.
This is kind of funny and also disappointing and sad because I intentionally
designed that feature this way, on purpose, and now it no longer works as
intended. Who knows how many other mods are affected by this now.
As of this commit, do not consider the experience when playing that new
expansion to be complete. I've only partially written some of the mission texts
and rudimentarily enhanced some boss fights.
Currently there is one major limitation in that the intermission texts cannot
be replaced, as they're hardcoded inside the UMAPINFO. I don't know if I can
work around that.
- Try to get rid of all implicit casts from string to name, color or class.
- Use FindClass where needed.
- Used a map in a case where a dictionary was unneeded.
- Use new bounce flags where needed.
- Replace Legacy of Rust weapons/ammo.
+ Invinciball activation now voiced by Demo (thanks, Vyolette).
+ Retooled exit line merging (should fix those pesky duplicate exit markers).
Note: Oneliners for the Eviternity 2 final boss are not voiced yet.
So... Remember that one decision I made about avoiding BlockThingsIterator as
much as possible? Turns out that was a stupid idea. There ARE situations where
it's better to iterate sector thinglists, yes, especially for things that are
NOT part of the blockmap, but in other cases, the excess allocations of new
iterators are a reasonable price to pay for the lower perf impact in extreme
cases, such as maps that have a gazillion sectors with gazillions of things in
them (I'm looking at you, UDMF mappers).
As a compromise, at least, in situations where the thinglists are needed, I did
add a sort of micro-optimization by implementing code to check if a bounding
box is inside a sector (would be nice if this was part of GZDoom itself, tho).