Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ItemMeta-命令和侦听器_Java_Bukkit - Fatal编程技术网

Java ItemMeta-命令和侦听器

Java ItemMeta-命令和侦听器,java,bukkit,Java,Bukkit,如何在另一个类中使用itemmeta public class Kart implements CommandExecutor { @Override public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { Player p = (Player) sender; if (label.equalsIgnoreCase("ka

如何在另一个类中使用itemmeta

public class Kart implements CommandExecutor {
    @Override
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
        Player p = (Player) sender;

        if (label.equalsIgnoreCase("kart")) {
            if (p.hasPermission("teamenders.komut.kart")) {

                ItemStack kart = new ItemStack(Material.PAPER);
                ItemMeta kartM = kart.getItemMeta();
                ArrayList<String> tt = new ArrayList<String>();
                kartM.setDisplayName(ChatColor.DARK_AQUA + "Yetki Karti");
                tt.add(ChatColor.DARK_GREEN + "Giris Yetkisi");
                kartM.setLore(tt);
                kart.setItemMeta(kartM);
                p.getInventory().addItem(new ItemStack(kart));

            } else {
                p.sendMessage(ChatColor.DARK_RED + "Yetersiz Yetki!!!!!");
            }
        }
        return false;
    }
}

我想在第二类中使用第一类
itemmeta
“p.getItemInHand”在Kart类之外使用数组列表存储它,然后在EventHandler中检索数据。

在第一类中,创建一个全局变量(在任何函数之外)并存储
Kart.getItemMeta()
的值

在第一个类中,创建一个返回此变量的函数

在第二个类中,创建另一个全局变量
Kart Kart
,并创建一个函数
public*nameOfYourClass*(Kart Kart){this.Kart=Kart}
。然后,您应该能够执行
kart.*functionofirststep*


如果我不够清楚,请告诉我。

你能给我的插件举个例子吗?我不太懂。你知道面向对象编程是如何工作的吗?
@EventHandler
public void onPInteract(PlayerInteractEvent e) {
    Player p = e.getPlayer();
    if (e.getAction() == Action.RIGHT_CLICK_AIR) {
        if (p.getItemInHand().getType() == Material.PAPER && p.getItemInHand().hasItemMeta()) {
            p.sendMessage(ChatColor.DARK_AQUA + "Yetkiyi aldin.");
        }
    }
}