我目前正在为我正在开发的一个小游戏制作一个简单的 2D 世界生成器。问题是我从随机得到的值都是一样的。另外,我不希望生成器创建两个方块高的方块,因为那样玩家就无法通过。这是我的代码:
private void generateWorld() {
Random r = new Random(Sys.getTime() / System.currentTimeMillis() * System.nanoTime());
int bh = r. nextInt(1) + 1;
for(int x = 0; x < width; x+=32) {
theWorld.addBlock(new Block(BlockType.Grass, x, bh * 32));
//r = new Random(Sys.getTime() / System.currentTimeMillis() * System.nanoTime());
bh = r.nextInt(1) + 1;
System.out.println(bh);
}
}
编辑:r.nextInt(2);
还创建了一块平坦的土地。EDIT2:修复了它,我很愚蠢,只是在 for 循环之前更改了 r.nextInt() 。忘记里面的那个了!