mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-20 11:45:51 +00:00
Switch to MenuHelper.awaitChatInput
This commit is contained in:
parent
52f078a025
commit
570319b5ae
@ -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;
|
||||
});
|
||||
|
@ -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()) {
|
||||
|
@ -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<UUID> 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();
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user