mirror of
https://github.com/Minestom/Minestom.git
synced 2024-09-24 20:42:39 +02:00
Make new packets record (reading method still to be defined)
Signed-off-by: TheMode <themode@outlook.fr>
This commit is contained in:
parent
eb6b37f20b
commit
e3b59c3b95
@ -181,21 +181,13 @@ public class DynamicChunk extends Chunk {
|
||||
blockPalette.write(writer); // Blocks
|
||||
new Palette(2, 2).write(writer); // Biomes
|
||||
}
|
||||
|
||||
ChunkDataPacket packet = new ChunkDataPacket();
|
||||
packet.chunkX = chunkX;
|
||||
packet.chunkZ = chunkZ;
|
||||
packet.chunkData = new ChunkData(heightmapsNBT, writer.toByteArray(), entries);
|
||||
packet.lightData = createLightData();
|
||||
return packet;
|
||||
return new ChunkDataPacket(chunkX, chunkZ,
|
||||
new ChunkData(heightmapsNBT, writer.toByteArray(), entries),
|
||||
createLightData());
|
||||
}
|
||||
|
||||
private synchronized @NotNull UpdateLightPacket createLightPacket() {
|
||||
UpdateLightPacket updateLightPacket = new UpdateLightPacket();
|
||||
updateLightPacket.chunkX = getChunkX();
|
||||
updateLightPacket.chunkZ = getChunkZ();
|
||||
updateLightPacket.lightData = createLightData();
|
||||
return updateLightPacket;
|
||||
return new UpdateLightPacket(chunkX, chunkZ, createLightData());
|
||||
}
|
||||
|
||||
private LightData createLightData() {
|
||||
|
@ -4,18 +4,11 @@ import net.minestom.server.network.packet.server.ServerPacket;
|
||||
import net.minestom.server.network.packet.server.ServerPacketIdentifier;
|
||||
import net.minestom.server.network.packet.server.play.data.ChunkData;
|
||||
import net.minestom.server.network.packet.server.play.data.LightData;
|
||||
import net.minestom.server.utils.binary.BinaryReader;
|
||||
import net.minestom.server.utils.binary.BinaryWriter;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class ChunkDataPacket implements ServerPacket {
|
||||
public int chunkX, chunkZ;
|
||||
public ChunkData chunkData;
|
||||
public LightData lightData;
|
||||
|
||||
public ChunkDataPacket() {
|
||||
}
|
||||
|
||||
public record ChunkDataPacket(int chunkX, int chunkZ, ChunkData chunkData, LightData lightData)
|
||||
implements ServerPacket {
|
||||
@Override
|
||||
public void write(@NotNull BinaryWriter writer) {
|
||||
writer.writeInt(chunkX);
|
||||
@ -24,13 +17,6 @@ public class ChunkDataPacket implements ServerPacket {
|
||||
this.lightData.write(writer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void read(@NotNull BinaryReader reader) {
|
||||
this.chunkX = reader.readInt();
|
||||
this.chunkZ = reader.readInt();
|
||||
// TODO read
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getId() {
|
||||
return ServerPacketIdentifier.CHUNK_DATA;
|
||||
|
@ -3,38 +3,18 @@ package net.minestom.server.network.packet.server.play;
|
||||
import net.minestom.server.network.packet.server.ServerPacket;
|
||||
import net.minestom.server.network.packet.server.ServerPacketIdentifier;
|
||||
import net.minestom.server.network.packet.server.play.data.LightData;
|
||||
import net.minestom.server.utils.binary.BinaryReader;
|
||||
import net.minestom.server.utils.binary.BinaryWriter;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class UpdateLightPacket implements ServerPacket {
|
||||
|
||||
public int chunkX;
|
||||
public int chunkZ;
|
||||
public LightData lightData;
|
||||
|
||||
/**
|
||||
* Default constructor, required for reflection operations.
|
||||
*/
|
||||
public UpdateLightPacket() {
|
||||
}
|
||||
|
||||
public record UpdateLightPacket(int chunkX, int chunkZ, LightData lightData)
|
||||
implements ServerPacket {
|
||||
@Override
|
||||
public void write(@NotNull BinaryWriter writer) {
|
||||
writer.writeVarInt(chunkX);
|
||||
writer.writeVarInt(chunkZ);
|
||||
|
||||
this.lightData.write(writer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void read(@NotNull BinaryReader reader) {
|
||||
chunkX = reader.readVarInt();
|
||||
chunkZ = reader.readVarInt();
|
||||
|
||||
// TODO read light data
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getId() {
|
||||
return ServerPacketIdentifier.UPDATE_LIGHT;
|
||||
|
@ -0,0 +1,18 @@
|
||||
package net.minestom.server.network.packet.server.play;
|
||||
|
||||
import net.minestom.server.network.packet.server.ServerPacket;
|
||||
import net.minestom.server.network.packet.server.ServerPacketIdentifier;
|
||||
import net.minestom.server.utils.binary.BinaryWriter;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public record UpdateSimulationDistancePacket(int simulationDistance) implements ServerPacket {
|
||||
@Override
|
||||
public void write(@NotNull BinaryWriter writer) {
|
||||
writer.writeVarInt(simulationDistance);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getId() {
|
||||
return ServerPacketIdentifier.SET_SIMULATION_DISTANCE;
|
||||
}
|
||||
}
|
@ -178,8 +178,7 @@ public final class Registry {
|
||||
// Block entity
|
||||
{
|
||||
final JsonElement entityElement = element("blockEntity");
|
||||
if (entityElement instanceof JsonObject) {
|
||||
JsonObject entityObject = (JsonObject) entityElement;
|
||||
if (entityElement instanceof JsonObject entityObject) {
|
||||
this.blockEntity = entityObject.get("namespace").getAsString();
|
||||
this.blockEntityId = entityObject.get("id").getAsInt();
|
||||
} else {
|
||||
|
Loading…
Reference in New Issue
Block a user