The code clearly *wanted* them to behave like wallsprings, but it was a mess so they were instead nuclear railguns. Now they're grey springs with damage but without tiregrease!
Also:
- Fixes pop-out wallspike interactions
- If a custom MF_SPRING has a "starcolor" (tiregrease stars) of SKINCOLOR_NONE, instead don't apply any tiregrease
Replaces the old freelist solution with the LevelPool, which
dramatically reduces the number of allocations needed for mobj and
precip sector assignment. In measurement, this cuts down the time taken
for spawning precipitation by 50%.
- 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).
Before
- Each time / once only activates when the mobj's sector
changes
- The activation may depend on the mobj touching the floor
- If the mobj is in the air when the sector changes, the
action will never be activated
After
- Each time / once actions that require floor touching
also activate every time the mobj lands on the ground
from the air (regardless of whether the sector changed)
- Flung a little higher into the air
- Takes momentum of whatever killed the player
- Bounces off walls
- Bounces off the floor once
- After bouncing off the floor once, corpse noclips
through walls and floors