runeliteplus: merge upstream

This commit is contained in:
Zeruth
2019-07-25 14:30:56 -04:00
parent 51e1ae5aaf
commit 5de903304e
69 changed files with 888 additions and 4463 deletions

View File

@@ -255,9 +255,9 @@ public class BufferedSource implements Runnable {
GrandExchangeOfferWorldComparator.leftTitleSprite = BuddyRankComparator.convertJpgToSprite(var4);
NPC.rightTitleSprite = GrandExchangeOfferWorldComparator.leftTitleSprite.mirrorHorizontally();
if ((Client.worldProperties & 536870912) != 0) {
GroundItem.logoSprite = class215.SpriteBuffer_getIndexedSpriteByName(var1, "logo_deadman_mode", "");
TileItem.logoSprite = class215.SpriteBuffer_getIndexedSpriteByName(var1, "logo_deadman_mode", "");
} else {
GroundItem.logoSprite = class215.SpriteBuffer_getIndexedSpriteByName(var1, "logo", "");
TileItem.logoSprite = class215.SpriteBuffer_getIndexedSpriteByName(var1, "logo", "");
}
Login.titleboxSprite = class215.SpriteBuffer_getIndexedSpriteByName(var1, "titlebox", "");
@@ -315,7 +315,7 @@ public class BufferedSource implements Runnable {
ScriptEvent.loginBoxCenter = Login.loginBoxX + 180;
GrandExchangeOfferWorldComparator.leftTitleSprite.drawAt(Login.xPadding, 0);
NPC.rightTitleSprite.drawAt(Login.xPadding + 382, 0);
GroundItem.logoSprite.drawAt(Login.xPadding + 382 - GroundItem.logoSprite.subWidth / 2, 18);
TileItem.logoSprite.drawAt(Login.xPadding + 382 - TileItem.logoSprite.subWidth / 2, 18);
}
}
}

View File

@@ -3722,7 +3722,7 @@ public final class Client extends GameShell implements Usernamed {
if (ServerPacket.field2161 == var1.serverPacket) {
var16 = var3.method5532();
GroundItemPile.method2764(var16);
TileItemPile.method2764(var16);
field888[++field671 - 1 & 31] = var16 & 32767;
var1.serverPacket = null;
return true;

View File

@@ -266,7 +266,7 @@ public class ClientPreferences {
HealthBarUpdate.Interpreter_intStackSize -= 2;
var10 = Interpreter.Interpreter_intStack[HealthBarUpdate.Interpreter_intStackSize];
var4 = Interpreter.Interpreter_intStack[HealthBarUpdate.Interpreter_intStackSize + 1];
Message var15 = GroundItem.method2049(var10, var4);
Message var15 = TileItem.method2049(var10, var4);
if (var15 != null) {
Interpreter.Interpreter_intStack[++HealthBarUpdate.Interpreter_intStackSize - 1] = var15.count;
Interpreter.Interpreter_intStack[++HealthBarUpdate.Interpreter_intStackSize - 1] = var15.cycle;

View File

@@ -259,10 +259,10 @@ public class FloorOverlayDefinition extends DualNode {
int var4 = var0 & var2 - 1;
int var5 = var1 / var2;
int var6 = var1 & var2 - 1;
int var7 = GroundItemPile.method2765(var3, var5);
int var8 = GroundItemPile.method2765(var3 + 1, var5);
int var9 = GroundItemPile.method2765(var3, var5 + 1);
int var10 = GroundItemPile.method2765(var3 + 1, var5 + 1);
int var7 = TileItemPile.method2765(var3, var5);
int var8 = TileItemPile.method2765(var3 + 1, var5);
int var9 = TileItemPile.method2765(var3, var5 + 1);
int var10 = TileItemPile.method2765(var3 + 1, var5 + 1);
int var11 = class4.method49(var7, var8, var4, var2);
int var12 = class4.method49(var9, var10, var4, var2);
return class4.method49(var11, var12, var6, var2);

View File

@@ -216,10 +216,10 @@ public class Frames extends DualNode {
ModelData0.field1871 = (var11 + var15) / 2;
ViewportMouse.field1745 = (var12 + var14) / 2;
ViewportMouse.field1746 = (var16 + var17) / 2;
GroundItem.field1242 = (var15 - var11) / 2;
TileItem.field1242 = (var15 - var11) / 2;
GrandExchangeEvent.field48 = (var14 - var12) / 2;
Canvas.field422 = (var17 - var16) / 2;
ScriptFrame.field527 = Math.abs(GroundItem.field1242);
ScriptFrame.field527 = Math.abs(TileItem.field1242);
ViewportMouse.field1741 = Math.abs(GrandExchangeEvent.field48);
MenuAction.field1160 = Math.abs(Canvas.field422);
}
@@ -245,9 +245,9 @@ public class Frames extends DualNode {
if (Math.abs(var13 * GrandExchangeEvent.field48 - var12 * Canvas.field422) > var17 * ViewportMouse.field1741 + var16 * MenuAction.field1160) {
return false;
}
if (Math.abs(var11 * Canvas.field422 - var13 * GroundItem.field1242) > var8 * MenuAction.field1160 + var17 * ScriptFrame.field527) {
if (Math.abs(var11 * Canvas.field422 - var13 * TileItem.field1242) > var8 * MenuAction.field1160 + var17 * ScriptFrame.field527) {
return false;
}
return Math.abs(var12 * GroundItem.field1242 - var11 * GrandExchangeEvent.field48) <= var16 * ScriptFrame.field527 + var8 * ViewportMouse.field1741;
return Math.abs(var12 * TileItem.field1242 - var11 * GrandExchangeEvent.field48) <= var16 * ScriptFrame.field527 + var8 * ViewportMouse.field1741;
}
}

View File

@@ -142,10 +142,10 @@ final class GrandExchangeOfferWorldComparator implements Comparator {
scene.removeGroundItemPile(class42.plane, var0, var1);
} else {
long var3 = -99999999L;
GroundItem var5 = null;
TileItem var5 = null;
GroundItem var6;
for (var6 = (GroundItem)var2.last(); var6 != null; var6 = (GroundItem)var2.previous()) {
TileItem var6;
for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) {
ItemDefinition var7 = WorldMapArea.getItemDefinition(var6.id);
long var8 = (long)var7.price;
if (var7.isStackable == 1) {
@@ -162,10 +162,10 @@ final class GrandExchangeOfferWorldComparator implements Comparator {
scene.removeGroundItemPile(class42.plane, var0, var1);
} else {
var2.addLast(var5);
GroundItem var12 = null;
GroundItem var11 = null;
TileItem var12 = null;
TileItem var11 = null;
for (var6 = (GroundItem)var2.last(); var6 != null; var6 = (GroundItem)var2.previous()) {
for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) {
if (var5.id != var6.id) {
if (var12 == null) {
var12 = var6;

View File

@@ -413,7 +413,7 @@ public class Messages {
var16 = Client.getWidgetChild(var1, var0);
if (var16 != null) {
WorldMapID.method542();
GroundItem.method2053(var1, var0, HealthBar.method1957(class268.getWidgetClickMask(var16)), var16.itemId);
TileItem.method2053(var1, var0, HealthBar.method1957(class268.getWidgetClickMask(var16)), var16.itemId);
Client.isItemSelected = 0;
Client.selectedSpellActionName = FontName.method5318(var16);
if (Client.selectedSpellActionName == null) {

View File

@@ -357,7 +357,7 @@ public class MusicPatch extends Node {
var32 = var41 * (var30 - var44) + (var30 - var44) / 2;
for (var33 = var44; var33 < var30; ++var33) {
var34 = GroundItemPile.method2767(var32, var30 - var44);
var34 = TileItemPile.method2767(var32, var30 - var44);
this.field2476[var33] = (byte)(var34 * this.field2476[var33] + 32 >> 6);
var32 += var31 - var41;
}
@@ -405,7 +405,7 @@ public class MusicPatch extends Node {
var32 = var47 * (var30 - var44) + (var30 - var44) / 2;
for (var33 = var44; var33 < var30; ++var33) {
var34 = GroundItemPile.method2767(var32, var30 - var44);
var34 = TileItemPile.method2767(var32, var30 - var44);
int var35 = var34 + (this.field2477[var33] & 255);
if (var35 < 0) {
var35 = 0;

View File

@@ -58,7 +58,7 @@ public abstract class RouteStrategy {
class197.FloorUnderlayDefinition_clearCached();
FloorUnderlayDefinition.FloorUnderlayDefinition_cached.clear();
KitDefinition.KitDefinition_cached.clear();
GroundItemPile.ObjectDefinition_clearCached();
TileItemPile.ObjectDefinition_clearCached();
AbstractWorldMapIcon.NpcDefinition_clearCached();
ItemDefinition.ItemDefinition_cached.clear();
ItemDefinition.ItemDefinition_cachedModels.clear();

View File

@@ -383,7 +383,7 @@ public class Scene {
)
@Export("newGroundItemPile")
public void newGroundItemPile(int var1, int var2, int var3, int var4, Entity var5, long var6, Entity var8, Entity var9) {
GroundItemPile var10 = new GroundItemPile();
TileItemPile var10 = new TileItemPile();
var10.first = var5;
var10.x = var2 * 128 + 64;
var10.y = var3 * 128 + 64;
@@ -410,7 +410,7 @@ public class Scene {
this.tiles[var1][var2][var3] = new Tile(var1, var2, var3);
}
this.tiles[var1][var2][var3].groundItemPile = var10;
this.tiles[var1][var2][var3].tileItemPile = var10;
}
@ObfuscatedName("c")
@@ -713,7 +713,7 @@ public class Scene {
public void removeGroundItemPile(int var1, int var2, int var3) {
Tile var4 = this.tiles[var1][var2][var3];
if (var4 != null) {
var4.groundItemPile = null;
var4.tileItemPile = null;
}
}
@@ -1470,7 +1470,7 @@ public class Scene {
var22.entity.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var22.x * 4096 - Scene_cameraX, var22.tileHeight - Scene_cameraY, var22.y * 4096 - Scene_cameraZ, var22.tag);
}
GroundItemPile var23 = var3.groundItemPile;
TileItemPile var23 = var3.tileItemPile;
if (var23 != null && var23.height == 0) {
if (var23.second != null) {
var23.second.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var23.x * 4096 - Scene_cameraX, var23.tileHeight - Scene_cameraY, var23.y * 4096 - Scene_cameraZ, var23.tag);
@@ -1688,7 +1688,7 @@ public class Scene {
var3.drawSecondary = false;
--tileUpdateCount;
GroundItemPile var32 = var3.groundItemPile;
TileItemPile var32 = var3.tileItemPile;
if (var32 != null && var32.height != 0) {
if (var32.second != null) {
var32.second.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var32.x * 4096 - Scene_cameraX, var32.tileHeight - Scene_cameraY - var32.height, var32.y * 4096 - Scene_cameraZ, var32.tag);

View File

@@ -71,8 +71,8 @@ public final class Tile extends Node {
@ObfuscatedSignature(
signature = "Ldc;"
)
@Export("groundItemPile")
GroundItemPile groundItemPile;
@Export("tileItemPile")
TileItemPile tileItemPile;
@ObfuscatedName("m")
@ObfuscatedGetter(
intValue = 52989903

View File

@@ -0,0 +1,87 @@
import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedGetter;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("ch")
@Implements("TileItem")
public final class TileItem extends Entity {
@ObfuscatedName("i")
@ObfuscatedGetter(
intValue = 1900937269
)
static int field1242;
@ObfuscatedName("c")
@ObfuscatedSignature(
signature = "Llx;"
)
@Export("logoSprite")
static IndexedSprite logoSprite;
@ObfuscatedName("q")
@ObfuscatedGetter(
intValue = 1946972179
)
@Export("id")
int id;
@ObfuscatedName("w")
@ObfuscatedGetter(
intValue = -1304382567
)
@Export("quantity")
int quantity;
TileItem() {
}
@ObfuscatedName("c")
@ObfuscatedSignature(
signature = "(I)Ldm;",
garbageValue = "759381421"
)
@Export("getModel")
protected final Model getModel() {
return WorldMapArea.getItemDefinition(this.id).getModel(this.quantity);
}
@ObfuscatedName("q")
@ObfuscatedSignature(
signature = "(Lhp;B)V",
garbageValue = "97"
)
public static void method2054(AbstractArchive var0) {
StructDefinition.StructDefinition_archive = var0;
}
@ObfuscatedName("p")
@ObfuscatedSignature(
signature = "(III)Lbj;",
garbageValue = "308740376"
)
static Message method2049(int var0, int var1) {
ChatChannel var2 = (ChatChannel)Messages.Messages_channels.get(var0);
return var2.getMessage(var1);
}
@ObfuscatedName("hs")
@ObfuscatedSignature(
signature = "(IIIII)V",
garbageValue = "96373324"
)
static void method2053(int var0, int var1, int var2, int var3) {
Widget var4 = Client.getWidgetChild(var0, var1);
if (var4 != null && var4.onTargetEnter != null) {
ScriptEvent var5 = new ScriptEvent();
var5.widget = var4;
var5.args = var4.onTargetEnter;
LoginPacket.runScriptEvent(var5);
}
Client.field812 = var3;
Client.isSpellSelected = true;
WorldMapEvent.field359 = var0;
Client.field848 = var1;
WorldMapCacheName.selectedSpellFlags = var2;
Strings.method4120(var4);
}
}

View File

@@ -0,0 +1,109 @@
import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedGetter;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("dc")
@Implements("TileItemPile")
public final class TileItemPile
{
@ObfuscatedName("q")
@ObfuscatedGetter(
intValue = -706647707
)
@Export("tileHeight")
int tileHeight;
@ObfuscatedName("w")
@ObfuscatedGetter(
intValue = -1749434399
)
@Export("x")
int x;
@ObfuscatedName("e")
@ObfuscatedGetter(
intValue = 1687183849
)
@Export("y")
int y;
@ObfuscatedName("p")
@ObfuscatedSignature(
signature = "Leo;"
)
@Export("first")
Entity first;
@ObfuscatedName("k")
@ObfuscatedSignature(
signature = "Leo;"
)
@Export("second")
Entity second;
@ObfuscatedName("l")
@ObfuscatedSignature(
signature = "Leo;"
)
@Export("third")
Entity third;
@ObfuscatedName("b")
@ObfuscatedGetter(
longValue = -6836359089398778317L
)
@Export("tag")
long tag;
@ObfuscatedName("i")
@ObfuscatedGetter(
intValue = -1167512637
)
@Export("height")
int height;
TileItemPile() {
}
@ObfuscatedName("k")
@ObfuscatedSignature(
signature = "(III)I",
garbageValue = "-989207473"
)
public static int method2767(int var0, int var1) {
int var2 = var0 >>> 31;
return (var0 + var2) / var1 - var2;
}
@ObfuscatedName("l")
@ObfuscatedSignature(
signature = "(IB)V",
garbageValue = "-23"
)
static void method2764(int var0) {
ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0);
if (var1 != null) {
var1.remove();
}
}
@ObfuscatedName("v")
@ObfuscatedSignature(
signature = "(III)I",
garbageValue = "1314012151"
)
static final int method2765(int var0, int var1) {
int var2 = MouseHandler.method1021(var0 - 1, var1 - 1) + MouseHandler.method1021(1 + var0, var1 - 1) + MouseHandler.method1021(var0 - 1, 1 + var1) + MouseHandler.method1021(1 + var0, 1 + var1);
int var3 = MouseHandler.method1021(var0 - 1, var1) + MouseHandler.method1021(var0 + 1, var1) + MouseHandler.method1021(var0, var1 - 1) + MouseHandler.method1021(var0, var1 + 1);
int var4 = MouseHandler.method1021(var0, var1);
return var2 / 16 + var3 / 8 + var4 / 4;
}
@ObfuscatedName("y")
@ObfuscatedSignature(
signature = "(B)V",
garbageValue = "76"
)
@Export("ObjectDefinition_clearCached")
public static void ObjectDefinition_clearCached() {
ObjectDefinition.ObjectDefinition_cached.clear();
ObjectDefinition.ObjectDefinition_cachedModelData.clear();
ObjectDefinition.ObjectDefinition_cachedEntities.clear();
ObjectDefinition.ObjectDefinition_cachedModels.clear();
}
}

View File

@@ -5,7 +5,7 @@ import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("jr")
@Implements("Timer")
@Implements("Timer") //GroundItem
public class Timer {
@ObfuscatedName("q")
@ObfuscatedGetter(
@@ -427,7 +427,7 @@ public class Timer {
ObjectDefinition.ObjectDefinition_modelsArchive = var2;
ObjectDefinition.ObjectDefinition_isLowDetail = var34;
FaceNormal.setNpcDefinitionArchives(class215.archive2, NPCDefinition.archive7);
GroundItem.method2054(class215.archive2);
TileItem.method2054(class215.archive2);
Archive var27 = class215.archive2;
Archive var5 = NPCDefinition.archive7;
boolean var6 = Client.isMembersWorld;

View File

@@ -150,7 +150,7 @@ public class VarbitDefinition extends DualNode {
Login.worldSelectOpen = false;
GrandExchangeOfferWorldComparator.leftTitleSprite.drawAt(Login.xPadding, 0);
NPC.rightTitleSprite.drawAt(Login.xPadding + 382, 0);
GroundItem.logoSprite.drawAt(Login.xPadding + 382 - GroundItem.logoSprite.subWidth / 2, 18);
TileItem.logoSprite.drawAt(Login.xPadding + 382 - TileItem.logoSprite.subWidth / 2, 18);
break;
}
@@ -160,7 +160,7 @@ public class VarbitDefinition extends DualNode {
Login.worldSelectOpen = false;
GrandExchangeOfferWorldComparator.leftTitleSprite.drawAt(Login.xPadding, 0);
NPC.rightTitleSprite.drawAt(Login.xPadding + 382, 0);
GroundItem.logoSprite.drawAt(Login.xPadding + 382 - GroundItem.logoSprite.subWidth / 2, 18);
TileItem.logoSprite.drawAt(Login.xPadding + 382 - TileItem.logoSprite.subWidth / 2, 18);
} else {
if (Login.worldSelectPage > 0 && Login.worldSelectLeftSprite != null && MouseHandler.MouseHandler_lastPressedX >= 0 && MouseHandler.MouseHandler_lastPressedX <= Login.worldSelectLeftSprite.subWidth && MouseHandler.MouseHandler_lastPressedY >= ParamDefinition.canvasHeight / 2 - 50 && MouseHandler.MouseHandler_lastPressedY <= ParamDefinition.canvasHeight / 2 + 50) {
--Login.worldSelectPage;
@@ -177,7 +177,7 @@ public class VarbitDefinition extends DualNode {
Login.worldSelectOpen = false;
GrandExchangeOfferWorldComparator.leftTitleSprite.drawAt(Login.xPadding, 0);
NPC.rightTitleSprite.drawAt(Login.xPadding + 382, 0);
GroundItem.logoSprite.drawAt(Login.xPadding + 382 - GroundItem.logoSprite.subWidth / 2, 18);
TileItem.logoSprite.drawAt(Login.xPadding + 382 - TileItem.logoSprite.subWidth / 2, 18);
break;
}

View File

@@ -137,7 +137,7 @@ final class class1 implements class0 {
}
} else {
GroundItem var32;
TileItem var32;
if (class185.field2321 == var0) {
var2 = var1.method5722();
var3 = (var2 >> 4 & 7) + DefaultsGroup.field3819;
@@ -146,7 +146,7 @@ final class class1 implements class0 {
if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) {
NodeDeque var31 = Client.groundItems[class42.plane][var3][var4];
if (var31 != null) {
for (var32 = (GroundItem)var31.last(); var32 != null; var32 = (GroundItem)var31.previous()) {
for (var32 = (TileItem)var31.last(); var32 != null; var32 = (TileItem)var31.previous()) {
if ((var5 & 32767) == var32.id) {
var32.remove();
break;
@@ -204,7 +204,7 @@ final class class1 implements class0 {
if (var6 >= 0 && var7 >= 0 && var6 < 104 && var7 < 104) {
NodeDeque var42 = Client.groundItems[class42.plane][var6][var7];
if (var42 != null) {
for (GroundItem var34 = (GroundItem)var42.last(); var34 != null; var34 = (GroundItem)var42.previous()) {
for (TileItem var34 = (TileItem)var42.last(); var34 != null; var34 = (TileItem)var42.previous()) {
if ((var2 & 32767) == var34.id && var4 == var34.quantity) {
var34.quantity = var3;
break;
@@ -222,7 +222,7 @@ final class class1 implements class0 {
var5 = (var4 >> 4 & 7) + DefaultsGroup.field3819;
var6 = (var4 & 7) + ChatChannel.field1306;
if (var5 >= 0 && var6 >= 0 && var5 < 104 && var6 < 104) {
var32 = new GroundItem();
var32 = new TileItem();
var32.id = var3;
var32.quantity = var2;
if (Client.groundItems[class42.plane][var5][var6] == null) {

View File

@@ -23,7 +23,7 @@ public class class189 {
} else {
GrandExchangeOfferWorldComparator.leftTitleSprite.drawAt(Login.xPadding, 0);
NPC.rightTitleSprite.drawAt(Login.xPadding + 382, 0);
GroundItem.logoSprite.drawAt(Login.xPadding + 382 - GroundItem.logoSprite.subWidth / 2, 18);
TileItem.logoSprite.drawAt(Login.xPadding + 382 - TileItem.logoSprite.subWidth / 2, 18);
int var4;
if (Client.gameState == 0 || Client.gameState == 5) {
byte var3 = 20;

View File

@@ -253,7 +253,7 @@ final class class2 implements class0 {
Messages.method2163(var20 + 1, var9.id, var9.childIndex, var9.itemId, "");
} else if (var20 == 10) {
WorldMapID.method542();
GroundItem.method2053(var9.id, var9.childIndex, HealthBar.method1957(class268.getWidgetClickMask(var9)), var9.itemId);
TileItem.method2053(var9.id, var9.childIndex, HealthBar.method1957(class268.getWidgetClickMask(var9)), var9.itemId);
Client.selectedSpellActionName = FontName.method5318(var9);
if (Client.selectedSpellActionName == null) {
Client.selectedSpellActionName = "null";

View File

@@ -340,7 +340,7 @@ public class class65 extends RouteStrategy {
if (var17 == 3) {
NodeDeque var33 = Client.groundItems[class42.plane][var15][var16];
if (var33 != null) {
for (GroundItem var37 = (GroundItem)var33.first(); var37 != null; var37 = (GroundItem)var33.next()) {
for (TileItem var37 = (TileItem)var33.first(); var37 != null; var37 = (TileItem)var33.next()) {
ItemDefinition var35 = WorldMapArea.getItemDefinition(var37.id);
if (Client.isItemSelected == 1) {
class188.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + ClientPreferences.colorStartTag(16748608) + var35.name, 16, var37.id, var15, var16);

View File

@@ -400,7 +400,7 @@ public class class96 {
Login.runesSprite = null;
GrandExchangeOfferWorldComparator.leftTitleSprite = null;
NPC.rightTitleSprite = null;
GroundItem.logoSprite = null;
TileItem.logoSprite = null;
Login.title_muteSprite = null;
Login.options_buttons_0Sprite = null;
Decimator.options_buttons_2Sprite = null;