Server/Client/src/main/java/org/runite/client/Class160.java
2021-03-24 15:51:22 -04:00

235 lines
8.5 KiB
Java

package org.runite.client;
import javax.media.opengl.GL;
import java.nio.ByteBuffer;
final class Class160 implements ShaderInterface {
private int anInt2187 = -1;
private boolean aBoolean2188 = false;
private int[] anIntArray2189 = null;
public Class160() {
if (HDToolKit.supportTextureCubeMap && HDToolKit.maxTextureUnits >= 2) {
this.method2199();
GL var1 = HDToolKit.gl;
var1.glBindTexture('\u8513', this.anIntArray2189[0]);
var1.glTexParameteri('\u8513', 10241, 9729);
var1.glTexParameteri('\u8513', 10240, 9729);
var1.glTexParameteri('\u8513', '\u8072', '\u812f');
var1.glTexParameteri('\u8513', 10242, '\u812f');
var1.glTexParameteri('\u8513', 10243, '\u812f');
var1.glBindTexture('\u8513', this.anIntArray2189[1]);
var1.glTexParameteri('\u8513', 10241, 9729);
var1.glTexParameteri('\u8513', 10240, 9729);
var1.glTexParameteri('\u8513', '\u8072', '\u812f');
var1.glTexParameteri('\u8513', 10242, '\u812f');
var1.glTexParameteri('\u8513', 10243, '\u812f');
var1.glBindTexture('\u8513', this.anIntArray2189[2]);
var1.glTexParameteri('\u8513', 10241, 9729);
var1.glTexParameteri('\u8513', 10240, 9729);
var1.glTexParameteri('\u8513', '\u8072', '\u812f');
var1.glTexParameteri('\u8513', 10242, '\u812f');
var1.glTexParameteri('\u8513', 10243, '\u812f');
this.aBoolean2188 = HDToolKit.maxTextureUnits < 3;
}
this.method2198();
}
private void method2198() {
GL var1 = HDToolKit.gl;
this.anInt2187 = var1.glGenLists(2);
var1.glNewList(this.anInt2187, 4864);
if (this.anIntArray2189 == null) {
var1.glTexEnvi(8960, '\u8588', '\u8577');
} else {
var1.glActiveTexture('\u84c1');
var1.glTexGeni(8192, 9472, '\u8511');
var1.glTexGeni(8193, 9472, '\u8511');
var1.glTexGeni(8194, 9472, '\u8511');
var1.glEnable(3168);
var1.glEnable(3169);
var1.glEnable(3170);
var1.glEnable('\u8513');
var1.glMatrixMode(5890);
var1.glLoadIdentity();
var1.glRotatef(22.5F, 1.0F, 0.0F, 0.0F);
var1.glMatrixMode(5888);
if (this.aBoolean2188) {
var1.glTexEnvi(8960, '\u8571', 260);
var1.glTexEnvi(8960, '\u8590', 770);
var1.glTexEnvi(8960, '\u8572', 7681);
var1.glTexEnvi(8960, '\u8588', '\u8577');
} else {
var1.glTexEnvi(8960, '\u8571', 7681);
var1.glTexEnvi(8960, '\u8580', '\u8578');
var1.glTexEnvi(8960, '\u8572', 8448);
var1.glActiveTexture('\u84c2');
var1.glTexEnvi(8960, 8704, '\u8570');
var1.glTexEnvi(8960, '\u8571', 260);
var1.glTexEnvi(8960, '\u8580', '\u8578');
var1.glTexEnvi(8960, '\u8581', '\u8578');
var1.glTexEnvi(8960, '\u8591', 770);
var1.glTexEnvi(8960, '\u8572', 7681);
var1.glTexEnvi(8960, '\u8588', '\u8577');
var1.glBindTexture(3553, HDToolKit.anInt1810);
var1.glEnable(3553);
}
var1.glActiveTexture('\u84c0');
}
var1.glEndList();
var1.glNewList(this.anInt2187 + 1, 4864);
if (this.anIntArray2189 == null) {
var1.glTexEnvi(8960, '\u8588', 5890);
} else {
var1.glActiveTexture('\u84c1');
var1.glDisable(3168);
var1.glDisable(3169);
var1.glDisable(3170);
var1.glDisable('\u8513');
var1.glMatrixMode(5890);
var1.glLoadIdentity();
var1.glMatrixMode(5888);
if (this.aBoolean2188) {
var1.glTexEnvi(8960, '\u8571', 8448);
var1.glTexEnvi(8960, '\u8590', 768);
var1.glTexEnvi(8960, '\u8572', 8448);
var1.glTexEnvi(8960, '\u8588', 5890);
} else {
var1.glTexEnvi(8960, '\u8571', 8448);
var1.glTexEnvi(8960, '\u8580', 5890);
var1.glActiveTexture('\u84c2');
var1.glTexEnvi(8960, 8704, 8448);
var1.glTexEnvi(8960, '\u8571', 8448);
var1.glTexEnvi(8960, '\u8580', 5890);
var1.glTexEnvi(8960, '\u8591', 768);
var1.glTexEnvi(8960, '\u8572', 8448);
var1.glTexEnvi(8960, '\u8588', 5890);
var1.glDisable(3553);
}
var1.glActiveTexture('\u84c0');
}
var1.glEndList();
}
public final void method21() {
GL var1 = HDToolKit.gl;
if (Class106.aBoolean1441) {
var1.glCallList(this.anInt2187 + 1);
} else {
var1.glTexEnvi(8960, '\u8588', 5890);
}
}
public final int method24() {
return 4;
}
public final void method22() {
GL var1 = HDToolKit.gl;
HDToolKit.method1847(1);
if (Class106.aBoolean1441) {
var1.glCallList(this.anInt2187);
} else {
var1.glTexEnvi(8960, '\u8588', '\u8577');
}
}
public final void method23(int var1) {
GL var2 = HDToolKit.gl;
if (Class106.aBoolean1441 && this.anIntArray2189 != null) {
var2.glActiveTexture('\u84c1');
var2.glBindTexture('\u8513', this.anIntArray2189[var1 - 1]);
var2.glActiveTexture('\u84c0');
}
}
private void method2199() {
GL var8 = HDToolKit.gl;
if (this.anIntArray2189 == null) {
this.anIntArray2189 = new int[3];
var8.glGenTextures(3, this.anIntArray2189, 0);
}
short var9 = 4096;
byte[] var10 = new byte[var9];
byte[] var11 = new byte[var9];
byte[] var12 = new byte[var9];
for (int var13 = 0; var13 < 6; ++var13) {
int var14 = 0;
for (int var15 = 0; var15 < 64; ++var15) {
for (int var16 = 0; var16 < 64; ++var16) {
float var5 = 2.0F * (float) var16 / 64.0F - 1.0F;
float var6 = 2.0F * (float) var15 / 64.0F - 1.0F;
float var7 = (float) (1.0D / Math.sqrt(var5 * var5 + 1.0F + var6 * var6));
var5 *= var7;
var6 *= var7;
float var4;
if (var13 == 0) {
var4 = -var5;
} else if (var13 == 1) {
var4 = var5;
} else if (var13 == 2) {
var4 = var6;
} else if (var13 == 3) {
var4 = -var6;
} else if (var13 == 4) {
var4 = var7;
} else {
var4 = -var7;
}
int var1;
int var2;
int var3;
if (var4 > 0.0F) {
var1 = (int) (Math.pow(var4, 96.0D) * 255.0D);
var2 = (int) (Math.pow(var4, 36.0D) * 255.0D);
var3 = (int) (Math.pow(var4, 12.0D) * 255.0D);
} else {
var3 = 0;
var2 = 0;
var1 = 0;
}
if (HDToolKit.maxTextureUnits < 3) {
var1 /= 5;
var2 /= 5;
var3 /= 5;
} else {
var1 /= 2;
var2 /= 2;
var3 /= 2;
}
var11[var14] = (byte) var1;
var12[var14] = (byte) var2;
var10[var14] = (byte) var3;
++var14;
}
}
var8.glBindTexture('\u8513', this.anIntArray2189[0]);
var8.glTexImage2D('\u8515' + var13, 0, 6406, 64, 64, 0, 6406, 5121, ByteBuffer.wrap(var11));
var8.glBindTexture('\u8513', this.anIntArray2189[1]);
var8.glTexImage2D('\u8515' + var13, 0, 6406, 64, 64, 0, 6406, 5121, ByteBuffer.wrap(var12));
var8.glBindTexture('\u8513', this.anIntArray2189[2]);
var8.glTexImage2D('\u8515' + var13, 0, 6406, 64, 64, 0, 6406, 5121, ByteBuffer.wrap(var10));
Class31.anInt580 += var9 * 3;
}
}
}