22
22
import org .runejs .client .sound .SoundSystem ;
23
23
import org .runejs .client .util .BitUtils ;
24
24
import org .runejs .OldEngine .MapDecompressor ;
25
+ import org .runejs .client .util .PerlinNoise ;
25
26
26
27
import java .io .IOException ;
27
28
@@ -1441,7 +1442,7 @@ public static void method789(int chunkLocalX, int chunkY, int chunkX, int chunkL
1441
1442
}
1442
1443
1443
1444
private static int getPerlinVertexHeight (int x , int y ) {
1444
- int vertexHeight = -128 + perlinNoise (x + 45365 , 91923 + y , 4 ) - (-(perlinNoise (x + 10294 , 37821 + y , 2 ) - 128 >> 1 ) + -(-128 + perlinNoise (x , y , 1 ) >> 2 ));
1445
+ int vertexHeight = -128 + PerlinNoise . get (x + 45365 , 91923 + y , 4 ) - (-(PerlinNoise . get (x + 10294 , 37821 + y , 2 ) - 128 >> 1 ) + -(-128 + PerlinNoise . get (x , y , 1 ) >> 2 ));
1445
1446
vertexHeight = 35 + (int ) (0.3 * (double ) vertexHeight );
1446
1447
1447
1448
if (vertexHeight >= 10 ) {
@@ -1452,39 +1453,4 @@ private static int getPerlinVertexHeight(int x, int y) {
1452
1453
1453
1454
return vertexHeight ;
1454
1455
}
1455
-
1456
- private static int interpolateForPerlin (int arg0 , int arg1 , int arg2 , boolean arg3 , int arg4 ) {
1457
- if (!arg3 )
1458
- return -109 ;
1459
- int i = 65536 + -Rasterizer3D .cosinetable [1024 * arg4 / arg1 ] >> 1 ;
1460
- return ((65536 + -i ) * arg0 >> 16 ) + (arg2 * i >> 16 );
1461
- }
1462
-
1463
- private static int randomNoiseWeightedSum (int arg1 , int arg2 ) {
1464
- int i = randomNoise (-1 + arg1 , -1 + arg2 ) + randomNoise (1 + arg1 , arg2 - 1 ) + randomNoise (-1 + arg1 , 1 + arg2 ) + randomNoise (1 + arg1 , arg2 + 1 );
1465
- int i_126_ = randomNoise (arg1 - 1 , arg2 ) + randomNoise (arg1 + 1 , arg2 ) - (-randomNoise (arg1 , arg2 - 1 ) + -randomNoise (arg1 , 1 + arg2 ));
1466
- int i_127_ = randomNoise (arg1 , arg2 );
1467
- return i / 16 - (-(i_126_ / 8 ) - i_127_ / 4 );
1468
- }
1469
-
1470
- private static int perlinNoise (int x , int y , int scale ) {
1471
- int muX = x & -1 + scale ;
1472
- int scaledY = y / scale ;
1473
- int muY = scale - 1 & y ;
1474
- int scaledX = x / scale ;
1475
- int a = randomNoiseWeightedSum (scaledX , scaledY );
1476
- int b = randomNoiseWeightedSum (1 + scaledX , scaledY );
1477
- int c = randomNoiseWeightedSum (scaledX , 1 + scaledY );
1478
- int d = randomNoiseWeightedSum (1 + scaledX , 1 + scaledY );
1479
- int i1 = interpolateForPerlin (a , scale , b , true , muX );
1480
- int i2 = interpolateForPerlin (c , scale , d , true , muX );
1481
- return interpolateForPerlin (i1 , scale , i2 , true , muY );
1482
- }
1483
-
1484
- private static int randomNoise (int x , int y ) {
1485
- int i = 57 * y + x ;
1486
- i ^= i << 13 ;
1487
- int i_2_ = 1376312589 + (i * i * 15731 + 789221 ) * i & 0x7fffffff ;
1488
- return i_2_ >> 19 & 0xff ;
1489
- }
1490
1456
}
0 commit comments