Files
runelite/runescape-client/src/main/java/ItemContainer.java
2020-03-26 14:17:06 +00:00

153 lines
3.7 KiB
Java

import java.applet.Applet;
import java.net.URL;
import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
import netscape.javascript.JSObject;
@ObfuscatedName("bs")
@Implements("ItemContainer")
public class ItemContainer extends Node {
@ObfuscatedName("x")
@ObfuscatedSignature(
signature = "Llv;"
)
@Export("itemContainers")
static NodeHashTable itemContainers;
@ObfuscatedName("bq")
@ObfuscatedSignature(
signature = "Lle;"
)
static IndexedSprite field572;
@ObfuscatedName("fr")
@ObfuscatedSignature(
signature = "Lkf;"
)
@Export("WorldMapElement_fonts")
static Fonts WorldMapElement_fonts;
@ObfuscatedName("m")
@Export("ids")
int[] ids;
@ObfuscatedName("k")
@Export("quantities")
int[] quantities;
static {
itemContainers = new NodeHashTable(32);
}
ItemContainer() {
this.ids = new int[]{-1};
this.quantities = new int[]{0};
}
@ObfuscatedName("d")
@ObfuscatedSignature(
signature = "(Ljava/lang/String;ILjava/lang/String;B)Z",
garbageValue = "17"
)
static boolean method1274(String var0, int var1, String var2) {
if (var1 == 0) {
try {
if (!class60.field462.startsWith("win")) {
throw new Exception();
} else if (!var0.startsWith("http://") && !var0.startsWith("https://")) {
throw new Exception();
} else {
String var13 = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789?&=,.%+-_#:/*";
for (int var4 = 0; var4 < var0.length(); ++var4) {
if (var13.indexOf(var0.charAt(var4)) == -1) {
throw new Exception();
}
}
Runtime.getRuntime().exec("cmd /c start \"j\" \"" + var0 + "\"");
return true;
}
} catch (Throwable var8) {
return false;
}
} else if (var1 == 1) {
try {
Applet var7 = class60.applet;
Object[] var5 = new Object[]{(new URL(class60.applet.getCodeBase(), var0)).toString()};
Object var3 = JSObject.getWindow(var7).call(var2, var5);
return var3 != null;
} catch (Throwable var9) {
return false;
}
} else if (var1 == 2) {
try {
class60.applet.getAppletContext().showDocument(new URL(class60.applet.getCodeBase(), var0), "_blank");
return true;
} catch (Exception var10) {
return false;
}
} else if (var1 == 3) {
try {
class56.method950(class60.applet, "loggedout");
} catch (Throwable var12) {
}
try {
class60.applet.getAppletContext().showDocument(new URL(class60.applet.getCodeBase(), var0), "_top");
return true;
} catch (Exception var11) {
return false;
}
} else {
throw new IllegalArgumentException();
}
}
@ObfuscatedName("je")
@ObfuscatedSignature(
signature = "(Lhe;Ljx;IIZI)V",
garbageValue = "1190936651"
)
@Export("addWidgetItemMenuItem")
static final void addWidgetItemMenuItem(Widget var0, ItemDefinition var1, int var2, int var3, boolean var4) {
String[] var5 = var1.inventoryActions;
byte var6 = -1;
String var7 = null;
if (var5 != null && var5[var3] != null) {
if (var3 == 0) {
var6 = 33;
} else if (var3 == 1) {
var6 = 34;
} else if (var3 == 2) {
var6 = 35;
} else if (var3 == 3) {
var6 = 36;
} else {
var6 = 37;
}
var7 = var5[var3];
} else if (var3 == 4) {
var6 = 37;
var7 = "Drop";
}
if (var6 != -1 && var7 != null) {
ScriptFrame.insertMenuItem(var7, class297.colorStartTag(16748608) + var1.name, var6, var1.id, var2, var0.id, var4);
}
}
@ObfuscatedName("jo")
@ObfuscatedSignature(
signature = "(Lhe;I)V",
garbageValue = "514293783"
)
@Export("invalidateWidget")
static void invalidateWidget(Widget var0) {
if (var0.cycle == Client.field884) {
Client.field679[var0.rootIndex] = true;
}
}
}