use bevy::prelude::*;
use bevy_keybind::prelude::*;
fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(KeyBindPlugin(KeyBindConfig::default()))
.add_system(handle_keybind_actions)
.run();
}
fn handle_keybind_actions(
mut just_pressed: EventReader<KeyBindJustPressedEvent>,
mut pressed: EventReader<KeyBindPressedEvent>,
mut just_released: EventReader<KeyBindJustReleasedEvent>,
mut axis_event: EventReader<KeyBindAxisEvent>,
) {
just_pressed.iter().for_each(|it: &KeyBindJustPressedEvent| {
info!("action event '{:?}' was _just_ pressed!", it.0);
});
pressed.iter().for_each(|it: &KeyBindPressedEvent| {
info!("action event '{:?}' continues to be pressed!", it.0);
});
just_released.iter().for_each(|it: &KeyBindJustReleasedEvent| {
info!("action event '{:?}' was _just_ released!", it.0);
});
axis_event.iter().for_each(|it: &KeyBindAxisEvent| {
info!("axis event '{:?}' received with value '{:?}'", it.0, it.1);
});
}