X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavecraft%2Fgame%2FWorldGen.java;h=b8e9aee59b953e9742366f1300b27d7b64414da4;hb=75deb67170751156f786a73d3ab8113843a7c4e9;hp=7e676f82f8bbafd59df33cb4346b9abb05cc6ce9;hpb=3170dad22d4643ae39e66a0d6a445df198418e73;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavecraft/game/WorldGen.java b/core/src/ru/deadsoftware/cavecraft/game/WorldGen.java index 7e676f8..b8e9aee 100644 --- a/core/src/ru/deadsoftware/cavecraft/game/WorldGen.java +++ b/core/src/ru/deadsoftware/cavecraft/game/WorldGen.java @@ -20,7 +20,12 @@ public class WorldGen { int t; res[0] = mid; for (int i=1; i-3 && t<3) t=0; else t/=Math.abs(t); + if (i>width-(max-min)) { + if (res[i-1]+tres[0]) t=-Math.abs(t); + } res[i] = res[i-1] + t; if (res[i]max) res[i] = max; @@ -28,17 +33,37 @@ public class WorldGen { return res; } + private static void genOak(int x, int y) { + backMap[x][y] = 15; + backMap[x][y-1] = 15; + backMap[x][y-2] = 15; + backMap[x][y-3] = 15; + backMap[x][y-4] = 16; + backMap[x][y-5] = 16; + backMap[x-1][y-3] = 16; + backMap[x-1][y-4] = 16; + backMap[x+1][y-3] = 16; + backMap[x+1][y-4] = 16; + foreMap[x][y-3] = 16; + foreMap[x][y-4] = 16; + foreMap[x][y-5] = 16; + foreMap[x-1][y-3] = 16; + foreMap[x-1][y-4] = 16; + foreMap[x+1][y-3] = 16; + foreMap[x+1][y-4] = 16; + } + static void genWorld(int width, int height) { genWorld(width, height, TimeUtils.millis()); } - static void genWorld(int width, int height, long s) { + static void genWorld(int width, int height, long worldseed) { int dirtH; - seed = s; + seed = worldseed; rand = new RandomXS128(seed); foreMap = new int[width][height]; backMap = new int[width][height]; - hMap = genLandscape(width, height/2, height/4, height/4*3); + hMap = genLandscape(width, height/8*3, height/8, height/2); for (int x=0; x2 && x