- Removed hitlag sparks and extra quakes from player death
- Removed dontdraw flag from NO CONTESTED player
- Moved most dead kart code to objects/destroyed-kart.cpp
- Right on the line, P_PointOnLineSide may disagree with
P_TraceWaypointTraversal.
- If this happens, nextwaypoint may update ahead of the
finish line before the player crosses it.
- This bloats the finish line distance and triggers lap
cheat prevention, preventing the player from gaining a
lap.
- Since this only seems like it can happen very near to
the line, simply don't update waypoints if the player is
touching the line but hasn't crossed it.
- This will cause distancetofinish to jump but only for a
very short distance (the radius of the player).
- The goal here is to make it more obvious if a CD drops,
and make the CD more visible.
- Rainbow sparkles scaled up by x3.
- Play long "powering down" noise when a Prison with a CD
inside is destroyed.
- CD spawns after noise stops playing.
- Spawn a twinkle (Gainax).
- Flickers while "powering down" noise is playing.
- Enlarges and disappears in sync with the "CD dropped"
sound effect.
- Darken the map while all of this is happening.
Notable deletions:
- Metal Sonic Race
- Includes all the specialised recording/playback apparatus which made g_demo.c harder to read
- A bunch of hyperspecialised code inside several A_ actions
- EXCEPTION: intentfully left in the spriteless SMK stuff for Sal's add-on down the line.
All courses are restricted in Match Race/Time Attack/Online if not visited in GP UNLESS:
- It is the first Race Course of a Cup
- Course has "NoVisitNeeded = True`
- The Controls Tutorial and Test Run are the only two stages that will need this
The above replaces:
- A lot of restricted courses having to be marked with `FinishNeeded = True`
- Hidden Palace
- Sealed Stars 1-14
- Once Special Mode is unlocked, it will now be possible to practice Sealed Stars before rematching them in GP
- Almost all Tutorial-specific behaviour, since it was heinously hacky
HOWEVER, `FinishNeeded = True` was left in specifically for future releases, and I reserve the right to use it on Adventure Example again before launch.
In preparation for Gust Planet seasaws, I'm grouping these
separately from the rest of Dead Line states.
Because the visual object does no think for itself, rather
by proxy of the main seasaw object: I removed the DLZ tag,
since this object will be reused for Gust Planet.