From 570319b5ae1ad43db96286425c85bd304fc0a8f5 Mon Sep 17 00:00:00 2001 From: Daniel Walsh Date: Mon, 30 Sep 2019 18:06:50 +0100 Subject: [PATCH] Switch to MenuHelper.awaitChatInput --- .../mrCookieSlime/Slimefun/SlimefunGuide.java | 13 ++++--- .../Slimefun/SlimefunPlugin.java | 3 -- .../Slimefun/listeners/SearchListener.java | 35 ------------------- 3 files changed, 8 insertions(+), 43 deletions(-) delete mode 100644 src/me/mrCookieSlime/Slimefun/listeners/SearchListener.java diff --git a/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java b/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java index 4520cde1e..f2af0966d 100644 --- a/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java +++ b/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java @@ -10,7 +10,7 @@ import java.util.UUID; import java.util.logging.Level; import java.util.stream.Collectors; -import me.mrCookieSlime.Slimefun.listeners.SearchListener; +import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.MenuHelper; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.GameMode; @@ -393,7 +393,7 @@ public final class SlimefunGuide { int index = 9; int pages = 1; - fillInv(menu); + fillInv(menu, !survival); int target = (CATEGORY_SIZE * (selected_page - 1)) - 1; @@ -725,7 +725,7 @@ public final class SlimefunGuide { menu.setEmptySlotsClickable(false); - fillInv(menu); + fillInv(menu, cheat); addBackButton(menu, player, false, cheat); @@ -760,7 +760,7 @@ public final class SlimefunGuide { menu.open(player); } - private static void fillInv(ChestMenu menu) { + private static void fillInv(ChestMenu menu, boolean cheat) { for (int i = 0; i < 9; i++) { menu.addItem(i, new CustomItem(new ItemStack(Material.GRAY_STAINED_GLASS_PANE), " ")); menu.addMenuClickHandler(i, (arg0, arg1, arg2, arg3) -> false); @@ -772,7 +772,10 @@ public final class SlimefunGuide { menu.addMenuClickHandler(7, (player, i, itemStack, clickAction) -> { player.closeInventory(); player.sendMessage(ChatColor.AQUA + "What would you like to search for?"); - SearchListener.addSearchingPlayer(player.getUniqueId()); + MenuHelper.awaitChatInput(player, (p, s) -> { + openSearch(p, s, cheat, true); + return true; // ? + }); return false; }); diff --git a/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java b/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java index 31d2f61f2..b45d63731 100644 --- a/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java +++ b/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java @@ -232,7 +232,6 @@ public final class SlimefunPlugin extends JavaPlugin { new AndroidKillingListener(this); new NetworkListener(this); new ItemPickupListener(this); - getServer().getPluginManager().registerEvents(new SearchListener(), this); // Toggleable Listeners for performance if (config.getBoolean("items.talismans")) new TalismanListener(this); @@ -380,8 +379,6 @@ public final class SlimefunPlugin extends JavaPlugin { AContainer.progress = null; OreWasher.items = null; - SearchListener.cleanUp(); - instance = null; for (Player p: Bukkit.getOnlinePlayers()) { diff --git a/src/me/mrCookieSlime/Slimefun/listeners/SearchListener.java b/src/me/mrCookieSlime/Slimefun/listeners/SearchListener.java deleted file mode 100644 index cbe6c5e57..000000000 --- a/src/me/mrCookieSlime/Slimefun/listeners/SearchListener.java +++ /dev/null @@ -1,35 +0,0 @@ -package me.mrCookieSlime.Slimefun.listeners; - -import me.mrCookieSlime.Slimefun.SlimefunGuide; -import me.mrCookieSlime.Slimefun.SlimefunPlugin; -import org.bukkit.Bukkit; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; - -import java.util.Set; -import java.util.UUID; -import java.util.concurrent.ConcurrentHashMap; - -public class SearchListener implements Listener { - - private static Set waitingSearchTerm = ConcurrentHashMap.newKeySet(); - - @EventHandler - public void onSearch(AsyncPlayerChatEvent e) { - if (waitingSearchTerm.remove(e.getPlayer().getUniqueId())) { - Bukkit.getScheduler().runTask(SlimefunPlugin.instance, - () -> SlimefunGuide.openSearch(e.getPlayer(), e.getMessage(), true, true)); - - e.setCancelled(true); - } - } - - public static void addSearchingPlayer(UUID uniqueId) { - waitingSearchTerm.add(uniqueId); - } - - public static void cleanUp() { - waitingSearchTerm.clear(); - } -}