9
0
mirror of https://github.com/Xiao-MoMi/craft-engine.git synced 2026-01-04 15:41:38 +00:00

修改创世神兼容时机

This commit is contained in:
XiaoMoMi
2025-08-20 22:22:10 +08:00
parent 01307f88bd
commit 1f92052ae1

View File

@@ -39,8 +39,6 @@ public class BukkitCompatibilityManager implements CompatibilityManager {
private final Map<String, ModelProvider> modelProviders;
private final Map<String, LevelerProvider> levelerProviders;
private boolean hasPlaceholderAPI;
private boolean hasViaVersion;
private MythicSkillHelper skillExecute;
public BukkitCompatibilityManager(BukkitCraftEngine plugin) {
this.plugin = plugin;
@@ -63,33 +61,13 @@ public class BukkitCompatibilityManager implements CompatibilityManager {
this.hasPlaceholderAPI = true;
logHook("PlaceholderAPI");
}
// skript
if (this.isPluginEnabled("Skript")) {
SkriptHook.register();
logHook("Skript");
Plugin skriptPlugin = getPlugin("Skript");
// This can cause bugs, needs to find a better way
// for (BukkitTask task : Bukkit.getScheduler().getPendingTasks()) {
// if (task.getOwner() == skriptPlugin) {
// task.cancel();
// if (VersionHelper.isFolia()) {
// Bukkit.getGlobalRegionScheduler().run(skriptPlugin, (t) -> {
// FastNMS.INSTANCE.getBukkitTaskRunnable(task).run();
// });
// } else {
// Bukkit.getScheduler().runTask(skriptPlugin, FastNMS.INSTANCE.getBukkitTaskRunnable(task));
// }
// }
// }
}
// WorldEdit
if (this.isPluginEnabled("FastAsyncWorldEdit")) {
try {
this.initFastAsyncWorldEditHook();
logHook("FastAsyncWorldEdit");
} catch (Exception e) {
this.plugin.logger().warn("[Compatibility] Failed to initialize FastAsyncWorldEdit hook", e);
}
// do nothing
} else if (this.isPluginEnabled("WorldEdit")) {
this.initWorldEditHook();
logHook("WorldEdit");
@@ -136,6 +114,15 @@ public class BukkitCompatibilityManager implements CompatibilityManager {
new MythicItemDropListener(this.plugin);
logHook("MythicMobs");
}
// FastAsyncWorldEdit
if (this.isPluginEnabled("FastAsyncWorldEdit")) {
try {
this.initFastAsyncWorldEditHook();
logHook("FastAsyncWorldEdit");
} catch (Exception e) {
this.plugin.logger().warn("[Compatibility] Failed to initialize FastAsyncWorldEdit hook", e);
}
}
}
@Override