Skip to content

Commit

Permalink
more RSClient refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
LostWorlds committed Jul 8, 2019
1 parent a32c667 commit 112a2bc
Show file tree
Hide file tree
Showing 87 changed files with 1,361 additions and 1,300 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,10 @@ public void checkMappings() throws Exception
{
assertEquals(c + " implements " + implementingName + " but is called " + c.getClassName(), implementingName, c.getClassName());
}
else
{
assertTrue(c + " isn't obfuscated but doesn't have @Implements", Deob.isObfuscated(c.getClassName()));
}

for (Field f : c.getFields())
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -978,7 +978,7 @@ public interface RSClient extends RSGameShell, Client
@Import("Rasterizer2D_drawVerticalLine")
void rasterizerDrawVerticalLine(int x, int y, int h, int rgb);

@Import("drawGradient")
@Import("Rasterizer2D_drawGradient")
void rasterizerDrawGradient(int x, int y, int w, int h, int rgbTop, int rgbBottom);

@Import("Rasterizer2D_fillRectangleAlpha")
Expand Down
24 changes: 13 additions & 11 deletions runescape-client/src/main/java/AbstractWorldMapIcon.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,14 @@ public abstract class AbstractWorldMapIcon {
@ObfuscatedGetter(
intValue = -521086143
)
int field5;
@Export("screenX")
int screenX;
@ObfuscatedName("x")
@ObfuscatedGetter(
intValue = -1065362217
)
int field6;
@Export("screenY")
int screenY;

@ObfuscatedSignature(
signature = "(Lhu;Lhu;)V"
Expand Down Expand Up @@ -109,38 +111,38 @@ boolean method20(int var1, int var2) {
WorldMapElement var3 = ViewportMouse.getWorldMapElement(this.getElement());
int var4 = this.vmethod397();
int var5 = this.vmethod398();
switch(var3.field3287.field3528) {
switch(var3.horizontalAlignment.value) {
case 0:
if (var1 >= this.field5 - var4 / 2 && var1 <= var4 / 2 + this.field5) {
if (var1 >= this.screenX - var4 / 2 && var1 <= var4 / 2 + this.screenX) {
break;
}

return false;
case 1:
if (var1 >= this.field5 && var1 < var4 + this.field5) {
if (var1 >= this.screenX && var1 < var4 + this.screenX) {
break;
}

return false;
case 2:
if (var1 <= this.field5 - var4 || var1 > this.field5) {
if (var1 <= this.screenX - var4 || var1 > this.screenX) {
return false;
}
}

switch(var3.field3301.field3275) {
switch(var3.verticalAlignment.value) {
case 0:
if (var2 <= this.field6 - var5 || var2 > this.field6) {
if (var2 <= this.screenY - var5 || var2 > this.screenY) {
return false;
}
break;
case 1:
if (var2 < this.field6 - var5 / 2 || var2 > var5 / 2 + this.field6) {
if (var2 < this.screenY - var5 / 2 || var2 > var5 / 2 + this.screenY) {
return false;
}
break;
case 2:
if (var2 < this.field6 || var2 >= var5 + this.field6) {
if (var2 < this.screenY || var2 >= var5 + this.screenY) {
return false;
}
}
Expand All @@ -156,7 +158,7 @@ boolean method20(int var1, int var2) {
)
boolean method21(int var1, int var2) {
WorldMapLabel var3 = this.getLabel();
return var3 == null ? false : (var1 >= this.field5 - var3.width / 2 && var1 <= var3.width / 2 + this.field5 ? var2 >= this.field6 && var2 <= var3.height + this.field6 : false);
return var3 == null ? false : (var1 >= this.screenX - var3.width / 2 && var1 <= var3.width / 2 + this.screenX ? var2 >= this.screenY && var2 <= var3.height + this.screenY : false);
}

@ObfuscatedName("es")
Expand Down
10 changes: 5 additions & 5 deletions runescape-client/src/main/java/Actor.java
Original file line number Diff line number Diff line change
Expand Up @@ -919,7 +919,7 @@ static final void menuAction(int argument1, int argument2, int opcode, int argum
var13 = class204.getWidgetChild(argument2, argument1);
if (var13 != null) {
Player.method1281();
WorldMapDecoration.method350(argument2, argument1, class211.method4107(class1.getWidgetClickMask(var13)), var13.itemId);
WorldMapDecoration.method350(argument2, argument1, Calendar.method4107(class1.getWidgetClickMask(var13)), var13.itemId);
Client.isItemSelected = 0;
Client.selectedSpellActionName = class198.method3745(var13);
if (Client.selectedSpellActionName == null) {
Expand Down Expand Up @@ -967,7 +967,7 @@ static final void menuAction(int argument1, int argument2, int opcode, int argum
if (Client.field127 == null) {
TilePaint.method3060(argument2, argument1);
Client.field127 = class204.getWidgetChild(argument2, argument1);
class22.method295(Client.field127);
WorldMapRectangle.method295(Client.field127);
}
} else if (opcode == 31) {
var8 = Interpreter.method1915(ClientPacket.field285, Client.packetWriter.isaacCipher);
Expand Down Expand Up @@ -1045,7 +1045,7 @@ static final void menuAction(int argument1, int argument2, int opcode, int argum
HealthBarDefinition.selectedItemSlot = argument1;
ServerPacket.selectedItemWidget = argument2;
MenuAction.selectedItemId = argument0;
class22.method295(var13);
WorldMapRectangle.method295(var13);
Client.selectedItemName = BufferedFile.colorStartTag(16748608) + Skills.getItemDefinition(argument0).name + BufferedFile.colorStartTag(16777215);
if (Client.selectedItemName == null) {
Client.selectedItemName = "null";
Expand Down Expand Up @@ -1327,15 +1327,15 @@ static final void menuAction(int argument1, int argument2, int opcode, int argum

if (Client.isItemSelected != 0) {
Client.isItemSelected = 0;
class22.method295(Huffman.getWidget(ServerPacket.selectedItemWidget));
WorldMapRectangle.method295(Huffman.getWidget(ServerPacket.selectedItemWidget));
}

if (Client.isSpellSelected) {
Player.method1281();
}

if (BoundaryObject.field40 != null && Client.field203 == 0) {
class22.method295(BoundaryObject.field40);
WorldMapRectangle.method295(BoundaryObject.field40);
}

}
Expand Down
18 changes: 9 additions & 9 deletions runescape-client/src/main/java/ArchiveLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -92,15 +92,15 @@ static void drawTitle(Font var0, Font var1, Font var2) {
boolean var11;
if (Login.worldSelectOpen) {
if (class30.worldSelectBackSprites == null) {
class30.worldSelectBackSprites = class2.method20(WorldMapSection3.archive8, "sl_back", "");
class30.worldSelectBackSprites = class2.method20(WorldMapSection1.archive8, "sl_back", "");
}

Archive var12;
int var13;
int var14;
IndexedSprite[] var15;
if (Frames.worldSelectFlagSprites == null) {
var12 = WorldMapSection3.archive8;
var12 = WorldMapSection1.archive8;
var14 = var12.getGroupId("sl_flags");
var13 = var12.getFileId(var14, "");
if (!SpriteMask.loadSprite(var12, var14, var13)) {
Expand All @@ -113,7 +113,7 @@ static void drawTitle(Font var0, Font var1, Font var2) {
}

if (AttackOption.worldSelectArrows == null) {
var12 = WorldMapSection3.archive8;
var12 = WorldMapSection1.archive8;
var14 = var12.getGroupId("sl_arrows");
var13 = var12.getFileId(var14, "");
if (!SpriteMask.loadSprite(var12, var14, var13)) {
Expand All @@ -126,7 +126,7 @@ static void drawTitle(Font var0, Font var1, Font var2) {
}

if (UrlRequest.worldSelectStars == null) {
var12 = WorldMapSection3.archive8;
var12 = WorldMapSection1.archive8;
var14 = var12.getGroupId("sl_stars");
var13 = var12.getFileId(var14, "");
if (!SpriteMask.loadSprite(var12, var14, var13)) {
Expand All @@ -139,16 +139,16 @@ static void drawTitle(Font var0, Font var1, Font var2) {
}

if (SecureRandomFuture.worldSelectLeftSprite == null) {
SecureRandomFuture.worldSelectLeftSprite = MenuAction.loadIndexedSpriteByName(WorldMapSection3.archive8, "leftarrow", "");
SecureRandomFuture.worldSelectLeftSprite = MenuAction.loadIndexedSpriteByName(WorldMapSection1.archive8, "leftarrow", "");
}

if (NetSocket.worldSelectRightSprite == null) {
NetSocket.worldSelectRightSprite = MenuAction.loadIndexedSpriteByName(WorldMapSection3.archive8, "rightarrow", "");
NetSocket.worldSelectRightSprite = MenuAction.loadIndexedSpriteByName(WorldMapSection1.archive8, "rightarrow", "");
}

Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding, 23, 765, 480, 0);
Rasterizer2D.drawGradient(Login.xPadding, 0, 125, 23, 12425273, 9135624);
Rasterizer2D.drawGradient(Login.xPadding + 125, 0, 640, 23, 5197647, 2697513);
Rasterizer2D.Rasterizer2D_drawGradient(Login.xPadding, 0, 125, 23, 0xbd9839, 0x8b6608);
Rasterizer2D.Rasterizer2D_drawGradient(Login.xPadding + 125, 0, 640, 23, 0x4f4f4f, 0x292929);
var0.drawCentered("Select a world", Login.xPadding + 62, 15, 0, -1);
if (UrlRequest.worldSelectStars != null) {
UrlRequest.worldSelectStars[1].drawAt(Login.xPadding + 140, 1);
Expand Down Expand Up @@ -700,7 +700,7 @@ static void drawTitle(Font var0, Font var1, Font var2) {
var1.drawCentered("Click to switch", var39 / 2 + var10, var41 / 2 + var34 + 12, 16777215, 0);
}
} else {
class277.field1144 = MenuAction.loadIndexedSpriteByName(WorldMapSection3.archive8, "sl_button", "");
class277.field1144 = MenuAction.loadIndexedSpriteByName(WorldMapSection1.archive8, "sl_button", "");
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion runescape-client/src/main/java/BoundaryObject.java
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ public final class BoundaryObject {
static final void doCheat(String var0) {
if (var0.equalsIgnoreCase("toggleroof")) {
ReflectionCheck.clientPreferences.roofsHidden = !ReflectionCheck.clientPreferences.roofsHidden;
WorldMapSection0.savePreferences();
WorldMapSection3.savePreferences();
if (ReflectionCheck.clientPreferences.roofsHidden) {
WorldMapIcon1.addGameMessage(99, "", "Roofs are now all hidden");
} else {
Expand Down
6 changes: 3 additions & 3 deletions runescape-client/src/main/java/ByteArrayPool.java
Original file line number Diff line number Diff line change
Expand Up @@ -83,9 +83,9 @@ static synchronized byte[] ByteArrayPool_get(int var0, boolean var1) {
if (field55[var3] != var0) {
if (var0 < field55[var3]) {
}
} else if (WorldMapSection2.field1082[var3] > 0) {
byte[] var4 = RouteStrategy.field760[var3][--WorldMapSection2.field1082[var3]];
RouteStrategy.field760[var3][WorldMapSection2.field1082[var3]] = null;
} else if (WorldMapSection0.field1082[var3] > 0) {
byte[] var4 = RouteStrategy.field760[var3][--WorldMapSection0.field1082[var3]];
RouteStrategy.field760[var3][WorldMapSection0.field1082[var3]] = null;
return var4;
}
}
Expand Down
20 changes: 10 additions & 10 deletions runescape-client/src/main/java/Bzip2Decompressor.java
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ static void method3705(Bzip2State var0) {
int var2 = var0.field70;
int var3 = var0.field78;
int var4 = var0.field76;
int[] var5 = WorldMapSection0.field1056;
int[] var5 = WorldMapSection3.field1056;
int var6 = var0.field75;
byte[] var7 = var0.field65;
int var8 = var0.field66;
Expand Down Expand Up @@ -159,7 +159,7 @@ static void method3705(Bzip2State var0) {
var0.field70 = var2;
var0.field78 = var3;
var0.field76 = var4;
WorldMapSection0.field1056 = var5;
WorldMapSection3.field1056 = var5;
var0.field75 = var6;
var0.field65 = var7;
var0.field66 = var8;
Expand Down Expand Up @@ -194,8 +194,8 @@ static void method3725(Bzip2State var0) {
int[] var21 = null;
int[] var22 = null;
var0.field73 = 1;
if (WorldMapSection0.field1056 == null) {
WorldMapSection0.field1056 = new int[var0.field73 * 100000];
if (WorldMapSection3.field1056 == null) {
WorldMapSection3.field1056 = new int[var0.field73 * 100000];
}

boolean var23 = true;
Expand Down Expand Up @@ -434,7 +434,7 @@ static void method3725(Bzip2State var0) {
}

var10003 = var0.field77[var0.field83[var24 & 255] & 255]++;
WorldMapSection0.field1056[var39] = var0.field83[var24 & 255] & 255;
WorldMapSection3.field1056[var39] = var0.field83[var24 & 255] & 255;
++var39;
if (var41 == 0) {
++var53;
Expand Down Expand Up @@ -493,7 +493,7 @@ static void method3725(Bzip2State var0) {
var46 = var0.field77;

for (var46[var24 & 255] += var48; var48 > 0; --var48) {
WorldMapSection0.field1056[var39] = var24 & 255;
WorldMapSection3.field1056[var39] = var24 & 255;
++var39;
}
}
Expand All @@ -513,16 +513,16 @@ static void method3725(Bzip2State var0) {
}

for (var25 = 0; var25 < var39; ++var25) {
var24 = (byte)(WorldMapSection0.field1056[var25] & 255);
var46 = WorldMapSection0.field1056;
var24 = (byte)(WorldMapSection3.field1056[var25] & 255);
var46 = WorldMapSection3.field1056;
var48 = var0.field79[var24 & 255];
var46[var48] |= var25 << 8;
++var0.field79[var24 & 255];
}

var0.field75 = WorldMapSection0.field1056[var0.field74] >> 8;
var0.field75 = WorldMapSection3.field1056[var0.field74] >> 8;
var0.field78 = 0;
var0.field75 = WorldMapSection0.field1056[var0.field75];
var0.field75 = WorldMapSection3.field1056[var0.field75];
var0.field76 = (byte)(var0.field75 & 255);
var0.field75 >>= 8;
++var0.field78;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,23 @@
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;
import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
import net.runelite.rs.ScriptOpcodes;

@ObfuscatedName("hg")
public class class211 {
@Implements("Calendar")
public class Calendar {
@ObfuscatedName("m")
static final String[][] field1124;
@Export("MONTH_NAMES_ENGLISH_GERMAN")
static final String[][] MONTH_NAMES_ENGLISH_GERMAN;
@ObfuscatedName("f")
static final String[] field1125;
@Export("DAYS_OF_THE_WEEK")
static final String[] DAYS_OF_THE_WEEK;
@ObfuscatedName("q")
static Calendar field1126;
@Export("Calendar_calendar")
static java.util.Calendar Calendar_calendar;
@ObfuscatedName("em")
@ObfuscatedSignature(
signature = "Llg;"
Expand Down Expand Up @@ -210,9 +214,9 @@ static int method4103(int var0, Script var1, boolean var2) {
}

static {
field1124 = new String[][]{{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}, {"Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"}};
field1125 = new String[]{"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
Calendar.getInstance(TimeZone.getTimeZone("Europe/London"));
field1126 = Calendar.getInstance(TimeZone.getTimeZone("GMT"));
MONTH_NAMES_ENGLISH_GERMAN = new String[][]{{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}, {"Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"}};
DAYS_OF_THE_WEEK = new String[]{"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
java.util.Calendar.getInstance(TimeZone.getTimeZone("Europe/London"));
Calendar_calendar = java.util.Calendar.getInstance(TimeZone.getTimeZone("GMT"));
}
}
6 changes: 3 additions & 3 deletions runescape-client/src/main/java/Canvas.java
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ static int method861(int var0, Script var1, boolean var2) {
GrandExchangeOfferAgeComparator.field1111 = var10;
}

class22.method295(var5);
WorldMapRectangle.method295(var5);
return 1;
}
}
Expand All @@ -167,12 +167,12 @@ static int method861(int var0, Script var1, boolean var2) {
var6 = var2 ? WorldMapIcon1.field1030 : GrandExchangeOfferAgeComparator.field1111;
var5 = Huffman.getWidget(var6.id);
var5.children[var6.childIndex] = null;
class22.method295(var5);
WorldMapRectangle.method295(var5);
return 1;
} else if (var0 == ScriptOpcodes.CC_DELETEALL) {
var6 = Huffman.getWidget(Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]);
var6.children = null;
class22.method295(var6);
WorldMapRectangle.method295(var6);
return 1;
} else if (var0 != ScriptOpcodes.CC_FIND) {
if (var0 == ScriptOpcodes.IF_FIND) {
Expand Down
Loading

0 comments on commit 112a2bc

Please sign in to comment.