Added gamemode switching in config. Sending player abilities packet to disable flying in spectator mode

This commit is contained in:
Nan1t
2020-11-28 10:52:22 +02:00
parent 74b23582f2
commit 4fa4f50d8a
6 changed files with 55 additions and 3 deletions

View File

@@ -0,0 +1,31 @@
package ru.nanit.limbo.protocol.packets.play;
import ru.nanit.limbo.protocol.ByteMessage;
import ru.nanit.limbo.protocol.PacketOut;
public class PacketPlayerAbilities implements PacketOut {
private int flags = 0x02;
private float flyingSpeed = 0.0F;
private float fieldOfView = 0.1F;
public void setFlags(int flags) {
this.flags = flags;
}
public void setFlyingSpeed(float flyingSpeed) {
this.flyingSpeed = flyingSpeed;
}
public void setFieldOfView(float fieldOfView) {
this.fieldOfView = fieldOfView;
}
@Override
public void encode(ByteMessage msg) {
msg.writeByte(flags);
msg.writeFloat(flyingSpeed);
msg.writeFloat(fieldOfView);
}
}

View File

@@ -40,6 +40,7 @@ public enum State {
{
serverBound.register(0x10, PacketKeepAlive::new);
clientBound.register(0x24, PacketJoinGame::new);
clientBound.register(0x30, PacketPlayerAbilities::new);
clientBound.register(0x34, PacketPlayerPositionAndLook::new);
clientBound.register(0x1F, PacketKeepAlive::new);
clientBound.register(0x0E, PacketChatMessage::new);