Minecraft Bukkit Plugin Programmieren Welt aus Datei erstellen
Hallo Allerseits,
ich bin gerade dabei ein Plugin zu entwickeln, dabei erstelle ich eine Welt. In dieser Welt sollte, das sein, was ich zuvor in einer anderen Welt gebaut habe. Also um es anders zu formulieren: Ich habe eine Welt in einer Datei, dann möchte ich gerne diese Welt kopieren und als neue Welt starten.
Hoffe um schnelle Antwort, sonst muss ich das sehr umständlich machen, indem ich jeden Block einzeln setzen lasse. Hoffe das geht einfacher.
Viele Grüße Firei
PS: Wer mir hilft wird in den Credits des Plugins erwähnt ;D
4 Antworten
Kannst du nicht die einzelnen chunks kopieren ? :) von worldedit gibt es ja auch noch die //copy funktion. Vllt kannst du das irgendwie einbauen ? :)
Nein leider weiß ich das nicht :/ es War nur so eine Idee aber kann auch sein das es gar nicht geht. Ich programmiere zwar, aber nicht in java und auch nicht für minecraft tut mir leid :(
Wäre es nicht 10 mal einfacher, wenn du den Welten Ordner einfach kopierst und ihn umbenennst? Such dir mal Informationen mit der File Methode von Java.
-
Mach eine neue Methode
public void copy(File welt, File neuewelt) { try { Files.copy(welt.toPath(), neuewelt.toPath()); } catch (IOException) { } }
-
Gib das in deinen code:
File welt = new File("world"); File neuewelt = new File("neuewelt"); if (!neuewelt.exists()) { neuewelt.createFile(); copy(welt, neuewelt); }
Anders wird es wohl kaum gehen, als jeden Block einzeln nach Typ abzufragen.
Du könntest die Ausgabedatei bzw. die Zeit des wieder Einlesens verringern, in dem du z.B. versuchst, möglichst große Quader aus gleichartigen Blöcken zu suchen. Das lohnt sich dann aber erst ab einer bestimmten Größe.
Ja das ist eine Möglichkeit. Jetzt ist nur die Frage wie ich das mit //copy einbaue ;D
Wenn du da was wüsstest würde ich mich über eine Antwort freuen