Bukkit Plugin Programmieren Block Setzen an Cordi?

... komplette Frage anzeigen

3 Antworten

Ich bin jetzt an meinem Computer also:

Um das Material eines Blockes zu ändern, brauchst du erst einmal den Block. Den Block bekommst du von der World. Die World bekommst du entweder von Bukkit oder von einer Location.

// Block von der Possition des Spielers p
Location loc = p.getLocation();
World w = loc.getWorld();
Block b = w.getBlockAt(loc.x, loc.y, loc.z)
Material m = Material.DIAMOND_BLOCK
b.setType(m);

// oder kürzer geschrieben
Location loc = p.getLocation();
loc.getWorld().getBlockAt(loc.x, loc.y, loc.z).setType(Material.DIAMOND_BLOCK);

// ohne Entity
Bukkit.getWorld(worldName).getBlockAt(x, y, z).setType(Material.DIAMOND_BLOCK);

Youtube Videos sind meiner Meinung nach nicht das Beste um Programmieren zu lernen. Schau dir lieber die Bukkit API an. Daher werden auch die Entwickler von den Videos ihre Informationen her haben. Da nicht alle Sachen aus der API herhauslesbar sind kannst du dir noch zusätzlich das Tutorial vom Bukkit-Wiki durchlesen: http://wiki.bukkit.org/Plugin_Tutorial/de .  Das sind meiner Meinung nach bessere und aktuellere Quellen als youtube.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Porsche11
06.05.2016, 07:58

Danke, hast mir sehr gehollfen! Danke MFG Manuel

0

Wenn du seit 1,5 Jahren Plugins programmierst müsste es dir eigentlich bekannt sein aber einen Block änderst du normalerweise in dem du dir von Bukkit die Welt holst, dann auf der Welt den Block mit getBlockAt(x,y,z) an forderst und dann auf dem Blockobjekt die setMaterial(material) das material kommt dann von dem Material Enum.

Das müsstest du nach 1,5 Jahren kennen. Ich kann dir, wenn ich heute Abend an meinen Computer komme noch ein Codebeispiel schreiben. Falls du etwas anderes meinst, hab ich dich wohl falsch verstanden.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Porsche11
05.05.2016, 14:58

Du hast schon richtig verstanden aber ich hab bis jz nur Command Plugins geschrieben z.b /Ban /Info usw

0

Such mal die Methode setBlock oder setTargetBlock :)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Porsche11
05.05.2016, 14:59

Werde ich schauen :)

0