Merge branch “1.20.6”
This commit is contained in:
		
				commit
				
					
						2bc7a3979e
					
				
			
		
					 7 changed files with 165 additions and 221 deletions
				
			
		|  | @ -48,7 +48,7 @@ public class MinecleanerListener implements Listener { | ||||||
|                     hasRightClicked = true; |                     hasRightClicked = true; | ||||||
|                 } |                 } | ||||||
| 
 | 
 | ||||||
|                 if(!arena.getCurrentMinecleanerGame().gameover && (arena.getArenaStatus() == ArenaStatus.PLAYING || arena.getArenaStatus() == ArenaStatus.COMPLETED)) { |                 if(arena.getCurrentMinecleanerGame() != null && !arena.getCurrentMinecleanerGame().gameover && (arena.getArenaStatus() == ArenaStatus.PLAYING || arena.getArenaStatus() == ArenaStatus.COMPLETED)) { | ||||||
|                     if(arena.getArenaStatus() == ArenaStatus.PLAYING) { |                     if(arena.getArenaStatus() == ArenaStatus.PLAYING) { | ||||||
|                         int d0x = arena.getOrientation().getModX(); |                         int d0x = arena.getOrientation().getModX(); | ||||||
|                         int d0z = arena.getOrientation().getModZ(); |                         int d0z = arena.getOrientation().getModZ(); | ||||||
|  | @ -131,117 +131,6 @@ public class MinecleanerListener implements Listener { | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|             if(e.getInventory().equals(plugin.getManager().getSettingsInventory())) { |  | ||||||
|                 int slot = e.getRawSlot(); |  | ||||||
|                 switch (slot) { |  | ||||||
|                     case 10: { |  | ||||||
|                         if(plugin.getManager().getSettingsValue("allowmanualreset", player) == 0) { |  | ||||||
|                             plugin.getManager().updateSettingsValue("allowmanualreset", 1, player); |  | ||||||
|                             player.closeInventory(); |  | ||||||
|                             player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                         } else { |  | ||||||
|                             plugin.getManager().updateSettingsValue("allowmanualreset", 0, player); |  | ||||||
|                             player.closeInventory(); |  | ||||||
|                             player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                         } |  | ||||||
|                         break; |  | ||||||
|                     } |  | ||||||
|                     case 12: { |  | ||||||
|                         if(plugin.getManager().getSettingsValue("additionaldisplay", player) == 0) { |  | ||||||
|                             plugin.getManager().updateSettingsValue("additionaldisplay", 1, player); |  | ||||||
|                             player.closeInventory(); |  | ||||||
|                             player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                         } else { |  | ||||||
|                             plugin.getManager().updateSettingsValue("additionaldisplay", 0, player); |  | ||||||
|                             player.closeInventory(); |  | ||||||
|                             player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                         } |  | ||||||
|                         break; |  | ||||||
|                     } |  | ||||||
|                     case 14: { |  | ||||||
|                         if(plugin.getManager().getSettingsValue("timer", player) == 0) { |  | ||||||
|                             plugin.getManager().updateSettingsValue("timer", 1, player); |  | ||||||
|                             player.closeInventory(); |  | ||||||
|                             player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                         } else { |  | ||||||
|                             plugin.getManager().updateSettingsValue("timer", 0, player); |  | ||||||
|                             if(arena != null) { |  | ||||||
|                                 arena.updateIngameInfoTexts(); |  | ||||||
|                             } |  | ||||||
|                             player.closeInventory(); |  | ||||||
|                             player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                         } |  | ||||||
|                         break; |  | ||||||
|                     } |  | ||||||
|                     case 16: { |  | ||||||
|                         switch (plugin.getManager().getSettingsValue("resettime", player)) { |  | ||||||
|                             case 1: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 2, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                             case 2: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 3, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                             case 3: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 4, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                             case 4: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 5, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                             case 5: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 6, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                             case 6: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 7, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                             case 7: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 8, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                             case 8: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 9, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                             case 9: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 10, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                             case 10: { |  | ||||||
|                                 plugin.getManager().updateSettingsValue("resettime", 1, player); |  | ||||||
|                                 player.closeInventory(); |  | ||||||
|                                 player.openInventory(plugin.getManager().showSettingsInventory(player)); |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                         } |  | ||||||
|                     } |  | ||||||
|                     default: { |  | ||||||
|                         break; |  | ||||||
|                     } |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|      |      | ||||||
|  |  | ||||||
|  | @ -373,75 +373,6 @@ public class MinecleanerManager { | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public Inventory showSettingsInventory(Player player) { |  | ||||||
|         int current = getSettingsValue("allowmanualreset", player); |  | ||||||
| 
 |  | ||||||
|         if(current == 0) { |  | ||||||
|             settingsInventory.setItem(10, |  | ||||||
|                     ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.SHEARS), ChatColor.RED + "Manuelles Resetten deaktiviert"))); |  | ||||||
|         } else { |  | ||||||
|             settingsInventory.setItem(10, |  | ||||||
|                     ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.SHEARS), ChatColor.GREEN + "Manuelles Resetten aktiviert"))); |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         current = getSettingsValue("additionaldisplay", player); |  | ||||||
|         if(current == 0) { |  | ||||||
|             settingsInventory.setItem(12, |  | ||||||
|                     ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.NAME_TAG), ChatColor.RED + "Zusätzliche Anzeige in der Action Bar deaktiviert"))); |  | ||||||
|         } else { |  | ||||||
|             settingsInventory.setItem(12, |  | ||||||
|                     ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.NAME_TAG), ChatColor.GREEN + "Zusätzliche Anzeige in der Action Bar aktiviert"))); |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
|         current = getSettingsValue("timer", player); |  | ||||||
| 
 |  | ||||||
|         if(current == 0) { |  | ||||||
|             settingsInventory.setItem(14, |  | ||||||
|                     ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CLOCK), ChatColor.RED + "Timer wird nicht angezeigt"))); |  | ||||||
|         } else { |  | ||||||
|             settingsInventory.setItem(14, |  | ||||||
|                     ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CLOCK), ChatColor.GREEN + "Timer wird angezeigt"))); |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         current = getSettingsValue("resettime", player); |  | ||||||
| 
 |  | ||||||
|         switch (current) { |  | ||||||
|             case 1: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "1s"))); |  | ||||||
|                 break; |  | ||||||
|             case 2: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "2s"))); |  | ||||||
|                 break; |  | ||||||
|             case 3: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "3s"))); |  | ||||||
|                 break; |  | ||||||
|             case 4: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "4s"))); |  | ||||||
|                 break; |  | ||||||
|             case 5: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "5s"))); |  | ||||||
|                 break; |  | ||||||
|             case 6: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "6s"))); |  | ||||||
|                 break; |  | ||||||
|             case 7: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "7s"))); |  | ||||||
|                 break; |  | ||||||
|             case 8: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "8s"))); |  | ||||||
|                 break; |  | ||||||
|             case 9: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "9s"))); |  | ||||||
|                 break; |  | ||||||
|             case 10: |  | ||||||
|                 settingsInventory.setItem(16, ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CANDLE), ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + "10s"))); |  | ||||||
|                 break; |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         return settingsInventory; |  | ||||||
|     } |  | ||||||
| 
 |  | ||||||
|     public int getSettingsValue(String settingsKeyString, Player player) { |     public int getSettingsValue(String settingsKeyString, Player player) { | ||||||
|         PlayerStatistics playerStatistics = plugin.getCubesideStatistics().getStatistics(player.getUniqueId()); |         PlayerStatistics playerStatistics = plugin.getCubesideStatistics().getStatistics(player.getUniqueId()); | ||||||
|         SettingKey settingKey = plugin.getCubesideStatistics().getSettingKey("minecleaner.settings." + settingsKeyString); |         SettingKey settingKey = plugin.getCubesideStatistics().getSettingKey("minecleaner.settings." + settingsKeyString); | ||||||
|  |  | ||||||
|  | @ -0,0 +1,124 @@ | ||||||
|  | package de.lunarakai.minecleaner; | ||||||
|  | 
 | ||||||
|  | import de.iani.cubesideutils.bukkit.inventory.AbstractWindow; | ||||||
|  | import de.lunarakai.minecleaner.utils.ItemUtil; | ||||||
|  | import net.md_5.bungee.api.ChatColor; | ||||||
|  | import org.bukkit.Bukkit; | ||||||
|  | import org.bukkit.Material; | ||||||
|  | import org.bukkit.entity.Player; | ||||||
|  | import org.bukkit.event.inventory.InventoryClickEvent; | ||||||
|  | import org.bukkit.event.inventory.InventoryType; | ||||||
|  | import org.bukkit.inventory.ItemStack; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | public class MinecleanerSettingsInventory extends AbstractWindow { | ||||||
|  | 
 | ||||||
|  |     private static final int SETTINGS_ALLOW_MANUEL_RESET = 10; | ||||||
|  |     private static final int SETTINGS_ADDITIONAL_DISPLAY = 12; | ||||||
|  |     private static final int SETTINGS_TIMER = 14; | ||||||
|  |     private static final int SETTINGS_RESETTIME = 16; | ||||||
|  |     private static final int WINDOW_SIZE = 27; | ||||||
|  | 
 | ||||||
|  |     private MinecleanerPlugin plugin; | ||||||
|  | 
 | ||||||
|  |     public MinecleanerSettingsInventory(Player player, MinecleanerPlugin plugin) { | ||||||
|  |         super(player, Bukkit.createInventory(player, InventoryType.CHEST, plugin.getDisplayedPluginName() + " Einstellungen")); | ||||||
|  |         this.plugin = plugin; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     protected void rebuildInventory() { | ||||||
|  |         Player player = getPlayer(); | ||||||
|  | 
 | ||||||
|  |         for (int i = 0; i < WINDOW_SIZE; i++) { | ||||||
|  |             ItemStack item; | ||||||
|  |             switch (i) { | ||||||
|  |                 case SETTINGS_ALLOW_MANUEL_RESET -> { | ||||||
|  |                     if (plugin.getManager().getSettingsValue("allowmanualreset", player) == 0) { | ||||||
|  |                         item = ItemUtil.createGuiItem(Material.SHEARS, ChatColor.RED + "Manuelles Resetten deaktiviert"); | ||||||
|  |                     } else { | ||||||
|  |                         item = ItemUtil.createGuiItem(Material.SHEARS, ChatColor.GREEN + "Manuelles Resetten aktiviert"); | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |                 case SETTINGS_ADDITIONAL_DISPLAY -> { | ||||||
|  |                     if (plugin.getManager().getSettingsValue("additionaldisplay", player) == 0) { | ||||||
|  |                         item = ItemUtil.createGuiItem(Material.NAME_TAG, ChatColor.RED + "Zusätzliche Anzeige in der Action Bar deaktiviert\""); | ||||||
|  |                     } else { | ||||||
|  |                         item = ItemUtil.createGuiItem(Material.NAME_TAG, ChatColor.GREEN + "Zusätzliche Anzeige in der Action Bar aktiviert\""); | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |                 case SETTINGS_TIMER -> { | ||||||
|  |                     if (plugin.getManager().getSettingsValue("timer", player) == 0) { | ||||||
|  |                         item = ItemUtil.createGuiItem(Material.CLOCK, ChatColor.RED + "Timer wird nicht angezeigt"); | ||||||
|  |                     } else { | ||||||
|  |                         item = ItemUtil.createGuiItem(Material.CLOCK, ChatColor.GREEN + "Timer wird angezeigt"); | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |                 case SETTINGS_RESETTIME -> { | ||||||
|  |                     int current = plugin.getManager().getSettingsValue("resettime", player); | ||||||
|  |                     item = ItemUtil.createGuiItem(Material.CANDLE, ChatColor.GOLD + "Resetzeit: " + ChatColor.RED + current + "s"); | ||||||
|  |                 } | ||||||
|  |                 default -> item = ItemUtil.EMPTY_ICON; | ||||||
|  |             } | ||||||
|  |             this.getInventory().setItem(i, item); | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public void onItemClicked(InventoryClickEvent event) { | ||||||
|  |         if (!mayAffectThisInventory(event)) { | ||||||
|  |             return; | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         event.setCancelled(true); | ||||||
|  |         if (!getInventory().equals(event.getClickedInventory())) { | ||||||
|  |             return; | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         Player player = getPlayer(); | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |         int slot = event.getSlot(); | ||||||
|  |         switch (slot) { | ||||||
|  |             case SETTINGS_ALLOW_MANUEL_RESET -> { | ||||||
|  |                 if(plugin.getManager().getSettingsValue("allowmanualreset", player) == 0) { | ||||||
|  |                     plugin.getManager().updateSettingsValue("allowmanualreset", 1, player); | ||||||
|  |                 } else { | ||||||
|  |                     plugin.getManager().updateSettingsValue("allowmanualreset", 0, player); | ||||||
|  |                 } | ||||||
|  |                 rebuildInventory(); | ||||||
|  |             } | ||||||
|  |             case SETTINGS_ADDITIONAL_DISPLAY -> { | ||||||
|  |                 if(plugin.getManager().getSettingsValue("additionaldisplay", player) == 0) { | ||||||
|  |                     plugin.getManager().updateSettingsValue("additionaldisplay", 1, player); | ||||||
|  |                 } else { | ||||||
|  |                     plugin.getManager().updateSettingsValue("additionaldisplay", 0, player); | ||||||
|  |                 } | ||||||
|  |                 rebuildInventory(); | ||||||
|  |             } | ||||||
|  |             case SETTINGS_TIMER -> { | ||||||
|  |                 if(plugin.getManager().getSettingsValue("timer", player) == 0) { | ||||||
|  |                     plugin.getManager().updateSettingsValue("timer", 1, player); | ||||||
|  |                 } else { | ||||||
|  |                     MinecleanerArena arena = plugin.getArenaList().getPlayerArena(player); | ||||||
|  |                     plugin.getManager().updateSettingsValue("timer", 0, player); | ||||||
|  |                     if(arena != null) { | ||||||
|  |                         arena.updateIngameInfoTexts(); | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |                 rebuildInventory(); | ||||||
|  |             } | ||||||
|  |             case SETTINGS_RESETTIME -> { | ||||||
|  |                 int current = plugin.getManager().getSettingsValue("resettime", player); | ||||||
|  |                 if(plugin.getManager().getSettingsValue("resettime", player) < 10) { | ||||||
|  |                     plugin.getManager().updateSettingsValue("resettime", current + 1, player); | ||||||
|  |                 } else { | ||||||
|  |                     plugin.getManager().updateSettingsValue("resettime", 1, player); | ||||||
|  |                 } | ||||||
|  |                 rebuildInventory(); | ||||||
|  |             } | ||||||
|  |             default -> { | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | @ -8,6 +8,7 @@ import de.iani.cubesideutils.bukkit.commands.exceptions.NoPermissionException; | ||||||
| import de.iani.cubesideutils.bukkit.commands.exceptions.RequiresPlayerException; | import de.iani.cubesideutils.bukkit.commands.exceptions.RequiresPlayerException; | ||||||
| import de.iani.cubesideutils.commands.ArgsParser; | import de.iani.cubesideutils.commands.ArgsParser; | ||||||
| import de.lunarakai.minecleaner.MinecleanerPlugin; | import de.lunarakai.minecleaner.MinecleanerPlugin; | ||||||
|  | import de.lunarakai.minecleaner.MinecleanerSettingsInventory; | ||||||
| import org.bukkit.command.Command; | import org.bukkit.command.Command; | ||||||
| import org.bukkit.command.CommandSender; | import org.bukkit.command.CommandSender; | ||||||
| import org.bukkit.entity.Player; | import org.bukkit.entity.Player; | ||||||
|  | @ -39,7 +40,7 @@ public class SettingsCommand extends SubCommand { | ||||||
|     public boolean onCommand(CommandSender sender, Command command, String s, String s1, ArgsParser args) throws DisallowsCommandBlockException, RequiresPlayerException, NoPermissionException, IllegalSyntaxException, InternalCommandException { |     public boolean onCommand(CommandSender sender, Command command, String s, String s1, ArgsParser args) throws DisallowsCommandBlockException, RequiresPlayerException, NoPermissionException, IllegalSyntaxException, InternalCommandException { | ||||||
|         Player player = (Player) sender; |         Player player = (Player) sender; | ||||||
| 
 | 
 | ||||||
|         player.openInventory(plugin.getManager().showSettingsInventory(player)); |         new MinecleanerSettingsInventory(player, plugin).open(); | ||||||
|         return true; |         return true; | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
							
								
								
									
										32
									
								
								src/main/java/de/lunarakai/minecleaner/utils/ItemUtil.java
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								src/main/java/de/lunarakai/minecleaner/utils/ItemUtil.java
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,32 @@ | ||||||
|  | package de.lunarakai.minecleaner.utils; | ||||||
|  | 
 | ||||||
|  | import de.iani.cubesideutils.bukkit.items.ItemBuilder; | ||||||
|  | import org.bukkit.Material; | ||||||
|  | import org.bukkit.enchantments.Enchantment; | ||||||
|  | import org.bukkit.inventory.ItemFlag; | ||||||
|  | import org.bukkit.inventory.ItemStack; | ||||||
|  | 
 | ||||||
|  | public class ItemUtil { | ||||||
|  | 
 | ||||||
|  |     public static final ItemStack EMPTY_ICON = createGuiItem(Material.GRAY_STAINED_GLASS_PANE, " ", true, true); | ||||||
|  | 
 | ||||||
|  |     public static ItemStack createGuiItem(Material material, String name, String... lore) { | ||||||
|  |         return createGuiItem(material, name, false, lore); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public static ItemStack createGuiItem(Material material, String name, boolean glowing, boolean showTooltip, String... lore) { | ||||||
|  |         ItemBuilder builder = ItemBuilder.fromMaterial(material).displayName(name).lore(lore); | ||||||
|  |         if (glowing) { | ||||||
|  |             builder.enchantment(Enchantment.UNBREAKING, 1, true).flag(ItemFlag.HIDE_ENCHANTS); | ||||||
|  |         } | ||||||
|  |         if (!showTooltip) { | ||||||
|  |             builder.flag(ItemFlag.HIDE_ADDITIONAL_TOOLTIP); | ||||||
|  |         } | ||||||
|  |         return builder.build(); | ||||||
|  | 
 | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public static ItemStack createGuiItem(Material material, String name, boolean glowing, String... lore) { | ||||||
|  |         return createGuiItem(material, name, glowing, true, lore); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | @ -1,14 +1,8 @@ | ||||||
| package de.lunarakai.minecleaner.utils; | package de.lunarakai.minecleaner.utils; | ||||||
| 
 | 
 | ||||||
| import java.util.Arrays; | import de.iani.cubesideutils.bukkit.items.CustomHeads; | ||||||
| import java.util.UUID; | import java.util.UUID; | ||||||
| import org.bukkit.Bukkit; |  | ||||||
| import org.bukkit.Material; |  | ||||||
| import org.bukkit.inventory.ItemStack; | import org.bukkit.inventory.ItemStack; | ||||||
| import org.bukkit.inventory.meta.ItemMeta; |  | ||||||
| import org.bukkit.inventory.meta.SkullMeta; |  | ||||||
| import com.destroystokyo.paper.profile.PlayerProfile; |  | ||||||
| import com.destroystokyo.paper.profile.ProfileProperty; |  | ||||||
| 
 | 
 | ||||||
| public enum MinecleanerHeads { | public enum MinecleanerHeads { | ||||||
|     MINESWEEPER_TILE_0("38206373-5653-4431-85aa-6276f3f9a046", "Minesweeper Tile 0", "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNzRjMjg0YTRlOTc0MDA1ZWE4ZDFkNGQwNjc0ZWMwODk0ZWZkOGY2ZGQwMjQ4NjM5YTZjZmE5NGY4NTM4OCJ9fX0="), |     MINESWEEPER_TILE_0("38206373-5653-4431-85aa-6276f3f9a046", "Minesweeper Tile 0", "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNzRjMjg0YTRlOTc0MDA1ZWE4ZDFkNGQwNjc0ZWMwODk0ZWZkOGY2ZGQwMjQ4NjM5YTZjZmE5NGY4NTM4OCJ9fX0="), | ||||||
|  | @ -38,40 +32,11 @@ public enum MinecleanerHeads { | ||||||
|      |      | ||||||
|     private ItemStack head; |     private ItemStack head; | ||||||
|   |   | ||||||
|     private MinecleanerHeads(String ownerUUIDString, String ownerName, String texturesProperty) { |     MinecleanerHeads(String ownerUUIDString, String ownerName, String texturesProperty) { | ||||||
|         head = createHead(UUID.fromString(ownerUUIDString), ownerName, texturesProperty); |         head = CustomHeads.createHead(UUID.fromString(ownerUUIDString), ownerName, texturesProperty); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public ItemStack getHead() { |     public ItemStack getHead() { | ||||||
|         return new ItemStack(head); |         return new ItemStack(head); | ||||||
|     } |     } | ||||||
|   |  | ||||||
|     public ItemStack getHead(String displayName) { |  | ||||||
|         return getHead(displayName, (String[]) null); |  | ||||||
|     } |  | ||||||
|   |  | ||||||
|     public ItemStack getHead(String displayName, String... lore) { |  | ||||||
|         ItemStack stack = getHead(); |  | ||||||
|         ItemMeta meta = stack.getItemMeta(); |  | ||||||
|         meta.setDisplayName(displayName); |  | ||||||
|         if (lore != null && lore.length > 0) { |  | ||||||
|             meta.setLore(Arrays.asList(lore)); |  | ||||||
|         } |  | ||||||
|         stack.setItemMeta(meta); |  | ||||||
|         return stack; |  | ||||||
|     } |  | ||||||
|   |  | ||||||
|     public static ItemStack createHead(UUID ownerUUID, String ownerName, String texturesProperty) { |  | ||||||
|         if (ownerName == null) { |  | ||||||
|             ownerName = ownerUUID.toString().substring(0, 16); |  | ||||||
|         } |  | ||||||
|         ItemStack stack = new ItemStack(Material.PLAYER_HEAD); |  | ||||||
|         SkullMeta meta = (SkullMeta) stack.getItemMeta(); |  | ||||||
|         PlayerProfile profile = Bukkit.createProfile(ownerUUID, ownerName); |  | ||||||
|         profile.setProperty(new ProfileProperty("textures", texturesProperty)); |  | ||||||
|         meta.setPlayerProfile(profile); |  | ||||||
|         stack.setItemMeta(meta); |  | ||||||
|         return stack; |  | ||||||
|     } |  | ||||||
|      |  | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1,5 +1,7 @@ | ||||||
| package de.lunarakai.minecleaner.utils; | package de.lunarakai.minecleaner.utils; | ||||||
| 
 | 
 | ||||||
|  | import de.iani.cubesideutils.StringUtil; | ||||||
|  | 
 | ||||||
| public class MinecleanerStringUtil { | public class MinecleanerStringUtil { | ||||||
|     private MinecleanerStringUtil() { |     private MinecleanerStringUtil() { | ||||||
|     }     |     }     | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue