Taking the old charge idea, but instead of missiles, it's bananas that explode on the floor and can only be lobbed forward. Charging creates more projectiles in a circle pattern around it.
Differences from Lua version:
- Does not set cusval
- Does not have individual states for pulley, hook
- Simply sets sprite on S_INVISIBLE
- Does not do P_CheckPosition, sets Z directly
- Does not spawn chain visual every tic
- Spawns a single object and vertically stretches it to
the correct length
- MT_IPULLUP has MF_SCENERY and a short-circuiting
thinker, also MF_NOBLOCKMAP so there is never any
collision against it (it is a controller)
- MT_PULLUPHOOK has MF_NOCLIP to avoid extra collisions
while moving
- 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
- VS_ArenaCenterInit - setting up the boss arena centerpoint
- VS_GetArena - Getting a particular arena
- VS_PredictAroundArena - Predict momentum of object around arena
- VS_RandomPointOnArena - Select random position around arena
This commit handles everything except actually respawning
the player at a checkpoint.
- Checkpoints are formed by two checkpoint things (2030):
- thingarg0 - The ID for the checkpoint. Must be the
same for these two things, and these two
things only. ID cannot be 0.
- angle - The direction the player is intended to face
after respawning. Must be the same for both
things.
- Each checkpoint thing is a starpost with a stick and an
orb at the end.
- By default, the sticks are lowered to horizontal and
face toward the opposite starpost.
- Rainbow tether sparkles form a field between the two
starposts.
- When a player crosses between these two starposts, each
spins in the direction that the player crossed. The
sparkles also fly out in that direction.
- Over time the sticks pivot upward.
- When the starposts are done spinning, the sticks will be
pointing straight upward.
- Orb at the end of the stick begins flashing when the
starpost is done spinnning.
- Players may cross multiple checkpoints.
- When this happens, any previously activated checkpoint
will have its stick lowered back to horizontal, and its
orb will stop flashing.
- Add K_BattleOvertimeKiller
- Kills an object if it is outside of the Overtime
Barrier in Battle
- Add Obj_SpawnEmeraldSparks
- Use this function for MT_EMERALD, MT_MONITOR and
MT_SPECIAL_UFO
- Move thinking code for MT_EMERALD and MT_MONITOR to
objects/monitor.c and objects/emerald.c