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 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 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
Udostępnij na innych stronach
1 odpowiedź na to pytanie
Rekomendowane odpowiedzi