Skip to content

Commit

Permalink
Fixed Nova clientside items being saved in sync data
Browse files Browse the repository at this point in the history
  • Loading branch information
ByteZ1337 committed Jan 29, 2024
1 parent ab0092b commit cf8ff8e
Showing 1 changed file with 7 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ import xyz.xenondevs.nova.util.serverPlayer
import java.text.DecimalFormat
import java.text.DecimalFormatSymbols
import java.util.*
import kotlin.collections.ArrayList
import com.mojang.datafixers.util.Pair as MojangPair
import net.minecraft.world.item.ItemStack as MojangStack

Expand Down Expand Up @@ -145,12 +146,16 @@ internal object PacketItems : Listener, PacketListener {
val player = event.player
val packet = event.packet
val data = packet.packedItems ?: return
data.forEachIndexed { idx, dataValue ->
val newItems = ArrayList<DataValue<*>>()
data.forEach { dataValue ->
val value = dataValue.value
if (value is MojangStack) {
data[idx] = DataValue(dataValue.id, EntityDataSerializers.ITEM_STACK, getClientSideStack(player, value, false))
newItems.add(DataValue(dataValue.id, EntityDataSerializers.ITEM_STACK, getClientSideStack(player, value, false)))
} else {
newItems.add(dataValue)
}
}
event.packedItems = newItems
}

@PacketHandler
Expand Down

0 comments on commit cf8ff8e

Please sign in to comment.