diff options
| author | mat <git@matdoes.dev> | 2026-03-30 10:02:22 +0600 |
|---|---|---|
| committer | mat <git@matdoes.dev> | 2026-05-07 08:05:58 -1200 |
| commit | 4af9762854aad30b7fdc40640618e465197f2148 (patch) | |
| tree | b3f00274ed277ed4a1fb6363b1f11e9f430c7535 /azalea-client/src/plugins | |
| parent | ddef37118448b639ff56b86ae339e8913cb4ed11 (diff) | |
| download | azalea-drasl-4af9762854aad30b7fdc40640618e465197f2148.tar.xz | |
rename PhysicsState to ClientMovementState and add utility functions for it
Diffstat (limited to 'azalea-client/src/plugins')
| -rw-r--r-- | azalea-client/src/plugins/interact/mod.rs | 6 | ||||
| -rw-r--r-- | azalea-client/src/plugins/movement.rs | 30 |
2 files changed, 23 insertions, 13 deletions
diff --git a/azalea-client/src/plugins/interact/mod.rs b/azalea-client/src/plugins/interact/mod.rs index 0eb43818..3db026b9 100644 --- a/azalea-client/src/plugins/interact/mod.rs +++ b/azalea-client/src/plugins/interact/mod.rs @@ -22,8 +22,8 @@ use azalea_entity::{ }; use azalea_inventory::{ItemStack, ItemStackData, components}; use azalea_physics::{ - PhysicsSystems, collision::entity_collisions::update_last_bounding_box, - local_player::PhysicsState, + PhysicsSystems, client_movement::ClientMovementState, + collision::entity_collisions::update_last_bounding_box, }; use azalea_protocol::packets::game::{ ServerboundInteract, ServerboundUseItem, s_interact::InteractionHand, @@ -312,7 +312,7 @@ pub struct EntityInteractEvent { pub fn handle_entity_interact( trigger: On<EntityInteractEvent>, mut commands: Commands, - client_query: Query<(&PhysicsState, &EntityIdIndex, &HitResultComponent)>, + client_query: Query<(&ClientMovementState, &EntityIdIndex, &HitResultComponent)>, target_query: Query<&Position>, ) { let Some((physics_state, entity_id_index, hit_result)) = client_query.get(trigger.client).ok() diff --git a/azalea-client/src/plugins/movement.rs b/azalea-client/src/plugins/movement.rs index 6e2da752..dfd1f4b2 100644 --- a/azalea-client/src/plugins/movement.rs +++ b/azalea-client/src/plugins/movement.rs @@ -13,8 +13,8 @@ use azalea_entity::{ }; use azalea_physics::{ PhysicsSystems, ai_step, + client_movement::{ClientMovementState, SprintDirection, WalkDirection}, collision::entity_collisions::{AabbQuery, CollidableEntityQuery, update_last_bounding_box}, - local_player::{PhysicsState, SprintDirection, WalkDirection}, travel::{no_collision, travel}, }; use azalea_protocol::{ @@ -92,7 +92,7 @@ pub fn send_position( Entity, &Position, &LookDirection, - &mut PhysicsState, + &mut ClientMovementState, &mut LastSentPosition, &mut Physics, &mut LastSentLookDirection, @@ -196,7 +196,12 @@ pub fn send_position( #[derive(Clone, Component, Debug, Default, Eq, PartialEq)] pub struct LastSentInput(pub ServerboundPlayerInput); pub fn send_player_input_packet( - mut query: Query<(Entity, &PhysicsState, &Jumping, Option<&LastSentInput>)>, + mut query: Query<( + Entity, + &ClientMovementState, + &Jumping, + Option<&LastSentInput>, + )>, mut commands: Commands, ) { for (entity, physics_state, jumping, last_sent_input) in query.iter_mut() { @@ -227,7 +232,12 @@ pub fn send_player_input_packet( } pub fn send_sprinting_if_needed( - mut query: Query<(Entity, &MinecraftEntityId, &Sprinting, &mut PhysicsState)>, + mut query: Query<( + Entity, + &MinecraftEntityId, + &Sprinting, + &mut ClientMovementState, + )>, mut commands: Commands, ) { for (entity, minecraft_entity_id, sprinting, mut physics_state) in query.iter_mut() { @@ -253,7 +263,7 @@ pub fn send_sprinting_if_needed( /// Updates the [`PhysicsState::move_vector`] based on the /// [`PhysicsState::move_direction`]. -pub(crate) fn tick_controls(mut query: Query<&mut PhysicsState>) { +pub(crate) fn tick_controls(mut query: Query<&mut ClientMovementState>) { for mut physics_state in query.iter_mut() { let mut forward_impulse: f32 = 0.; let mut left_impulse: f32 = 0.; @@ -292,7 +302,7 @@ pub fn local_player_ai_step( mut query: Query< ( Entity, - &PhysicsState, + &ClientMovementState, &PlayerAbilities, &metadata::Swimming, &metadata::SleepingPos, @@ -481,7 +491,7 @@ pub struct StartWalkEvent { /// [`StartWalkEvent`]. pub fn handle_walk( mut events: MessageReader<StartWalkEvent>, - mut query: Query<(&mut PhysicsState, &mut Sprinting, &mut Attributes)>, + mut query: Query<(&mut ClientMovementState, &mut Sprinting, &mut Attributes)>, ) { for event in events.read() { if let Ok((mut physics_state, mut sprinting, mut attributes)) = query.get_mut(event.entity) @@ -504,7 +514,7 @@ pub struct StartSprintEvent { /// The system that makes the player start sprinting when they receive a /// [`StartSprintEvent`]. pub fn handle_sprint( - mut query: Query<&mut PhysicsState>, + mut query: Query<&mut ClientMovementState>, mut events: MessageReader<StartSprintEvent>, ) { for event in events.read() { @@ -542,7 +552,7 @@ fn set_sprinting( } // Whether the player is moving fast enough to be able to start sprinting. -fn has_enough_impulse_to_start_sprinting(physics_state: &PhysicsState) -> bool { +fn has_enough_impulse_to_start_sprinting(physics_state: &ClientMovementState) -> bool { // if self.underwater() { // self.has_forward_impulse() // } else { @@ -585,7 +595,7 @@ pub fn update_pose( Entity, &mut Pose, &Physics, - &PhysicsState, + &ClientMovementState, &LocalGameMode, &WorldHolder, &Position, |
