mirror of https://github.com/Minestom/Minestom.git
35 lines
1.2 KiB
Java
35 lines
1.2 KiB
Java
package net.minestom.server.network.packet.client.play;
|
|
|
|
import net.minestom.server.coordinate.Point;
|
|
import net.minestom.server.instance.block.BlockFace;
|
|
import net.minestom.server.network.packet.client.ClientPacket;
|
|
import net.minestom.server.utils.binary.BinaryReader;
|
|
import net.minestom.server.utils.binary.BinaryWriter;
|
|
import org.jetbrains.annotations.NotNull;
|
|
|
|
public record ClientPlayerDiggingPacket(@NotNull Status status, @NotNull Point blockPosition,
|
|
@NotNull BlockFace blockFace, int sequence) implements ClientPacket {
|
|
public ClientPlayerDiggingPacket(BinaryReader reader) {
|
|
this(Status.values()[reader.readVarInt()], reader.readBlockPosition(),
|
|
BlockFace.values()[reader.readByte()], reader.readVarInt());
|
|
}
|
|
|
|
@Override
|
|
public void write(@NotNull BinaryWriter writer) {
|
|
writer.writeVarInt(status.ordinal());
|
|
writer.writeBlockPosition(blockPosition);
|
|
writer.writeByte((byte) blockFace.ordinal());
|
|
writer.writeVarInt(sequence);
|
|
}
|
|
|
|
public enum Status {
|
|
STARTED_DIGGING,
|
|
CANCELLED_DIGGING,
|
|
FINISHED_DIGGING,
|
|
DROP_ITEM_STACK,
|
|
DROP_ITEM,
|
|
UPDATE_ITEM_STATE,
|
|
SWAP_ITEM_HAND
|
|
}
|
|
}
|