aboutsummaryrefslogtreecommitdiff
path: root/azalea-client/src
diff options
context:
space:
mode:
Diffstat (limited to 'azalea-client/src')
-rwxr-xr-xazalea-client/src/lib.rs1
-rw-r--r--azalea-client/src/movement.rs24
2 files changed, 25 insertions, 0 deletions
diff --git a/azalea-client/src/lib.rs b/azalea-client/src/lib.rs
index 867f05a1..c3c37460 100755
--- a/azalea-client/src/lib.rs
+++ b/azalea-client/src/lib.rs
@@ -2,6 +2,7 @@
mod account;
mod client;
+mod movement;
pub mod ping;
mod player;
diff --git a/azalea-client/src/movement.rs b/azalea-client/src/movement.rs
new file mode 100644
index 00000000..9f5cd27c
--- /dev/null
+++ b/azalea-client/src/movement.rs
@@ -0,0 +1,24 @@
+use azalea_core::EntityPos;
+use crate::Client;
+use azalea_protocol::packets::game::serverbound_move_player_packet_pos_rot::ServerboundMovePlayerPacketPosRot;
+
+impl Client {
+ /// Set the client's position to the given coordinates.
+ pub async fn move_to(&mut self, pos: &EntityPos) {
+ self.conn
+ .lock()
+ .await
+ .write(
+ ServerboundMovePlayerPacketPosRot {
+ x: pos.x,
+ y: pos.y,
+ z: pos.z,
+ x_rot: 0.0,
+ y_rot: 0.0,
+ on_ground: false,
+ }
+ .get(),
+ )
+ .await;
+ }
+}