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

fix(bukkit): 修复 1.20 ~ 1.20.4 无法启动的问题

This commit is contained in:
jhqwqmc
2025-08-04 12:26:34 +08:00
parent 75cce7f1d8
commit 429c33b1ee
7 changed files with 76 additions and 46 deletions

View File

@@ -19,6 +19,7 @@ import net.momirealms.craftengine.core.item.Item;
import net.momirealms.craftengine.core.item.ItemBuildContext;
import net.momirealms.craftengine.core.item.ItemKeys;
import net.momirealms.craftengine.core.item.recipe.*;
import net.momirealms.craftengine.core.item.recipe.postprocessor.PostProcessors;
import net.momirealms.craftengine.core.plugin.CraftEngine;
import net.momirealms.craftengine.core.plugin.config.Config;
import net.momirealms.craftengine.core.registry.BuiltInRegistries;
@@ -28,10 +29,8 @@ import org.bukkit.NamespacedKey;
import org.bukkit.event.HandlerList;
import org.bukkit.inventory.ItemStack;
import java.io.IOException;
import java.io.Reader;
import java.lang.reflect.Array;
import java.sql.Ref;
import java.util.*;
import java.util.function.BiFunction;
import java.util.function.Consumer;
@@ -288,6 +287,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager<ItemStack> {
public BukkitRecipeManager(BukkitCraftEngine plugin) {
instance = this;
PostProcessors.init();
this.plugin = plugin;
this.recipeEventListener = new RecipeEventListener(plugin, this, plugin.itemManager());
}

View File

@@ -3755,11 +3755,14 @@ public final class CoreReflections {
methodHandle$ServerConfigurationPacketListenerImpl$finishCurrentTask =
ReflectionUtils.unreflectMethod(method$ServerConfigurationPacketListenerImpl$finishCurrentTask)
.asType(MethodType.methodType(void.class, Object.class, Object.class));
} else {
methodHandle$ServerConfigurationPacketListenerImpl$finishCurrentTask = null;
}
if (VersionHelper.isOrAbove1_20_5()) {
methodHandle$ServerCommonPacketListenerImpl$closedSetter =
ReflectionUtils.unreflectSetter(field$ServerCommonPacketListenerImpl$closed)
.asType(MethodType.methodType(void.class, Object.class, boolean.class));
} else {
methodHandle$ServerConfigurationPacketListenerImpl$finishCurrentTask = null;
methodHandle$ServerCommonPacketListenerImpl$closedSetter = null;
}
} catch (ReflectiveOperationException e) {