Solved banning in gui

Discussion in 'Plugin Development' started by Uhlala, Jul 20, 2017.

Thread Status:
Not open for further replies.
  1. Offline

    Uhlala

    Hello there, I am trying to make a plugin that allows you to ban people by the GUI. The problem is: I can kick people but I cant ban them. By the way, t.setBanned(true) is deprecated
    Code:
    public void openOnlineGUI(Player player){
            Inventory inv5 = Bukkit.createInventory(null, 27, "Online Players");
            //Skull
            int slot = 0;
            for(Player t : Bukkit.getServer().getOnlinePlayers()){
            ItemStack skull = new ItemStack(Material.SKULL_ITEM, 1, (short) SkullType.PLAYER.ordinal());
            ItemMeta meta = skull.getItemMeta();
            meta.setDisplayName(t.getName());
             skull.setItemMeta(meta);
             inv5.setItem(slot, skull);
             slot=+1;
            
            }
            player.openInventory(inv5);
    
          
        }
        @EventHandler
        public void onClickOnline(InventoryClickEvent event){
            if(!(event.getInventory().getName().equalsIgnoreCase("Online Players")))
                    return;
                Player p = (Player) event.getWhoClicked();
                event.setCancelled(true);
                if(event.getCurrentItem()== null || event.getCurrentItem().getType()== Material.AIR ||!event.getCurrentItem().hasItemMeta()){
                    p.closeInventory();
                  
                    return;
                }
            }
        @EventHandler
            public void clickpl(InventoryClickEvent event){
                if(!event.getInventory().getName().equalsIgnoreCase("Online Players"))
            return;
                Player p = (Player) event.getWhoClicked();
                event.setCancelled(true);
                if(event.getCurrentItem()== null || event.getCurrentItem().getType()== Material.AIR ||!event.getCurrentItem().hasItemMeta()){
                    p.closeInventory();
                    return;
    
                      
                  
              
          
        }
        switch(event.getCurrentItem().getType()){
            case SKULL_ITEM:
                ban.add(event.getCurrentItem().getItemMeta().getDisplayName());
                Bukkit.broadcastMessage(event.getCurrentItem().getItemMeta().getDisplayName());
                for(Player t: Bukkit.getServer().getOnlinePlayers()){
            if(ban.contains(t.getName())){
                t.setBanned(true);
            }
                }
                break;
                default:
                    break;
            }
        }
    
     
    Last edited: Jul 20, 2017
  2. Offline

    mehboss

    Kick the player after setting them as banned.
     
  3. Offline

    Uhlala

    you are a genius tysm
     
Thread Status:
Not open for further replies.

Share This Page