I would start by deciding on an action that would indicate the start of the tilt. So if e.g. the player is expected to press the bottom button then direction, I would store the time of the bottom button press. I would then have a time, after which I consider the launch expired so e.g. 500 milliseconds. I would then keep checking the joystick input (you’ll probably be checking for a certain value so e.g. 70% or more is considered valid) and wait for my time to expire, whichever comes first. If input comes first, check how long it took and if you consider that time short, do the fast launch. If the time expires or the the time-to-input was long, do the slow launch.