From 145feaed423df18ae01b652d02e88f57624ed44f Mon Sep 17 00:00:00 2001 From: Bixilon Date: Sat, 7 May 2022 22:10:08 +0200 Subject: [PATCH] tab list: ignore invalid gamemodes Some servers (like play.cubecraft.net) don't send a -1 gamemode. This produces a lot of exceptions and useless errors. Minecraft seems to handle that fine --- .../minosoft/protocol/packets/s2c/play/tab/TabListS2CP.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/de/bixilon/minosoft/protocol/packets/s2c/play/tab/TabListS2CP.kt b/src/main/java/de/bixilon/minosoft/protocol/packets/s2c/play/tab/TabListS2CP.kt index 0f52dfb80..2f84fe5cc 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/packets/s2c/play/tab/TabListS2CP.kt +++ b/src/main/java/de/bixilon/minosoft/protocol/packets/s2c/play/tab/TabListS2CP.kt @@ -43,7 +43,7 @@ class TabListS2CP(buffer: PlayInByteBuffer) : PlayS2CPacket { TabListItemActions.ADD -> { val name = buffer.readString() val properties = buffer.readPlayerProperties() - val gamemode = Gamemodes[buffer.readVarInt()] + val gamemode = Gamemodes.getOrNull(buffer.readVarInt()) ?: Gamemodes.SURVIVAL val ping = buffer.readVarInt() val hasDisplayName = buffer.readBoolean() val displayName = if (hasDisplayName) {