Skip to content

Commit cf8ff8e

Browse files
committed
Fixed Nova clientside items being saved in sync data
1 parent ab0092b commit cf8ff8e

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

nova/src/main/kotlin/xyz/xenondevs/nova/item/logic/PacketItems.kt

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ import xyz.xenondevs.nova.util.serverPlayer
7373
import java.text.DecimalFormat
7474
import java.text.DecimalFormatSymbols
7575
import java.util.*
76+
import kotlin.collections.ArrayList
7677
import com.mojang.datafixers.util.Pair as MojangPair
7778
import net.minecraft.world.item.ItemStack as MojangStack
7879

@@ -145,12 +146,16 @@ internal object PacketItems : Listener, PacketListener {
145146
val player = event.player
146147
val packet = event.packet
147148
val data = packet.packedItems ?: return
148-
data.forEachIndexed { idx, dataValue ->
149+
val newItems = ArrayList<DataValue<*>>()
150+
data.forEach { dataValue ->
149151
val value = dataValue.value
150152
if (value is MojangStack) {
151-
data[idx] = DataValue(dataValue.id, EntityDataSerializers.ITEM_STACK, getClientSideStack(player, value, false))
153+
newItems.add(DataValue(dataValue.id, EntityDataSerializers.ITEM_STACK, getClientSideStack(player, value, false)))
154+
} else {
155+
newItems.add(dataValue)
152156
}
153157
}
158+
event.packedItems = newItems
154159
}
155160

156161
@PacketHandler

0 commit comments

Comments
 (0)