Port Injector to main layout
Adds deobfuscator Adds injected-client Adds injector-plugin Adds runescape-client Replaces RL's apis Small bug with sprites atm, will be resolved soon. tired af. Builds, probably
This commit is contained in:
275
runescape-client/src/main/java/IndexedSprite.java
Normal file
275
runescape-client/src/main/java/IndexedSprite.java
Normal file
@@ -0,0 +1,275 @@
|
||||
import net.runelite.mapping.Export;
|
||||
import net.runelite.mapping.Implements;
|
||||
import net.runelite.mapping.ObfuscatedName;
|
||||
|
||||
@ObfuscatedName("lq")
|
||||
@Implements("IndexedSprite")
|
||||
public final class IndexedSprite extends Rasterizer2D {
|
||||
@ObfuscatedName("m")
|
||||
@Export("pixels")
|
||||
public byte[] pixels;
|
||||
@ObfuscatedName("f")
|
||||
@Export("palette")
|
||||
public int[] palette;
|
||||
@ObfuscatedName("q")
|
||||
@Export("subWidth")
|
||||
public int subWidth;
|
||||
@ObfuscatedName("w")
|
||||
@Export("subHeight")
|
||||
public int subHeight;
|
||||
@ObfuscatedName("o")
|
||||
@Export("xOffset")
|
||||
public int xOffset;
|
||||
@ObfuscatedName("u")
|
||||
@Export("yOffset")
|
||||
public int yOffset;
|
||||
@ObfuscatedName("g")
|
||||
@Export("width")
|
||||
public int width;
|
||||
@ObfuscatedName("l")
|
||||
@Export("height")
|
||||
public int height;
|
||||
|
||||
@ObfuscatedName("m")
|
||||
@Export("normalize")
|
||||
public void normalize() {
|
||||
if(this.subWidth != this.width || this.subHeight != this.height) {
|
||||
byte[] var1 = new byte[this.width * this.height];
|
||||
int var2 = 0;
|
||||
|
||||
for(int var3 = 0; var3 < this.subHeight; ++var3) {
|
||||
for(int var4 = 0; var4 < this.subWidth; ++var4) {
|
||||
var1[var4 + (var3 + this.yOffset) * this.width + this.xOffset] = this.pixels[var2++];
|
||||
}
|
||||
}
|
||||
|
||||
this.pixels = var1;
|
||||
this.subWidth = this.width;
|
||||
this.subHeight = this.height;
|
||||
this.xOffset = 0;
|
||||
this.yOffset = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@ObfuscatedName("f")
|
||||
@Export("shiftColors")
|
||||
public void shiftColors(int var1, int var2, int var3) {
|
||||
for(int var4 = 0; var4 < this.palette.length; ++var4) {
|
||||
int var5 = this.palette[var4] >> 16 & 255;
|
||||
var5 += var1;
|
||||
if(var5 < 0) {
|
||||
var5 = 0;
|
||||
} else if(var5 > 255) {
|
||||
var5 = 255;
|
||||
}
|
||||
|
||||
int var6 = this.palette[var4] >> 8 & 255;
|
||||
var6 += var2;
|
||||
if(var6 < 0) {
|
||||
var6 = 0;
|
||||
} else if(var6 > 255) {
|
||||
var6 = 255;
|
||||
}
|
||||
|
||||
int var7 = this.palette[var4] & 255;
|
||||
var7 += var3;
|
||||
if(var7 < 0) {
|
||||
var7 = 0;
|
||||
} else if(var7 > 255) {
|
||||
var7 = 255;
|
||||
}
|
||||
|
||||
this.palette[var4] = var7 + (var6 << 8) + (var5 << 16);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ObfuscatedName("q")
|
||||
@Export("__q_496")
|
||||
public void __q_496(int var1, int var2) {
|
||||
var1 += this.xOffset;
|
||||
var2 += this.yOffset;
|
||||
int var3 = var1 + var2 * Rasterizer2D.Rasterizer2D_width;
|
||||
int var4 = 0;
|
||||
int var5 = this.subHeight;
|
||||
int var6 = this.subWidth;
|
||||
int var7 = Rasterizer2D.Rasterizer2D_width - var6;
|
||||
int var8 = 0;
|
||||
int var9;
|
||||
if(var2 < Rasterizer2D.Rasterizer2D_yClipStart) {
|
||||
var9 = Rasterizer2D.Rasterizer2D_yClipStart - var2;
|
||||
var5 -= var9;
|
||||
var2 = Rasterizer2D.Rasterizer2D_yClipStart;
|
||||
var4 += var9 * var6;
|
||||
var3 += var9 * Rasterizer2D.Rasterizer2D_width;
|
||||
}
|
||||
|
||||
if(var5 + var2 > Rasterizer2D.Rasterizer2D_yClipEnd) {
|
||||
var5 -= var5 + var2 - Rasterizer2D.Rasterizer2D_yClipEnd;
|
||||
}
|
||||
|
||||
if(var1 < Rasterizer2D.Rasterizer2D_xClipStart) {
|
||||
var9 = Rasterizer2D.Rasterizer2D_xClipStart - var1;
|
||||
var6 -= var9;
|
||||
var1 = Rasterizer2D.Rasterizer2D_xClipStart;
|
||||
var4 += var9;
|
||||
var3 += var9;
|
||||
var8 += var9;
|
||||
var7 += var9;
|
||||
}
|
||||
|
||||
if(var6 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) {
|
||||
var9 = var6 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd;
|
||||
var6 -= var9;
|
||||
var8 += var9;
|
||||
var7 += var9;
|
||||
}
|
||||
|
||||
if(var6 > 0 && var5 > 0) {
|
||||
IndexedSprite_two(Rasterizer2D.Rasterizer2D_pixels, this.pixels, this.palette, var4, var3, var6, var5, var7, var8);
|
||||
}
|
||||
}
|
||||
|
||||
@ObfuscatedName("o")
|
||||
@Export("__o_497")
|
||||
public void __o_497(int var1, int var2, int var3, int var4) {
|
||||
int var5 = this.subWidth;
|
||||
int var6 = this.subHeight;
|
||||
int var7 = 0;
|
||||
int var8 = 0;
|
||||
int var9 = this.width;
|
||||
int var10 = this.height;
|
||||
int var11 = (var9 << 16) / var3;
|
||||
int var12 = (var10 << 16) / var4;
|
||||
int var13;
|
||||
if(this.xOffset > 0) {
|
||||
var13 = (var11 + (this.xOffset << 16) - 1) / var11;
|
||||
var1 += var13;
|
||||
var7 += var13 * var11 - (this.xOffset << 16);
|
||||
}
|
||||
|
||||
if(this.yOffset > 0) {
|
||||
var13 = (var12 + (this.yOffset << 16) - 1) / var12;
|
||||
var2 += var13;
|
||||
var8 += var13 * var12 - (this.yOffset << 16);
|
||||
}
|
||||
|
||||
if(var5 < var9) {
|
||||
var3 = (var11 + ((var5 << 16) - var7) - 1) / var11;
|
||||
}
|
||||
|
||||
if(var6 < var10) {
|
||||
var4 = (var12 + ((var6 << 16) - var8) - 1) / var12;
|
||||
}
|
||||
|
||||
var13 = var1 + var2 * Rasterizer2D.Rasterizer2D_width;
|
||||
int var14 = Rasterizer2D.Rasterizer2D_width - var3;
|
||||
if(var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) {
|
||||
var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd;
|
||||
}
|
||||
|
||||
int var15;
|
||||
if(var2 < Rasterizer2D.Rasterizer2D_yClipStart) {
|
||||
var15 = Rasterizer2D.Rasterizer2D_yClipStart - var2;
|
||||
var4 -= var15;
|
||||
var13 += var15 * Rasterizer2D.Rasterizer2D_width;
|
||||
var8 += var12 * var15;
|
||||
}
|
||||
|
||||
if(var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) {
|
||||
var15 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd;
|
||||
var3 -= var15;
|
||||
var14 += var15;
|
||||
}
|
||||
|
||||
if(var1 < Rasterizer2D.Rasterizer2D_xClipStart) {
|
||||
var15 = Rasterizer2D.Rasterizer2D_xClipStart - var1;
|
||||
var3 -= var15;
|
||||
var13 += var15;
|
||||
var7 += var11 * var15;
|
||||
var14 += var15;
|
||||
}
|
||||
|
||||
IndexedSprite_something(Rasterizer2D.Rasterizer2D_pixels, this.pixels, this.palette, var7, var8, var13, var14, var3, var4, var11, var12, var5);
|
||||
}
|
||||
|
||||
@ObfuscatedName("w")
|
||||
@Export("IndexedSprite_two")
|
||||
static void IndexedSprite_two(int[] var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8) {
|
||||
int var9 = -(var5 >> 2);
|
||||
var5 = -(var5 & 3);
|
||||
|
||||
for(int var10 = -var6; var10 < 0; ++var10) {
|
||||
int var11;
|
||||
byte var12;
|
||||
for(var11 = var9; var11 < 0; ++var11) {
|
||||
var12 = var1[var3++];
|
||||
if(var12 != 0) {
|
||||
var0[var4++] = var2[var12 & 255];
|
||||
} else {
|
||||
++var4;
|
||||
}
|
||||
|
||||
var12 = var1[var3++];
|
||||
if(var12 != 0) {
|
||||
var0[var4++] = var2[var12 & 255];
|
||||
} else {
|
||||
++var4;
|
||||
}
|
||||
|
||||
var12 = var1[var3++];
|
||||
if(var12 != 0) {
|
||||
var0[var4++] = var2[var12 & 255];
|
||||
} else {
|
||||
++var4;
|
||||
}
|
||||
|
||||
var12 = var1[var3++];
|
||||
if(var12 != 0) {
|
||||
var0[var4++] = var2[var12 & 255];
|
||||
} else {
|
||||
++var4;
|
||||
}
|
||||
}
|
||||
|
||||
for(var11 = var5; var11 < 0; ++var11) {
|
||||
var12 = var1[var3++];
|
||||
if(var12 != 0) {
|
||||
var0[var4++] = var2[var12 & 255];
|
||||
} else {
|
||||
++var4;
|
||||
}
|
||||
}
|
||||
|
||||
var4 += var7;
|
||||
var3 += var8;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ObfuscatedName("u")
|
||||
@Export("IndexedSprite_something")
|
||||
static void IndexedSprite_something(int[] var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11) {
|
||||
int var12 = var3;
|
||||
|
||||
for(int var13 = -var8; var13 < 0; ++var13) {
|
||||
int var14 = var11 * (var4 >> 16);
|
||||
|
||||
for(int var15 = -var7; var15 < 0; ++var15) {
|
||||
byte var16 = var1[(var3 >> 16) + var14];
|
||||
if(var16 != 0) {
|
||||
var0[var5++] = var2[var16 & 255];
|
||||
} else {
|
||||
++var5;
|
||||
}
|
||||
|
||||
var3 += var9;
|
||||
}
|
||||
|
||||
var4 += var10;
|
||||
var3 = var12;
|
||||
var5 += var6;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user