From 8eb03fac7c7f34d6683d5f2cac0787af044d93d4 Mon Sep 17 00:00:00 2001 From: jhqwqmc Date: Sun, 17 May 2026 20:55:11 +0800 Subject: [PATCH] Compatible with the latest version of CraftEngine --- gradle/libs.versions.toml | 2 +- .../deluxemenus/hooks/CraftEngineHook.java | 28 ++++++++----------- 2 files changed, 13 insertions(+), 17 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 06e791dd..aff7da91 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -4,7 +4,7 @@ spigot = "1.21.5-R0.1-SNAPSHOT" vault = "1.7.1" authlib = "1.5.25" headdb = "1.3.2" -craftengine = "0.0.62" +craftengine = "26.5" itemsadder = "3.6.3-beta-14" nexo = "1.1.0" oraxen = "1.190.0" diff --git a/src/main/java/com/extendedclip/deluxemenus/hooks/CraftEngineHook.java b/src/main/java/com/extendedclip/deluxemenus/hooks/CraftEngineHook.java index 741a9655..effa920e 100644 --- a/src/main/java/com/extendedclip/deluxemenus/hooks/CraftEngineHook.java +++ b/src/main/java/com/extendedclip/deluxemenus/hooks/CraftEngineHook.java @@ -1,17 +1,14 @@ package com.extendedclip.deluxemenus.hooks; import com.extendedclip.deluxemenus.cache.SimpleCache; -import net.momirealms.craftengine.bukkit.api.BukkitAdaptors; import net.momirealms.craftengine.bukkit.api.CraftEngineItems; -import net.momirealms.craftengine.core.item.CustomItem; -import net.momirealms.craftengine.core.util.Key; +import net.momirealms.craftengine.bukkit.item.BukkitItemDefinition; import org.bukkit.Material; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; import java.util.Map; -import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; public class CraftEngineHook implements ItemHook, SimpleCache { @@ -20,36 +17,35 @@ public class CraftEngineHook implements ItemHook, SimpleCache { @Override public void clearCache() { - cache.clear(); + this.cache.clear(); } @Override public ItemStack getItem(@NotNull String... arguments) { if (arguments.length == 0) return EMPTY.clone(); String namespaceId = arguments[0]; - ItemStack cached = cache.get(namespaceId); + ItemStack cached = this.cache.get(namespaceId); if (cached != null) return cached.clone(); - CustomItem customItem = CraftEngineItems.byId(Key.of(namespaceId)); - if (customItem == null) return EMPTY.clone(); - ItemStack result = customItem.buildItemStack(); - cache.put(namespaceId, result); + BukkitItemDefinition definition = CraftEngineItems.byId(namespaceId); + if (definition == null) return EMPTY.clone(); + ItemStack result = definition.buildBukkitItem(); + this.cache.put(namespaceId, result); return result.clone(); } @Override public ItemStack getItem(@NotNull Player holder, @NotNull String... arguments) { if (arguments.length == 0) return EMPTY.clone(); - Key id = Key.of(arguments[0]); - return Optional.ofNullable(CraftEngineItems.byId(id)) - .map(item -> item.buildItemStack(BukkitAdaptors.adapt(holder))) - .orElseGet(EMPTY::clone); + BukkitItemDefinition definition = CraftEngineItems.byId(arguments[0]); + if (definition == null) return EMPTY.clone(); + return definition.buildBukkitItem(holder); } @Override public boolean itemMatchesIdentifiers(@NotNull ItemStack item, @NotNull String... arguments) { if (arguments.length == 0) return false; - CustomItem customItem = CraftEngineItems.byItemStack(item); - return customItem != null && customItem.id().equals(Key.of(arguments[0])); + BukkitItemDefinition definition = CraftEngineItems.byItemStack(item); + return definition != null && definition.id().asString().equals(arguments[0]); } @Override