9
0
mirror of https://github.com/Xiao-MoMi/craft-engine.git synced 2025-12-29 11:59:11 +00:00

fix(network): 修复为了修复1.21.6的问题导致低版本出现的问题

This commit is contained in:
jhqwqmc
2025-06-16 22:21:04 +08:00
parent 5a86f65379
commit fb00fbd448
2 changed files with 11 additions and 2 deletions

View File

@@ -1,5 +1,6 @@
package net.momirealms.craftengine.bukkit.item;
import com.saicone.rtag.item.ItemTagStream;
import net.momirealms.craftengine.bukkit.item.behavior.BucketItemBehavior;
import net.momirealms.craftengine.bukkit.item.behavior.FlintAndSteelItemBehavior;
import net.momirealms.craftengine.bukkit.item.behavior.WaterBucketItemBehavior;
@@ -138,7 +139,10 @@ public class BukkitItemManager extends AbstractItemManager<ItemStack> {
@Override
public Item<ItemStack> fromByteArray(byte[] bytes) {
return this.factory.wrap(ItemStack.deserializeBytes(bytes));
if (VersionHelper.isOrAbove1_21_6()) {
return this.factory.wrap(ItemStack.deserializeBytes(bytes));
}
return this.factory.wrap(ItemTagStream.INSTANCE.fromBytes(bytes));
}
@Override

View File

@@ -1,6 +1,7 @@
package net.momirealms.craftengine.bukkit.item.factory;
import com.google.gson.JsonElement;
import com.saicone.rtag.item.ItemTagStream;
import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflections;
import net.momirealms.craftengine.bukkit.util.ItemTags;
import net.momirealms.craftengine.core.item.ItemFactory;
@@ -9,6 +10,7 @@ import net.momirealms.craftengine.core.item.JukeboxPlayable;
import net.momirealms.craftengine.core.item.setting.EquipmentData;
import net.momirealms.craftengine.core.plugin.CraftEngine;
import net.momirealms.craftengine.core.util.Key;
import net.momirealms.craftengine.core.util.VersionHelper;
import net.momirealms.sparrow.nbt.Tag;
import org.bukkit.inventory.ItemStack;
@@ -48,7 +50,10 @@ public abstract class BukkitItemFactory<W extends ItemWrapper<ItemStack>> extend
@Override
protected byte[] toByteArray(W item) {
return item.getItem().serializeAsBytes();
if (VersionHelper.isOrAbove1_21_6()) {
return item.getItem().serializeAsBytes();
}
return ItemTagStream.INSTANCE.toBytes(item.getItem());
}
@Override