7FY3BW7JRAG6T66QQTJEX4F3FPDYPPO2JCR2RAMA65D6HCUIL3YAC use avian3d::prelude::*;use bevy::prelude::{GamepadButtonType, KeyCode};use bevy::reflect::Reflect;use leafwing_input_manager::prelude::*;#[derive(Actionlike, PartialEq, Eq, Hash, Clone, Copy, Debug, Reflect)]#[actionlike(Button)]pub enum Action {StrafePosX,StrafePosY,StrafePosZ,StrafeNegX,StrafeNegY,StrafeNegZ,#[actionlike(DualAxis)]StrafeXZ,PosYaw,NegYaw,PosPitch,NegPitch,PosRoll,NegRoll,#[actionlike(DualAxis)]PitchYaw,}pub fn input_bundle() -> InputManagerBundle<Action> {let mut input_map = InputMap::default();input_map.insert_dual_axis(Action::StrafeXZ, KeyboardVirtualDPad::WASD);input_map.insert_dual_axis(Action::StrafeXZ, GamepadStick::LEFT);input_map.insert_dual_axis(Action::PitchYaw, GamepadStick::RIGHT);input_map.insert(Action::PosRoll, GamepadButtonType::RightTrigger);input_map.insert(Action::NegRoll, GamepadButtonType::LeftTrigger);input_map.insert(Action::PosRoll, KeyCode::KeyE);input_map.insert(Action::NegRoll, KeyCode::KeyQ);input_map.insert(Action::StrafePosY, KeyCode::Space);input_map.insert(Action::StrafeNegY, KeyCode::ControlLeft);InputManagerBundle {action_state: ActionState::default(),// Describes how to convert from player inputs into those actionsinput_map,}}
leafwing-input-manager = "0.15.0"
[[package]]name = "dyn-clone"version = "1.0.18"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "feeef44e73baff3a26d371801df019877a9866a8c493d315ab00177843314f35"[[package]]name = "dyn-eq"version = "0.1.3"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "5c2d035d21af5cde1a6f5c7b444a5bf963520a9f142e5d06931178433d7d5388"[[package]]name = "dyn-hash"version = "0.2.1"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "0f0c23f46b192893998c459e1603a90f3232ec91d56f379273fecf2ccb67ffff"
[[package]]name = "leafwing-input-manager"version = "0.15.1"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "4021fbf18a5ed42d81fe26d1976b11567db22ebb80baa06d05dcbd270d455c7e"dependencies = ["bevy","derive_more","dyn-clone","dyn-eq","dyn-hash","itertools 0.13.0","leafwing_input_manager_macros","once_cell","serde","serde_flexitos",][[package]]name = "leafwing_input_manager_macros"version = "0.15.1"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "c4e346fb74dc1ffceed58cdd5c88c6dd3f6548e77ac2beba6a37ff0b1a94b36a"dependencies = ["proc-macro-crate","proc-macro2","quote","syn 2.0.98",]
"syn 2.0.68",
"syn 2.0.98",][[package]]name = "serde_flexitos"version = "0.2.2"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "3323d093d7597660758b742dd7a1525539613f6182b306a4e1dd6e01a89bada9"dependencies = ["erased-serde","serde",