Archived
0

player isFlying

This commit is contained in:
2018-04-30 00:37:39 +03:00
parent e788841f04
commit 80a351adfd
4 changed files with 23 additions and 1 deletions

View File

@@ -19,4 +19,7 @@ public interface Player {
Look getLook();
void setLook(Look look);
boolean isFlying();
void setFlying(boolean value);
}

View File

@@ -18,4 +18,5 @@ public class SimplePlayer implements Player {
private NetChannel channel;
private Location location = new Location(0, 0, 0);
private Look look = new Look(0, 0);
private boolean flying = false;
}

View File

@@ -4,14 +4,18 @@
*/
package mc.core.network.proto_125.packets;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import mc.core.network.CSPacket;
import mc.core.network.NetStream;
import mc.core.network.SCPacket;
import mc.core.network.proto_125.ByteArrayOutputNetStream;
@Getter
@Setter
@ToString
public class PlayerAbilitiesPacket implements SCPacket {
public class PlayerAbilitiesPacket implements SCPacket, CSPacket {
private boolean godMode = false;
private boolean flying = false;
private boolean canFly = false;
@@ -28,4 +32,12 @@ public class PlayerAbilitiesPacket implements SCPacket {
return netStream.toByteArray();
}
@Override
public void readSelf(NetStream netStream) {
godMode = netStream.readBoolean();
flying = netStream.readBoolean();
canFly = netStream.readBoolean();
instantDestroyBlocks = netStream.readBoolean();
}
}

View File

@@ -161,4 +161,10 @@ public class PacketHandler extends SimpleChannelInboundHandler<CSPacket> {
player.getLook().setYaw(packet.getYaw());
player.getLook().setPitch(packet.getPitch());
}
public void onPlayerAbilitiesPacket(Channel channel, PlayerAbilitiesPacket packet) {
log.debug("Player new sets: {}", packet.toString());
Player player = channel.attr(ATTR_PLAYER).get();
player.setFlying(packet.isFlying());
}
}