diff --git a/Cargo.lock b/Cargo.lock index edb099c..bc34072 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3306,11 +3306,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "erased-serde" -version = "0.4.6" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e004d887f51fcb9fef17317a2f3525c887d8aa3f4f50fed920816a688284a5b7" +checksum = "89e8918065695684b2b0702da20382d5ae6065cf3327bc2d6436bd49a71ce9f3" dependencies = [ "serde", + "serde_core", "typeid", ] @@ -4025,9 +4026,9 @@ dependencies = [ [[package]] name = "inventory" -version = "0.3.20" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab08d7cd2c5897f2c949e5383ea7c7db03fb19130ffcfbf7eda795137ae3cb83" +checksum = "009ae045c87e7082cb72dab0ccd01ae075dd00141ddc108f43a0ea150a9e7227" dependencies = [ "rustversion", ] @@ -4645,7 +4646,7 @@ version = "0.50.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -5329,9 +5330,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.95" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" dependencies = [ "unicode-ident", ] @@ -5366,9 +5367,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.40" +version = "1.0.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4" dependencies = [ "proc-macro2", ] @@ -5662,9 +5663,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "ruzstd" @@ -5977,9 +5978,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.114" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", @@ -6290,9 +6291,9 @@ checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "typetag" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f22b40dd7bfe8c14230cf9702081366421890435b2d625fa92b4acc4c3de6f" +checksum = "be2212c8a9b9bcfca32024de14998494cf9a5dfa59ea1b829de98bac374b86bf" dependencies = [ "erased-serde", "inventory", @@ -6303,9 +6304,9 @@ dependencies = [ [[package]] name = "typetag-impl" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35f5380909ffc31b4de4f4bdf96b877175a016aa2ca98cee39fcfd8c4d53d952" +checksum = "27a7a9b72ba121f6f1f6c3632b85604cac41aedb5ddc70accbebb6cac83de846" dependencies = [ "proc-macro2", "quote", @@ -6320,9 +6321,9 @@ checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "unicode-linebreak" diff --git a/engine/prefabs/Cargo.toml b/engine/prefabs/Cargo.toml index 26c199b..f0fe5d1 100644 --- a/engine/prefabs/Cargo.toml +++ b/engine/prefabs/Cargo.toml @@ -5,8 +5,8 @@ edition = "2024" [dependencies] bevy = "0.18.0" -serde = "1.0.219" -typetag = "0.2.20" +serde = "1.0.228" +typetag = "0.2.21" [dev-dependencies] ron = "0.10.1" diff --git a/game/main/src/main.rs b/game/main/src/main.rs index cd03266..a7ceb9f 100644 --- a/game/main/src/main.rs +++ b/game/main/src/main.rs @@ -8,7 +8,8 @@ use plugins::GamePlugin; mod components; mod resources; const NAME: &str = "Space Game"; -fn main() { +fn main() +{ App::new() .add_plugins(( DefaultPlugins @@ -17,7 +18,7 @@ fn main() { title: NAME.into(), name: Some(NAME.into()), #[cfg(debug_assertions)] - resolution: (1920., 1080.).into(), + resolution: (1920, 1080).into(), present_mode: PresentMode::AutoNoVsync, #[cfg(not(debug_assertions))] mode: bevy::window::WindowMode::BorderlessFullscreen, @@ -30,9 +31,7 @@ fn main() { watch_for_changes_override: Some(true), ..Default::default() }), - EguiPlugin { - enable_multipass_for_primary_context: true, - }, + EguiPlugin::default(), WorldInspectorPlugin::new(), GamePlugin, )) diff --git a/game/main/src/plugins/camera.rs b/game/main/src/plugins/camera.rs index 368600a..7bfd4ff 100644 --- a/game/main/src/plugins/camera.rs +++ b/game/main/src/plugins/camera.rs @@ -7,8 +7,10 @@ use crate::{components::camera::*, states::play::PlaySystems}; pub struct CameraPlugin; -impl Plugin for CameraPlugin { - fn build(&self, app: &mut App) { +impl Plugin for CameraPlugin +{ + fn build(&self, app: &mut App) + { app.add_systems(Update, camera_pitch.in_set(PlaySystems)); app.add_systems( PostUpdate, @@ -23,12 +25,16 @@ impl Plugin for CameraPlugin { pub fn camera_attachment( attachment_targets: Query<&GlobalTransform>, cam: Single<(&mut Transform, &CameraAttachment, &CameraMode)>, -) { +) +{ let (mut transform, attach, mode) = cam.into_inner(); - if let Ok(tgt) = attachment_targets.get(attach.0) { - match mode { - CameraMode::Player => { + if let Ok(tgt) = attachment_targets.get(attach.0) + { + match mode + { + CameraMode::Player => + { transform.rotation = tgt.rotation(); transform.translation = tgt.translation(); } @@ -38,8 +44,10 @@ pub fn camera_attachment( } } -pub fn camera_pitch(cam_query: Query<(&mut Transform, &CameraPitch)>) { - for (mut cam_transform, pitch) in cam_query { +pub fn camera_pitch(cam_query: Query<(&mut Transform, &CameraPitch)>) +{ + for (mut cam_transform, pitch) in cam_query + { cam_transform.rotation = Quat::from_rotation_x(pitch.0); } } @@ -47,20 +55,25 @@ pub fn camera_pitch(cam_query: Query<(&mut Transform, &CameraPitch)>) { #[cfg(feature = "dev")] pub fn camera_toggle( key: Res>, - mut window: Single<&mut Window, With>, + mut cursor_options: Single<&mut CursorOptions, With>, camera: Single<&mut CameraMode>, -) { +) +{ use bevy::window::CursorGrabMode; let mut mode = camera.into_inner(); - if key.just_pressed(KeyCode::Escape) { - if window.cursor_options.visible { + if key.just_pressed(KeyCode::Escape) + { + if cursor_options.visible + { *mode = CameraMode::Player; - window.cursor_options.grab_mode = CursorGrabMode::Locked; - window.cursor_options.visible = false; - } else { + cursor_options.grab_mode = CursorGrabMode::Locked; + cursor_options.visible = false; + } + else + { *mode = CameraMode::Disabled; - window.cursor_options.grab_mode = CursorGrabMode::None; - window.cursor_options.visible = true; + cursor_options.grab_mode = CursorGrabMode::None; + cursor_options.visible = true; } } } diff --git a/game/main/src/plugins/game.rs b/game/main/src/plugins/game.rs index df1d8d5..4d77790 100644 --- a/game/main/src/plugins/game.rs +++ b/game/main/src/plugins/game.rs @@ -16,8 +16,10 @@ use bevy_rapier3d::prelude::*; #[derive(Default)] pub struct GamePlugin; -impl Plugin for GamePlugin { - fn build(&self, app: &mut bevy::app::App) { +impl Plugin for GamePlugin +{ + fn build(&self, app: &mut bevy::app::App) + { app.add_plugins(( FollowCamPlugin, CameraPlugin, @@ -40,8 +42,9 @@ fn setup_scene( mut commands: Commands, mut meshes: ResMut>, mut materials: ResMut>, - mut window: Single<&mut Window, With>, -) { + mut window: Single<&mut CursorOptions, With>, +) +{ window.cursor_options.visible = false; window.cursor_options.grab_mode = CursorGrabMode::Locked; @@ -105,11 +108,8 @@ fn setup_scene( } #[allow(dead_code)] -fn spawn_ship( - mut commands: Commands, - mut meshes: ResMut>, - mut materials: ResMut>, -) { +fn spawn_ship(mut commands: Commands, mut meshes: ResMut>, mut materials: ResMut>) +{ let window_material = materials.add(Color::linear_rgba(1.0, 0.0, 1.0, 0.5)); let material = materials.add(Color::BLACK); diff --git a/game/main/src/plugins/player.rs b/game/main/src/plugins/player.rs index 608f534..9731de7 100644 --- a/game/main/src/plugins/player.rs +++ b/game/main/src/plugins/player.rs @@ -15,8 +15,10 @@ use crate::{ pub struct PlayerPlugin; -impl Plugin for PlayerPlugin { - fn build(&self, app: &mut App) { +impl Plugin for PlayerPlugin +{ + fn build(&self, app: &mut App) + { app.add_systems(PreUpdate, (keyboard_input, player_look).in_set(InputWorldSystems)); app.add_systems( Update, @@ -28,7 +30,8 @@ impl Plugin for PlayerPlugin { } } -fn apply_forces(player: Single<(&mut PlayerVelocity, &PlayerForce), With>, time: Res