Your state mechanics are contradicting each other.
When you press:
* Left arrow → simulate left
* Right arrow → simulate right
* Space → jump
You don’t need to create events for combined actions like pressing an arrow key and space together.
Construct will handle that automatically.
You also have a condition like:
If player state = "default" → some events run under it.
But you also need to consider what should happen when player state ≠ "default".
What should the character do if their state is something else?
Then you have this logic under "Player is on the floor":
* If right or left arrow is pressed → set animation to "run"
* Else → set animation to "base"
This entire block contradicts the earlier "player state ≠ default" logic.
A player could be in a default state and be on the floor at the same time.
Also, the Else → set animation to "base" will trigger even when the player is jumping or falling, because it doesn't exclude those.
So it conflicts with the jump animation when space is pressed.
I don’t know why you need the "state = default" condition.
If it’s only for handling platform movement, it's not necessary at this stage.
If you’re focusing only on basic platform movement for now, here’s how to structure it more clearly:
Movement Controls:
* On Left Arrow pressed → simulate left
* On Right Arrow pressed → simulate right
* On Space pressed → simulate jump
Animation Logic:
* If Platform is moving, not jumping, and not falling → set animation to "run"
* If Platform is not moving, on floor → set animation to "base"
* If Platform is jumping or falling → set animation to "jump"