Files
runelite/runescape-client/src/main/java/Player.java
Lucas 9a4d37d7bb Merge remote-tracking branch 'ext_upstream/master' into master3
# Conflicts:
#	deobfuscator/pom.xml
#	deobfuscator/src/main/java/net/runelite/asm/attributes/Exceptions.java
#	deobfuscator/src/main/java/net/runelite/asm/attributes/annotation/Element.java
#	deobfuscator/src/main/java/net/runelite/asm/attributes/code/InstructionType.java
#	deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/FieldInstruction.java
#	deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/LVTInstruction.java
#	deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/PutField.java
#	deobfuscator/src/main/java/net/runelite/asm/pool/Class.java
#	deobfuscator/src/main/java/net/runelite/asm/pool/Field.java
#	deobfuscator/src/main/java/net/runelite/deob/Deob.java
#	deobfuscator/src/main/java/net/runelite/deob/DeobProperties.java
#	deobfuscator/src/main/java/net/runelite/deob/clientver/VersionClassVisitor.java
#	deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/LVTType.java
#	deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/MapKey.java
#	deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ConstructorMapper.java
#	deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ExecutionMapper.java
#	deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/Mapper.java
#	deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ParallelExecutorMapping.java
#	deobfuscator/src/main/java/net/runelite/deob/updater/ParameterRenamer.java
#	deobfuscator/src/test/java/net/runelite/asm/annotations/MyAnnotation.java
#	deobfuscator/src/test/java/net/runelite/asm/execution/mapper/StaticStepTest.java
#	deobfuscator/src/test/java/net/runelite/asm/execution/tests/TableSwitch.java
#	deobfuscator/src/test/java/net/runelite/asm/signature/SignatureTest.java
#	deobfuscator/src/test/java/net/runelite/asm/visitors/ClassFileVisitorTest.java
#	deobfuscator/src/test/java/net/runelite/deob/TemporyFolderLocation.java
#	deobfuscator/src/test/java/net/runelite/deob/clientver/ClientVersionTest.java
#	deobfuscator/src/test/java/net/runelite/deob/deobfuscators/transformers/buffer/RuneliteBufferTest.java
#	deobfuscator/src/test/java/net/runelite/deob/deobfuscators/unusedclass/ClassA.java
#	deobfuscator/src/test/java/net/runelite/deob/deobfuscators/unusedclass/EmptyClass.java
#	deobfuscator/src/test/java/net/runelite/deob/deobfuscators/unusedclass/EmptyInterface.java
#	deobfuscator/src/test/java/net/runelite/osb/inject/FieldHook.java
#	injected-client/pom.xml
#	injector-plugin/pom.xml
#	injector-plugin/src/main/java/net/runelite/injector/Inject.java
#	injector-plugin/src/main/java/net/runelite/injector/InjectMojo.java
#	injector-plugin/src/main/java/net/runelite/injector/InjectionException.java
#	injector-plugin/src/main/java/net/runelite/injector/MixinInjector.java
#	injector-plugin/src/main/java/net/runelite/injector/raw/ClearColorBuffer.java
#	injector-plugin/src/main/java/net/runelite/injector/raw/DrawAfterWidgets.java
#	injector-plugin/src/main/java/net/runelite/injector/raw/RasterizerHook.java
#	pom.xml
#	runelite-api/src/main/java/net/runelite/api/Actor.java
#	runelite-api/src/main/java/net/runelite/api/Client.java
#	runelite-api/src/main/java/net/runelite/api/CollisionData.java
#	runelite-api/src/main/java/net/runelite/api/EquipmentInventorySlot.java
#	runelite-api/src/main/java/net/runelite/api/NPCDefinition.java
#	runelite-api/src/main/java/net/runelite/api/Perspective.java
#	runelite-api/src/main/java/net/runelite/api/coords/WorldArea.java
#	runelite-api/src/main/java/net/runelite/api/coords/WorldPoint.java
#	runelite-api/src/main/java/net/runelite/api/events/GraphicChanged.java
#	runelite-api/src/main/java/net/runelite/api/events/MenuOptionClicked.java
#	runelite-api/src/main/java/net/runelite/api/events/NpcActionChanged.java
#	runelite-api/src/main/java/net/runelite/api/events/PostItemDefinition.java
#	runelite-api/src/main/java/net/runelite/api/events/SpotAnimationChanged.java
#	runelite-api/src/main/java/net/runelite/api/vars/AccountType.java
#	runelite-api/src/main/java/net/runelite/mapping/Construct.java
#	runelite-api/src/main/java/net/runelite/mapping/Hook.java
#	runelite-api/src/main/java/net/runelite/mapping/Implements.java
#	runelite-api/src/main/java/net/runelite/mapping/ObfuscatedSignature.java
#	runelite-client/src/main/java/net/runelite/client/game/ItemManager.java
#	runelite-client/src/main/java/net/runelite/client/plugins/banktags/BankTagsPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsOverlay.java
#	runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CrypticClue.java
#	runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/MapClue.java
#	runelite-client/src/main/java/net/runelite/client/plugins/cooking/CookingPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/equipmentinspector/EquipmentInspectorPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/examine/ExaminePlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/highalchemy/HighAlchemyOverlay.java
#	runelite-client/src/main/java/net/runelite/client/plugins/instancemap/InstanceMapOverlay.java
#	runelite-client/src/main/java/net/runelite/client/plugins/interfacestyles/InterfaceStylesPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/inventorysetups/InventorySetupPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/inventoryviewer/InventoryViewerOverlay.java
#	runelite-client/src/main/java/net/runelite/client/plugins/loginscreen/LoginScreenPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/multiindicators/MultiIndicatorsPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/objectindicators/ObjectIndicatorsPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/pvptools/PvpToolsPlugin.java
#	runelite-client/src/main/java/net/runelite/client/plugins/pyramidplunder/PyramidPlunderOverlay.java
#	runelite-client/src/main/java/net/runelite/client/plugins/skillcalculator/banked/CriticalItem.java
#	runelite-client/src/main/java/net/runelite/client/plugins/wiki/WikiPlugin.java
#	runelite-client/src/main/java/net/runelite/client/rs/ClientLoader.java
#	runelite-client/src/main/java/net/runelite/client/ui/overlay/arrow/ArrowUtil.java
#	runelite-client/src/main/java/net/runelite/client/util/PvPUtil.java
#	runelite-client/src/test/java/net/runelite/client/plugins/cooking/CookingPluginTest.java
#	runelite-mixins/src/main/java/net/runelite/mixins/RSAbstractIndexCacheMixin.java
#	runelite-mixins/src/main/java/net/runelite/mixins/RSActorMixin.java
#	runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java
#	runelite-mixins/src/main/java/net/runelite/mixins/RSMessageMixin.java
#	runelite-mixins/src/main/java/net/runelite/mixins/RSPlayerCompositionMixin.java
#	runelite-mixins/src/main/java/net/runelite/mixins/RSTileMixin.java
#	runescape-api/src/main/java/net/runelite/mapping/Implements.java
#	runescape-api/src/main/java/net/runelite/mapping/ObfuscatedSignature.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSBufferProvider.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSClient.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSCollisionData.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSCombatInfo1.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSCombatInfoListHolder.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSDecorativeObject.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSFriendContainer.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSGameShell.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSGroundObject.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSItem.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSItemLayer.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSIterableNodeDeque.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSJagexLoginType.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSKeyHandler.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSMainBufferProvider.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSMapElementConfig.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSMessage.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSMessageNode.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSModel.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSPlayerComposition.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSRasterProvider.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSSequenceDefinition.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSSpritePixels.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSWallObject.java
#	runescape-api/src/main/java/net/runelite/rs/api/RSWorldMap.java
2019-06-08 23:06:59 +02:00

546 lines
14 KiB
Java

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("br")
@Implements("Player")
public final class Player extends Actor {
@ObfuscatedName("gi")
@ObfuscatedSignature(
signature = "[Lln;"
)
@Export("headIconHintSprites")
static Sprite[] headIconHintSprites;
@ObfuscatedName("m")
@ObfuscatedSignature(
signature = "Lkp;"
)
@Export("username")
Username username;
@ObfuscatedName("f")
@ObfuscatedSignature(
signature = "Lhi;"
)
@Export("appearance")
PlayerAppearance appearance;
@ObfuscatedName("q")
@ObfuscatedGetter(
intValue = 2021372599
)
@Export("headIconPk")
int headIconPk;
@ObfuscatedName("w")
@ObfuscatedGetter(
intValue = -793415473
)
@Export("headIconPrayer")
int headIconPrayer;
@ObfuscatedName("u")
@Export("actions")
String[] actions;
@ObfuscatedName("g")
@ObfuscatedGetter(
intValue = 984869133
)
@Export("combatLevel")
int combatLevel;
@ObfuscatedName("l")
@ObfuscatedGetter(
intValue = -1136542281
)
@Export("skillLevel")
int skillLevel;
@ObfuscatedName("e")
@ObfuscatedGetter(
intValue = 1989338999
)
@Export("tileHeight")
int tileHeight;
@ObfuscatedName("x")
@ObfuscatedGetter(
intValue = -351876137
)
@Export("animationCycleStart")
int animationCycleStart;
@ObfuscatedName("d")
@ObfuscatedGetter(
intValue = -359981047
)
@Export("animationCycleEnd")
int animationCycleEnd;
@ObfuscatedName("k")
@ObfuscatedGetter(
intValue = 665272587
)
@Export("__k")
int __k;
@ObfuscatedName("n")
@ObfuscatedGetter(
intValue = -1624108131
)
@Export("tileHeight2")
int tileHeight2;
@ObfuscatedName("i")
@ObfuscatedGetter(
intValue = -1771431457
)
@Export("__i")
int __i;
@ObfuscatedName("a")
@ObfuscatedSignature(
signature = "Ldu;"
)
@Export("model0")
Model model0;
@ObfuscatedName("z")
@ObfuscatedGetter(
intValue = 1610462047
)
@Export("__z")
int __z;
@ObfuscatedName("j")
@ObfuscatedGetter(
intValue = 224552403
)
@Export("__j")
int __j;
@ObfuscatedName("s")
@ObfuscatedGetter(
intValue = 305969541
)
@Export("__s")
int __s;
@ObfuscatedName("t")
@ObfuscatedGetter(
intValue = 892671055
)
@Export("__t")
int __t;
@ObfuscatedName("y")
@Export("isUnanimated")
boolean isUnanimated;
@ObfuscatedName("h")
@ObfuscatedGetter(
intValue = 91041167
)
@Export("team")
int team;
@ObfuscatedName("b")
@Export("isHidden")
boolean isHidden;
@ObfuscatedName("c")
@ObfuscatedGetter(
intValue = 1332604413
)
@Export("plane")
int plane;
@ObfuscatedName("r")
@ObfuscatedGetter(
intValue = 1486240677
)
@Export("index")
int index;
@ObfuscatedName("p")
@ObfuscatedSignature(
signature = "Lkd;"
)
@Export("isFriendTriBool")
TriBool isFriendTriBool;
@ObfuscatedName("v")
@ObfuscatedSignature(
signature = "Lkd;"
)
@Export("isInClanChat")
TriBool isInClanChat;
@ObfuscatedName("ag")
@Export("__ag")
boolean __ag;
@ObfuscatedName("aq")
@ObfuscatedGetter(
intValue = -539678769
)
@Export("tileX")
int tileX;
@ObfuscatedName("aj")
@ObfuscatedGetter(
intValue = 702193221
)
@Export("tileY")
int tileY;
Player() {
this.headIconPk = -1;
this.headIconPrayer = -1;
this.actions = new String[3];
for(int var1 = 0; var1 < 3; ++var1) {
this.actions[var1] = "";
}
this.combatLevel = 0;
this.skillLevel = 0;
this.animationCycleStart = 0;
this.animationCycleEnd = 0;
this.isUnanimated = false;
this.team = 0;
this.isHidden = false;
this.isFriendTriBool = TriBool.TriBool_unknown;
this.isInClanChat = TriBool.TriBool_unknown;
this.__ag = false;
}
@ObfuscatedName("m")
@ObfuscatedSignature(
signature = "(Lgr;I)V",
garbageValue = "-801926003"
)
@Export("read")
final void read(Buffer var1) {
var1.index = 0;
int var2 = var1.readUnsignedByte();
this.headIconPk = var1.readByte();
this.headIconPrayer = var1.readByte();
int var3 = -1;
this.team = 0;
int[] var4 = new int[12];
int var6;
int var7;
for(int var5 = 0; var5 < 12; ++var5) {
var6 = var1.readUnsignedByte();
if(var6 == 0) {
var4[var5] = 0;
} else {
var7 = var1.readUnsignedByte();
var4[var5] = var7 + (var6 << 8);
if(var5 == 0 && var4[0] == 65535) {
var3 = var1.__ag_302();
break;
}
if(var4[var5] >= 512) {
int var8 = Skills.getItemDefinition(var4[var5] - 512).int1;
if(var8 != 0) {
this.team = var8;
}
}
}
}
int[] var9 = new int[5];
for(var6 = 0; var6 < 5; ++var6) {
var7 = var1.readUnsignedByte();
if(var7 < 0 || var7 >= class229.__hz_l[var6].length) {
var7 = 0;
}
var9[var6] = var7;
}
super.idleSequence = var1.__ag_302();
if(super.idleSequence == 65535) {
super.idleSequence = -1;
}
super.turnLeftSequence = var1.__ag_302();
if(super.turnLeftSequence == 65535) {
super.turnLeftSequence = -1;
}
super.turnRightSequence = super.turnLeftSequence;
super.walkSequence = var1.__ag_302();
if(super.walkSequence == 65535) {
super.walkSequence = -1;
}
super.walkTurnSequence = var1.__ag_302();
if(super.walkTurnSequence == 65535) {
super.walkTurnSequence = -1;
}
super.walkTurnLeftSequence = var1.__ag_302();
if(super.walkTurnLeftSequence == 65535) {
super.walkTurnLeftSequence = -1;
}
super.walkTurnRightSequence = var1.__ag_302();
if(super.walkTurnRightSequence == 65535) {
super.walkTurnRightSequence = -1;
}
super.runSequence = var1.__ag_302();
if(super.runSequence == 65535) {
super.runSequence = -1;
}
this.username = new Username(var1.readStringCp1252NullTerminated(), KeyHandler.loginType);
this.clearIsFriend();
this.clearIsInClanChat();
if(this == Canvas.localPlayer) {
RunException.localPlayerName = this.username.getName();
}
this.combatLevel = var1.readUnsignedByte();
this.skillLevel = var1.__ag_302();
this.isHidden = var1.readUnsignedByte() == 1;
if(Client.gameBuild == 0 && Client.rights >= 2) {
this.isHidden = false;
}
if(this.appearance == null) {
this.appearance = new PlayerAppearance();
}
this.appearance.__m_385(var4, var9, var2 == 1, var3);
}
@ObfuscatedName("f")
@ObfuscatedSignature(
signature = "(B)Z",
garbageValue = "92"
)
@Export("isFriend")
boolean isFriend() {
if(this.isFriendTriBool == TriBool.TriBool_unknown) {
this.checkIsFriend();
}
return this.isFriendTriBool == TriBool.TriBool_true;
}
@ObfuscatedName("q")
@ObfuscatedSignature(
signature = "(I)V",
garbageValue = "-2059706128"
)
@Export("clearIsFriend")
void clearIsFriend() {
this.isFriendTriBool = TriBool.TriBool_unknown;
}
@ObfuscatedName("w")
@ObfuscatedSignature(
signature = "(I)V",
garbageValue = "2126310249"
)
@Export("checkIsFriend")
void checkIsFriend() {
this.isFriendTriBool = WorldMapArea.friendSystem.__t_161(this.username)?TriBool.TriBool_true:TriBool.TriBool_false;
}
@ObfuscatedName("o")
@ObfuscatedSignature(
signature = "(B)Z",
garbageValue = "21"
)
@Export("isClanMember")
boolean isClanMember() {
if(this.isInClanChat == TriBool.TriBool_unknown) {
this.updateIsInClanChat();
}
return this.isInClanChat == TriBool.TriBool_true;
}
@ObfuscatedName("u")
@ObfuscatedSignature(
signature = "(I)V",
garbageValue = "1982407728"
)
@Export("clearIsInClanChat")
void clearIsInClanChat() {
this.isInClanChat = TriBool.TriBool_unknown;
}
@ObfuscatedName("g")
@ObfuscatedSignature(
signature = "(I)V",
garbageValue = "833825629"
)
@Export("updateIsInClanChat")
void updateIsInClanChat() {
this.isInClanChat = PacketWriter.clanChat != null && PacketWriter.clanChat.contains(this.username)?TriBool.TriBool_true:TriBool.TriBool_false;
}
@ObfuscatedName("l")
@ObfuscatedSignature(
signature = "(I)I",
garbageValue = "-2025332260"
)
@Export("transformedSize")
int transformedSize() {
return this.appearance != null && this.appearance.npcTransformId != -1?ObjectDefinition.getNpcDefinition(this.appearance.npcTransformId).size:1;
}
@ObfuscatedName("e")
@ObfuscatedSignature(
signature = "(I)Ldu;",
garbageValue = "-2134947096"
)
@Export("getModel")
protected final Model getModel() {
if(this.appearance == null) {
return null;
} else {
SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0?WorldMapAreaData.getSequenceDefinition(super.sequence):null;
SequenceDefinition var2 = super.movementSequence == -1 || this.isUnanimated || super.idleSequence == super.movementSequence && var1 != null?null:WorldMapAreaData.getSequenceDefinition(super.movementSequence);
Model var3 = this.appearance.getModel(var1, super.sequenceFrame, var2, super.movementFrame);
if(var3 == null) {
return null;
} else {
var3.calculateBoundsCylinder();
super.defaultHeight = var3.height;
Model var4;
Model[] var5;
if(!this.isUnanimated && super.spotAnimation != -1 && super.spotAnimationFrame != -1) {
var4 = class50.getSpotAnimationDefinition(super.spotAnimation).getModel(super.spotAnimationFrame);
if(var4 != null) {
var4.offsetBy(0, -super.heightOffset, 0);
var5 = new Model[]{var3, var4};
var3 = new Model(var5, 2);
}
}
if(!this.isUnanimated && this.model0 != null) {
if(Client.cycle >= this.animationCycleEnd) {
this.model0 = null;
}
if(Client.cycle >= this.animationCycleStart && Client.cycle < this.animationCycleEnd) {
var4 = this.model0;
var4.offsetBy(this.__k - super.x, this.tileHeight2 - this.tileHeight, this.__i - super.y);
if(super.orientation == 512) {
var4.rotateY90Ccw();
var4.rotateY90Ccw();
var4.rotateY90Ccw();
} else if(super.orientation == 1024) {
var4.rotateY90Ccw();
var4.rotateY90Ccw();
} else if(super.orientation == 1536) {
var4.rotateY90Ccw();
}
var5 = new Model[]{var3, var4};
var3 = new Model(var5, 2);
if(super.orientation == 512) {
var4.rotateY90Ccw();
} else if(super.orientation == 1024) {
var4.rotateY90Ccw();
var4.rotateY90Ccw();
} else if(super.orientation == 1536) {
var4.rotateY90Ccw();
var4.rotateY90Ccw();
var4.rotateY90Ccw();
}
var4.offsetBy(super.x - this.__k, this.tileHeight - this.tileHeight2, super.y - this.__i);
}
}
var3.isSingleTile = true;
return var3;
}
}
}
@ObfuscatedName("x")
@ObfuscatedSignature(
signature = "(IIBI)V",
garbageValue = "-2066158770"
)
@Export("__x_130")
final void __x_130(int var1, int var2, byte var3) {
if(super.sequence != -1 && WorldMapAreaData.getSequenceDefinition(super.sequence).__s == 1) {
super.sequence = -1;
}
super.__bc = -1;
if(var1 >= 0 && var1 < 104 && var2 >= 0 && var2 < 104) {
if(super.pathX[0] >= 0 && super.pathX[0] < 104 && super.pathY[0] >= 0 && super.pathY[0] < 104) {
if(var3 == 2) {
WorldMapIcon2.method316(this, var1, var2, (byte)2);
}
this.__a_131(var1, var2, var3);
} else {
this.resetPath(var1, var2);
}
} else {
this.resetPath(var1, var2);
}
}
@ObfuscatedName("d")
@ObfuscatedSignature(
signature = "(III)V",
garbageValue = "1966552419"
)
@Export("resetPath")
void resetPath(int var1, int var2) {
super.pathLength = 0;
super.__ch = 0;
super.__cq = 0;
super.pathX[0] = var1;
super.pathY[0] = var2;
int var3 = this.transformedSize();
super.x = super.pathX[0] * 128 + var3 * 64;
super.y = super.pathY[0] * 128 + var3 * 64;
}
@ObfuscatedName("a")
@ObfuscatedSignature(
signature = "(IIBI)V",
garbageValue = "-1280043751"
)
@Export("__a_131")
final void __a_131(int var1, int var2, byte var3) {
if(super.pathLength < 9) {
++super.pathLength;
}
for(int var4 = super.pathLength; var4 > 0; --var4) {
super.pathX[var4] = super.pathX[var4 - 1];
super.pathY[var4] = super.pathY[var4 - 1];
super.pathTraversed[var4] = super.pathTraversed[var4 - 1];
}
super.pathX[0] = var1;
super.pathY[0] = var2;
super.pathTraversed[0] = var3;
}
@ObfuscatedName("z")
@ObfuscatedSignature(
signature = "(B)Z",
garbageValue = "1"
)
@Export("isVisible")
final boolean isVisible() {
return this.appearance != null;
}
@ObfuscatedName("if")
@ObfuscatedSignature(
signature = "(B)V",
garbageValue = "13"
)
static void method1281() {
if(Client.isSpellSelected) {
Widget var0 = class204.getWidgetChild(ServerBuild.__iy_lo, Client.__client_lc);
if(var0 != null && var0.onTargetLeave != null) {
ScriptEvent var1 = new ScriptEvent();
var1.widget = var0;
var1.args0 = var0.onTargetLeave;
AbstractIndexCache.runScript(var1);
}
Client.isSpellSelected = false;
class22.method295(var0);
}
}
}