Bukkit定制库存Spawn Egg(#2)

时间:2016-11-03 01:13:26

标签: java bukkit

我正在尝试在自定义GUI菜单中添加一个爬虫蛋。 这是我到目前为止完成的事情:

    ItemStack stack = new ItemStack(Material.MONSTER_EGG, 1, EntityType.CREEPER.getTypeId());

    ItemMeta meta = stack.getItemMeta();
    meta.setDisplayName(ChatColor.AQUA + "Creeper");
    stack.setItemMeta(meta);
    inv.setItem(1, stack);
    player.openInventory(inv);
    return true;

我的问题是:如何将creeper egg添加到InventoryClick类?

    Player player = (Player) event.getWhoClicked();
    ItemStack item = event.getCurrentItem();
    if (item.getType() == Material.blah blah) {
        player.performCommand("blah blah");

        event.setCancelled(true);
    }

1 个答案:

答案 0 :(得分:0)

要检索您创建的特定项目,请检查您点击的怪物蛋是否是爬行动物MONSTER_EGG。

检查它是否是一个爬行动物产卵:

如果版本低于1.9:

ItemStack item;
boolean isSpawnEgg = item.getType() == Material.MONSTER_EGG;
    if (isSpawnEgg) {
        SpawnEgg egg = (SpawnEgg) item.getData();
        EntityType type = egg.getSpawnedType();
        if (type.equals(EntityType.CREEPER) ){
        //IsACreeper
        }
    }

如果版本是1.9或以上:

目前在不使用NBT的情况下Bukkit / Spigot API不支持。如果您想使用NBT,THIS CLASS可能会有所帮助。