Add java.util.random seed as initial parameter

- prepare for short save allowing to fully recreate initial lab
having only seed and x,y,depth paramters
This commit is contained in:
philippe lhardy
2020-10-11 12:44:22 +02:00
parent c26db0e3cb
commit 96c72506fb
6 changed files with 1117 additions and 1473 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -16,7 +16,8 @@ public class Main
public LabyMap generate2(MazeParamEditor params)
{
LabyModel model = new LabyModel(params, new java.util.Random(1024L));
params.setSeed(1024L);
LabyModel model = new LabyModel(params);
model.generateWithEntry(0, 0);
final int width = params.getWidth();

View File

@@ -8,6 +8,7 @@ import java.util.Scanner;
**/
class MazeParamEditor implements MazeParams
{
long seed;
int width;
int height;
int maxdepth;
@@ -27,6 +28,11 @@ class MazeParamEditor implements MazeParams
maxdepth = console.nextInt();
}
public long getSeed()
{
return seed;
}
public int getWidth()
{
return width;
@@ -51,6 +57,11 @@ class MazeParamEditor implements MazeParams
return name;
}
public void setSeed(long seed)
{
this.seed = seed;
}
public File getSaveDir()
{
return labdir;

View File

@@ -7,6 +7,9 @@ import java.io.File;
**/
public interface MazeParams
{
/** currently seed of java.util.random **/
public long getSeed();
public int getWidth();
public int getHeight();

View File

@@ -4,6 +4,7 @@ import java.io.File;
public class MazeParamsFixed implements MazeParams
{
long seed;
int width;
int height;
int maxdepth;
@@ -27,10 +28,16 @@ public class MazeParamsFixed implements MazeParams
maxdepth=MD;
}
public MazeParamsFixed(File saveDir, int W, int H, int MD)
public MazeParamsFixed(File saveDir, int W, int H, int MD, long seed)
{
name = null;
setParams(saveDir,W,H,MD);
this.seed=seed;
}
public long getSeed()
{
return seed;
}
public int getWidth()