Browse Source

Adding method to update the lobby file

RedstoneFuture 2 years ago
parent
commit
457f4dda43

+ 18 - 0
missilewars-plugin/src/main/java/de/butzlabben/missilewars/configuration/Lobby.java

@@ -24,6 +24,7 @@ import de.butzlabben.missilewars.configuration.arena.Arena;
 import de.butzlabben.missilewars.game.Arenas;
 import de.butzlabben.missilewars.game.Arenas;
 import de.butzlabben.missilewars.game.enums.MapChooseProcedure;
 import de.butzlabben.missilewars.game.enums.MapChooseProcedure;
 import de.butzlabben.missilewars.util.geometry.Area;
 import de.butzlabben.missilewars.util.geometry.Area;
+import de.butzlabben.missilewars.util.serialization.Serializer;
 import lombok.Getter;
 import lombok.Getter;
 import lombok.RequiredArgsConstructor;
 import lombok.RequiredArgsConstructor;
 import lombok.Setter;
 import lombok.Setter;
@@ -33,6 +34,7 @@ import org.bukkit.Location;
 import org.bukkit.World;
 import org.bukkit.World;
 
 
 import java.io.File;
 import java.io.File;
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
 import java.util.Optional;
 import java.util.Optional;
@@ -91,4 +93,20 @@ public class Lobby {
                 .map(Optional::get)
                 .map(Optional::get)
                 .collect(Collectors.toList());
                 .collect(Collectors.toList());
     }
     }
+    
+    public void updateConfig() {
+        try {
+            Serializer.serialize(file, this);
+        } catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+    }
+    
+    public Location getAreaMinLocation() {
+        return new Location(getBukkitWorld(), area.getMinX(), area.getMinY(), area.getMinZ());
+    }
+
+    public Location getAreaMaxLocation() {
+        return new Location(getBukkitWorld(), area.getMaxX(), area.getMaxY(), area.getMaxZ());
+    }
 }
 }