Spigot 1.14 Minecraft Welt file löschen

Fabien.

Mitglied
Hallo,
ich programmiere gerade ein Plugin für einen Minecraft Server. In diesem Plugin will ich u.a. eine neue Welt erstellen. Diese Welt soll sich "Challenge" nennen. Allerdings ist vorgesehen, dass es diese Welt schon gibt. Daher möchte ich die vorhandene Welt löschen, um die neue zu erstellen. So zusagen ein Welt reset (+neuer Seed). Aber wie lösche ich die vorhandene Welt und dessen Ordner vom Server? Denn
Java:
Bukkit.unloadWorld("Challenges");
reicht nicht, da die Welt dann nicht vollständig gelöscht wird. Im Anhang sieht man den Code, den ich benutze, um die Welt zu erstellen.

Java:
WorldCreator Welt = WorldCreator.name("Challenge");
                Bukkit.createWorld(Welt);
                Bukkit.getWorlds().add(Bukkit.getWorld("Challenge"));
 
Hallo,
ja diesen Code habe ich auch schon gefunden. Ich habe ihn noch einmal neu eingefügt aber leider bewirkt er bei mir rein gar nichts. Ich weiß nicht woran es liegt und mir wird auch nirgendwo ein Fehler ausgegeben, aber der Ordner wird nicht gelöscht.
 
Hey,
ich habe es mir angesehen, aber leider kann es mir nicht helfen bzw ich finde mich nicht zurecht. Multiverse-Core nutzt enorm viele API's und ist sehr verzwickt, was dafür sorgt, dass ich mich dort nicht zurecht finde. Denn ich möchte ja nur einen Teil des Codes, der dort aufgelistet ist, aber für diesen muss ich in viel zu viele anderen classen und da finde ich mich nicht zurecht...
Ich danke trotzdem vielmals für das raussuchen 😀
 
Da stehen m. E. im Wesentlichen zwei Schritte:

1. unloadWorld
2. deleteWorld

Wobei deleteWorld das Verzeichnis löscht. Im Prinzip also das gleiche wie im ersten Link.
 
Heyy..
habe jetzt nochmal mit einem Bekannten darüber geredet und jetzt eine Methode herausgefunden, wie es ganz einfach geht.. ich danke dir aber vielmals für deine Hilfe (würde bestimmt auch gehen aber dafür bin ich zu schlecht im Programmieren). Falls dich interessiert, wie es geht, hier der Code:
Javascript:
File challenge = new File("challenge");
                if (challenge.exists()) {
                    
                    Bukkit.unloadWorld("Challenge", true);

                    File data = new File("challenge\\data");
                    if (data.exists()) {
                    for (File files1 : data.listFiles()) {
                        files1.delete();
                    }
                    data.delete();
                    }
                    
                    File playerdata = new File("Challenge\\playerdata");
                    if (playerdata.exists()) {
                    for (File files2 : playerdata.listFiles()) {
                        files2.delete();
                    }
                    playerdata.delete();
                    }
                    
                    File poi = new File("Challenge\\poi");
                    if (poi.exists()) {
                    for (File files3 : poi.listFiles()) {
                        files3.delete();
                    }
                    poi.delete();
                    }
                    
                    File region = new File("challenge\\region");
                    if (region.exists()) {
                    for (File files4 : region.listFiles()) {
                        files4.delete();
                    }
                    region.delete();
                    }
                    
                    for (File files5 : challenge.listFiles()) {
                        files5.delete();
                    }
                    challenge.delete();
                }

Ich danke dir vielmals und wünsche dir noch einen schönen Tag 😀
 

Zurück
Oben