Browse Source

world seed can be set in config

Kajetan Johannes Hammerle 4 years ago
parent
commit
13bec07f4b
1 changed files with 15 additions and 2 deletions
  1. 15 2
      src/main/java/me/km/world/ModWorldInfo.java

+ 15 - 2
src/main/java/me/km/world/ModWorldInfo.java

@@ -46,6 +46,7 @@ public class ModWorldInfo extends DerivedWorldInfo {
     private int spawnX;
     private int spawnY;
     private int spawnZ;
+    private long seed = -1;
 
     private Type type;
 
@@ -62,6 +63,10 @@ public class ModWorldInfo extends DerivedWorldInfo {
     }
 
     private void onLoad(WorldInfo info, MinecraftServer server) {
+        String configSeed = config.getString("seed", null);
+        if(configSeed != null) {
+            seed = configSeed.hashCode();
+        }
         spawnX = config.getInt("spawnX", info.getSpawnX());
         spawnY = config.getInt("spawnY", info.getSpawnY());
         spawnZ = config.getInt("spawnZ", info.getSpawnZ());
@@ -294,14 +299,22 @@ public class ModWorldInfo extends DerivedWorldInfo {
     public int getSpawnX() {
         return spawnX;
     }
-    
+
     @Override
     public int getSpawnY() {
         return spawnY;
     }
-    
+
     @Override
     public int getSpawnZ() {
         return spawnZ;
     }
+
+    @Override
+    public long getSeed() {
+        if(seed != -1) {
+            return seed;
+        }
+        return super.getSeed();
+    }
 }