This commit is contained in:
TheMode 2019-08-11 08:57:30 +02:00
commit c8ee6858bc
3 changed files with 31 additions and 2 deletions

View File

@ -2,6 +2,7 @@ package fr.themode.minestom.entity;
import fr.themode.minestom.Main; import fr.themode.minestom.Main;
import fr.themode.minestom.net.packet.server.play.EntityTeleportPacket; import fr.themode.minestom.net.packet.server.play.EntityTeleportPacket;
import fr.themode.minestom.net.packet.server.play.UpdateViewPositionPacket;
import fr.themode.minestom.net.player.PlayerConnection; import fr.themode.minestom.net.player.PlayerConnection;
import java.util.UUID; import java.util.UUID;
@ -38,6 +39,7 @@ public class Player extends LivingEntity {
if (!onlinePlayer.equals(this)) if (!onlinePlayer.equals(this))
onlinePlayer.getPlayerConnection().sendPacket(entityTeleportPacket); onlinePlayer.getPlayerConnection().sendPacket(entityTeleportPacket);
} }
playerConnection.sendPacket(new UpdateViewPositionPacket(Math.floorDiv((int) x, 16), Math.floorDiv((int) z, 16)));
} }
public String getUsername() { public String getUsername() {

View File

@ -17,8 +17,8 @@ public class EntityTeleportPacket implements ServerPacket {
buffer.putDouble(x); buffer.putDouble(x);
buffer.putDouble(y); buffer.putDouble(y);
buffer.putDouble(y); buffer.putDouble(y);
buffer.getData().writeByte((int) (this.yaw * 256 / 360)); buffer.putByte((byte) (this.yaw * 256 / 360));
buffer.getData().writeByte((int) (this.pitch * 256 / 360)); buffer.putByte((byte) (this.pitch * 256 / 360));
buffer.putBoolean(onGround); buffer.putBoolean(onGround);
} }

View File

@ -0,0 +1,27 @@
package fr.themode.minestom.net.packet.server.play;
import fr.adamaq01.ozao.net.Buffer;
import fr.themode.minestom.net.packet.server.ServerPacket;
import fr.themode.minestom.utils.Utils;
public class UpdateViewPositionPacket implements ServerPacket {
private int chunkX;
private int chunkZ;
public UpdateViewPositionPacket(int chunkX, int chunkZ) {
this.chunkX = chunkX;
this.chunkZ = chunkZ;
}
@Override
public void write(Buffer buffer) {
Utils.writeVarInt(buffer, chunkX);
Utils.writeVarInt(buffer, chunkZ);
}
@Override
public int getId() {
return 0x40;
}
}