From bc2ba68f683d66f1c0aa9a113fbeddb8e7a266fe Mon Sep 17 00:00:00 2001 From: Alice Cecile Date: Thu, 8 Aug 2024 10:59:40 -0400 Subject: [PATCH] Remove mouse_position example (#581) * Fix Actionlike impl * Remove mouse_position example --- examples/mouse_position.rs | 45 -------------------------------------- 1 file changed, 45 deletions(-) delete mode 100644 examples/mouse_position.rs diff --git a/examples/mouse_position.rs b/examples/mouse_position.rs deleted file mode 100644 index a19b5b0a..00000000 --- a/examples/mouse_position.rs +++ /dev/null @@ -1,45 +0,0 @@ -use bevy::prelude::*; -use leafwing_input_manager::prelude::*; - -fn main() { - App::new() - .add_plugins(DefaultPlugins) - .add_plugins(InputManagerPlugin::::default()) - .add_systems(Startup, setup) - .add_systems(Update, pan_camera) - .run(); -} - -#[derive(Actionlike, Clone, Debug, Copy, PartialEq, Eq, Hash, Reflect)] -enum BoxMovement { - MousePosition, -} - -fn setup(mut commands: Commands) { - commands.spawn(Camera2dBundle::default()); - - commands - .spawn(SpriteBundle { - transform: Transform::from_scale(Vec3::new(100., 100., 1.)), - ..default() - }) - .insert(InputManagerBundle::::default()); -} - -fn pan_camera( - mut query: Query<(&mut Transform, &ActionState)>, - camera: Query<(&Camera, &GlobalTransform)>, -) { - let (mut box_transform, action_state) = query.single_mut(); - let (camera, camera_transform) = camera.single(); - - // Note: Nothing is stopping us from doing this in the action update system instead! - let cursor_movement = action_state.axis_pair(&BoxMovement::MousePosition); - let ray = camera - .viewport_to_world(camera_transform, cursor_movement.xy()) - .unwrap(); - let box_pan_vector = ray.origin.truncate(); - - box_transform.translation.x = box_pan_vector.x; - box_transform.translation.y = box_pan_vector.y; -}