project: Mixins for HD

This commit is contained in:
Owain van Brakel
2021-09-13 03:58:54 +02:00
parent f2a4b60840
commit 638760057e
16 changed files with 395 additions and 77 deletions

View File

@@ -1860,9 +1860,9 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
class1.playPcmPlayers();
Tiles.Tiles_minPlane = 99;
class6.field13 = new byte[4][104][104];
Tiles.field974 = new byte[4][104][104];
Tiles.field978 = new byte[4][104][104];
class6.Tiles_underlays = new byte[4][104][104];
Tiles.Tiles_overlays = new byte[4][104][104];
Tiles.Tiles_shapes = new byte[4][104][104];
Tiles.field977 = new byte[4][104][104];
class113.field1367 = new int[4][105][105];
FloorUnderlayDefinition.field1769 = new byte[4][105][105];
@@ -2233,22 +2233,22 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
}
}
Tiles.field987 += (int)(Math.random() * 5.0D) - 2;
if (Tiles.field987 < -8) {
Tiles.field987 = -8;
Tiles.rndHue += (int)(Math.random() * 5.0D) - 2;
if (Tiles.rndHue < -8) {
Tiles.rndHue = -8;
}
if (Tiles.field987 > 8) {
Tiles.field987 = 8;
if (Tiles.rndHue > 8) {
Tiles.rndHue = 8;
}
Tiles.field988 += (int)(Math.random() * 5.0D) - 2;
if (Tiles.field988 < -16) {
Tiles.field988 = -16;
Tiles.rndLightness += (int)(Math.random() * 5.0D) - 2;
if (Tiles.rndLightness < -16) {
Tiles.rndLightness = -16;
}
if (Tiles.field988 > 16) {
Tiles.field988 = 16;
if (Tiles.rndLightness > 16) {
Tiles.rndLightness = 16;
}
int var59;
@@ -2286,7 +2286,7 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
var16 = var14 + 5;
int var10002;
if (var16 >= 0 && var16 < 104) {
var17 = class6.field13[var53][var16][var15] & 255;
var17 = class6.Tiles_underlays[var53][var16][var15] & 255;
if (var17 > 0) {
FloorUnderlayDefinition var76 = TaskHandler.method2740(var17 - 1);
var10000 = DirectByteArrayCopier.Tiles_hue;
@@ -2303,7 +2303,7 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
var17 = var14 - 5;
if (var17 >= 0 && var17 < 104) {
var59 = class6.field13[var53][var17][var15] & 255;
var59 = class6.Tiles_underlays[var53][var17][var15] & 255;
if (var59 > 0) {
FloorUnderlayDefinition var77 = TaskHandler.method2740(var59 - 1);
var10000 = DirectByteArrayCopier.Tiles_hue;
@@ -2350,8 +2350,8 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
Tiles.Tiles_minPlane = var53;
}
var23 = class6.field13[var53][var14][var61] & 255;
var24 = Tiles.field974[var53][var14][var61] & 255;
var23 = class6.Tiles_underlays[var53][var14][var61] & 255;
var24 = Tiles.Tiles_overlays[var53][var14][var61] & 255;
if (var23 > 0 || var24 > 0) {
var25 = Tiles.Tiles_heights[var53][var14][var61];
var26 = Tiles.Tiles_heights[var53][var14 + 1][var61];
@@ -2368,8 +2368,8 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
var36 = var16 / var60;
var37 = var17 / var60;
var33 = PlatformInfo.hslToRgb(var35, var36, var37);
var35 = var35 + Tiles.field987 & 255;
var37 += Tiles.field988;
var35 = var35 + Tiles.rndHue & 255;
var37 += Tiles.rndLightness;
if (var37 < 0) {
var37 = 0;
} else if (var37 > 255) {
@@ -2382,7 +2382,7 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
FloorOverlayDefinition var63;
if (var53 > 0) {
boolean var79 = true;
if (var23 == 0 && Tiles.field978[var53][var14][var61] != 0) {
if (var23 == 0 && Tiles.Tiles_shapes[var53][var14][var61] != 0) {
var79 = false;
}
@@ -2423,7 +2423,7 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
if (var24 == 0) {
var72.addTile(var53, var14, var61, 0, 0, -1, var25, var26, var27, var28, WorldMapCacheName.method3873(var33, var29), WorldMapCacheName.method3873(var33, var30), WorldMapCacheName.method3873(var33, var62), WorldMapCacheName.method3873(var33, var32), 0, 0, 0, 0, var35, 0);
} else {
var36 = Tiles.field978[var53][var14][var61] + 1;
var36 = Tiles.Tiles_shapes[var53][var14][var61] + 1;
byte var80 = Tiles.field977[var53][var14][var61];
var39 = var24 - 1;
FloorOverlayDefinition var66 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var39);
@@ -2451,8 +2451,8 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
var43 = -2;
} else {
var42 = PlatformInfo.hslToRgb(var63.hue, var63.saturation, var63.lightness);
var44 = var63.hue + Tiles.field987 & 255;
var45 = var63.lightness + Tiles.field988;
var44 = var63.hue + Tiles.rndHue & 255;
var45 = var63.lightness + Tiles.rndLightness;
if (var45 < 0) {
var45 = 0;
} else if (var45 > 255) {
@@ -2468,8 +2468,8 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
}
if (var63.secondaryRgb != -1) {
var45 = var63.secondaryHue + Tiles.field987 & 255;
var46 = var63.secondaryLightness + Tiles.field988;
var45 = var63.secondaryHue + Tiles.rndHue & 255;
var46 = var63.secondaryLightness + Tiles.rndLightness;
if (var46 < 0) {
var46 = 0;
} else if (var46 > 255) {
@@ -2494,9 +2494,9 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
}
}
class6.field13[var53] = null;
Tiles.field974[var53] = null;
Tiles.field978[var53] = null;
class6.Tiles_underlays[var53] = null;
Tiles.Tiles_overlays[var53] = null;
Tiles.Tiles_shapes[var53] = null;
Tiles.field977[var53] = null;
FloorUnderlayDefinition.field1769[var53] = null;
}
@@ -2727,9 +2727,9 @@ public final class Client extends GameEngine implements Usernamed, OAuthTokens {
HealthBarUpdate.updateGameState(30);
class1.playPcmPlayers();
class6.field13 = null;
Tiles.field974 = null;
Tiles.field978 = null;
class6.Tiles_underlays = null;
Tiles.Tiles_overlays = null;
Tiles.Tiles_shapes = null;
Tiles.field977 = null;
class113.field1367 = null;
FloorUnderlayDefinition.field1769 = null;

View File

@@ -106,7 +106,8 @@ public class ModelData extends Renderable {
@ObfuscatedSignature(
descriptor = "[Lhc;"
)
VertexNormal[] field2257;
@Export("vertexVertices")
VertexNormal[] vertexVertices;
@ObfuscatedName("ad")
@Export("ambient")
public short ambient;
@@ -375,7 +376,7 @@ public class ModelData extends Renderable {
this.faceLabelsAlpha = var1.faceLabelsAlpha;
this.vertexNormals = var1.vertexNormals;
this.faceNormals = var1.faceNormals;
this.field2257 = var1.field2257;
this.vertexVertices = var1.vertexVertices;
this.ambient = var1.ambient;
this.contrast = var1.contrast;
}
@@ -1386,7 +1387,7 @@ public class ModelData extends Renderable {
@Export("invalidate")
void invalidate() {
this.vertexNormals = null;
this.field2257 = null;
this.vertexVertices = null;
this.faceNormals = null;
this.isBoundsCalculated = false;
}
@@ -1542,24 +1543,24 @@ public class ModelData extends Renderable {
}
} else {
int var15 = this.faceColors[var16] & '\uffff';
if (this.field2257 != null && this.field2257[this.indices1[var16]] != null) {
var13 = this.field2257[this.indices1[var16]];
if (this.vertexVertices != null && this.vertexVertices[this.indices1[var16]] != null) {
var13 = this.vertexVertices[this.indices1[var16]];
} else {
var13 = this.vertexNormals[this.indices1[var16]];
}
var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1;
var8.faceColors1[var16] = method3974(var15, var14);
if (this.field2257 != null && this.field2257[this.indices2[var16]] != null) {
var13 = this.field2257[this.indices2[var16]];
if (this.vertexVertices != null && this.vertexVertices[this.indices2[var16]] != null) {
var13 = this.vertexVertices[this.indices2[var16]];
} else {
var13 = this.vertexNormals[this.indices2[var16]];
}
var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1;
var8.faceColors2[var16] = method3974(var15, var14);
if (this.field2257 != null && this.field2257[this.indices3[var16]] != null) {
var13 = this.field2257[this.indices3[var16]];
if (this.vertexVertices != null && this.vertexVertices[this.indices3[var16]] != null) {
var13 = this.vertexVertices[this.indices3[var16]];
} else {
var13 = this.vertexNormals[this.indices3[var16]];
}
@@ -1577,24 +1578,24 @@ public class ModelData extends Renderable {
var8.faceColors3[var16] = -2;
}
} else {
if (this.field2257 != null && this.field2257[this.indices1[var16]] != null) {
var13 = this.field2257[this.indices1[var16]];
if (this.vertexVertices != null && this.vertexVertices[this.indices1[var16]] != null) {
var13 = this.vertexVertices[this.indices1[var16]];
} else {
var13 = this.vertexNormals[this.indices1[var16]];
}
var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1;
var8.faceColors1[var16] = method3975(var14);
if (this.field2257 != null && this.field2257[this.indices2[var16]] != null) {
var13 = this.field2257[this.indices2[var16]];
if (this.vertexVertices != null && this.vertexVertices[this.indices2[var16]] != null) {
var13 = this.vertexVertices[this.indices2[var16]];
} else {
var13 = this.vertexNormals[this.indices2[var16]];
}
var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1;
var8.faceColors2[var16] = method3975(var14);
if (this.field2257 != null && this.field2257[this.indices3[var16]] != null) {
var13 = this.field2257[this.indices3[var16]];
if (this.vertexVertices != null && this.vertexVertices[this.indices3[var16]] != null) {
var13 = this.vertexVertices[this.indices3[var16]];
} else {
var13 = this.vertexNormals[this.indices3[var16]];
}
@@ -1659,22 +1660,22 @@ public class ModelData extends Renderable {
for (int var14 = 0; var14 < var8; ++var14) {
VertexNormal var15 = var1.vertexNormals[var14];
if (var12 == var7[var14] && var13 == var1.verticesZ[var14] && var11 == var1.verticesY[var14] && var15.magnitude != 0) {
if (var0.field2257 == null) {
var0.field2257 = new VertexNormal[var0.verticesCount];
if (var0.vertexVertices == null) {
var0.vertexVertices = new VertexNormal[var0.verticesCount];
}
if (var1.field2257 == null) {
var1.field2257 = new VertexNormal[var8];
if (var1.vertexVertices == null) {
var1.vertexVertices = new VertexNormal[var8];
}
VertexNormal var16 = var0.field2257[var9];
VertexNormal var16 = var0.vertexVertices[var9];
if (var16 == null) {
var16 = var0.field2257[var9] = new VertexNormal(var10);
var16 = var0.vertexVertices[var9] = new VertexNormal(var10);
}
VertexNormal var17 = var1.field2257[var14];
VertexNormal var17 = var1.vertexVertices[var14];
if (var17 == null) {
var17 = var1.field2257[var14] = new VertexNormal(var15);
var17 = var1.vertexVertices[var14] = new VertexNormal(var15);
}
var16.x += var15.x;

View File

@@ -177,13 +177,13 @@ public class StructComposition extends DualNode {
}
if (var7 <= 49) {
Tiles.field974[var1][var2][var3] = var0.readByte();
Tiles.field978[var1][var2][var3] = (byte)((var7 - 2) / 4);
Tiles.Tiles_overlays[var1][var2][var3] = var0.readByte();
Tiles.Tiles_shapes[var1][var2][var3] = (byte)((var7 - 2) / 4);
Tiles.field977[var1][var2][var3] = (byte)(var7 - 2 + var6 & 3);
} else if (var7 <= 81) {
Tiles.Tiles_renderFlags[var1][var2][var3] = (byte)(var7 - 49);
} else {
class6.field13[var1][var2][var3] = (byte)(var7 - 81);
class6.Tiles_underlays[var1][var2][var3] = (byte)(var7 - 81);
}
}
} else {

View File

@@ -21,9 +21,11 @@ public final class Tiles {
@Export("Tiles_minPlane")
static int Tiles_minPlane;
@ObfuscatedName("o")
static byte[][][] field974;
@Export("Tiles_overlays")
static byte[][][] Tiles_overlays;
@ObfuscatedName("g")
static byte[][][] field978;
@Export("Tiles_shapes")
static byte[][][] Tiles_shapes;
@ObfuscatedName("z")
static byte[][][] field977;
@ObfuscatedName("y")
@@ -48,12 +50,14 @@ public final class Tiles {
@ObfuscatedGetter(
intValue = -416490741
)
static int field987;
@Export("rndHue")
static int rndHue;
@ObfuscatedName("i")
@ObfuscatedGetter(
intValue = -2134339611
)
static int field988;
@Export("rndLightness")
static int rndLightness;
@ObfuscatedName("ix")
@ObfuscatedGetter(
intValue = 1521226335
@@ -71,8 +75,8 @@ public final class Tiles {
field984 = new int[]{0, -1, 0, 1};
field985 = new int[]{1, -1, -1, 1};
field973 = new int[]{-1, -1, 1, 1};
field987 = (int)(Math.random() * 17.0D) - 8;
field988 = (int)(Math.random() * 33.0D) - 16;
rndHue = (int)(Math.random() * 17.0D) - 8;
rndLightness = (int)(Math.random() * 33.0D) - 16;
}
@ObfuscatedName("a")

View File

@@ -12,7 +12,8 @@ public enum class6 implements MouseWheel {
field10(0, 0);
@ObfuscatedName("k")
static byte[][][] field13;
@Export("Tiles_underlays")
static byte[][][] Tiles_underlays;
@ObfuscatedName("c")
@ObfuscatedGetter(
intValue = -607968475