Помогите как использовать рецепт крафта, в рецепте крафта.

Дан4ик_ёпт

Активный участник
Пользователь
Баллы
61
Имя в Minecraft
hugo1pro
Как мне вызвать предмет который я придумал... ааааа вообщем вот код:
JavaScript:
ItemStack item = new ItemStack(Material.EYE_OF_ENDER);
        ItemMeta meta = item.getItemMeta();
        meta.setDisplayName(ChatColor.BLUE + "Палка-телепорталка");
        List<String> lore = new ArrayList<String>();
        lore.add("Я молюсь что получиться...");
        meta.setLore(lore);
        item.setItemMeta(meta);
       
        ShapedRecipe s = new ShapedRecipe(item);
        s.shape(new String[] {"ABA", " C ", " C "});
        s.setIngredient('A', Material.EYE_OF_ENDER);
        s.setIngredient('B', Material.ENDER_PEARL);
        s.setIngredient('C', Material.STICK);
        Bukkit.getServer().addRecipe(s);
как этот предмет который получиться использовать при крафте другого.
 
Как мне вызвать предмет который я придумал... ааааа вообщем вот код:
JavaScript:
ItemStack item = new ItemStack(Material.EYE_OF_ENDER);
        ItemMeta meta = item.getItemMeta();
        meta.setDisplayName(ChatColor.BLUE + "Палка-телепорталка");
        List<String> lore = new ArrayList<String>();
        lore.add("Я молюсь что получиться...");
        meta.setLore(lore);
        item.setItemMeta(meta);
      
        ShapedRecipe s = new ShapedRecipe(item);
        s.shape(new String[] {"ABA", " C ", " C "});
        s.setIngredient('A', Material.EYE_OF_ENDER);
        s.setIngredient('B', Material.ENDER_PEARL);
        s.setIngredient('C', Material.STICK);
        Bukkit.getServer().addRecipe(s);
как этот предмет который получиться использовать при крафте другого.
Проверять итемстак по displayname и лору.
 
Ну ты придумал предмет,у предмета есть свое название или lore.Вот при крафте 2 предмета,проверяй 1 предмет например Material.EYE_OF_ENDER на имя или лоре == первому предмету.
 
JavaScript:
        if(!item.getItemMeta().hasDisplayName()) return;
        if(!item.getItemMeta().hasLore()) return;
        if(!item.getItemMeta().getDisplayName().equals(ChatColor.BLUE + "Палка-телепорталка")) return;
        if(!item.getItemMeta().getLore().equals("Я молюсь что получиться...")) return;

так?
 
Java:
     MaterialData its = new MaterialData(Material.ENDER_PEARL);
     its.toItemStack().setItemMeta(meta);
      s.setIngredient('A', its);
знаючи меня работать не будет =):nerd: просто в голову пришло,не проверять на мету и т.д,а уже чтоб имена этот предмет был в крафте.
 
Проверять итемстак по displayname и лору.
можешь пример кода написать, я понять не могу.


JavaScript:
ShapedRecipe s = new ShapedRecipe(item);
        s.shape(new String[] {"   ", " A ", "   "});
        MaterialData its = new MaterialData(Material.EYE_OF_ENDER);
        its.toItemStack().setItemMeta(meta);
        if(!its.toItemStack().getItemMeta().hasLore());
        if(!its.toItemStack().getItemMeta().hasDisplayName());
        if(!its.toItemStack().getItemMeta().getLore().get(0).equals(ChatColor.BLUE + "Палка-телепорталка"));
        if(!its.toItemStack().getItemMeta().getDisplayName().equals("Я молюсь что получиться..."));
        s.setIngredient('A', its);
        Bukkit.getServer().addRecipe(s);


вот что тут не так?
 
Назад
Верх