2020-04-06 23:15:59 +00:00
|
|
|
use bevy::{
|
|
|
|
input::mouse::{MouseButtonInput, MouseMotion},
|
|
|
|
prelude::*,
|
|
|
|
};
|
2020-04-05 06:42:39 +00:00
|
|
|
|
|
|
|
fn main() {
|
|
|
|
App::build()
|
|
|
|
.add_default_plugins()
|
2020-04-16 02:40:24 +00:00
|
|
|
.add_system_init(mouse_input_system)
|
2020-04-05 06:42:39 +00:00
|
|
|
.run();
|
|
|
|
}
|
|
|
|
|
2020-04-07 04:32:19 +00:00
|
|
|
/// prints out mouse events as they come in
|
2020-04-05 06:42:39 +00:00
|
|
|
pub fn mouse_input_system(resources: &mut Resources) -> Box<dyn Schedulable> {
|
2020-04-05 07:32:53 +00:00
|
|
|
let mut mouse_button_input_event_reader = resources.get_event_reader::<MouseButtonInput>();
|
|
|
|
let mut mouse_motion_event_reader = resources.get_event_reader::<MouseMotion>();
|
2020-04-05 06:42:39 +00:00
|
|
|
SystemBuilder::new("mouse_input")
|
2020-04-05 07:32:53 +00:00
|
|
|
.read_resource::<Events<MouseButtonInput>>()
|
|
|
|
.read_resource::<Events<MouseMotion>>()
|
2020-04-05 06:42:39 +00:00
|
|
|
.build(
|
2020-04-06 23:15:59 +00:00
|
|
|
move |_command_buffer,
|
|
|
|
_world,
|
|
|
|
(mouse_button_input_events, mouse_motion_events),
|
|
|
|
_queries| {
|
2020-04-28 17:59:42 +00:00
|
|
|
for event in mouse_button_input_event_reader.iter(&mouse_button_input_events) {
|
2020-04-05 07:32:53 +00:00
|
|
|
println!("{:?}", event);
|
|
|
|
}
|
|
|
|
|
2020-04-28 17:59:42 +00:00
|
|
|
for event in mouse_motion_event_reader.iter(&mouse_motion_events) {
|
2020-04-05 06:42:39 +00:00
|
|
|
println!("{:?}", event);
|
|
|
|
}
|
|
|
|
},
|
|
|
|
)
|
2020-04-06 23:15:59 +00:00
|
|
|
}
|