diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/network/FieldSynchronizer.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/network/FieldSynchronizer.kt index 621e53870..f9faa50e9 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/network/FieldSynchronizer.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/network/FieldSynchronizer.kt @@ -544,7 +544,7 @@ class FieldSynchronizer(private val callback: Runnable, private val alwaysCallCa } override fun write(stream: DataOutputStream, endpoint: Endpoint) { - stream.write(id) + stream.writeVarIntLE(id) codec.write(stream, field) isDirty = false remote = codec.copy(field) @@ -603,7 +603,7 @@ class FieldSynchronizer(private val callback: Runnable, private val alwaysCallCa get() = clientValue ?: getter.invoke() override fun write(stream: DataOutputStream, endpoint: Endpoint) { - stream.write(id) + stream.writeVarIntLE(id) val value = value codec.write(stream, value) isDirty = false @@ -670,7 +670,7 @@ class FieldSynchronizer(private val callback: Runnable, private val alwaysCallCa } override fun write(stream: DataOutputStream, endpoint: Endpoint) { - stream.write(id) + stream.writeVarIntLE(id) val value = value codec.write(stream, value) isDirty = false @@ -906,7 +906,7 @@ class FieldSynchronizer(private val callback: Runnable, private val alwaysCallCa } override fun write(stream: DataOutputStream, endpoint: Endpoint) { - stream.write(id) + stream.writeVarIntLE(id) sentAllValues = false isDirty = false @@ -997,13 +997,13 @@ class FieldSynchronizer(private val callback: Runnable, private val alwaysCallCa } fun applyNetworkPayload(stream: DataInputStream): Int { - var fieldId = stream.read() + var fieldId = stream.readVarIntLE() var i = 0 while (fieldId != 0) { val field = fields.getOrNull(fieldId - 1) ?: throw IndexOutOfBoundsException("Invalid field id $fieldId") field.read(stream) - fieldId = stream.read() + fieldId = stream.readVarIntLE() i++ }