network: fix block data storing

This commit is contained in:
Bixilon 2022-12-25 17:19:07 +01:00
parent 41ee197216
commit 0e68f35ffa
No known key found for this signature in database
GPG Key ID: 5CAD791931B09AC4

View File

@ -15,6 +15,7 @@ package de.bixilon.minosoft.protocol.packets.s2c.play.block
import de.bixilon.kotlinglm.vec3.Vec3i import de.bixilon.kotlinglm.vec3.Vec3i
import de.bixilon.kutil.json.JsonUtil.toJsonObject import de.bixilon.kutil.json.JsonUtil.toJsonObject
import de.bixilon.minosoft.data.world.positions.ChunkPositionUtil.chunkPosition import de.bixilon.minosoft.data.world.positions.ChunkPositionUtil.chunkPosition
import de.bixilon.minosoft.data.world.positions.ChunkPositionUtil.inChunkPosition
import de.bixilon.minosoft.modding.event.events.blocks.BlockDataChangeEvent import de.bixilon.minosoft.modding.event.events.blocks.BlockDataChangeEvent
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
import de.bixilon.minosoft.protocol.packets.factory.LoadPacket import de.bixilon.minosoft.protocol.packets.factory.LoadPacket
@ -45,7 +46,7 @@ class BlockDataS2CP(buffer: PlayInByteBuffer) : PlayS2CPacket {
return return
} }
val chunk = connection.world[position.chunkPosition] ?: return val chunk = connection.world[position.chunkPosition] ?: return
val blockEntity = chunk.getOrPutBlockEntity(position) ?: return val blockEntity = chunk.getOrPutBlockEntity(position.inChunkPosition) ?: return
blockEntity.updateNBT(nbt) blockEntity.updateNBT(nbt)
connection.events.fire(BlockDataChangeEvent(connection, chunk, position, blockEntity)) connection.events.fire(BlockDataChangeEvent(connection, chunk, position, blockEntity))
} }