2020-11-10 03:26:08 +00:00
|
|
|
use bevy::{
|
|
|
|
input::gamepad::{GamepadEvent, GamepadEventType},
|
|
|
|
prelude::*,
|
|
|
|
};
|
2020-10-21 17:27:00 +00:00
|
|
|
|
|
|
|
fn main() {
|
|
|
|
App::build()
|
2020-11-03 03:01:17 +00:00
|
|
|
.add_plugins(DefaultPlugins)
|
2020-11-17 02:18:00 +00:00
|
|
|
.add_system(gamepad_events)
|
2020-10-21 17:27:00 +00:00
|
|
|
.run();
|
|
|
|
}
|
|
|
|
|
2020-10-21 22:56:07 +00:00
|
|
|
fn gamepad_events(
|
|
|
|
mut event_reader: Local<EventReader<GamepadEvent>>,
|
|
|
|
gamepad_event: Res<Events<GamepadEvent>>,
|
|
|
|
) {
|
|
|
|
for event in event_reader.iter(&gamepad_event) {
|
2020-10-21 17:27:00 +00:00
|
|
|
match &event {
|
|
|
|
GamepadEvent(gamepad, GamepadEventType::Connected) => {
|
|
|
|
println!("{:?} Connected", gamepad);
|
|
|
|
}
|
|
|
|
GamepadEvent(gamepad, GamepadEventType::Disconnected) => {
|
|
|
|
println!("{:?} Disconnected", gamepad);
|
|
|
|
}
|
|
|
|
GamepadEvent(gamepad, GamepadEventType::ButtonChanged(button_type, value)) => {
|
|
|
|
println!("{:?} of {:?} is changed to {}", button_type, gamepad, value);
|
|
|
|
}
|
|
|
|
GamepadEvent(gamepad, GamepadEventType::AxisChanged(axis_type, value)) => {
|
|
|
|
println!("{:?} of {:?} is changed to {}", axis_type, gamepad, value);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|