diff options
Diffstat (limited to 'azalea/src')
| -rw-r--r-- | azalea/src/bot.rs | 14 | ||||
| -rw-r--r-- | azalea/src/pathfinder/simulation.rs | 6 |
2 files changed, 11 insertions, 9 deletions
diff --git a/azalea/src/bot.rs b/azalea/src/bot.rs index 8784cb31..b037ed14 100644 --- a/azalea/src/bot.rs +++ b/azalea/src/bot.rs @@ -9,8 +9,8 @@ use azalea_core::{ tick::GameTick, }; use azalea_entity::{ - EyeHeight, Jumping, LocalEntity, LookDirection, Position, clamp_look_direction, - metadata::Player, + Jumping, LocalEntity, LookDirection, Position, clamp_look_direction, + dimensions::EntityDimensions, metadata::Player, update_dimensions, }; use azalea_physics::PhysicsSet; use bevy_app::Update; @@ -43,7 +43,9 @@ impl Plugin for BotPlugin { Update, ( insert_bot, - look_at_listener.before(clamp_look_direction), + look_at_listener + .before(clamp_look_direction) + .after(update_dimensions), jump_listener, ), ) @@ -224,12 +226,12 @@ pub struct LookAtEvent { } fn look_at_listener( mut events: EventReader<LookAtEvent>, - mut query: Query<(&Position, &EyeHeight, &mut LookDirection)>, + mut query: Query<(&Position, &EntityDimensions, &mut LookDirection)>, ) { for event in events.read() { - if let Ok((position, eye_height, mut look_direction)) = query.get_mut(event.entity) { + if let Ok((position, dimensions, mut look_direction)) = query.get_mut(event.entity) { let new_look_direction = - direction_looking_at(position.up(eye_height.into()), event.position); + direction_looking_at(position.up(dimensions.eye_height.into()), event.position); trace!("look at {} (currently at {})", event.position, **position); look_direction.update(new_look_direction); diff --git a/azalea/src/pathfinder/simulation.rs b/azalea/src/pathfinder/simulation.rs index 8f198ce8..89a8b3c4 100644 --- a/azalea/src/pathfinder/simulation.rs +++ b/azalea/src/pathfinder/simulation.rs @@ -10,7 +10,7 @@ use azalea_core::{ game_type::GameMode, position::Vec3, resource_location::ResourceLocation, tick::GameTick, }; use azalea_entity::{ - Attributes, EntityDimensions, LookDirection, Physics, Position, default_attributes, + Attributes, LookDirection, Physics, Position, default_attributes, dimensions::EntityDimensions, }; use azalea_registry::EntityKind; use azalea_world::{ChunkStorage, Instance, InstanceContainer, MinecraftEntityId, PartialInstance}; @@ -35,7 +35,7 @@ impl SimulatedPlayerBundle { SimulatedPlayerBundle { position: Position::new(position), - physics: Physics::new(dimensions, position), + physics: Physics::new(&dimensions, position), physics_state: PhysicsState::default(), look_direction: LookDirection::default(), attributes: default_attributes(EntityKind::Player), @@ -112,7 +112,7 @@ fn create_simulation_player_complete_bundle( MineBundle::default(), BlockStatePredictionHandler::default(), azalea_client::local_player::PermissionLevel::default(), - azalea_client::local_player::PlayerAbilities::default(), + azalea_entity::PlayerAbilities::default(), ) } |
