Ever 20 Opublikowano 24 stycznia 2018 Udostępnij Opublikowano 24 stycznia 2018 Witam, mam tu plugin na drop. Gui sie otwiera, jest item. Ale sie nie canceluje i nie pisze mi wiadomosci package me.hotangel2k17.pl.commands; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; 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.ItemStack; import org.bukkit.inventory.meta.ItemMeta; public class DropCommand implements CommandExecutor, Listener{ Inventory inv; @Override public boolean onCommand(CommandSender s, Command cmd, String l, String[] args) { Player p = (Player) s; if(cmd.getName().equalsIgnoreCase("drop")){ Inventory inv = Bukkit.getServer().createInventory(null,9,"§6§lDrop serwerowy"); inv.setItem(0, stone); p.openInventory(inv); } return false; } ItemStack stone = new ItemStack(Material.CHEST, 1);{ ItemMeta stoneim = stone.getItemMeta(); stoneim.setDisplayName("§7§lStoneCase"); stone.setItemMeta(stoneim); } @SuppressWarnings("deprecation") @EventHandler public void onClick(InventoryClickEvent e){ Inventory i = e.getInventory(); if(i == null){ return; } if(i !=null){ if(!i.getName().equals(inv.getTitle())){ return; } if (e.getCurrentItem() == null){ return; } else{ if(e.getCurrentItem().getItemMeta() == null){ return; } } } if(e.getWhoClicked() instanceof Player){ Player p = (Player) e.getWhoClicked(); if(e.getCurrentItem().getItemMeta() !=null){ if(e.getCurrentItem().getItemMeta().getDisplayName().equals(stone.getItemMeta().getDisplayName())){ p.sendMessage("siema"); e.setCancelled(true); p.openInventory(e.getInventory()); } else{ e.setCancelled(true); p.openInventory(e.getInventory()); } } } } } Odnośnik do komentarza https://skript.pl/temat/24805-blokowanie-gui/ Udostępnij na innych stronach Więcej opcji udostępniania...
0 yooniks 347 Opublikowano 24 stycznia 2018 Udostępnij Opublikowano 24 stycznia 2018 package me.hotangel2k17.pl.commands; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; 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.ItemStack; import org.bukkit.inventory.meta.ItemMeta; public class DropCommand implements CommandExecutor, Listener{ @Override public boolean onCommand(CommandSender s, Command cmd, String l, String[] args) { Player p = (Player) s; if(cmd.getName().equalsIgnoreCase("drop")){ final Inventory inv = Bukkit.getServer().createInventory(null,9,"drop"); inv.setItem(0, stone); p.openInventory(inv); return true; } return false; } @EventHandler public void onClick(InventoryClickEvent e){ if (e.getInventory().getTitle().equalsIgnoreCase("drop")){ if (e.getClickedItem() == null || e.getClickedItem().getItemMeta() == null) return; final Player p = (Player)e.getWhoClicked(); p.sendMessage("it's working!"); } } private ItemStack stone(){ ItemStack stone = new ItemStack(Material.CHEST, 1);{ ItemMeta stoneim = stone.getItemMeta(); stoneim.setDisplayName("§7§lStoneCase"); stone.setItemMeta(stoneim); return stone; } } + rejestracja eventu w onEnable. Pisane od razu w 'code' na forum wiec moze byc jakis maly blad z nawiasami lub klamrami. Odnośnik do komentarza https://skript.pl/temat/24805-blokowanie-gui/#findComment-165570 Udostępnij na innych stronach Więcej opcji udostępniania...
Pytanie
Ever 20
Witam, mam tu plugin na drop. Gui sie otwiera, jest item. Ale sie nie canceluje i nie pisze mi wiadomosci
package me.hotangel2k17.pl.commands; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; 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.ItemStack; import org.bukkit.inventory.meta.ItemMeta; public class DropCommand implements CommandExecutor, Listener{ Inventory inv; @Override public boolean onCommand(CommandSender s, Command cmd, String l, String[] args) { Player p = (Player) s; if(cmd.getName().equalsIgnoreCase("drop")){ Inventory inv = Bukkit.getServer().createInventory(null,9,"§6§lDrop serwerowy"); inv.setItem(0, stone); p.openInventory(inv); } return false; } ItemStack stone = new ItemStack(Material.CHEST, 1);{ ItemMeta stoneim = stone.getItemMeta(); stoneim.setDisplayName("§7§lStoneCase"); stone.setItemMeta(stoneim); } @SuppressWarnings("deprecation") @EventHandler public void onClick(InventoryClickEvent e){ Inventory i = e.getInventory(); if(i == null){ return; } if(i !=null){ if(!i.getName().equals(inv.getTitle())){ return; } if (e.getCurrentItem() == null){ return; } else{ if(e.getCurrentItem().getItemMeta() == null){ return; } } } if(e.getWhoClicked() instanceof Player){ Player p = (Player) e.getWhoClicked(); if(e.getCurrentItem().getItemMeta() !=null){ if(e.getCurrentItem().getItemMeta().getDisplayName().equals(stone.getItemMeta().getDisplayName())){ p.sendMessage("siema"); e.setCancelled(true); p.openInventory(e.getInventory()); } else{ e.setCancelled(true); p.openInventory(e.getInventory()); } } } } }Odnośnik do komentarza
https://skript.pl/temat/24805-blokowanie-gui/Udostępnij na innych stronach
1 odpowiedź na to pytanie
Rekomendowane odpowiedzi