Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- final void animate(int var1, int[] var2, int var3, int var4, int var5, boolean var6) {
- int var7 = var2.length;
- int var8;
- int var9;
- int var12;
- int var13;
- if (var1 == 0) {//var1 = animation opcode
- var8 = 0;
- originX = 0;
- originY = 0;
- originZ = 0;
- for (var9 = 0; var9 < var7; ++var9) {
- int var17 = var2[var9];
- if (var17 < this.verticesByLabel.length) {
- int[] var18 = this.verticesByLabel[var17];
- for (var12 = 0; var12 < var18.length; ++var12) {
- var13 = var18[var12];
- originX += this.verticesX[var13];
- originY += this.verticesY[var13];
- originZ += this.verticesZ[var13];
- ++var8;
- }
- }
- }
- if (var8 > 0) {
- originX = originX / var8 + var3;
- originY = originY / var8 + var4;
- originZ = originZ / var8 + var5;
- } else {
- originX = var3;
- originY = var4;
- originZ = var5;
- }
- } else {
- int[] var10;
- int var11;
- if (var1 == 1) {
- for (var8 = 0; var8 < var7; ++var8) {
- var9 = var2[var8];
- if (var9 < this.verticesByLabel.length) {
- var10 = this.verticesByLabel[var9];
- for (var11 = 0; var11 < var10.length; ++var11) {
- var12 = var10[var11];
- this.verticesX[var12] += var3;
- this.verticesY[var12] += var4;
- this.verticesZ[var12] += var5;
- }
- }
- }
- } else {
- int var14;
- int var15;
- if (var1 == 2) {
- for (var8 = 0; var8 < var7; ++var8) {
- var9 = var2[var8];
- if (var9 < this.verticesByLabel.length) {
- var10 = this.verticesByLabel[var9];
- for (var11 = 0; var11 < var10.length; ++var11) {
- var12 = var10[var11];
- this.verticesX[var12] -= originX;
- this.verticesY[var12] -= originY;
- this.verticesZ[var12] -= originZ;
- int sin = (var3 & 0xff) * 8;
- int cos = (var4 & 0xff) * 8;
- int tan = (var5 & 0xff) * 8;
- if (tan != 0) {
- var13 = MathUtils.SINE[tan];
- var14 = MathUtils.COSINE[tan];
- var15 = this.verticesY[var12] * var13 + this.verticesX[var12] * var14 + 32767 >> 16;
- this.verticesY[var12] = this.verticesY[var12] * var14 - this.verticesX[var12] * var13 + 32767 >> 16;
- this.verticesX[var12] = var15;
- }
- if (sin != 0) {
- var13 = MathUtils.SINE[sin];
- var14 = MathUtils.COSINE[sin];
- var15 = this.verticesY[var12] * var14 - this.verticesZ[var12] * var13 + 32767 >> 16;
- this.verticesZ[var12] = this.verticesY[var12] * var13 + this.verticesZ[var12] * var14 + 32767 >> 16;
- this.verticesY[var12] = var15;
- }
- if (cos != 0) {
- var13 = MathUtils.SINE[cos];
- var14 = MathUtils.COSINE[cos];
- var15 = this.verticesZ[var12] * var13 + this.verticesX[var12] * var14 + 32767 >> 16;
- this.verticesZ[var12] = this.verticesZ[var12] * var14 - this.verticesX[var12] * var13 + 32767 >> 16;
- this.verticesX[var12] = var15;
- }
- this.verticesX[var12] += originX;
- this.verticesY[var12] += originY;
- this.verticesZ[var12] += originZ;
- }
- }
- }
- } else if (var1 == 3) {
- for (var8 = 0; var8 < var7; ++var8) {
- var9 = var2[var8];
- if (var9 < this.verticesByLabel.length) {
- var10 = this.verticesByLabel[var9];
- for (var11 = 0; var11 < var10.length; ++var11) {
- var12 = var10[var11];
- this.verticesX[var12] -= originX;
- this.verticesY[var12] -= originY;
- this.verticesZ[var12] -= originZ;
- this.verticesX[var12] = this.verticesX[var12] * var3 / 128;
- this.verticesY[var12] = this.verticesY[var12] * var4 / 128;
- this.verticesZ[var12] = this.verticesZ[var12] * var5 / 128;
- this.verticesX[var12] += originX;
- this.verticesY[var12] += originY;
- this.verticesZ[var12] += originZ;
- }
- }
- }
- } else if (var1 == 5) {
- if (this.facesByLabel != null && this.facesTransparencies != null) {
- for (var8 = 0; var8 < var7; ++var8) {
- var9 = var2[var8];
- if (var9 < this.facesByLabel.length) {
- var10 = this.facesByLabel[var9];
- for (var11 = 0; var11 < var10.length; ++var11) {
- var12 = var10[var11];
- var13 = (this.facesTransparencies[var12] & 255) + var3 * 8;
- if (var13 < 0) {
- var13 = 0;
- } else if (var13 > 255) {
- var13 = 255;
- }
- this.facesTransparencies[var12] = (byte) var13;
- }
- }
- }
- }
- } else if (var1 == 7) {
- if (this.facesByLabel != null) {
- for (var8 = 0; var8 < var7; ++var8) {
- var9 = var2[var8];
- if (var9 < this.facesByLabel.length) {
- var10 = this.facesByLabel[var9];
- for (var11 = 0; var11 < var10.length; ++var11) {
- var12 = var10[var11];
- var13 = this.facesColors[var12] & 0xffff;
- var14 = var13 >> 10 & 63;
- var15 = var13 >> 7 & 7;
- int var16 = var13 & 127;
- var14 = var14 + var3 & 63;
- var15 += var4;
- if (var15 < 0) {
- var15 = 0;
- } else if (var15 > 7) {
- var15 = 7;
- }
- var16 += var5;
- if (var16 < 0) {
- var16 = 0;
- } else if (var16 > 127) {
- var16 = 127;
- }
- this.facesColors[var12] = (short) (var14 << 10 | var15 << 7 | var16);
- }
- this.aBoolean3877 = true;
- }
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement