Closed orkaboy closed 6 days ago
I think in this specific case - this could be a state machine that handles all inversion of control (like now, but a little more defined)
as always, my thought is like how i did with the combat controllers - try to relinquish control as often as possible to not block the ui (i believe the sequencer was the same way)
I think i'm happy with where we are going with this - happy to close this issue.
Maybe one way to handle the combat interactions is to have a top-level Sequencer
Node
that can detect if the game has entered combat. This would automatically grab control from the current movement node and handle the combat.Entering and exiting combat can handle resetting the joystick state correctly, to prevent holding buttons unintentionally, blocking combat actions.
Potentially, the sequencer needs to pass on "signals" to active movement nodes when combat is done, so that the seqence knows when a boss fight or juke has been handled. This could allow for handling return paths after unintended combat (failed jukes), continuing the sequence (potentially swapping scenes too), or taking a quicker route across an area if a juke has failed anyways.
Game manager could potentially also handle cutscene states (depends on if we can successfully detect we are in a cutscene), either mashing or skipping (including speedrun relic).