From 2d529dfce7733c08f33d24aedabe9f584a2c3128 Mon Sep 17 00:00:00 2001 From: Bixilon Date: Thu, 25 Jun 2020 15:49:49 +0200 Subject: [PATCH] bug fixes (uuid reading, play info, TextComponent null) --- .../de/bixilon/minosoft/game/datatypes/TextComponent.java | 4 ++++ .../protocol/packets/clientbound/play/PacketPlayerInfo.java | 2 +- .../de/bixilon/minosoft/protocol/protocol/InByteBuffer.java | 4 +--- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/de/bixilon/minosoft/game/datatypes/TextComponent.java b/src/main/java/de/bixilon/minosoft/game/datatypes/TextComponent.java index 693e84214..017b8965b 100644 --- a/src/main/java/de/bixilon/minosoft/game/datatypes/TextComponent.java +++ b/src/main/java/de/bixilon/minosoft/game/datatypes/TextComponent.java @@ -24,6 +24,10 @@ public class TextComponent { JSONObject json; public TextComponent(String raw) { + if (raw == null) { + this.json = new JSONObject(); + return; + } try { this.json = new JSONObject(raw); } catch (JSONException e) { diff --git a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketPlayerInfo.java b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketPlayerInfo.java index f8e340bec..e9ecb87be 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketPlayerInfo.java +++ b/src/main/java/de/bixilon/minosoft/protocol/packets/clientbound/play/PacketPlayerInfo.java @@ -88,7 +88,7 @@ public class PacketPlayerInfo implements ClientboundPacket { if (property.isLegacy()) { Log.game(String.format("[TAB] Player info bulk (uuid=%s, name=%s, ping=%d)", property.getUUID(), property.getName(), property.getPing())); } else { - Log.game(String.format("[TAB] Player info bulk (uuid=%s, action=%s, name=%s, gameMode=%s, ping=%d)", property.getUUID(), property.getAction(), property.getName(), ((property.getGameMode() == null) ? "null" : property.getGameMode().name()), property.getPing())); + Log.game(String.format("[TAB] Player info bulk (uuid=%s, action=%s, name=%s, gameMode=%s, ping=%d, displayName=%s)", property.getUUID(), property.getAction(), property.getName(), ((property.getGameMode() == null) ? "null" : property.getGameMode().name()), property.getPing(), ((property.getDisplayName() == null) ? "null" : property.getDisplayName().getColoredMessage()))); } } diff --git a/src/main/java/de/bixilon/minosoft/protocol/protocol/InByteBuffer.java b/src/main/java/de/bixilon/minosoft/protocol/protocol/InByteBuffer.java index 89ff5f9ad..16a92cb1d 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/protocol/InByteBuffer.java +++ b/src/main/java/de/bixilon/minosoft/protocol/protocol/InByteBuffer.java @@ -121,9 +121,7 @@ public class InByteBuffer { public UUID readUUID() { - ByteBuffer buffer = ByteBuffer.allocate(16); // UUID.BYTES - buffer.put(readBytes(16)); - return new UUID(buffer.getLong(0), buffer.getLong(1)); + return new UUID(readLong(), readLong()); } public int readVarInt() {