X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavecraft%2Fgame%2FWorldGen.java;h=4b4f0e8d3772e656b2a5e0d265548ff8badc8df1;hb=755ddc2f16f28a493969c22cd3513acddc6e67cd;hp=96aedf3be559de55122d66030c3c0d6a0c4ee84d;hpb=f988ac987aae5e7dd99721ca4cf044d061153e89;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavecraft/game/WorldGen.java b/core/src/ru/deadsoftware/cavecraft/game/WorldGen.java index 96aedf3..4b4f0e8 100644 --- a/core/src/ru/deadsoftware/cavecraft/game/WorldGen.java +++ b/core/src/ru/deadsoftware/cavecraft/game/WorldGen.java @@ -1,23 +1,143 @@ package ru.deadsoftware.cavecraft.game; +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.math.RandomXS128; +import com.badlogic.gdx.utils.TimeUtils; + public class WorldGen { + private static RandomXS128 rand; + private static long seed; + private static int[][] foreMap, backMap; + private static int[] hMap; + private static int[] bMap; //biomes, 0-plains, 1-desert + + public static long getSeed() { + return seed; + } + + static int[] genLandscape(int width, int mid, int min, int max) { + int[] res = new int[width]; + bMap = new int[width]; + 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; + if (i>=width/2) { + bMap [i] = 1; + if (res[i] < 60) res[i] = 60; + } else { + bMap[i] = 0; + } + } + if (res[0]2 && x