From 21ff3288d226f1b81bae3323745217a907663ca3 Mon Sep 17 00:00:00 2001 From: YufiriaMazenta <2199098065@qq.com> Date: Tue, 12 Dec 2023 10:24:18 +0800 Subject: [PATCH] =?UTF-8?q?[1.6.1-beta4]=E4=BF=AE=E5=A4=8Dspigot=E7=AB=AF?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E6=89=93=E5=BC=80=E7=83=A7=E7=82=BC=E9=85=8D?= =?UTF-8?q?=E6=96=B9=E5=92=8C=E9=93=81=E7=A0=A7=E9=85=8D=E6=96=B9=E7=9A=84?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 2 +- .../craftorithm/listener/AnvilHandler.java | 7 +++---- .../menu/creator/AnvilRecipeCreator.java | 3 +-- .../menu/creator/CookingRecipeCreator.java | 7 ++----- .../yufiriamazenta/craftorithm/util/ItemUtils.java | 13 +++++++++++++ 5 files changed, 20 insertions(+), 12 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 91cdbc52..d582e358 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,5 @@ import java.text.SimpleDateFormat -version = "1.6.1-beta3" +version = "1.6.1-beta4" plugins { `java-library` diff --git a/src/main/java/com/github/yufiriamazenta/craftorithm/listener/AnvilHandler.java b/src/main/java/com/github/yufiriamazenta/craftorithm/listener/AnvilHandler.java index 147b84b8..1f6276c7 100644 --- a/src/main/java/com/github/yufiriamazenta/craftorithm/listener/AnvilHandler.java +++ b/src/main/java/com/github/yufiriamazenta/craftorithm/listener/AnvilHandler.java @@ -9,7 +9,6 @@ import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.inventory.InventoryClickEvent; -import org.bukkit.event.inventory.InventoryType; import org.bukkit.event.inventory.PrepareAnvilEvent; import org.bukkit.inventory.AnvilInventory; import org.bukkit.inventory.ItemStack; @@ -17,7 +16,9 @@ import java.util.HashMap; @BukkitListener -public class AnvilHandler implements Listener { +public enum AnvilHandler implements Listener { + + INSTANCE; @EventHandler public void onPrepareAnvil(PrepareAnvilEvent event) { @@ -44,8 +45,6 @@ public void onClickAnvil(InventoryClickEvent event) { if (!PluginConfigs.ENABLE_ANVIL_RECIPE.value()) return; - if (!event.getInventory().getType().equals(InventoryType.ANVIL)) - return; if (!(event.getInventory() instanceof AnvilInventory)) return; AnvilInventory anvilInventory = (AnvilInventory) event.getInventory(); diff --git a/src/main/java/com/github/yufiriamazenta/craftorithm/menu/creator/AnvilRecipeCreator.java b/src/main/java/com/github/yufiriamazenta/craftorithm/menu/creator/AnvilRecipeCreator.java index 54a6e544..ad503d0d 100644 --- a/src/main/java/com/github/yufiriamazenta/craftorithm/menu/creator/AnvilRecipeCreator.java +++ b/src/main/java/com/github/yufiriamazenta/craftorithm/menu/creator/AnvilRecipeCreator.java @@ -154,8 +154,7 @@ protected Icon getCostLevelIcon() { player.closeInventory(); } ); - icon.display().setLore(Languages.MENU_RECIPE_CREATOR_ICON_ANVIL_COST_LEVEL_LORE.value()); - icon.display().getLore().replaceAll(TextUtil::color); + ItemUtils.setLore(icon.display(), Languages.MENU_RECIPE_CREATOR_ICON_ANVIL_COST_LEVEL_LORE.value()); return icon; } diff --git a/src/main/java/com/github/yufiriamazenta/craftorithm/menu/creator/CookingRecipeCreator.java b/src/main/java/com/github/yufiriamazenta/craftorithm/menu/creator/CookingRecipeCreator.java index 6420afa7..c24dc4a7 100644 --- a/src/main/java/com/github/yufiriamazenta/craftorithm/menu/creator/CookingRecipeCreator.java +++ b/src/main/java/com/github/yufiriamazenta/craftorithm/menu/creator/CookingRecipeCreator.java @@ -206,9 +206,7 @@ protected Icon getCookingTimeIcon() { player.closeInventory(); } ); - icon.display().setLore(Languages.MENU_RECIPE_CREATOR_ICON_COOKING_TIME_LORE.value()); - icon.display().getLore().replaceAll(TextUtil::color); - + ItemUtils.setLore(icon.display(), Languages.MENU_RECIPE_CREATOR_ICON_COOKING_TIME_LORE.value()); return icon; } @@ -230,8 +228,7 @@ protected Icon getExpIcon() { player.closeInventory(); } ); - icon.display().setLore(Languages.MENU_RECIPE_CREATOR_ICON_COOKING_EXP_LORE.value()); - icon.display().getLore().replaceAll(TextUtil::color); + ItemUtils.setLore(icon.display(), Languages.MENU_RECIPE_CREATOR_ICON_COOKING_EXP_LORE.value()); return icon; } diff --git a/src/main/java/com/github/yufiriamazenta/craftorithm/util/ItemUtils.java b/src/main/java/com/github/yufiriamazenta/craftorithm/util/ItemUtils.java index 7ea7511b..0c5b032d 100644 --- a/src/main/java/com/github/yufiriamazenta/craftorithm/util/ItemUtils.java +++ b/src/main/java/com/github/yufiriamazenta/craftorithm/util/ItemUtils.java @@ -3,6 +3,7 @@ import com.github.yufiriamazenta.craftorithm.config.PluginConfigs; import com.github.yufiriamazenta.craftorithm.item.ItemManager; import com.github.yufiriamazenta.craftorithm.item.impl.CraftorithmItemProvider; +import com.google.common.base.Preconditions; import crypticlib.util.ItemUtil; import crypticlib.util.TextUtil; import org.bukkit.inventory.ItemStack; @@ -91,4 +92,16 @@ public static String matchItemNameOrCreate(ItemStack item, boolean ignoreAmount) return itemName; } + public static void setLore(ItemStack item, List lore) { + setLore(item, lore, true); + } + + public static void setLore(ItemStack item, List lore, boolean format) { + Preconditions.checkArgument(!ItemUtil.isAir(item), "Item can not be air"); + ItemMeta itemMeta = item.getItemMeta(); + itemMeta.setLore(lore); + if (format) + itemMeta.getLore().replaceAll(TextUtil::color); + } + }