Crafting Rezept erstellen

  • Wenn wir ein Crafting Rezept in Bukkit hinzufügen wollen, gibt es 2 verschiedene Arten im Bereich der Werkbänke.


    ShapedRecipe
    Bei dieser Art gibt es eine Feste Struktur, wie man dieses item nur craften kann.
    Als Beispiel: Verzauberungstisch.


    Java
    1. public void onEnable(){ ItemStack item = new ItemStack(Material.BEDROCK); ItemMeta meta = item.getItemMeta(); meta.setDisplayName("§aBedRock"); item.setItemMeta(meta); ShapedRecipe rezept = new ShapedRecipe (item); rezept.shape("OHO", "OHO", "OHO"); rezept.setIngredient('H', Material.GLASS); Bukkit.addRecipe(rezept);}


    In Zeile 4 bis 7 erstellen wir ein ItemStack. Dieser wird später als Endprodukt beim Rezept enstehen.
    In Zeile 8 erstellen wir ein neues Rezept und setzen den davor erstellten ItemStack als Endprodukt.
    In Zeile 9 setzten wir dann die Struktur. Das O steht hierbei für null. Dies bedeutet, dass dort kein Item sich befinden soll.
    In Zeile 10 setzen sagen wir dem Rezept bzw den Plugin, was H bedeutet, also im unseren Falle steht das H für Glas.
    Am ende fügen wir nun noch das Rezept hinzu in Zeile 11.


    ShapelessRecip
    Bei dieser Art gibt es keine Feste Struktur.
    Als Beispiel: Holz. Bei dem Rezept von Holz ist es egal wo das Holz in der Werkbank liegt.



    Java
    1. public void onEnable()
    2. {
    3. ItemStack item = new ItemStack(Material.BEDROCK);
    4. ShapelessRecipe rezept2 = new ShapelessRecipe(item);
    5. rezept2.addIngredient(9, Material.OBSIDIAN);
    6. Bukkit.addRecipe(rezept2);
    7. }


    In Zeile 3 erstellen wir wieder ein ItemStack, das später das Endprodukt sein wird.
    In Zeile 4 erstellen wir wieder ein neues Rezept und setzen das Endprodukt.
    Die Zeile 5 bedeutet, dass wir neun mal Obsidian brauchen, um das Endprodukt zu bekommen.
    Am Ende fügen wie noch das Rezept hinzu in Zeile 6.

    Liebe Grüße, Pixel

    -> Ich bin euch immer ein Pixel vorraus! smile.png
    -> Ohne mich würdet ihr Minecraft nicht spielen können tongue.png


    Der Pixelige-YouTube-Kanal: BestPixelHD
    - YouTube
    Der Pixelige-Twitch-Kanal: Twitch

  • Ich habe es so gemacht:

    Java
    1. ItemStack Rucksack = new ItemStack(Material.STORAGE_MINECART);
    2. ItemMeta meta= Rucksack.getItemMeta();
    3. meta.setDisplayName("§2Rucksack");
    4. Rucksack.setItemMeta(meta);
    5. ShapedRecipe Rucksackr = new ShapedRecipe(Rucksack);
    6. Rucksackr.shape(new String[] {"LLL", "L L", "LLL"});
    7. Rucksackr.setIngredient('L', Material.LEATHER);
    8. this.getServer().addRecipe(Rucksackr);

    So klappts ;)

  • Das obere kann nicht stimmen, da du ein neues ShapelessRecipe erstellst und dadurch kein shape setzen kannst. Also bei mir funktioniert es jedentfalls nicht.

    Hab nochmal geschaut, funktioniert wunderbar :P

    Liebe Grüße, Pixel

    -> Ich bin euch immer ein Pixel vorraus! smile.png
    -> Ohne mich würdet ihr Minecraft nicht spielen können tongue.png


    Der Pixelige-YouTube-Kanal: BestPixelHD
    - YouTube
    Der Pixelige-Twitch-Kanal: Twitch