use of me.RockinChaos.itemjoin.utils.interfaces.Interface in project ItemJoin by RockinChaos.
the class Menu method executorPane.
/**
* Opens the Pane for the Player.
* This Pane is for setting an items command executor.
*
* @param player - The Player to have the Pane opened.
* @param itemMap - The ItemMap currently being modified.
* @param action - THe action to be matched,
*/
private static void executorPane(final Player player, final ItemMap itemMap, final Action action) {
Interface executorPane = new Interface(false, 2, GUIName, player);
SchedulerUtils.runAsync(() -> {
executorPane.addButton(new Button(ItemHandler.getItem((ServerUtils.hasSpecificUpdate("1_13") ? "GUNPOWDER" : "289"), 1, false, "&f")));
executorPane.addButton(new Button(ItemHandler.getItem("BOOK", 1, false, "&e&lPlayer", "&7", "&7*Executes the command", "&7as the player."), event -> {
player.closeInventory();
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "PLAYER COMMAND";
placeHolders[15] = "spawn";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputType", player, placeHolders);
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputExample", player, placeHolders);
}, event -> {
modifyCommands(itemMap, ItemCommand.fromString("player: " + ChatColor.stripColor(event.getMessage()), action, itemMap, 0L, null), true);
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "PLAYER COMMAND";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputSet", player, placeHolders);
commandListPane(event.getPlayer(), itemMap, action);
}));
executorPane.addButton(new Button(ItemHandler.getItem("BOOK", 1, true, "&e&lOp", "&7", "&7*Executes the command as if the", "&7player has /op (admin permissions)."), event -> {
player.closeInventory();
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "OP COMMAND";
placeHolders[15] = "broadcast I am &cADMIN!";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputType", player, placeHolders);
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputExample", player, placeHolders);
}, event -> {
modifyCommands(itemMap, ItemCommand.fromString("op: " + ChatColor.stripColor(event.getMessage()), action, itemMap, 0L, null), true);
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "COMMAND LINE";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputSet", player, placeHolders);
commandListPane(event.getPlayer(), itemMap, action);
}));
executorPane.addButton(new Button(ItemHandler.getItem("EMERALD", 1, false, "&e&lConsole", "&7", "&7*Executes the command", "&7in the console window."), event -> {
player.closeInventory();
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "CONSOLE COMMAND";
placeHolders[15] = "gamemode creative %player%";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputType", player, placeHolders);
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputExample", player, placeHolders);
}, event -> {
modifyCommands(itemMap, ItemCommand.fromString("console: " + ChatColor.stripColor(event.getMessage()), action, itemMap, 0L, null), true);
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "OP COMMAND";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputSet", player, placeHolders);
commandListPane(event.getPlayer(), itemMap, action);
}));
executorPane.addButton(new Button(ItemHandler.getItem("HOPPER", 1, false, "&e&lServer", "&7", "&7*Switches the player to", "&7the defined server name.", "&7", "&7&lNote: &7This is the name", "&7defined in the BungeeCord config."), event -> {
player.closeInventory();
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "SERVER SWITCH";
placeHolders[15] = "survival";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputType", player, placeHolders);
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputExample", player, placeHolders);
}, event -> {
modifyCommands(itemMap, ItemCommand.fromString("server: " + ChatColor.stripColor(event.getMessage()), action, itemMap, 0L, null), true);
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "SERVER SWITCH";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputSet", player, placeHolders);
commandListPane(event.getPlayer(), itemMap, action);
}));
executorPane.addButton(new Button(ItemHandler.getItem("OBSIDIAN", 1, false, "&e&lBungee", "&7", "&7*Executes a BungeeCord specific command."), event -> {
player.closeInventory();
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "BUNGEE COMMAND";
placeHolders[15] = "survival";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputType", player, placeHolders);
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputExample", player, placeHolders);
}, event -> {
modifyCommands(itemMap, ItemCommand.fromString("bungee: " + ChatColor.stripColor(event.getMessage()), action, itemMap, 0L, null), true);
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "BUNGEE COMMAND";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputSet", player, placeHolders);
commandListPane(event.getPlayer(), itemMap, action);
}));
executorPane.addButton(new Button(ItemHandler.getItem("PAPER", 1, false, "&e&lMessage", "&7", "&7*Sends the player a custom message."), event -> {
player.closeInventory();
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "MESSAGE";
placeHolders[15] = "&eWelcome to the Server!";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputType", player, placeHolders);
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputExample", player, placeHolders);
}, event -> {
modifyCommands(itemMap, ItemCommand.fromString("message: " + ChatColor.stripColor(event.getMessage()), action, itemMap, 0L, null), true);
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "MESSAGE";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputSet", player, placeHolders);
commandListPane(event.getPlayer(), itemMap, action);
}));
executorPane.addButton(new Button(ItemHandler.getItem((ServerUtils.hasSpecificUpdate("1_13") ? "REPEATER" : "356"), 1, false, "&e&lSwap-Item", "&7", "&7*Swaps the item to another defined item."), event -> swapPane(player, itemMap, action)));
executorPane.addButton(new Button(ItemHandler.getItem((ServerUtils.hasSpecificUpdate("1_13") ? "CLOCK" : "347"), 1, false, "&e&lDelay", "&7", "&7*Adds a delay between command lines."), event -> delayPane(player, itemMap, action)));
executorPane.addButton(new Button(ItemHandler.getItem("BARRIER", 1, false, "&c&l&nReturn", "&7", "&7*Returns you to the command lines menu."), event -> commandListPane(player, itemMap, action)));
executorPane.addButton(new Button(fillerPaneBItem), 7);
executorPane.addButton(new Button(ItemHandler.getItem("BARRIER", 1, false, "&c&l&nReturn", "&7", "&7*Returns you to the command lines menu."), event -> commandListPane(player, itemMap, action)));
});
executorPane.open(player);
}
use of me.RockinChaos.itemjoin.utils.interfaces.Interface in project ItemJoin by RockinChaos.
the class Menu method numberPane.
// =======================================================================================================================================================================================================================================
// ============================================== //
// Settings Menus //
// ============================================== //
/**
* Opens the Pane for the Player.
*
* @param player - The Player to have the Pane opened.
* @param stage - The type of selection Pane.
*/
private static void numberPane(final Player player, final int stage) {
Interface numberPane = new Interface((stage == 2 ? false : true), (stage == 2 ? 2 : 6), GUIName, player);
SchedulerUtils.runAsync(() -> {
numberPane.setReturnButton(new Button(ItemHandler.getItem("BARRIER", 1, false, "&c&l&nReturn", "&7", "&7*Returns you to the item settings menu."), event -> {
if (stage == 1) {
itemSettings(player);
} else if (stage == 3) {
clearPane(player);
}
}));
for (int i = 0; i <= (stage == 1 || stage == 3 ? 64 : stage == 2 ? 8 : 0); i++) {
final int k = i;
if (stage == 1) {
numberPane.addButton(new Button(ItemHandler.getItem((i == 0 ? (ServerUtils.hasSpecificUpdate("1_13") ? "RED_STAINED_GLASS_PANE" : "STAINED_GLASS_PANE:14") : (ServerUtils.hasSpecificUpdate("1_13") ? "BLUE_STAINED_GLASS_PANE" : "STAINED_GLASS_PANE:11")), (i == 0 ? 1 : i), false, "&9&lDelay: &a&l" + i, "&7", "&7*Click to set the trigger", "&7delay for giving custom items.", "&aSecond(s): &e" + (i == 0 ? 0 : ((Double.parseDouble(String.valueOf(i))) / 2))), event -> {
File fileFolder = new File(ItemJoin.getInstance().getDataFolder(), "items.yml");
FileConfiguration dataFile = YamlConfiguration.loadConfiguration(fileFolder);
dataFile.set("items-Delay", k);
ConfigHandler.getConfig().saveFile(dataFile, fileFolder, "items.yml");
ConfigHandler.getConfig().softReload();
SchedulerUtils.runLater(2L, () -> itemSettings(player));
}));
} else if (stage == 2) {
numberPane.addButton(new Button(ItemHandler.getItem((ServerUtils.hasSpecificUpdate("1_13") ? "BLUE_STAINED_GLASS_PANE" : "STAINED_GLASS_PANE:11"), (i == 0 ? 1 : i), false, "&9&lSlot: &a&l" + i + " &9&l[HOTBAR]", "&7", "&7*Click to set the held item slot", "&7that is automatically selected", "&7when performing a held item trigger.", "&aSlot: &e" + k), event -> {
File fileFolder = new File(ItemJoin.getInstance().getDataFolder(), "config.yml");
FileConfiguration dataFile = YamlConfiguration.loadConfiguration(fileFolder);
dataFile.set("Settings.HeldItem-Slot", k);
ConfigHandler.getConfig().saveFile(dataFile, fileFolder, "config.yml");
ConfigHandler.getConfig().softReload();
SchedulerUtils.runLater(2L, () -> itemSettings(player));
}));
} else if (stage == 3) {
numberPane.addButton(new Button(ItemHandler.getItem((i == 0 ? (ServerUtils.hasSpecificUpdate("1_13") ? "RED_STAINED_GLASS_PANE" : "STAINED_GLASS_PANE:14") : (ServerUtils.hasSpecificUpdate("1_13") ? "BLUE_STAINED_GLASS_PANE" : "STAINED_GLASS_PANE:11")), (i == 0 ? 1 : i), false, "&9&lDelay: &a&l" + i, "&7", "&7*Click to set the trigger", "&7delay for clearing items.", "&aSecond(s): &e" + (i == 0 ? 0 : (Double.parseDouble(String.valueOf(i))))), event -> {
File fileFolder = new File(ItemJoin.getInstance().getDataFolder(), "config.yml");
FileConfiguration dataFile = YamlConfiguration.loadConfiguration(fileFolder);
dataFile.set("Clear-Items.Delay-Tick", k);
ConfigHandler.getConfig().saveFile(dataFile, fileFolder, "config.yml");
ConfigHandler.getConfig().softReload();
SchedulerUtils.runLater(2L, () -> clearPane(player));
}));
}
}
if (stage == 2) {
numberPane.addButton(new Button(ItemHandler.getItem("BARRIER", 1, false, "&c&l&nReturn", "&7", "&7*Returns you to the item settings menu."), event -> itemSettings(player)));
numberPane.addButton(new Button(fillerPaneBItem), 7);
numberPane.addButton(new Button(ItemHandler.getItem("BARRIER", 1, false, "&c&l&nReturn", "&7", "&7*Returns you to the item settings menu."), event -> itemSettings(player)));
}
});
numberPane.open(player);
}
use of me.RockinChaos.itemjoin.utils.interfaces.Interface in project ItemJoin by RockinChaos.
the class Menu method recipePane.
/**
* Opens the Pane for the Player.
* This Pane is for setting the custom recipe.
*
* @param player - The Player to have the Pane opened.
* @param itemMap - The ItemMap currently being modified.
*/
private static void recipePane(final Player player, final ItemMap itemMap) {
Interface recipePane = new Interface(false, 4, GUIName, player);
SchedulerUtils.runAsync(() -> {
recipePane.addButton(new Button(fillerPaneBItem), 3);
for (int i = 0; i < 9; i++) {
final int k = i;
String stack = "CHEST";
ItemStack stack1 = null;
if (itemMap.getRecipe().size() > i && itemMap.getRecipe().get(i) != 'X') {
final ItemMap copyMap = ItemUtilities.getUtilities().getItemMap(null, itemMap.getIngredients().get(itemMap.getRecipe().get(i)).toString(), null);
if (copyMap != null) {
stack1 = copyMap.getItemStack(player);
} else {
stack = itemMap.getIngredients().get(itemMap.getRecipe().get(i)).toString();
}
}
if (stack1 != null) {
stack1 = ItemHandler.addLore(stack1, "&9&lDISPLAY: &f" + stack1.getItemMeta().getDisplayName(), "&7", "&7*Create a recipe that can be used.");
ItemMeta meta = stack1.getItemMeta();
meta.setDisplayName(StringUtils.translateLayout((itemMap.getRecipe().size() > i ? "&e&l" + itemMap.getRecipe().get(i) : "&e&lX"), player));
stack1.setItemMeta(meta);
recipePane.addButton(new Button(stack1, event -> {
if ((itemMap.getRecipe().size() > k && itemMap.getRecipe().get(k) != 'X')) {
setIngredients(player, itemMap, "AIR", k);
} else {
ingredientPane(player, itemMap, k);
}
}));
if (i == 2) {
recipePane.addButton(new Button(fillerPaneBItem), 6);
} else if (i == 5) {
recipePane.addButton(new Button(fillerPaneBItem));
recipePane.addButton(new Button(headerStack(player, itemMap)));
recipePane.addButton(new Button(fillerPaneBItem), 4);
} else if (i == 8) {
recipePane.addButton(new Button(fillerPaneBItem), 3);
}
} else {
recipePane.addButton(new Button(ItemHandler.getItem(stack, 1, false, (itemMap.getRecipe().size() > i ? "&e&l" + itemMap.getRecipe().get(i) : "&e&lX"), "&7", "&7*Create a recipe that can be used."), event -> {
if ((itemMap.getRecipe().size() > k && itemMap.getRecipe().get(k) != 'X')) {
setIngredients(player, itemMap, "AIR", k);
} else {
ingredientPane(player, itemMap, k);
}
}));
if (i == 2) {
recipePane.addButton(new Button(fillerPaneBItem), 6);
} else if (i == 5) {
recipePane.addButton(new Button(fillerPaneBItem));
recipePane.addButton(new Button(headerStack(player, itemMap)));
recipePane.addButton(new Button(fillerPaneBItem), 4);
} else if (i == 8) {
recipePane.addButton(new Button(fillerPaneBItem), 3);
}
}
}
recipePane.addButton(new Button(ItemHandler.getItem("BARRIER", 1, false, "&c&l&nReturn", "&7", "&7*Returns you to the item definition menu."), event -> creatingPane(player, itemMap)));
recipePane.addButton(new Button(fillerPaneBItem), 7);
recipePane.addButton(new Button(ItemHandler.getItem("BARRIER", 1, false, "&c&l&nReturn", "&7", "&7*Returns you to the item definition menu."), event -> creatingPane(player, itemMap)));
});
recipePane.open(player);
}
use of me.RockinChaos.itemjoin.utils.interfaces.Interface in project ItemJoin by RockinChaos.
the class Menu method usePane.
/**
* Opens the Pane for the Player.
* This Pane is for setting the use-cooldown.
*
* @param player - The Player to have the Pane opened.
* @param itemMap - The ItemMap currently being modified.
*/
private static void usePane(final Player player, final ItemMap itemMap) {
Interface usePane = new Interface(true, 6, GUIName, player);
SchedulerUtils.runAsync(() -> {
usePane.setReturnButton(new Button(ItemHandler.getItem("BARRIER", 1, false, "&c&l&nReturn", "&7", "&7*Returns you to the item definition menu."), event -> {
creatingPane(player, itemMap);
}));
usePane.addButton(new Button(ItemHandler.getItem((ServerUtils.hasSpecificUpdate("1_13") ? "YELLOW_STAINED_GLASS_PANE" : "STAINED_GLASS_PANE:4"), 1, false, "&e&lCustom Usage", "&7", "&7*Click to set a custom usage cooldown", "&7value for the item."), event -> {
player.closeInventory();
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "USAGE COOLDOWN";
placeHolders[15] = "120";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputType", player, placeHolders);
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputExample", player, placeHolders);
}, event -> {
if (StringUtils.isInt(ChatColor.stripColor(event.getMessage()))) {
itemMap.setInteractCooldown(Integer.parseInt(ChatColor.stripColor(event.getMessage())));
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "USAGE COOLDOWN";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputSet", player, placeHolders);
} else {
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = ChatColor.stripColor(event.getMessage());
LanguageAPI.getLang(false).sendLangMessage("commands.menu.noInteger", player, placeHolders);
}
creatingPane(event.getPlayer(), itemMap);
}));
for (int i = 1; i <= 64; i++) {
final int k = i;
usePane.addButton(new Button(ItemHandler.getItem((ServerUtils.hasSpecificUpdate("1_13") ? "BLUE_STAINED_GLASS_PANE" : "STAINED_GLASS_PANE:11"), k, false, "&9&lDuration: &a&l" + k + " Second(s)", "&7", "&7*Click to set the", "&7use-cooldown of the item."), event -> {
itemMap.setInteractCooldown(k);
creatingPane(player, itemMap);
}));
}
});
usePane.open(player);
}
use of me.RockinChaos.itemjoin.utils.interfaces.Interface in project ItemJoin by RockinChaos.
the class Menu method blocksPane.
/**
* Opens the Pane for the Player.
* This Pane is for setting the blocks drop chances.
*
* @param player - The Player to have the Pane opened.
* @param itemMap - The ItemMap currently being modified.
*/
private static void blocksPane(final Player player, final ItemMap itemMap) {
Interface blockPane = new Interface(true, 6, GUIName, player);
SchedulerUtils.runAsync(() -> {
blockPane.setReturnButton(new Button(ItemHandler.getItem("BARRIER", 1, false, "&c&l&nReturn", "&7", "&7*Returns you to the drop chances menu."), event -> {
dropsPane(player, itemMap);
}));
blockPane.addButton(new Button(ItemHandler.getItem("STICK", 1, true, "&b&lBukkit Material", "&7", "&7*If you know the name", "&7of the BUKKIT material type", "&7simply click and type it."), event -> {
player.closeInventory();
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "BUKKIT MATERIAL";
placeHolders[15] = "IRON_SWORD";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputType", player, placeHolders);
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputExample", player, placeHolders);
}, event -> {
if (ItemHandler.getMaterial(ChatColor.stripColor(event.getMessage()), null) != null) {
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = "BUKKIT MATERIAL";
LanguageAPI.getLang(false).sendLangMessage("commands.menu.inputSet", player, placeHolders);
chancePane(player, itemMap, null, ItemHandler.getMaterial(ChatColor.stripColor(event.getMessage()), null));
} else {
String[] placeHolders = LanguageAPI.getLang(false).newString();
placeHolders[16] = ChatColor.stripColor(event.getMessage());
LanguageAPI.getLang(false).sendLangMessage("commands.menu.noMaterial", player, placeHolders);
blocksPane(player, itemMap);
}
}));
Inventory inventoryCheck = Bukkit.getServer().createInventory(null, 9, GUIName);
for (Material material : Material.values()) {
if (material.isBlock() && itemMap.getBlocksDrop().containsKey(material)) {
if (!material.name().contains("LEGACY") && material.name() != "AIR" && safeMaterial(ItemHandler.getItem(material.toString(), 1, false, "", ""), inventoryCheck)) {
if (!ServerUtils.hasSpecificUpdate("1_13") && LegacyAPI.getDataValue(material) != 0) {
for (int i = 0; i <= LegacyAPI.getDataValue(material); i++) {
if (!material.toString().equalsIgnoreCase("STEP") || material.toString().equalsIgnoreCase("STEP") && i != 2) {
final int dataValue = i;
blockPane.addButton(new Button(ItemHandler.getItem(material.toString() + ":" + dataValue, 1, (itemMap.getBlocksDrop().containsKey(material)), "", "&7", "&7*Click to set the material.", (itemMap.getBlocksDrop().containsKey(material) ? "&9&lChance: &a" + itemMap.getBlocksDrop().get(material) : "")), event -> {
if (itemMap.getBlocksDrop().containsKey(material)) {
Map<Material, Double> blocksDrop = itemMap.getBlocksDrop();
blocksDrop.remove(material);
itemMap.setBlocksDrop(blocksDrop);
blocksPane(player, itemMap);
} else {
chancePane(player, itemMap, null, material);
}
}));
}
}
} else {
blockPane.addButton(new Button(ItemHandler.getItem(material.toString(), 1, (itemMap.getBlocksDrop().containsKey(material)), "", "&7", "&7*Click to set the material.", (itemMap.getBlocksDrop().containsKey(material) ? "&9&lChance: &a" + itemMap.getBlocksDrop().get(material) : "")), event -> {
if (itemMap.getBlocksDrop().containsKey(material)) {
Map<Material, Double> blocksDrop = itemMap.getBlocksDrop();
blocksDrop.remove(material);
itemMap.setBlocksDrop(blocksDrop);
blocksPane(player, itemMap);
} else {
chancePane(player, itemMap, null, material);
}
}));
}
}
}
}
for (Material material : Material.values()) {
if (material.isBlock() && !itemMap.getBlocksDrop().containsKey(material)) {
if (!material.name().contains("LEGACY") && material.name() != "AIR" && safeMaterial(ItemHandler.getItem(material.toString(), 1, false, "", ""), inventoryCheck)) {
if (!ServerUtils.hasSpecificUpdate("1_13") && LegacyAPI.getDataValue(material) != 0) {
for (int i = 0; i <= LegacyAPI.getDataValue(material); i++) {
if (!material.toString().equalsIgnoreCase("STEP") || material.toString().equalsIgnoreCase("STEP") && i != 2) {
final int dataValue = i;
blockPane.addButton(new Button(ItemHandler.getItem(material.toString() + ":" + dataValue, 1, (itemMap.getBlocksDrop().containsKey(material)), "", "&7", "&7*Click to set the material.", (itemMap.getBlocksDrop().containsKey(material) ? "&9&lChance: &a" + itemMap.getBlocksDrop().get(material) : "")), event -> {
if (itemMap.getBlocksDrop().containsKey(material)) {
Map<Material, Double> blocksDrop = itemMap.getBlocksDrop();
blocksDrop.remove(material);
itemMap.setBlocksDrop(blocksDrop);
blocksPane(player, itemMap);
} else {
chancePane(player, itemMap, null, material);
}
}));
}
}
} else {
blockPane.addButton(new Button(ItemHandler.getItem(material.toString(), 1, (itemMap.getBlocksDrop().containsKey(material)), "", "&7", "&7*Click to set the material.", (itemMap.getBlocksDrop().containsKey(material) ? "&9&lChance: &a" + itemMap.getBlocksDrop().get(material) : "")), event -> {
if (itemMap.getBlocksDrop().containsKey(material)) {
Map<Material, Double> blocksDrop = itemMap.getBlocksDrop();
blocksDrop.remove(material);
itemMap.setBlocksDrop(blocksDrop);
blocksPane(player, itemMap);
} else {
chancePane(player, itemMap, null, material);
}
}));
}
}
}
}
inventoryCheck.clear();
});
blockPane.open(player);
}
Aggregations