Advertisement
Guest User

Untitled

a guest
Mar 29th, 2020
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.11 KB | None | 0 0
  1. package pl.AdamLam.attchest;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.Material;
  7. import org.bukkit.command.Command;
  8. import org.bukkit.command.CommandSender;
  9. import org.bukkit.entity.Player;
  10. import org.bukkit.event.EventHandler;
  11. import org.bukkit.event.Listener;
  12. import org.bukkit.event.inventory.InventoryClickEvent;
  13. import org.bukkit.inventory.Inventory;
  14. import org.bukkit.inventory.ItemStack;
  15. import org.bukkit.inventory.meta.ItemMeta;
  16. import org.bukkit.inventory.meta.SkullMeta;
  17. import org.bukkit.plugin.java.JavaPlugin;
  18.  
  19. public class Main extends JavaPlugin implements Listener
  20. {
  21.    
  22.     @Override
  23.     public void onEnable()
  24.     {
  25.         getServer().getPluginManager().registerEvents(this, this);
  26.     }
  27.    
  28.     public static String ChestName = "Atakowanie";
  29.     public static Inventory chest = Bukkit.createInventory(null, 9, ChestName);
  30.     public static int page = 0;
  31.    
  32.    
  33.     public static void createDisplay(Material material, Inventory inv, int Slot, String name, String lore)
  34.     {
  35.         ItemStack item = new ItemStack(material);
  36.         ItemMeta meta = item.getItemMeta();
  37.         meta.setDisplayName(name);
  38.         ArrayList<String> Lore = new ArrayList<String>();
  39.         Lore.add(lore);
  40.         meta.setLore(Lore);
  41.         item.setItemMeta(meta);
  42.         inv.setItem(Slot, item);
  43.          
  44.     }
  45.     public static void createDisplaySKULL(Inventory inv, int Slot, String name, String lore)
  46.     {
  47.         ItemStack skull = new ItemStack(Material.SKULL_ITEM);
  48.         skull.setDurability((short)3);
  49.         SkullMeta sm = (SkullMeta) skull.getItemMeta();
  50.         sm.setOwner(name);
  51.         sm.setDisplayName(name);
  52.         ArrayList<String> Lore = new ArrayList<String>();
  53.         Lore.add(lore);
  54.         sm.setLore(Lore);
  55.         skull.setItemMeta(sm);
  56.         inv.setItem(Slot, skull);
  57.     }
  58.    
  59.     @EventHandler
  60.     public void onIntentoryClickItem(InventoryClickEvent event) throws InterruptedException
  61.     {
  62.         if(event.getInventory() == chest)
  63.         {
  64.             event.setCancelled(true);
  65.             Player player = (Player) event.getWhoClicked();
  66.             page++;
  67.             chest.clear(0);
  68.             chest.clear(1);
  69.             chest.clear(2);
  70.             chest.clear(3);
  71.             chest.clear(4);
  72.             chest.clear(5);
  73.             chest.clear(6);
  74.             chest.clear(7);
  75.             chest.clear(8);
  76.             player.closeInventory();
  77.             OpenChest(player,page);
  78.         }
  79.     }
  80.  
  81.     public static void OpenChest(Player player,Integer page)
  82.     {
  83.         if(page == 0)
  84.         {
  85.             int i = 0;
  86.             for(Player online : Bukkit.getOnlinePlayers())
  87.             {
  88.                 if(i < 9)
  89.                 {
  90.                     createDisplaySKULL(chest,i,online.getDisplayName(),"Statystyki");
  91.                 }
  92.                 i++;
  93.             }
  94.         }
  95.         if(page > 0)
  96.         {
  97.             int index = 0;
  98.             int place = 0;
  99.             for(Player online : Bukkit.getOnlinePlayers())
  100.             {
  101.                 if(index > (8*page)+(page-1))
  102.                 {
  103.                     if(index < (8*page)+(page-1)+9)
  104.                     {
  105.                         createDisplaySKULL(chest,place,online.getDisplayName(),"Statystyki");
  106.                         place++;
  107.                     }
  108.                 }
  109.                 index++;
  110.                
  111.             }
  112.            
  113.         }
  114.         player.openInventory(chest);
  115.        
  116.     }
  117.    
  118.     @Override
  119.     public boolean onCommand(CommandSender sender, Command cmd, String arg, String[] args)
  120.     {
  121.         if(cmd.getName().equalsIgnoreCase("attchest"))
  122.         {
  123.             page = 0;
  124.             Player player = (Player) sender;
  125.             OpenChest(player,page);
  126.         }
  127.         return true;
  128.     }
  129.    
  130. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement