An input manager for Bevy, inspired by Unreal Engine's Enhanced Input.
We use it for Project Harmonia, but it's general-purpose.
Highlights
Pull-based API is now strongly typed, just like triggers. Example: actions.value::<Move>() returns the defined output type of Move.
Action mocking. Example: actions.mock::<Move>(ActionState::Fired, Vec2::ONE, Duration::from_secs(2)). The last parameter is generic, so you can also set the time in frames or until manually cleared.
Preparation for upcoming networking integrations. Mostly more convenient access to internals.