Fix WorldEditSelectionSaver finally

This commit is contained in:
2024-08-21 21:15:00 +02:00
parent 49fa6c364f
commit 20acd7abbe
2 changed files with 15 additions and 8 deletions
@@ -56,7 +56,7 @@ public class WorldEditSelectionSaver implements Listener {
Class<? extends RegionSelector> clazz = (Class<? extends RegionSelector>) Class.forName(bufferedReader.readLine());
List<Location> locations = bufferedReader.lines()
.map(s -> s.split(" "))
.map(strings -> new Location(event.getPlayer().getWorld(), Integer.parseInt(strings[0]), Integer.parseInt(strings[1]), Integer.parseInt(strings[2])))
.map(strings -> strings.length != 3 ? null : new Location(event.getPlayer().getWorld(), Integer.parseInt(strings[0]), Integer.parseInt(strings[1]), Integer.parseInt(strings[2])))
.collect(Collectors.toList());
WorldEditUtils.setVertices(event.getPlayer(), clazz, locations);
} catch (IOException | ClassNotFoundException e) {
@@ -74,7 +74,11 @@ public class WorldEditSelectionSaver implements Listener {
BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file)));
bufferedWriter.write(data.getKey().getTypeName());
for (Location location : data.getValue()) {
bufferedWriter.write("\n" + location.getBlockX() + " " + location.getBlockY() + " " + location.getBlockZ());
if (location == null) {
bufferedWriter.write("\n");
} else {
bufferedWriter.write("\n" + location.getBlockX() + " " + location.getBlockY() + " " + location.getBlockZ());
}
}
bufferedWriter.close();
} catch (IOException e) {