diff --git a/.idea/compilerexplorer.settings.xml b/.idea/compilerexplorer.settings.xml
index 707edaf..3ed88e5 100644
--- a/.idea/compilerexplorer.settings.xml
+++ b/.idea/compilerexplorer.settings.xml
@@ -1,6 +1,8 @@
+
+
\ No newline at end of file
diff --git a/src/main.rs b/src/main.rs
index 17943ed..956f7cb 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -1,3 +1,4 @@
+use bevy::input::mouse::MouseMotion;
use bevy::prelude::*;
use bevy_ecs_tilemap::prelude::*;
@@ -34,6 +35,21 @@ fn startup(mut commands: Commands, asset_server: Res, mut map_query
.insert(GlobalTransform::default());
}
+fn mouse_motion(
+ mut motion_evr: EventReader,
+ buttons: Res>,
+ mut query: Query<(&mut Transform, &mut OrthographicProjection), With>,
+) {
+ if buttons.pressed(MouseButton::Middle) {
+ for ev in motion_evr.iter() {
+ for (mut transform, mut _ortho) in query.iter_mut() {
+ let direction = Vec3::new(ev.delta.x, ev.delta.y * -1.0, 0.0);
+ transform.translation += direction;
+ }
+ }
+ }
+}
+
fn main() {
App::new()
.insert_resource(WindowDescriptor {
@@ -46,5 +62,6 @@ fn main() {
.add_plugin(TilemapPlugin)
.add_startup_system(startup)
.add_system(helpers::texture::set_texture_filters_to_nearest)
+ .add_system(mouse_motion)
.run();
}