From e352b45401bb9c15c5b86d2d705321e6c65cc3e9 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Wed, 1 Jan 2025 22:53:57 +0200 Subject: [PATCH] chore: rename MovementState -> FloorYTarget --- src/constants.rs | 3 ++ src/floor/components.rs | 7 +-- src/floor/systems/mod.rs | 3 +- src/floor/systems/movement.rs | 59 +++++++++-------------- src/floor/systems/spawn.rs | 12 +---- src/lib.rs | 1 + src/maze/assets.rs | 6 ++- src/maze/triggers/spawn.rs | 3 +- src/player/systems/ascend.rs | 25 ---------- src/player/systems/descend.rs | 28 ----------- src/player/systems/mod.rs | 13 ++--- src/player/systems/movement.rs | 3 +- src/player/systems/vertical_transition.rs | 37 ++++++++++++++ 13 files changed, 81 insertions(+), 119 deletions(-) create mode 100644 src/constants.rs delete mode 100644 src/player/systems/ascend.rs delete mode 100644 src/player/systems/descend.rs create mode 100644 src/player/systems/vertical_transition.rs diff --git a/src/constants.rs b/src/constants.rs new file mode 100644 index 0000000..5e5fb5b --- /dev/null +++ b/src/constants.rs @@ -0,0 +1,3 @@ +pub const MOVEMENT_THRESHOLD: f32 = 0.01; +pub const WALL_OVERLAP_MODIFIER: f32 = 1.25; +pub const FLOOR_Y_OFFSET: u8 = 100; diff --git a/src/floor/components.rs b/src/floor/components.rs index 570d919..65ab700 100644 --- a/src/floor/components.rs +++ b/src/floor/components.rs @@ -12,12 +12,9 @@ pub struct CurrentFloor; #[reflect(Component)] pub struct NextFloor; -#[derive(Debug, Reflect, Component)] +#[derive(Debug, Reflect, Component, Deref, DerefMut)] #[reflect(Component)] -pub struct MovementState { - pub target_y: f32, - pub direction: f32, -} +pub struct FloorYTarget(pub f32); impl Default for Floor { fn default() -> Self { diff --git a/src/floor/systems/mod.rs b/src/floor/systems/mod.rs index 7bdf6e1..2d424d4 100644 --- a/src/floor/systems/mod.rs +++ b/src/floor/systems/mod.rs @@ -16,9 +16,8 @@ pub(super) fn plugin(app: &mut App) { spawn_floor, despawn_floor, handle_floor_transition_events, - move_floors, + move_floors.after(handle_floor_transition_events), ) - .chain() .run_if(resource_exists::), ); } diff --git a/src/floor/systems/movement.rs b/src/floor/systems/movement.rs index c2d9252..ec8ce20 100644 --- a/src/floor/systems/movement.rs +++ b/src/floor/systems/movement.rs @@ -1,40 +1,41 @@ use crate::{ + constants::{FLOOR_Y_OFFSET, MOVEMENT_THRESHOLD}, floor::{ - components::{CurrentFloor, MovementState, NextFloor}, + components::{CurrentFloor, FloorYTarget, NextFloor}, events::TransitionFloor, }, maze::components::HexMaze, player::components::{MovementSpeed, Player}, }; + use bevy::prelude::*; -const MOVEMENT_THRESHOLD: f32 = 0.001; - -pub(super) fn move_floors( +pub fn move_floors( mut commands: Commands, - mut maze_query: Query<(Entity, &mut Transform, Option<&mut MovementState>), With>, + mut maze_query: Query< + (Entity, &mut Transform, &FloorYTarget), + (With, With), + >, player_query: Query<&MovementSpeed, With>, time: Res