Block the "Is Falling" aspect of the Platformer behaviour

I’m using the platformer behaviour to control my character. I want to be able to have them jump, and then transition to flight. This is all working fine, they can enter and exit flight at the right times through the use of a state machine.

What isn’t working is that if the Player hits a platform above them they can no longer move up once they clear the obstacle by moving sideways. The Platformer behaviour gets stuck in an “Is Falling” state and seems be preventing the Jump action from continuing the flight.

I can only move up again by stopping the flight, entering the “Fall” state and then returning to the “Fly” state with another press of the jump key.

Ideally, I would want “Is Falling” to not trigger at all while I am flying, or for “Is Falling” to not prevent more jumping. Any ideas? I have seen the correct behaviour while fixing another problem so it is something specific here.

I understand your issue
I have no idea how to fix it
But i have idea how to workaround it

Imagine you would switch between platformer and topdown behaviors
When you are in fly mode you just disable platformer and enable topdown

A little bit tricky but if you cannot find any other solution then that would be best next thing

2 Likes

I kept plugging away (it was the last item on my FSM list) and I found a solution. I think the transition to “Is Falling” was removing the “Allow X to jump again” setting. By adding the setting into the Run() event group it constantly reasserts the ability to jump again, regardless of what the platformer behaviour is trying to do.

These are now my events