You are not logged in.

  • Login
Bitte besucht unser neues Forum unter https://forum.nitrado.net | Please visit our new Forum at https://forum.nitrado.net

_Grim_

User / Kunde

  • "_Grim_" started this thread

Posts: 704

Thanks: 11

  • Send private message

1

Tuesday, October 8th 2013, 7:17pm

Bukkit-Plugin - Crafting Rezepte erstellen einfach erstellen | Basis

Inhaltsverzeichnis:
- Einleitung
- ShapedRecipe
- ShapelessRecipe
- FurnaceRecipe
- Übungen



Einleitung:

Hallo und danke das sie dieses Thread geöffnet haben. Da die meisten gefragt haben ( z.B. Wie macht man Rezepte, wie erstelle ich neue Craftingrezepte, Wie mache ich neue Items, Wie mache ich dies, Wie mache ich das... etc. ) darum habe ich mir vorgenommen ein Tutorial zu erstellen im für das Nitrado Forum speziell für Programmieranfänger. Bei Fehlern im Thread möchte ich euch darauf hinzuweisen mich darauf aufmerksam zu machen, damit diese Fehlerhafte Option zu editieren, nun ja gleich erkläre ich was das ( ShapedRecipe, ShapelessRecipe & das FurnaceRecipe ) funktioniert das ihr "eigene Craftingrezepte" erstellen könnt. WICHTIG: Alle Rezepte werden im onEnable() teil eingetragen, im diesen Thread empfehle ich wer es will und lernen will sollte es genau lesen und mal ausprobieren und weitere versuche mit sich versuchen. Wenn ihr Fragen habt zu dem Thread oder zu den Rezepten meldet euch bitte via Privat Nachricht, danke.



ShapedRecipe:

Zuerst erstellen wir am besten ein "eigenes Item" wir müssen dafür schon
enthaltene Items von Mojang z.B. wir nehme ein Grundgestein mit der
ItemMeta "
Stoeckchen"
ich stelle hier erstmal den code rein und erkläre es schritt für schritt:

ItemStack

Java source code

1
2
3
4
ItemStack item1 = new ItemStack(Material.STICK);
		ItemMeta meta1 = item1.getItemMeta();
		meta1.setDisplayName("Stoeckchen");
		item1.setItemMeta(meta1);
oke was steht also "ItemStack item1 = new ItemStack(Material.STICK);" soll bedeuten das wir ein neues Item erstellen mit dem namen "item1"
das Item ist "Stick(Stock)" so weiter was bedeutet: "ItemMeta meta1 = item1.getItemMeta();" also das heißt das wir eine neue ItemMeta im "item1" erstellen wollen und
somit den Namen des Items ändern können,"meta1.setDisplayName("
Stoeckchen");" heißt das wir die "meta1" einen DisplayNamen setzen also die Überschrift/Name des Items
setzen und somit hier "item1.setItemMeta(meta1);" das "item1" die "meta1" setzen. Nun sind wir fertig und könnten es eigentlich den Spieler ( z.B. im PlayerJoinEvent ins Inventar legen ) aber
wir wollten es ja mit dem ShapelessRecipe versuchen. Mit diesem Rezept kann einstellen wie welche Material benutz werden sollen. Mit diesem Rezept kann man die Material anordnen wie man will das wird dargstellt von Symbolen oder Buchstaben was auch immer... naa gut fangen wir mal an und noch wichtiges alle Rezepte, ItemStack müssen
im onEnable() Abteil "gepostet" werden. Nun erstellen wir unser erstes Rezept mit:

Rezept

Java source code

1
ShapedRecipe rezept1 = new ShapedRecipe(item1);
wie es da steht erstellen wir eine neues Rezept mit dem Item "item1"
den wir oben im Teil bestimmt haben und es in "rezept1" speichern und es nachher aufrufen können (Im 2ten Teil wird es genauer beschrieben aber fangen wir erstmal so an). So desto trotz gehts weiter mit das wie unsere Material anordnen.

Materialen und das hinzufügen in Bukkit

Java source code

1
2
3
rezept1.shape("OHO", "OHO", "OHO");
rezept1.addIngredient("H", Material.WOOD);
Bukkit.addRecipe(rezept1);
Also was da steht soll bewirken das wir bei Shape der erste String also das in "" ist die erste Reihe von der Werkbank und wird mit jewals die
jewahligen Symbolen die wir da mit OHO bestimmt haben ich habe es so gemacht O = null; H = Holz; O = null; und das immer so weiter das eine Reihe von Holz
daraus wir das "rezept1" erstellen, aber wie gesagt die "Symbole" sag ich mal sind freiwählbar und können dann im "addIngredient" - Teil bestimmt werden und
können jewahls mit maximal 9 verschiedene Materialien bestimmt werden so groß wie die Craftingbox, und danach fügen wir es mit "Bukkit.addRecipe(rezept1);"
ein um es zu installieren oder wie auch immer. Und wer es nochmal korregieren will oder so abkucken oder wie auch immer kann es hier machen und bevor
ihr es macht fügt es in der onEnable() Methode rein;

ShapedRecipe

Java source code

1
2
3
4
5
6
7
8
9
10
11
12
13
public void onEnable()

{
		ItemStack item1 = new ItemStack(Material.BEDROCK);
		ItemMeta meta1 = item1.getItemMeta();
		meta1.setDisplayName("Stoeckchen");
		item1.setItemMeta(meta1);
		
		ShapelessRecipe rezept1 = new ShapelessRecipe(item1);
            	rezept.shape("OHO", "OHO", "OHO");
		rezept1.addIngredient("H", Material.WOOD);
		Bukkit.addRecipe(rezept1);
	}


ShapelessRecipe:

Nun erstellen wir eine ItemStack mit dem einer beliebigen ItemMeta und beliebigen schon enthalteten Material und kommen nun zum neuen Rezept das ShapelessRecipe aber diesmal nennen wir das ItemStack/ItemMeta anders in "item2" && "meta2" Mit diesem Rezept kann einstellen wie welche Material benutz werden sollen. Sooooo gut jetzt erstellen wir im onEnable() Teil mal unseren ersten Rezept mit:

Rezept erstellen

Java source code

1
ShapelessRecipe rezept1 = new ShapelessRecipe(item1);
Hier sehen wir das wir das ShaplessRecipe benutzen und wir speichern es in "rezept2" im weiteren steht da noch... "item2" also das heißt das wir diesen Item craften wollen das wir oben programmiert haben. "new ShapelessRecipe" steht dafür da wie man schon denken könnte "Neues Shapeless Rezept". So jetzt setzen wir uns die Materialien mit dem wir unser "item2" craften wollen.

Materialien hinzufügen

Java source code

1
rezept1.addIngredient(9, Material.OBSIDIAN);
Das heißt das wir mit dem "rezept2" eine Ingredient erstellen also wir nehmen 9 Felder von
der Craftingbox und setzen darein die "Material.OBSIDIAN" also nochmal von vorne also das heißt das wir z.B. 4 stehen sollte das wir 4x "Material.OBSIDIAN" irgentwo im der Craftingbox plazieren
können um das Item "item2" zu craften im dem falle der Grundgestein. Und nun wollen wir zu Bukkit sagen das wir unser Rezept "rezept2" bei Bukkit speichern hmmm man könnte auch sagen
wir installieren das Rezept oder so naja so könnte man es machen:

Rezept hinzufügen

Java source code

1
Bukkit.addRecipe(rezept1);
also mit Bukkit tun wir ein Recipe adden ("addRecipe") und danach in Klammern das Rezept was wir oben erstellt haben "rezept2" und nun sollten wir eigentlich mit dem ShapelessRecipe Rezept fertig sein, im folgenen Abschnitt sehen Sie wie man das FurnaceRecipe Rezept erstellt.
Komplette code denn wir zusammen erstellt haben + wie packen was wir erstellt haben in die onEnable() Methode:

ShapelessRecipe

Java source code

1
2
3
4
5
6
7
8
9
10
11
public void onEnable()
	{
		ItemStack item2 = new ItemStack(Material.BEDROCK);
		ItemMeta meta2 = item1.getItemMeta();
		meta2.setDisplayName("Lala Block");
		item2.setItemMeta(meta2);
		
		ShapelessRecipe rezept2 = new ShapelessRecipe(item2);
		rezept2.addIngredient(9, Material.OBSIDIAN);
		Bukkit.addRecipe(rezept2);
	}




FurnaceRecipe:

Mit diesem Rezept kann man Sachen im Ofen brennen und einstellen was daraus rauskommt, wie man es ja kennt. So nun erstellen wir wie gewohnt eine ItemStack && ItemMeta diesmal nehmen
wir ein Sandstone als Item && die ItemMeta soll so heißen "SandAndGlasses" und bevor wir beginnen speichern wie die ItemStack in "ofenItem1" und die ItemMeta "ofenMeta1" .... somit solltet ihr damit fertig sein und erstellen unser erstes FurnaceRecipe Rezept;

Rezept erstellen

Java source code

1
FurnaceRecipe ofenRezept1 = new FurnaceRecipe(ofenItem1, Material.SAND);

also im guten und ganzen ist dieser Vorteil vor uns klar das wir ein neues FurnaceRecipe Rezept erstellen mit dem "ofenItem1" und was danach kommt heißt wenn was für ein Item wir erbrennen sollten um das "ofenItem1" zu craften im Ofen...... und zuuuu guter letzt installieren wie ich es immer nenne das Rezept in Bukkit

Rezept hinzufügen

Java source code

1
Bukkit.addRecipe(ofenItem1);
unnnnd nun wenn ihr alles richtig habt und keinen Fehler habt könntet ihr eigentlich das Item craften und es in den Ofen schmelzen und dann sollte das alles klappen;

FurnaceRecipe

Java source code

1
2
3
4
5
6
7
8
9
10
public void onEnable()
{
		ItemStack ofenItem1 = new ItemStack(Material.SANDSTONE);
		ItemMeta ofenMeta1= item1.getItemMeta();
		ofenMeta1.setDisplayName("SandAndGlasses");
		ofenItem1.setItemMeta(ofenMeta1);
		
		FurnaceRecipe ofenRezept1 = new ShapelessRecipe(ofenItem1, Material.SAND);
		Bukkit.addRecipe(ofenRezept1);
	}




Übungen:
. Erstellt ein ItemStack && ItemMeta mit beliebiger Auswahl und versucht aus z.B. Kakoubohnen ein Erde block zu craften...

TIPP

Source code

1
Man kann es mit dem ShapelessRecipe Rezept versuchen

- Erstellt ein ItemStack && ItemMeta mit beliebiger Auswahl und versucht mehre Sachen aus dem ShapedRecipe Rezept zu
erstellen damit man sehr viel lernen kann.



Mit freundlichen Grüßen,
Grim

#Info - Das Paragraph Zeichen (§) gilt als Abkürzung für "ChatColor" und spart platz für einige, also ich benutze es gerne.
#Anmerkung - Wenn Sie dieses Thread ganz angeschaut haben bedank ich mich gerne von ganzen Herzen & hoffe das ihr viel Erfolg habt dabei
Made by Paint

This post has been edited 3 times, last edit by "GrimCims" (Aug 15th 2014, 6:35pm)


Stuppsman

User / Kunde

Posts: 2,766

Thanks: 25

  • Send private message

2

Tuesday, October 8th 2013, 11:17pm

Erstmal, Respekt, vor der Arbeit, die du hier reingesteckt hast. Das hat bestimmt ziemlich lange gedauert.

Leider hab ich einiges zu bemängeln.. Die Zeichensetzung und der Satzbau macht es einigen Stellen schwierig, dir zu folgen. (Ich muss aber ehrlich sein, ich hab nicht durchgehalten.. ganz hab ichs nicht gelesen..) Du kündigst an, ein Grundgestein des Grauens zu machen, dabei wird lediglich ein Stöckchen gezimmert..

Generell würd ich an deiner Stelle Absätze "sinnvoller" einsetzen. (Ich sprech nicht von "Überschrift-Teilen", sondern von "1-2x Enter"), hier und da fehlt ein Wort, der Satz geht anders weiter, als er angefangen hat.. ein paar mal haste auch bei der Grammatik ins Klo gegriffen, da müsstest du nochmal nachbessern und beim shapedRecipe fehlt ne 1 hinterm rezept..

Lies es dir am besten einfach selbst nochmal durch ^^
Nein, ich hab kein Skype.. bei Interesse an einer privaten Unterrichtsstunde, wende dich bitte direkt an mein Team! 8)

_Grim_

User / Kunde

  • "_Grim_" started this thread

Posts: 704

Thanks: 11

  • Send private message

3

Wednesday, October 9th 2013, 7:10pm

Danke Stuppsman,
für deine Kritik da ich für dieses Tutorial 2 Tage gebraucht habe da ich momentan viel üben für die Schule mussund kaum noch hinter her komme mit meinen Privaten Dingen hatte es kleine Fehler
die sich schon ausgebreitet haben und manche unverständlich ist aber teilweise könnte man es kapieren und das mit dem "Stöckchen" naja das war noch von ShapelessRecipe da ich das kopiert habe
und musste alles ändern und habe teilweise kleine Fehler vergessen die mir leider leid tun. Aber es ist schon schwierig ein schriftliches Tutorial zu machen für jüngere wie dich & mich obwohl du es
schon viel besser als ich kannst du schon gebildeter bist und ich Grammatik nicht so mein ding ist; mein Satzbau -.- darüber will ich nicht reden. Wenn ich demnächst ein neues Tutorial machen
versuche ich mich an deine Worte zu halten und mehr "sinnvollere" Sätze schreiben. Mit dem Absätzen und der Formatierung will ich mich auch hier auch nochmal entschuldigen weil man sehr schnell
den überblick verliert wenn man knapp geschätzte 740 Wörter vor sich sieht und noch versucht ein fast "perfektes" Tutorial dar zu stellen, danke für deine Kritik.

Mit freundlichen Grüßen,
Grim
Made by Paint

Stuppsman

User / Kunde

Posts: 2,766

Thanks: 25

  • Send private message

4

Wednesday, October 9th 2013, 7:37pm

mehr "sinnvollere" Sätze schreiben


Ich sprach von Absätzen, nicht von Sätzen ;) Außerdem bin ich 29.. einer der Opas hier im Forum, denk ich :D
Dass man leicht die Übersicht verliert, kenn ich gut.. aber dann musste halt nochmal ordentlich drübergucken und direkt ausbessern, am besten, bevor du ein neues Tutorial anfängst..
Nein, ich hab kein Skype.. bei Interesse an einer privaten Unterrichtsstunde, wende dich bitte direkt an mein Team! 8)

Popelvis

User / Kunde

Posts: 58

  • Send private message

5

Sunday, June 25th 2017, 12:15pm

Auch wenn sich in dem Text einige Fehler finden, muss ich sagen: Respekt! Danke für deine Mühe!

Bitte besucht unser neues Forum unter https://forum.nitrado.net| Please visit our new Forum at https://forum.nitrado.net