From 7c348bff1319df50b6cf828ca1ceb2befd6a39a8 Mon Sep 17 00:00:00 2001 From: "Alex \"mcmonkey\" Goodwin" Date: Fri, 8 Mar 2019 22:19:31 -0800 Subject: [PATCH] Update quick-select and talk items to material names (#1710) also add back-support for if the original IDs are used (there's no good generic legacy ID upverter, but recognizing the old default numbers should suffice for 99% of servers). Should be cross-compatible with all supported minecraft versions, but is *required* in particular for 1.13 --- main/src/main/java/net/citizensnpcs/Settings.java | 4 ++-- main/src/main/java/net/citizensnpcs/util/Util.java | 13 +++++++++++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/main/src/main/java/net/citizensnpcs/Settings.java b/main/src/main/java/net/citizensnpcs/Settings.java index 62c6073cd..b9df04af1 100644 --- a/main/src/main/java/net/citizensnpcs/Settings.java +++ b/main/src/main/java/net/citizensnpcs/Settings.java @@ -114,7 +114,7 @@ public class Settings { QUICK_SELECT("npc.selection.quick-select", false), REMOVE_PLAYERS_FROM_PLAYER_LIST("npc.player.remove-from-list", true), SAVE_TASK_DELAY("storage.save-task.delay", 20 * 60 * 60), - SELECTION_ITEM("npc.selection.item", "280"), + SELECTION_ITEM("npc.selection.item", "stick"), SELECTION_MESSAGE("npc.selection.message", "You selected !"), SERVER_OWNS_NPCS("npc.server-ownership", false), STORAGE_FILE("storage.file", "saves.yml"), @@ -122,7 +122,7 @@ public class Settings { SUBPLUGIN_FOLDER("subplugins.folder", "plugins"), TALK_CLOSE_MAXIMUM_COOLDOWN("npc.text.max-talk-cooldown", 5), TALK_CLOSE_MINIMUM_COOLDOWN("npc.text.min-talk-cooldown", 10), - TALK_ITEM("npc.text.talk-item", "340"), + TALK_ITEM("npc.text.talk-item", "book"), TELEPORT_DELAY("npc.teleport-delay", -1), USE_BOAT_CONTROLS("npc.controllable.use-boat-controls", true), USE_NEW_PATHFINDER("npc.pathfinding.use-new-finder", false), diff --git a/main/src/main/java/net/citizensnpcs/util/Util.java b/main/src/main/java/net/citizensnpcs/util/Util.java index 2286c5bf2..b3859737d 100644 --- a/main/src/main/java/net/citizensnpcs/util/Util.java +++ b/main/src/main/java/net/citizensnpcs/util/Util.java @@ -237,8 +237,17 @@ public class Util { if (parts.contains("*")) return true; for (String part : Splitter.on(',').split(parts)) { - if ((SpigotUtil.isUsing1_13API() ? Material.matchMaterial(part, true) - : Material.matchMaterial(part)) == player.getInventory().getItemInHand().getType()) { + Material matchMaterial = SpigotUtil.isUsing1_13API() ? Material.matchMaterial(part, true) + : Material.matchMaterial(part); + if (matchMaterial == null) { + if (part.equals("280")) { + matchMaterial = Material.STICK; + } + else if (part.equals("340")) { + matchMaterial = Material.BOOK; + } + } + if (matchMaterial == player.getInventory().getItemInHand().getType()) { return true; } }