From fd4f92326dcbd44491d33bf950c3d661ca20c75e Mon Sep 17 00:00:00 2001 From: WalshyDev Date: Fri, 27 Sep 2019 20:40:51 +0100 Subject: [PATCH 1/6] Cleanup --- .../mrCookieSlime/Slimefun/SlimefunGuide.java | 101 +++++++++++------- 1 file changed, 64 insertions(+), 37 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java b/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java index be8c39394..c75adedae 100644 --- a/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java +++ b/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java @@ -51,7 +51,7 @@ public final class SlimefunGuide { private SlimefunGuide() {} - private static final int category_size = 36; + private static final int CATEGORY_SIZE = 36; private static final int[] slots = new int[] {0, 2, 3, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35}; @Deprecated @@ -251,10 +251,7 @@ public final class SlimefunGuide { } else { Object last = getLastEntry(p, false); - if (last instanceof Category) openCategory(p, (Category) last, true, 1, book); - else if (last instanceof SlimefunItem) displayItem(p, ((SlimefunItem) last).getItem(), false, book, 0); - else if (last instanceof GuideHandler) ((GuideHandler) last).run(p, true, book); - else displayItem(p, (ItemStack) last, false, book, 0); + handleHistory(book, p, last); } } @@ -282,10 +279,7 @@ public final class SlimefunGuide { } } - if (locked) { - // Don't display that Category... - } - else { + if (!locked) { if (tier < category.getTier()) { if (survival) { for (final GuideHandler handler: Slimefun.getGuideHandlers(tier)) { @@ -397,21 +391,13 @@ public final class SlimefunGuide { int index = 9; int pages = 1; - - for (int i = 0; i < 9; i++) { - menu.addItem(i, new CustomItem(new ItemStack(Material.GRAY_STAINED_GLASS_PANE), " ")); - menu.addMenuClickHandler(i, (pl, slot, item, action) -> false); - } - - for (int i = 45; i < 54; i++) { - menu.addItem(i, new CustomItem(new ItemStack(Material.GRAY_STAINED_GLASS_PANE), " ")); - menu.addMenuClickHandler(i, (pl, slot, item, action) -> false); - } - - int target = (category_size * (selected_page - 1)) - 1; + + fillInv(menu); + + int target = (CATEGORY_SIZE * (selected_page - 1)) - 1; while (target < (categories.size() + handlers.size() - 1)) { - if (index >= category_size + 9) { + if (index >= CATEGORY_SIZE + 9) { pages++; break; } @@ -626,7 +612,7 @@ public final class SlimefunGuide { menu.addMenuOpeningHandler(pl -> pl.playSound(pl.getLocation(), Sound.ITEM_BOOK_PAGE_TURN, 1, 1)); int index = 9; - final int pages = (category.getItems().size() - 1) / category_size + 1; + final int pages = (category.getItems().size() - 1) / CATEGORY_SIZE + 1; for (int i = 0; i < 4; i++) { menu.addItem(i, new CustomItem(new ItemStack(Material.GRAY_STAINED_GLASS_PANE), " ")); menu.addMenuClickHandler(i, (pl, slot, item, action) -> false); @@ -664,8 +650,8 @@ public final class SlimefunGuide { return false; }); - int categoryIndex = category_size * (selected_page - 1); - for (int i = 0; i < category_size; i++) { + int categoryIndex = CATEGORY_SIZE * (selected_page - 1); + for (int i = 0; i < CATEGORY_SIZE; i++) { int target = categoryIndex + i; if (target >= category.getItems().size()) break; final SlimefunItem sfitem = category.getItems().get(target); @@ -733,14 +719,49 @@ public final class SlimefunGuide { } } - public static void addToHistory(Player p, Object obj) { - LinkedList list = getHistory().get(p.getUniqueId()); - - if (list == null) { - list = new LinkedList<>(); - getHistory().put(p.getUniqueId(), list); + private static void fillInv(ChestMenu menu) { + 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); } - + + for (int i = 45; i < 54; i++) { + menu.addItem(i, new CustomItem(new ItemStack(Material.GRAY_STAINED_GLASS_PANE), " ")); + menu.addMenuClickHandler(i, (arg0, arg1, arg2, arg3) -> false); + } + } + + private static void addBackButton(ChestMenu menu, Player player, boolean book) { + List playerHistory = getHistory().getOrDefault(player.getUniqueId(), new LinkedList<>()); + if (playerHistory != null && playerHistory.size() > 1) { + menu.addItem(0, new CustomItem(new ItemStack(Material.ENCHANTED_BOOK), + "&7\u21E6 Back", "", + "&rLeft Click: &7Go back to previous Page", + "&rShift + left Click: &7Go back to Main Menu") + ); + menu.addMenuClickHandler(0, (pl, slot, item118, action) -> { + if (action.isShiftClicked()) openMainMenu(pl, true, false, 1); + else { + Object last = getLastEntry(pl, true); + if (last instanceof Category) openCategory(pl, (Category) last, true, 1, book); + else if (last instanceof SlimefunItem) displayItem(pl, ((SlimefunItem) last).getItem(), false, book, 0); + else if (last instanceof GuideHandler) ((GuideHandler) last).run(pl, true, book); + else displayItem(pl, (ItemStack) last, false, book, 0); + } + return false; + }); + } else { + menu.addItem(0, new CustomItem(new ItemStack(Material.ENCHANTED_BOOK), + "&7\u21E6 Back", "", "&rLeft Click: &7Go back to Main Menu")); + menu.addMenuClickHandler(0, (p117, slot, item117, action) -> { + openMainMenu(p117, true, book, 1); + return false; + }); + } + } + + public static void addToHistory(Player p, Object obj) { + LinkedList list = getHistory().computeIfAbsent(p.getUniqueId(), k -> new LinkedList<>()); list.add(obj); } @@ -825,6 +846,8 @@ public final class SlimefunGuide { } if (addToHistory) addToHistory(p, sfItem != null ? sfItem: item); + + addBackButton(menu, p, book); LinkedList history = getHistory().get(p.getUniqueId()); @@ -834,10 +857,7 @@ public final class SlimefunGuide { if (action.isShiftClicked()) openMainMenu(p, true, book, 1); else { Object last = getLastEntry(pl, true); - if (last instanceof Category) openCategory(pl, (Category) last, true, 1, book); - else if (last instanceof SlimefunItem) displayItem(pl, ((SlimefunItem) last).getItem(), false, book, 0); - else if (last instanceof GuideHandler) ((GuideHandler) last).run(pl, true, book); - else displayItem(pl, (ItemStack) last, false, book, 0); + handleHistory(book, pl, last); } return false; }); @@ -948,7 +968,14 @@ public final class SlimefunGuide { menu.open(p); } - + + private static void handleHistory(boolean book, Player pl, Object last) { + if (last instanceof Category) openCategory(pl, (Category) last, true, 1, book); + else if (last instanceof SlimefunItem) displayItem(pl, ((SlimefunItem) last).getItem(), false, book, 0); + else if (last instanceof GuideHandler) ((GuideHandler) last).run(pl, true, book); + else displayItem(pl, (ItemStack) last, false, book, 0); + } + private static void displayRecipes(ChestMenu menu, RecipeDisplayItem sfItem, int page) { List recipes = sfItem.getDisplayRecipes(); From 52f078a025492c496c240705b838d0ab6199d176 Mon Sep 17 00:00:00 2001 From: WalshyDev Date: Sat, 28 Sep 2019 16:13:23 +0100 Subject: [PATCH 2/6] Finish search --- .../mrCookieSlime/Slimefun/SlimefunGuide.java | 80 +++++++++++++++---- .../Slimefun/SlimefunPlugin.java | 4 + .../Slimefun/listeners/SearchListener.java | 35 ++++++++ 3 files changed, 104 insertions(+), 15 deletions(-) create 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 c75adedae..4520cde1e 100644 --- a/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java +++ b/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java @@ -10,6 +10,7 @@ import java.util.UUID; import java.util.logging.Level; import java.util.stream.Collectors; +import me.mrCookieSlime.Slimefun.listeners.SearchListener; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.GameMode; @@ -89,7 +90,7 @@ public final class SlimefunGuide { menu.addMenuOpeningHandler( pl -> pl.playSound(pl.getLocation(), Sound.BLOCK_NOTE_BLOCK_HARP, 0.7F, 0.7F) ); - + for (int i: slots) { menu.addItem(i, new CustomItem(new ItemStack(Material.GRAY_STAINED_GLASS_PANE), " ")); menu.addMenuClickHandler(i, @@ -251,7 +252,7 @@ public final class SlimefunGuide { } else { Object last = getLastEntry(p, false); - handleHistory(book, p, last); + handleHistory(p, last, book, false); } } @@ -659,7 +660,7 @@ public final class SlimefunGuide { if (Slimefun.isEnabled(p, sfitem, false)) { if (survival && !Slimefun.hasUnlocked(p, sfitem.getItem(), false) && sfitem.getResearch() != null) { if (Slimefun.hasPermission(p, sfitem, false)) { - final Research research = sfitem.getResearch(); + final Research research = sfitem.getResearch(); menu.addItem(index, new CustomItem(Material.BARRIER, "&r" + StringUtils.formatItemName(sfitem.getItem(), false), "&4&lLOCKED", "", "&a> Click to unlock", "", "&7Cost: &b" + research.getCost() + " Level")); menu.addMenuClickHandler(index, (pl, slot, item, action) -> { @@ -678,18 +679,18 @@ public final class SlimefunGuide { if (pl.getGameMode() == GameMode.CREATIVE) { research.unlock(pl, SlimefunPlugin.getSettings().researchesFreeInCreative); openCategory(pl, category, survival, selected_page, book); - } + } else { research.unlock(pl, false); Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunPlugin.instance, () -> openCategory(pl, category, survival, selected_page, book), 103L); } } - } + } else SlimefunPlugin.getLocal().sendMessage(pl, "messages.not-enough-xp", true); } return false; }); - + index++; } else { @@ -712,26 +713,77 @@ public final class SlimefunGuide { } menu.open(p); - } + } if (survival) { addToHistory(p, category); } } + public static void openSearch(Player player, String searchTerm, boolean cheat, boolean addToHistory) { + final ChestMenu menu = new ChestMenu("Slimefun Guide Search"); + + menu.setEmptySlotsClickable(false); + + fillInv(menu); + + addBackButton(menu, player, false, cheat); + + searchTerm = searchTerm.toLowerCase(); + + int index = 9; + // Find items and add them + for (SlimefunItem item : SlimefunItem.list()) { + final String itemName = ChatColor.stripColor(item.getItem().getItemMeta().getDisplayName()).toLowerCase(); + + if (itemName.isEmpty()) continue; + + if (index == 44) break; + + if (itemName.equals(searchTerm) || itemName.contains(searchTerm)) { + menu.addItem(index, item.getItem()); + menu.addMenuClickHandler(index, (pl, slot, itm, action) -> { + if (cheat) + pl.getInventory().addItem(itm); + else + displayItem(pl, itm, true, false, 0); + return false; + }); + + index++; + } + } + + if (addToHistory) + addToHistory(player, searchTerm); + + menu.open(player); + } + private static void fillInv(ChestMenu menu) { 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); } + // Search feature! + menu.addItem(7, new CustomItem(Material.NAME_TAG, "&7Search", + "&7Search directly for items")); + menu.addMenuClickHandler(7, (player, i, itemStack, clickAction) -> { + player.closeInventory(); + player.sendMessage(ChatColor.AQUA + "What would you like to search for?"); + SearchListener.addSearchingPlayer(player.getUniqueId()); + + return false; + }); + for (int i = 45; i < 54; i++) { menu.addItem(i, new CustomItem(new ItemStack(Material.GRAY_STAINED_GLASS_PANE), " ")); menu.addMenuClickHandler(i, (arg0, arg1, arg2, arg3) -> false); } } - private static void addBackButton(ChestMenu menu, Player player, boolean book) { + private static void addBackButton(ChestMenu menu, Player player, boolean book, boolean cheat) { List playerHistory = getHistory().getOrDefault(player.getUniqueId(), new LinkedList<>()); if (playerHistory != null && playerHistory.size() > 1) { menu.addItem(0, new CustomItem(new ItemStack(Material.ENCHANTED_BOOK), @@ -743,10 +795,7 @@ public final class SlimefunGuide { if (action.isShiftClicked()) openMainMenu(pl, true, false, 1); else { Object last = getLastEntry(pl, true); - if (last instanceof Category) openCategory(pl, (Category) last, true, 1, book); - else if (last instanceof SlimefunItem) displayItem(pl, ((SlimefunItem) last).getItem(), false, book, 0); - else if (last instanceof GuideHandler) ((GuideHandler) last).run(pl, true, book); - else displayItem(pl, (ItemStack) last, false, book, 0); + handleHistory(pl, last, book, cheat); } return false; }); @@ -847,7 +896,7 @@ public final class SlimefunGuide { if (addToHistory) addToHistory(p, sfItem != null ? sfItem: item); - addBackButton(menu, p, book); + addBackButton(menu, p, book, false); LinkedList history = getHistory().get(p.getUniqueId()); @@ -857,7 +906,7 @@ public final class SlimefunGuide { if (action.isShiftClicked()) openMainMenu(p, true, book, 1); else { Object last = getLastEntry(pl, true); - handleHistory(book, pl, last); + handleHistory(pl, last, book, false); } return false; }); @@ -969,10 +1018,11 @@ public final class SlimefunGuide { menu.open(p); } - private static void handleHistory(boolean book, Player pl, Object last) { + private static void handleHistory(Player pl, Object last, boolean book, boolean cheat) { if (last instanceof Category) openCategory(pl, (Category) last, true, 1, book); else if (last instanceof SlimefunItem) displayItem(pl, ((SlimefunItem) last).getItem(), false, book, 0); else if (last instanceof GuideHandler) ((GuideHandler) last).run(pl, true, book); + else if (last instanceof String) openSearch(pl, (String) last, cheat, true); else displayItem(pl, (ItemStack) last, false, book, 0); } diff --git a/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java b/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java index b0ba445a4..31d2f61f2 100644 --- a/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java +++ b/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java @@ -3,6 +3,7 @@ package me.mrCookieSlime.Slimefun; import java.io.File; import java.util.logging.Level; +import me.mrCookieSlime.Slimefun.listeners.SearchListener; import org.bukkit.Bukkit; import org.bukkit.World; import org.bukkit.entity.Player; @@ -231,6 +232,7 @@ 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); @@ -378,6 +380,8 @@ 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 new file mode 100644 index 000000000..cbe6c5e57 --- /dev/null +++ b/src/me/mrCookieSlime/Slimefun/listeners/SearchListener.java @@ -0,0 +1,35 @@ +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(); + } +} From 570319b5ae1ad43db96286425c85bd304fc0a8f5 Mon Sep 17 00:00:00 2001 From: Daniel Walsh Date: Mon, 30 Sep 2019 18:06:50 +0100 Subject: [PATCH 3/6] 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(); - } -} From b0b55f13adb61b61449cd33caf41337d67266347 Mon Sep 17 00:00:00 2001 From: Daniel Walsh Date: Mon, 30 Sep 2019 18:14:54 +0100 Subject: [PATCH 4/6] Oops, unused import --- src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java b/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java index b45d63731..b0ba445a4 100644 --- a/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java +++ b/src/me/mrCookieSlime/Slimefun/SlimefunPlugin.java @@ -3,7 +3,6 @@ package me.mrCookieSlime.Slimefun; import java.io.File; import java.util.logging.Level; -import me.mrCookieSlime.Slimefun.listeners.SearchListener; import org.bukkit.Bukkit; import org.bukkit.World; import org.bukkit.entity.Player; From 0743d05311f531708760f48c23ad2f95c29964b1 Mon Sep 17 00:00:00 2001 From: Daniel Walsh Date: Mon, 30 Sep 2019 19:33:44 +0100 Subject: [PATCH 5/6] Localization --- .../Slimefun/Setup/SlimefunLocalization.java | 6 ++++++ src/me/mrCookieSlime/Slimefun/SlimefunGuide.java | 8 +++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunLocalization.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunLocalization.java index 64e71c545..cd4fec5cc 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunLocalization.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunLocalization.java @@ -23,6 +23,12 @@ public class SlimefunLocalization extends Localization { setDefaultMessage("commands.research.reset", "&cYou have reset %player%'s Knowledge"); setDefaultMessage("commands.research.reset-target", "&cYour Knowledge has been reset"); + setDefaultMessage("guide.search.name", "&7Search"); + setDefaultMessages("guide.search.lore", + "&bWhat would you like to search for?", "&7Type your search term into chat"); + + setDefaultMessage("search.message", "&bWhat would you like to search for?"); + setDefaultMessage("messages.not-researched", "&4You do not have enough Knowledge to understand this"); setDefaultMessage("messages.not-enough-xp", "&4You do not have enough XP to unlock this"); setDefaultMessage("messages.unlocked", "&bYou have unlocked &7\"%research%\""); diff --git a/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java b/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java index f2af0966d..42a5b7c7c 100644 --- a/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java +++ b/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java @@ -11,6 +11,7 @@ import java.util.logging.Level; import java.util.stream.Collectors; import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.MenuHelper; +import me.mrCookieSlime.Slimefun.Setup.SlimefunLocalization; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.GameMode; @@ -767,11 +768,12 @@ public final class SlimefunGuide { } // Search feature! - menu.addItem(7, new CustomItem(Material.NAME_TAG, "&7Search", - "&7Search directly for items")); + menu.addItem(7, new CustomItem(Material.NAME_TAG, SlimefunPlugin.getLocal().getMessage("guide.search.name"), + SlimefunPlugin.getLocal().getMessages("guide.search.lore").toArray(new String[0]))); menu.addMenuClickHandler(7, (player, i, itemStack, clickAction) -> { player.closeInventory(); - player.sendMessage(ChatColor.AQUA + "What would you like to search for?"); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', + SlimefunPlugin.getLocal().getMessage("search.message"))); MenuHelper.awaitChatInput(player, (p, s) -> { openSearch(p, s, cheat, true); return true; // ? From 00ef4d59e824beaafd465b3f6d3f2417b52b4e9b Mon Sep 17 00:00:00 2001 From: Daniel Walsh Date: Mon, 30 Sep 2019 19:36:08 +0100 Subject: [PATCH 6/6] I hate life --- src/me/mrCookieSlime/Slimefun/SlimefunGuide.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java b/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java index 42a5b7c7c..31f210ed8 100644 --- a/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java +++ b/src/me/mrCookieSlime/Slimefun/SlimefunGuide.java @@ -772,8 +772,7 @@ public final class SlimefunGuide { SlimefunPlugin.getLocal().getMessages("guide.search.lore").toArray(new String[0]))); menu.addMenuClickHandler(7, (player, i, itemStack, clickAction) -> { player.closeInventory(); - player.sendMessage(ChatColor.translateAlternateColorCodes('&', - SlimefunPlugin.getLocal().getMessage("search.message"))); + SlimefunPlugin.getLocal().sendMessage(player, "search.message"); MenuHelper.awaitChatInput(player, (p, s) -> { openSearch(p, s, cheat, true); return true; // ?