Modify standard flight input (hold + tap)
The player struct has a timer (player->fly1
) which causes Tails to rise so long as it is non-zero; this timer is set to its max value whenever the jump button is 'pressed but not held'. This is what allows Tails to rise when the button is tapped, but it is also the reason why tapping confers little benefit for multiability flight, since multiability uses a simple button check to determine rising and does not rely on the timer at all.
This functionality could be homogenized to allow both tap and hold playstyles, by modifying the check which sets fly1
to require only that the jump button is 'pressed OR held'. I believe this will require moving much of the associated code from P_DoJumpStuff
into P_MovePlayer
.
Edited by Claire Ellis