You can use gameplay tags to do that.
Have your ability grant the ability system component a tag like “char.jump.first” if the character is performing a singular jump action. Then you can check whether the character has the “char.jump.first” tag to perform the double jump. At this point you can add a tag like “char.jump.exhausted” to the character and to the blocked tags to prevent further jumping. And you can set up when the character is no longer in Falling state to give you the tag like “char.jump.grounded” to give the ability to reactivate the jumping ability.
2 Likes