package mc.hpk.network.BasicJump; import mc.hpk.network.Main; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.Material; import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemFlag; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; import java.util.ArrayList; import java.util.Collections; public class BasicInv implements Listener { private final Main plugin; public BasicInv(Main plugin) { this.plugin = plugin; } private final String basicName = ChatColor.YELLOW + "" + ChatColor.BOLD + "Basic Jumps"; private final String DisplayName = ChatColor.AQUA + "" + ChatColor.BOLD + "OneJump Menu"; private final String pg1Name = ChatColor.YELLOW + "Page 1"; private final String pg2Name = ChatColor.YELLOW + "Page 2"; private final String pg3Name = ChatColor.YELLOW + "Page 3"; private final String bold = "" + ChatColor.BOLD + ""; private final String prefix = ChatColor.DARK_GRAY + "" + ChatColor.BOLD + "<" + ChatColor.GRAY + "" + ChatColor.BOLD + "< " + ChatColor.LIGHT_PURPLE + "" + ChatColor.BOLD + "Hpk" + ChatColor.WHITE + "" + ChatColor.BOLD + "Network" + ChatColor.GRAY + "" + ChatColor.BOLD + " >" + ChatColor.DARK_GRAY + "" + ChatColor.BOLD + "> "; public Inventory createBasicInv() { return Bukkit.createInventory(null, 54, "Basic Jumps"); } private void sendMessage(Player player, String English, String Korean) { if (plugin.getPlayerConfig().getString("Player." + player.getUniqueId() + ".language") == null) return; String playerLanguage = plugin.getPlayerConfig().getString("Player." + player.getUniqueId() + ".language"); if (playerLanguage.equals("english")) { player.sendMessage(prefix + English); } else if (playerLanguage.equals("korean")) { player.sendMessage(prefix + Korean); } } private void tpMaker(Player player, int JumpNumber, String JumpName, int Difficulty, String JumpType, int slot, Inventory inv) { int playedPlayer = plugin.getRateConfig().getInt("BasicJump.j" + JumpNumber + ".played"); int completedPlayer = plugin.getRateConfig().getInt("BasicJump.j" + JumpNumber + ".completed"); float played = (float) plugin.getRateConfig().getDouble("BasicJump.j" + JumpNumber + ".played"); float completed = (float) plugin.getRateConfig().getDouble("BasicJump.j" + JumpNumber + ".completed"); float rate = (completed / played) * 100; String rate01 = String.format("%.1f", rate); String completeStatus = "Player." + player.getUniqueId() + ".onejumpPlayed.j" + JumpNumber + ".completed"; String completionRate = ChatColor.GRAY + "Clear rate » " + ChatColor.YELLOW + rate01 + ChatColor.YELLOW + "% [" + ChatColor.GOLD + completedPlayer + ChatColor.YELLOW + "/" + ChatColor.GOLD + playedPlayer + ChatColor.YELLOW + "]"; String completionRate2 = ChatColor.GRAY + "Clear rate » " + ChatColor.YELLOW + "0.0% [" + ChatColor.GOLD + "0" + ChatColor.YELLOW + "/" + ChatColor.GOLD + "0" + ChatColor.YELLOW + "]"; ItemStack d1 = new ItemStack(Material.STAINED_CLAY, 1, (byte) 3); ItemMeta d1Meta = d1.getItemMeta(); d1Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore = new ArrayList<>(); lore.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore.add(ChatColor.GRAY + "Jump Name"); lore.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore.add(" "); lore.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore.add(" "); lore.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore.add(completionRate2); } else { lore.add(completionRate); } d1Meta.setLore(lore); if (plugin.getDataConfig().getBoolean(completeStatus)) { d1Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d1Meta.removeEnchant(Enchantment.SILK_TOUCH); } d1Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d1.setItemMeta(d1Meta); ItemStack d2 = new ItemStack(Material.STAINED_CLAY, 2, (byte) 11); ItemMeta d2Meta = d2.getItemMeta(); d2Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore2 = new ArrayList<>(); lore2.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore2.add(ChatColor.GRAY + "Jump Name"); lore2.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore2.add(" "); lore2.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore2.add(" "); lore2.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore2.add(completionRate2); } else { lore2.add(completionRate); } d2Meta.setLore(lore2); if (plugin.getDataConfig().getBoolean(completeStatus)) { d2Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d2Meta.removeEnchant(Enchantment.SILK_TOUCH); } d2Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d2.setItemMeta(d2Meta); ItemStack d3 = new ItemStack(Material.STAINED_CLAY, 3, (byte) 5); ItemMeta d3Meta = d3.getItemMeta(); d3Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore3 = new ArrayList<>(); lore3.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore3.add(ChatColor.GRAY + "Jump Name"); lore3.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore3.add(" "); lore3.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore3.add(" "); lore3.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore3.add(completionRate2); } else { lore3.add(completionRate); } d3Meta.setLore(lore3); if (plugin.getDataConfig().getBoolean(completeStatus)) { d3Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d3Meta.removeEnchant(Enchantment.SILK_TOUCH); } d3Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d3.setItemMeta(d3Meta); ItemStack d4 = new ItemStack(Material.STAINED_CLAY, 4, (byte) 4); ItemMeta d4Meta = d4.getItemMeta(); d4Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore4 = new ArrayList<>(); lore4.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore4.add(ChatColor.GRAY + "Jump Name"); lore4.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore4.add(" "); lore4.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore4.add(" "); lore4.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore4.add(completionRate2); } else { lore4.add(completionRate); } d4Meta.setLore(lore4); if (plugin.getDataConfig().getBoolean(completeStatus)) { d4Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d4Meta.removeEnchant(Enchantment.SILK_TOUCH); } d4Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d4.setItemMeta(d4Meta); ItemStack d5 = new ItemStack(Material.STAINED_CLAY, 5, (byte) 1); ItemMeta d5Meta = d5.getItemMeta(); d5Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore5 = new ArrayList<>(); lore5.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore5.add(ChatColor.GRAY + "Jump Name"); lore5.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore5.add(" "); lore5.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore5.add(" "); lore5.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore5.add(completionRate2); } else { lore5.add(completionRate); } d5Meta.setLore(lore5); if (plugin.getDataConfig().getBoolean(completeStatus)) { d5Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d5Meta.removeEnchant(Enchantment.SILK_TOUCH); } d5Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d5.setItemMeta(d5Meta); ItemStack d6 = new ItemStack(Material.STAINED_CLAY, 6, (byte) 14); ItemMeta d6Meta = d6.getItemMeta(); d6Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore6 = new ArrayList<>(); lore6.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore6.add(ChatColor.GRAY + "Jump Name"); lore6.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore6.add(" "); lore6.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore6.add(" "); lore6.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore6.add(completionRate2); } else { lore6.add(completionRate); } d6Meta.setLore(lore6); if (plugin.getDataConfig().getBoolean(completeStatus)) { d6Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d6Meta.removeEnchant(Enchantment.SILK_TOUCH); } d6Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d6.setItemMeta(d6Meta); ItemStack d7 = new ItemStack(Material.STAINED_CLAY, 7, (byte) 6); ItemMeta d7Meta = d7.getItemMeta(); d7Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore7 = new ArrayList<>(); lore7.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore7.add(ChatColor.GRAY + "Jump Name"); lore7.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore7.add(" "); lore7.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore7.add(" "); lore7.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore7.add(completionRate2); } else { lore7.add(completionRate); } d7Meta.setLore(lore7); if (plugin.getDataConfig().getBoolean(completeStatus)) { d7Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d7Meta.removeEnchant(Enchantment.SILK_TOUCH); } d7Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d7.setItemMeta(d7Meta); ItemStack d8 = new ItemStack(Material.STAINED_CLAY, 8, (byte) 10); ItemMeta d8Meta = d8.getItemMeta(); d8Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore8 = new ArrayList<>(); lore8.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore8.add(ChatColor.GRAY + "Jump Name"); lore8.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore8.add(" "); lore8.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore8.add(" "); lore8.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore8.add(completionRate2); } else { lore8.add(completionRate); } d8Meta.setLore(lore8); if (plugin.getDataConfig().getBoolean(completeStatus)) { d8Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d8Meta.removeEnchant(Enchantment.SILK_TOUCH); } d8Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d8.setItemMeta(d8Meta); ItemStack d9 = new ItemStack(Material.STAINED_CLAY, 9, (byte) 9); ItemMeta d9Meta = d9.getItemMeta(); d9Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore9 = new ArrayList<>(); lore9.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore9.add(ChatColor.GRAY + "Jump Name"); lore9.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore9.add(" "); lore9.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore9.add(" "); lore9.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore9.add(completionRate2); } else { lore9.add(completionRate); } d9Meta.setLore(lore9); if (plugin.getDataConfig().getBoolean(completeStatus)) { d9Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d9Meta.removeEnchant(Enchantment.SILK_TOUCH); } d9Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d9.setItemMeta(d9Meta); ItemStack d10 = new ItemStack(Material.OBSIDIAN, 10); ItemMeta d10Meta = d10.getItemMeta(); d10Meta.setDisplayName(ChatColor.DARK_AQUA + bold + "Jump " + ChatColor.AQUA + bold + JumpNumber); ArrayList lore10 = new ArrayList<>(); lore10.add(ChatColor.GRAY + "" + ChatColor.STRIKETHROUGH + "--------------------------"); lore10.add(ChatColor.GRAY + "Jump Name"); lore10.add(ChatColor.GRAY + "» " + ChatColor.YELLOW + JumpName); lore10.add(" "); lore10.add(ChatColor.GRAY + "Difficulty » " + ChatColor.YELLOW + Difficulty); lore10.add(" "); lore10.add(ChatColor.GRAY + "Jump Type » " + ChatColor.YELLOW + JumpType); if (played == 0.5) { lore10.add(completionRate2); } else { lore10.add(completionRate); } d10Meta.setLore(lore10); if (plugin.getDataConfig().getBoolean(completeStatus)) { d10Meta.addEnchant(Enchantment.SILK_TOUCH, 1, true); } else { d10Meta.removeEnchant(Enchantment.SILK_TOUCH); } d10Meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); d10.setItemMeta(d10Meta); switch(Difficulty) { case 1: inv.setItem(slot, d1); break; case 2: inv.setItem(slot, d2); break; case 3: inv.setItem(slot, d3); break; case 4: inv.setItem(slot, d4); break; case 5: inv.setItem(slot, d5); break; case 6: inv.setItem(slot, d6); break; case 7: inv.setItem(slot, d7); break; case 8: inv.setItem(slot, d8); break; case 9: inv.setItem(slot, d9); break; case 10: inv.setItem(slot, d10); break; } } private void basicInventorySet1(Player player, Inventory inv) { // 기본 틀 ItemStack blank1 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (byte) 15); ItemMeta blankMeta1 = blank1.getItemMeta(); blankMeta1.setDisplayName(" "); blank1.setItemMeta(blankMeta1); ItemStack blank2 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (byte) 7); ItemMeta blankMeta2 = blank2.getItemMeta(); blankMeta2.setDisplayName(" "); blank2.setItemMeta(blankMeta2); ItemStack basicJump = new ItemStack(Material.CHEST, 1); ItemMeta basicMeta = basicJump.getItemMeta(); basicMeta.setDisplayName(basicName); basicJump.setItemMeta(basicMeta); ItemStack pg2 = new ItemStack(Material.ARROW, 1); ItemMeta pg2Meta = pg2.getItemMeta(); pg2Meta.setDisplayName(pg2Name); pg2.setItemMeta(pg2Meta); for (int i = 0; i <= 3; i++) { inv.setItem(i, blank1); } for (int i = 5; i <= 8; i++) { inv.setItem(i, blank1); } inv.setItem(9, blank2); for (int i = 17; i <= 35; i += 9) { inv.setItem(i, blank2); } for (int i = 18; i <= 36; i += 9) { inv.setItem(i, blank2); } inv.setItem(44, blank2); for (int i = 45; i <= 52; i++) { inv.setItem(i, blank1); } inv.setItem(4, basicJump); inv.setItem(53, pg2); // 여기까지 // 여기부터 점프 // Line 1 tpMaker(player, 1, "1bm hh 4b", 1, "Linear", 10, inv); tpMaker(player, 2, "1bm single neup", 1, "Neo", 11, inv); tpMaker(player, 3, "1bm single cross neo", 1, "Neo", 12, inv); tpMaker(player, 4, "6bm 4.8125b", 2, "Linear", 13, inv); tpMaker(player, 5, "Water 2b", 2, "Linear", 14, inv); tpMaker(player, 6, "3bm 4b+0.5", 2, "Linear", 15, inv); tpMaker(player, 7, "Ladder +2 around pane", 2, "Neo", 16, inv); // Line 2 tpMaker(player, 8, "3x3+4bm triple neo", 3, "Neo", 19, inv); tpMaker(player, 9, "1bm hh 4.8125b", 3, "Linear", 20, inv); tpMaker(player, 10, "Waterchest 3b+0.0625", 3, "Linear", 21, inv); tpMaker(player, 11, "1bm single winged neo", 3, "Neo", 22, inv); tpMaker(player, 12, "1bm 4b+0.4375", 3, "Linear", 23, inv); tpMaker(player, 13, "Ladder slide", 3, "Linear", 24, inv); tpMaker(player, 14, "3bm hh 5b", 3, "Linear", 25, inv); // Line 3 tpMaker(player, 15, "Kyroh paneup", 3, "Other", 28, inv); tpMaker(player, 16, "1bm 3bc 4b", 4, "Linear", 29, inv); tpMaker(player, 17, "1bm hh double cross neo", 4, "Neo", 30, inv); tpMaker(player, 18, "6bm 5.4375b-1", 4, "Linear", 31, inv); tpMaker(player, 19, "Cobblewall to cobblewall neo", 4, "Neo", 32, inv); tpMaker(player, 20, "Backwalled 3bm 4b+0.5", 4, "Linear", 33, inv); tpMaker(player, 21, "1bm cross neup", 4, "Neo", 34, inv); // Line 4 tpMaker(player, 22, "11.125bm 3bc triple neo", 4, "Neo", 37, inv); tpMaker(player, 23, "2bm hh 5b", 4, "Neo", 38, inv); tpMaker(player, 24, "Double blip-up", 4, "Linear", 39, inv); tpMaker(player, 25, "1bm hh triple neo", 4, "Neo", 40, inv); tpMaker(player, 26, "1bm Pane to block +0.375", 5, "Neo", 41, inv); tpMaker(player, 27, "1bm 4.375b", 5, "Linear", 42, inv); tpMaker(player, 28, "No momentum 3.8125b", 5, "Linear", 43, inv); } private void basicInventorySet2(Player player, Inventory inv) { ItemStack blank1 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (byte) 15); ItemMeta blankMeta1 = blank1.getItemMeta(); blankMeta1.setDisplayName(" "); blank1.setItemMeta(blankMeta1); ItemStack blank2 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (byte) 7); ItemMeta blankMeta2 = blank2.getItemMeta(); blankMeta2.setDisplayName(" "); blank2.setItemMeta(blankMeta2); ItemStack basicJump = new ItemStack(Material.CHEST, 1); ItemMeta basicMeta = basicJump.getItemMeta(); basicMeta.setDisplayName(basicName); basicJump.setItemMeta(basicMeta); ItemStack pg1 = new ItemStack(Material.ARROW, 1); ItemMeta pg1Meta = pg1.getItemMeta(); pg1Meta.setDisplayName(pg1Name); pg1.setItemMeta(pg1Meta); ItemStack pg3 = new ItemStack(Material.ARROW, 1); ItemMeta pg3Meta = pg3.getItemMeta(); pg3Meta.setDisplayName(pg3Name); pg3.setItemMeta(pg3Meta); for (int i = 0; i <= 3; i++) { inv.setItem(i, blank1); } for (int i = 5; i <= 8; i++) { inv.setItem(i, blank1); } inv.setItem(9, blank2); for (int i = 17; i <= 35; i += 9) { inv.setItem(i, blank2); } for (int i = 18; i <= 36; i += 9) { inv.setItem(i, blank2); } inv.setItem(44, blank2); for (int i = 46; i <= 52; i++) { inv.setItem(i, blank1); } inv.setItem(4, basicJump); inv.setItem(45, pg1); inv.setItem(53, pg3); // 여기까지 // 여기부터 점프 // Line 1 tpMaker(player, 29, "1bm butterfly neo", 5, "Neo", 10, inv); tpMaker(player, 30, "1bm double winged neo", 5, "Neo", 11, inv); tpMaker(player, 31, "3jmm nix neo", 5, "Neo", 12, inv); tpMaker(player, 32, "Vine to vine -0", 5, "Other", 13, inv); tpMaker(player, 33, "2bm double neup", 5, "Neo", 14, inv); tpMaker(player, 34, "Pane to pane neo", 5, "Neo", 15, inv); tpMaker(player, 35, "Waza ladder -0", 5, "Neo", 16, inv); // Line 2 tpMaker(player, 36, "X 3x3+4bm winged triple neo", 5, "Neo", 19, inv); tpMaker(player, 37, "7bm triple triple neo", 5, "Neo", 20, inv); tpMaker(player, 38, "Pane to short pane neo", 6, "Neo", 21, inv); tpMaker(player, 39, "1bm 4.6875b-0.375", 6, "Linear", 22, inv); tpMaker(player, 40, "1bm fence to fence neo 1bl", 6, "Neo", 23, inv); tpMaker(player, 41, "No momentum 3bx1+1", 6, "Linear", 24, inv); tpMaker(player, 42, "1bm 4bx2.375", 6, "Linear", 25, inv); // Line 3 tpMaker(player, 43, "Barber neo", 6, "Neo", 28, inv); tpMaker(player, 44, "1bm hh 4b+1", 7, "Linear", 29, inv); tpMaker(player, 45, "Td to td cross neo", 7, "Neo", 30, inv); tpMaker(player, 46, "6bm 7b-5", 7, "Linear", 31, inv); tpMaker(player, 47, "Single block butterfly neo", 7, "Neo", 32, inv); tpMaker(player, 48, "1.1875bm 4.4375b", 7, "Linear", 33, inv); tpMaker(player, 49, "19bm 7.375b-5.5", 7, "Linear", 34, inv); // Line 4 tpMaker(player, 50, "2bm triple neo", 7, "Neo", 37, inv); tpMaker(player, 51, "Chest to block 4.0625b+0.125", 7, "Neo", 38, inv); tpMaker(player, 52, "1bm 3.5b+1", 7, "Linear", 39, inv); tpMaker(player, 53, "3bm winged triple neo", 7, "Neo", 40, inv); tpMaker(player, 54, "3.125bm head butterfly neo", 8, "Neo", 41, inv); tpMaker(player, 55, "1bm 5b-1", 8, "Linear", 42, inv); tpMaker(player, 56, "Head waza to block", 8, "Neo", 43, inv); } private void basicInventorySet3(Player player, Inventory inv) { ItemStack blank1 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (byte) 15); ItemMeta blankMeta1 = blank1.getItemMeta(); blankMeta1.setDisplayName(" "); blank1.setItemMeta(blankMeta1); ItemStack blank2 = new ItemStack(Material.STAINED_GLASS_PANE, 1, (byte) 7); ItemMeta blankMeta2 = blank2.getItemMeta(); blankMeta2.setDisplayName(" "); blank2.setItemMeta(blankMeta2); ItemStack basicJump = new ItemStack(Material.CHEST, 1); ItemMeta basicMeta = basicJump.getItemMeta(); basicMeta.setDisplayName(basicName); basicJump.setItemMeta(basicMeta); ItemStack pg2 = new ItemStack(Material.ARROW, 1); ItemMeta pg2Meta = pg2.getItemMeta(); pg2Meta.setDisplayName(pg2Name); pg2.setItemMeta(pg2Meta); for (int i = 0; i <= 3; i++) { inv.setItem(i, blank1); } for (int i = 5; i <= 8; i++) { inv.setItem(i, blank1); } inv.setItem(9, blank2); for (int i = 17; i <= 35; i += 9) { inv.setItem(i, blank2); } for (int i = 18; i <= 36; i += 9) { inv.setItem(i, blank2); } inv.setItem(44, blank2); for (int i = 46; i <= 53; i++) { inv.setItem(i, blank1); } inv.setItem(4, basicJump); inv.setItem(45, pg2); // 여기까지 // 여기부터 점프 // Line 1 tpMaker(player, 57, "Head to head neo", 8, "Neo", 10, inv); tpMaker(player, 58, "T1cb to t1cb neo", 8, "Neo", 11, inv); tpMaker(player, 59, "No momentum 3.0625b+1", 8, "Linear", 12, inv); tpMaker(player, 60, "True head waza ladder -0", 9, "Neo", 13, inv); tpMaker(player, 61, "11bm 3.9375b+1", 9, "Linear", 14, inv); tpMaker(player, 62, "Single anvil butterfly neo", 9, "Neo", 15, inv); tpMaker(player, 63, "Ladder to ladder cross neo", 9, "Neo", 16, inv); // Line 2 tpMaker(player, 64, "19bm 8b-8", 9, "Linear", 19, inv); tpMaker(player, 65, "1.125bm 4.4375b", 9, "Linear", 20, inv); tpMaker(player, 66, "1bm 3.8125b+0.5", 9, "Linear", 21, inv); tpMaker(player, 67, "1bm 3.375bx3.375", 10, "Linear", 22, inv); tpMaker(player, 68, "Flat mm head to head neo", 10, "Neo", 23, inv); tpMaker(player, 69, "1bm hh 5b triple neo", 10, "Neo", 24, inv); inv.setItem(25, null); // Line 3 for (int i = 28; i <= 34; i++) { inv.setItem(i, null); } // Line 4 for (int i = 37; i <= 43; i++) { inv.setItem(i, null); } } @EventHandler public void clickInv(InventoryClickEvent event) { Player player = (Player) event.getWhoClicked(); if (event.getClickedInventory() == null) return; if (event.getCurrentItem() == null) return; if (event.getCurrentItem().getItemMeta() == null) return; if (event.getCurrentItem().getItemMeta().getDisplayName() == null) return; if (event.getCurrentItem().getItemMeta().getDisplayName().equals(" ")) { event.setCancelled(true); } switch (event.getClickedInventory().getName()) { case "OneJump Menu": if (event.getCurrentItem().getItemMeta().getDisplayName().equals(basicName) && event.getCurrentItem().getItemMeta().getLore().equals(Collections.singletonList(ChatColor.GRAY + "Includes very historical and common jumps."))) { player.openInventory(createBasicInv()); basicInventorySet1(player, createBasicInv()); event.setCancelled(true); plugin.getPlayerConfig().set("Player." + player.getUniqueId() + ".PlayingJumpType", "basicjump"); plugin.savePlayerConfig(); } else if (event.getCurrentItem().getItemMeta().getDisplayName().equals(DisplayName) || event.getCurrentItem().getItemMeta().getDisplayName().equals(basicName)) { event.setCancelled(true); } else if (event.getCurrentItem().getItemMeta().getDisplayName().equals(" ")) { event.setCancelled(true); } else { event.setCancelled(true); player.closeInventory(); sendMessage(player, "§cComing soon!", "현재 개발 중입니다!"); } break; case "Basic Jumps": if (event.getCurrentItem().getItemMeta().getDisplayName().equals(pg2Name)) { event.setCancelled(true); basicInventorySet2(player, createBasicInv()); } else if (event.getCurrentItem().getItemMeta().getDisplayName().equals(pg1Name)) { event.setCancelled(true); basicInventorySet1(player, createBasicInv()); } else if (event.getCurrentItem().getItemMeta().getDisplayName().equals(pg3Name)) { event.setCancelled(true); basicInventorySet3(player, createBasicInv()); } break; } } }