Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private double[] generateHeightmap(double[] array, final int n, final int n2, final int n3, final int n4, final int n5, final int n6) {
- if (array == null) {
- array = new double[n4 * n5 * n6];
- }
- final double n7 = 684.412;
- final double n8 = 684.412;
- final double[] field_2235 = this.levelGzn.getBiomeSource().field_2235;
- final double[] field_2236 = this.levelGzn.getBiomeSource().field_2236;
- this.field_2251 = this.field_2245.NoiseGeneratorOctaves(this.field_2251, n, n3, n4, n6, 1.121, 1.121, 0.5);
- this.depthRegion = this.field_2246.NoiseGeneratorOctaves(this.depthRegion, n, n3, n4, n6, 200.0, 200.0, 0.5);
- this.mainNoiseRegion = this.field_2257.NoiseGenOctaves(this.mainNoiseRegion, n, n2, n3, n4, n5, n6, n7 / 80.0, n8 / 160.0, n7 / 80.0);
- this.minLimitRegion = this.field_2255.NoiseGenOctaves(this.minLimitRegion, n, n2, n3, n4, n5, n6, n7, n8, n7);
- this.maxLimitREgion = this.field_2256.NoiseGenOctaves(this.maxLimitREgion, n, n2, n3, n4, n5, n6, n7, n8, n7);
- int n9 = 0;
- int n10 = 0;
- final int n11 = 16 / n4;
- for (int i = 0; i < n4; ++i) {
- final int n12 = i * n11 + n11 / 2;
- for (int j = 0; j < n6; ++j) {
- final int n13 = j * n11 + n11 / 2;
- final double n14 = 1.0 - field_2236[n12 * 16 + n13] * field_2235[n12 * 16 + n13];
- final double n15 = n14 * n14;
- double n16 = (this.field_2251[n10] + 256.0) / 512.0 * (1.0 - n15 * n15);
- if (n16 > 1.0) {
- n16 = 1.0;
- }
- double n17 = this.depthRegion[n10] / 8000.0;
- if (n17 < 0.0) {
- n17 = -n17 * 0.3;
- }
- double n18 = n17 * 3.0 - 2.0;
- double n20;
- if (n18 < 0.0) {
- double n19 = n18 / 2.0;
- if (n19 < -1.0) {
- n19 = -1.0;
- }
- n20 = n19 / 1.4 / 2.0;
- n16 = 0.0;
- }
- else {
- if (n18 > 1.0) {
- n18 = 1.0;
- }
- n20 = n18 / 8.0;
- }
- if (n16 < 0.0) {
- n16 = 0.0;
- }
- final double n21 = n16 + 0.5;
- final double n22 = n5 / 2.0 + n20 * n5 / 16.0 * 4.0;
- ++n10;
- for (int k = 0; k < n5; ++k) {
- double n23 = (k - n22) * 12.0 / n21;
- if (n23 < 0.0) {
- n23 *= 4.0;
- }
- final double n24 = this.minLimitRegion[n9] / 512.0;
- final double n25 = this.maxLimitREgion[n9] / 512.0;
- final double n26 = (this.mainNoiseRegion[n9] / 10.0 + 1.0) / 2.0;
- double n27;
- if (n26 < 0.0) {
- n27 = n24;
- }
- else if (n26 > 1.0) {
- n27 = n25;
- }
- else {
- n27 = n24 + (n25 - n24) * n26;
- }
- double n28 = n27 - n23;
- if (k > n5 - 4) {
- final double n29 = (k - (n5 - 4)) / 3.0f;
- n28 = n28 * (1.0 - n29) + -10.0 * n29;
- }
- array[n9] = n28;
- ++n9;
- }
- }
- }
- return array;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement