Fix network nbt reader
This commit is contained in:
8 files changed
+27
-13
No files matched your search
@@ -55,6 +55,7 @@ public class MinecraftClient internal constructor(
|
||||
} catch (e: Exception) {
|
||||
if (e is CancellationException) throw e
|
||||
if (isActive) {
|
||||
e.printStackTrace()
|
||||
println("Network read loop exception: ${e.message}")
|
||||
close()
|
||||
}
|
||||
|
||||
+4
-4
@@ -9,14 +9,14 @@ package cn.rtast.libmc.protocol.packet.login
|
||||
|
||||
import cn.rtast.libmc.common.BytesBuffer
|
||||
import cn.rtast.libmc.common.PacketCodec
|
||||
import cn.rtast.libmc.common.readMcString
|
||||
import cn.rtast.libmc.nbt.NBTCompound
|
||||
import cn.rtast.libmc.protocol.protocol.util.readNetworkNBTCompound
|
||||
|
||||
public data class ClientboundDisconnectLoginPacket(val reason: String) : ClientboundLoginPacket {
|
||||
public data class ClientboundDisconnectLoginPacket(val reason: NBTCompound) : ClientboundLoginPacket {
|
||||
public companion object Codec : PacketCodec<ClientboundDisconnectLoginPacket> {
|
||||
override fun encode(buffer: BytesBuffer, value: ClientboundDisconnectLoginPacket) {}
|
||||
override fun decode(buffer: BytesBuffer): ClientboundDisconnectLoginPacket {
|
||||
val reasonJson = buffer.readMcString()
|
||||
return ClientboundDisconnectLoginPacket(reason = reasonJson)
|
||||
return ClientboundDisconnectLoginPacket(reason = buffer.readNetworkNBTCompound())
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8,6 +8,7 @@
|
||||
package test
|
||||
|
||||
import cn.rtast.libmc.protocol.client.createMinecraftClient
|
||||
import cn.rtast.libmc.protocol.packet.play.ClientboundDisconnectPlayPacket
|
||||
import cn.rtast.libmc.protocol.packet.play.ClientboundLoginPlayPacket
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlinx.coroutines.test.runTest
|
||||
@@ -23,6 +24,9 @@ class TestClient {
|
||||
cli.on<ClientboundLoginPlayPacket> {
|
||||
println(it)
|
||||
}
|
||||
cli.on<ClientboundDisconnectPlayPacket> {
|
||||
println(it)
|
||||
}
|
||||
while (true) {
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user