Files
runelite/runescape-client/src/main/java/DynamicObject.java
2019-07-10 10:58:36 +02:00

646 lines
28 KiB
Java

import java.lang.management.GarbageCollectorMXBean;
import java.lang.management.ManagementFactory;
import java.util.Iterator;
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;
import net.runelite.rs.ScriptOpcodes;
@ObfuscatedName("cf")
@Implements("DynamicObject")
public class DynamicObject extends Entity {
@ObfuscatedName("df")
@ObfuscatedSignature(
signature = "Lfu;"
)
@Export("js5Socket")
static AbstractSocket js5Socket;
@ObfuscatedName("m")
@ObfuscatedGetter(
intValue = 1369707199
)
@Export("id")
int id;
@ObfuscatedName("f")
@ObfuscatedGetter(
intValue = 1713856147
)
@Export("type")
int type;
@ObfuscatedName("q")
@ObfuscatedGetter(
intValue = 141031459
)
@Export("orientation")
int orientation;
@ObfuscatedName("w")
@ObfuscatedGetter(
intValue = 844945979
)
@Export("plane")
int plane;
@ObfuscatedName("o")
@ObfuscatedGetter(
intValue = -351084819
)
@Export("x")
int x;
@ObfuscatedName("u")
@ObfuscatedGetter(
intValue = -126308963
)
@Export("y")
int y;
@ObfuscatedName("g")
@ObfuscatedSignature(
signature = "Ljh;"
)
@Export("sequenceDefinition")
SequenceDefinition sequenceDefinition;
@ObfuscatedName("l")
@ObfuscatedGetter(
intValue = -2017547185
)
@Export("frame")
int frame;
@ObfuscatedName("e")
@ObfuscatedGetter(
intValue = -1596313489
)
@Export("cycleStart")
int cycleStart;
@ObfuscatedSignature(
signature = "(IIIIIIIZLex;)V"
)
DynamicObject(int var1, int var2, int var3, int var4, int var5, int var6, int var7, boolean var8, Entity var9) {
this.id = var1;
this.type = var2;
this.orientation = var3;
this.plane = var4;
this.x = var5;
this.y = var6;
if (var7 != -1) {
this.sequenceDefinition = WorldMapAreaData.getSequenceDefinition(var7);
this.frame = 0;
this.cycleStart = Client.cycle - 1;
if (this.sequenceDefinition.field783 == 0 && var9 != null && var9 instanceof DynamicObject) {
DynamicObject var10 = (DynamicObject)var9;
if (this.sequenceDefinition == var10.sequenceDefinition) {
this.frame = var10.frame;
this.cycleStart = var10.cycleStart;
return;
}
}
if (var8 && this.sequenceDefinition.frameCount != -1) {
this.frame = (int)(Math.random() * (double)this.sequenceDefinition.frameIds.length);
this.cycleStart -= (int)(Math.random() * (double)this.sequenceDefinition.frameLengths[this.frame]);
}
}
}
@ObfuscatedName("e")
@ObfuscatedSignature(
signature = "(I)Ldu;",
garbageValue = "-2134947096"
)
@Export("getModel")
protected final Model getModel() {
if (this.sequenceDefinition != null) {
int var1 = Client.cycle - this.cycleStart;
if (var1 > 100 && this.sequenceDefinition.frameCount > 0) {
var1 = 100;
}
label47: {
do {
do {
if (var1 <= this.sequenceDefinition.frameLengths[this.frame]) {
break label47;
}
var1 -= this.sequenceDefinition.frameLengths[this.frame];
++this.frame;
} while(this.frame < this.sequenceDefinition.frameIds.length);
this.frame -= this.sequenceDefinition.frameCount;
} while(this.frame >= 0 && this.frame < this.sequenceDefinition.frameIds.length);
this.sequenceDefinition = null;
}
this.cycleStart = Client.cycle - var1;
}
ObjectDefinition var12 = class50.getObjectDefinition(this.id);
if (var12.transforms != null) {
var12 = var12.transform();
}
if (var12 == null) {
return null;
} else {
int var2;
int var3;
if (this.orientation != 1 && this.orientation != 3) {
var2 = var12.sizeX;
var3 = var12.sizeY;
} else {
var2 = var12.sizeY;
var3 = var12.sizeX;
}
int var4 = (var2 >> 1) + this.x;
int var5 = (var2 + 1 >> 1) + this.x;
int var6 = (var3 >> 1) + this.y;
int var7 = (var3 + 1 >> 1) + this.y;
int[][] var8 = Tiles.Tiles_heights[this.plane];
int var9 = var8[var5][var6] + var8[var4][var6] + var8[var4][var7] + var8[var5][var7] >> 2;
int var10 = (this.x << 7) + (var2 << 6);
int var11 = (this.y << 7) + (var3 << 6);
return var12.getModelDynamic(this.type, this.orientation, var8, var10, var9, var11, this.sequenceDefinition, this.frame);
}
}
@ObfuscatedName("f")
@ObfuscatedSignature(
signature = "([Ljava/lang/String;[SIII)V",
garbageValue = "1172859329"
)
@Export("sortItemsByName")
static void sortItemsByName(String[] itemNames, short[] itemIds, int lowestUnsorted, int highestUnsorted) {
if (lowestUnsorted < highestUnsorted) {
int var4 = (highestUnsorted + lowestUnsorted) / 2;
int var5 = lowestUnsorted;
String var6 = itemNames[var4];
itemNames[var4] = itemNames[highestUnsorted];
itemNames[highestUnsorted] = var6;
short var7 = itemIds[var4];
itemIds[var4] = itemIds[highestUnsorted];
itemIds[highestUnsorted] = var7;
for (int var8 = lowestUnsorted; var8 < highestUnsorted; ++var8) {
if (var6 == null || itemNames[var8] != null && itemNames[var8].compareTo(var6) < (var8 & 1)) {
String var9 = itemNames[var8];
itemNames[var8] = itemNames[var5];
itemNames[var5] = var9;
short var10 = itemIds[var8];
itemIds[var8] = itemIds[var5];
itemIds[var5++] = var10;
}
}
itemNames[highestUnsorted] = itemNames[var5];
itemNames[var5] = var6;
itemIds[highestUnsorted] = itemIds[var5];
itemIds[var5] = var7;
sortItemsByName(itemNames, itemIds, lowestUnsorted, var5 - 1);
sortItemsByName(itemNames, itemIds, var5 + 1, highestUnsorted);
}
}
@ObfuscatedName("ak")
@ObfuscatedSignature(
signature = "(ILcg;ZB)I",
garbageValue = "-83"
)
static int method2223(int var0, Script var1, boolean var2) {
if (var0 == ScriptOpcodes.CHAT_GETFILTER_PUBLIC) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = Client.publicChatMode;
return 1;
} else if (var0 == ScriptOpcodes.CHAT_SETFILTER) {
RouteStrategy.Interpreter_intStackSize -= 3;
Client.publicChatMode = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize];
ArchiveLoader.field512 = WorldMapElement.method4783(Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1]);
if (ArchiveLoader.field512 == null) {
ArchiveLoader.field512 = class310.field3805;
}
Client.field138 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 2];
PacketBufferNode var15 = Interpreter.method1915(ClientPacket.field237, Client.packetWriter.isaacCipher);
var15.packetBuffer.writeByte(Client.publicChatMode);
var15.packetBuffer.writeByte(ArchiveLoader.field512.field3804);
var15.packetBuffer.writeByte(Client.field138);
Client.packetWriter.method241(var15);
return 1;
} else {
String var3;
int var4;
int var5;
if (var0 == ScriptOpcodes.CHAT_SENDABUSEREPORT) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
RouteStrategy.Interpreter_intStackSize -= 2;
var4 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize];
var5 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1];
PacketBufferNode var12 = Interpreter.method1915(ClientPacket.field260, Client.packetWriter.isaacCipher);
var12.packetBuffer.writeByte(WorldMapRegion.stringCp1252NullTerminatedByteSize(var3) + 2);
var12.packetBuffer.writeStringCp1252NullTerminated(var3);
var12.packetBuffer.writeByte(var4 - 1);
var12.packetBuffer.writeByte(var5);
Client.packetWriter.method241(var12);
return 1;
} else {
Message var6;
if (var0 == ScriptOpcodes.CHAT_GETHISTORY_BYTYPEANDLINE) {
RouteStrategy.Interpreter_intStackSize -= 2;
var5 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize];
var4 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1];
var6 = Message.method1226(var5, var4);
if (var6 != null) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.count;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.cycle;
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.sender != null ? var6.sender : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.prefix != null ? var6.prefix : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.text != null ? var6.text : "";
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.isFromFriend() ? 1 : (var6.isFromIgnored() ? 2 : 0);
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = -1;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 0;
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = "";
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 0;
}
return 1;
} else if (var0 == ScriptOpcodes.CHAT_GETHISTORY_BYUID) {
var5 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize];
var6 = NetCache.method4708(var5);
if (var6 != null) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.type;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.cycle;
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.sender != null ? var6.sender : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.prefix != null ? var6.prefix : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.text != null ? var6.text : "";
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.isFromFriend() ? 1 : (var6.isFromIgnored() ? 2 : 0);
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = -1;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 0;
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = "";
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 0;
}
return 1;
} else if (var0 == ScriptOpcodes.CHAT_GETFILTER_PRIVATE) {
if (ArchiveLoader.field512 == null) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = -1;
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = ArchiveLoader.field512.field3804;
}
return 1;
} else {
String var7;
if (var0 == ScriptOpcodes.CHAT_SENDPUBLIC) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
var4 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize];
var7 = var3.toLowerCase();
byte var13 = 0;
if (var7.startsWith("yellow:")) {
var13 = 0;
var3 = var3.substring("yellow:".length());
} else if (var7.startsWith("red:")) {
var13 = 1;
var3 = var3.substring("red:".length());
} else if (var7.startsWith("green:")) {
var13 = 2;
var3 = var3.substring("green:".length());
} else if (var7.startsWith("cyan:")) {
var13 = 3;
var3 = var3.substring("cyan:".length());
} else if (var7.startsWith("purple:")) {
var13 = 4;
var3 = var3.substring("purple:".length());
} else if (var7.startsWith("white:")) {
var13 = 5;
var3 = var3.substring("white:".length());
} else if (var7.startsWith("flash1:")) {
var13 = 6;
var3 = var3.substring("flash1:".length());
} else if (var7.startsWith("flash2:")) {
var13 = 7;
var3 = var3.substring("flash2:".length());
} else if (var7.startsWith("flash3:")) {
var13 = 8;
var3 = var3.substring("flash3:".length());
} else if (var7.startsWith("glow1:")) {
var13 = 9;
var3 = var3.substring("glow1:".length());
} else if (var7.startsWith("glow2:")) {
var13 = 10;
var3 = var3.substring("glow2:".length());
} else if (var7.startsWith("glow3:")) {
var13 = 11;
var3 = var3.substring("glow3:".length());
} else if (Client.language != 0) {
if (var7.startsWith("yellow:")) {
var13 = 0;
var3 = var3.substring("yellow:".length());
} else if (var7.startsWith("red:")) {
var13 = 1;
var3 = var3.substring("red:".length());
} else if (var7.startsWith("green:")) {
var13 = 2;
var3 = var3.substring("green:".length());
} else if (var7.startsWith("cyan:")) {
var13 = 3;
var3 = var3.substring("cyan:".length());
} else if (var7.startsWith("purple:")) {
var13 = 4;
var3 = var3.substring("purple:".length());
} else if (var7.startsWith("white:")) {
var13 = 5;
var3 = var3.substring("white:".length());
} else if (var7.startsWith("flash1:")) {
var13 = 6;
var3 = var3.substring("flash1:".length());
} else if (var7.startsWith("flash2:")) {
var13 = 7;
var3 = var3.substring("flash2:".length());
} else if (var7.startsWith("flash3:")) {
var13 = 8;
var3 = var3.substring("flash3:".length());
} else if (var7.startsWith("glow1:")) {
var13 = 9;
var3 = var3.substring("glow1:".length());
} else if (var7.startsWith("glow2:")) {
var13 = 10;
var3 = var3.substring("glow2:".length());
} else if (var7.startsWith("glow3:")) {
var13 = 11;
var3 = var3.substring("glow3:".length());
}
}
var7 = var3.toLowerCase();
byte var14 = 0;
if (var7.startsWith("wave:")) {
var14 = 1;
var3 = var3.substring("wave:".length());
} else if (var7.startsWith("wave2:")) {
var14 = 2;
var3 = var3.substring("wave2:".length());
} else if (var7.startsWith("shake:")) {
var14 = 3;
var3 = var3.substring("shake:".length());
} else if (var7.startsWith("scroll:")) {
var14 = 4;
var3 = var3.substring("scroll:".length());
} else if (var7.startsWith("slide:")) {
var14 = 5;
var3 = var3.substring("slide:".length());
} else if (Client.language != 0) {
if (var7.startsWith("wave:")) {
var14 = 1;
var3 = var3.substring("wave:".length());
} else if (var7.startsWith("wave2:")) {
var14 = 2;
var3 = var3.substring("wave2:".length());
} else if (var7.startsWith("shake:")) {
var14 = 3;
var3 = var3.substring("shake:".length());
} else if (var7.startsWith("scroll:")) {
var14 = 4;
var3 = var3.substring("scroll:".length());
} else if (var7.startsWith("slide:")) {
var14 = 5;
var3 = var3.substring("slide:".length());
}
}
PacketBufferNode var10 = Interpreter.method1915(ClientPacket.field319, Client.packetWriter.isaacCipher);
var10.packetBuffer.writeByte(0);
int var11 = var10.packetBuffer.index;
var10.packetBuffer.writeByte(var4);
var10.packetBuffer.writeByte(var13);
var10.packetBuffer.writeByte(var14);
TextureProvider.method2777(var10.packetBuffer, var3);
var10.packetBuffer.writeLengthByte(var10.packetBuffer.index - var11);
Client.packetWriter.method241(var10);
return 1;
} else if (var0 == ScriptOpcodes.CHAT_SENDPRIVATE) {
Interpreter.Interpreter_stringStackSize -= 2;
var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize];
var7 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1];
PacketBufferNode var8 = Interpreter.method1915(ClientPacket.field247, Client.packetWriter.isaacCipher);
var8.packetBuffer.writeShort(0);
int var9 = var8.packetBuffer.index;
var8.packetBuffer.writeStringCp1252NullTerminated(var3);
TextureProvider.method2777(var8.packetBuffer, var7);
var8.packetBuffer.writeLengthShort(var8.packetBuffer.index - var9);
Client.packetWriter.method241(var8);
return 1;
} else if (var0 != ScriptOpcodes.CHAT_PLAYERNAME) {
if (var0 == ScriptOpcodes.CHAT_GETFILTER_TRADE) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = Client.field138;
return 1;
} else if (var0 == ScriptOpcodes.CHAT_GETHISTORYLENGTH) {
var5 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize];
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = InterfaceParent.method1174(var5);
return 1;
} else if (var0 == ScriptOpcodes.CHAT_GETNEXTUID) {
var5 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize];
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = GrandExchangeOfferAgeComparator.method161(var5);
return 1;
} else if (var0 == ScriptOpcodes.CHAT_GETPREVUID) {
var5 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize];
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = SpriteMask.method4391(var5);
return 1;
} else if (var0 == ScriptOpcodes.DOCHEAT) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
BoundaryObject.doCheat(var3);
return 1;
} else if (var0 == ScriptOpcodes.CHAT_SETMESSAGEFILTER) {
Client.field158 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize].toLowerCase().trim();
return 1;
} else if (var0 == ScriptOpcodes.CHAT_GETMESSAGEFILTER) {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = Client.field158;
return 1;
} else if (var0 == 5023) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
System.out.println(var3);
return 1;
} else {
return 2;
}
} else {
if (Canvas.localPlayer != null && Canvas.localPlayer.username != null) {
var3 = Canvas.localPlayer.username.getName();
} else {
var3 = "";
}
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3;
return 1;
}
}
}
}
}
@ObfuscatedName("az")
@ObfuscatedSignature(
signature = "(I)I",
garbageValue = "47188688"
)
protected static int method2222() {
int var0 = 0;
if (AbstractArchive.garbageCollector == null || !AbstractArchive.garbageCollector.isValid()) {
try {
Iterator var1 = ManagementFactory.getGarbageCollectorMXBeans().iterator();
while (var1.hasNext()) {
GarbageCollectorMXBean var2 = (GarbageCollectorMXBean)var1.next();
if (var2.isValid()) {
AbstractArchive.garbageCollector = var2;
GameShell.garbageCollectorLastCheckTimeMs = -1L;
GameShell.garbageCollectorLastCollectionTime = -1L;
}
}
} catch (Throwable var9) {
}
}
if (AbstractArchive.garbageCollector != null) {
long var10 = class203.currentTimeMs();
long var3 = AbstractArchive.garbageCollector.getCollectionTime();
if (GameShell.garbageCollectorLastCollectionTime != -1L) {
long var5 = var3 - GameShell.garbageCollectorLastCollectionTime;
long var7 = var10 - GameShell.garbageCollectorLastCheckTimeMs;
if (0L != var7) {
var0 = (int)(var5 * 100L / var7);
}
}
GameShell.garbageCollectorLastCollectionTime = var3;
GameShell.garbageCollectorLastCheckTimeMs = var10;
}
return var0;
}
@ObfuscatedName("hx")
@ObfuscatedSignature(
signature = "(IIZI)V",
garbageValue = "2072073729"
)
static final void method2224(int var0, int var1, boolean var2) {
if (!var2 || var0 != GameObject.field359 || WorldMapLabelSize.field1041 != var1) {
GameObject.field359 = var0;
WorldMapLabelSize.field1041 = var1;
GameShell.updateGameState(25);
PendingSpawn.drawLoadingMessage("Loading - please wait.", true);
int var3 = class50.baseX;
int var4 = GraphicsObject.baseY;
class50.baseX = (var0 - 6) * 8;
GraphicsObject.baseY = (var1 - 6) * 8;
int var5 = class50.baseX - var3;
int var6 = GraphicsObject.baseY - var4;
var3 = class50.baseX;
var4 = GraphicsObject.baseY;
int var7;
int var8;
int[] var9;
for (var7 = 0; var7 < 32768; ++var7) {
NPC var10 = Client.npcs[var7];
if (var10 != null) {
for (var8 = 0; var8 < 10; ++var8) {
var9 = var10.pathX;
var9[var8] -= var5;
var9 = var10.pathY;
var9[var8] -= var6;
}
var10.x -= var5 * 128;
var10.y -= var6 * 128;
}
}
for (var7 = 0; var7 < 2048; ++var7) {
Player var21 = Client.players[var7];
if (var21 != null) {
for (var8 = 0; var8 < 10; ++var8) {
var9 = var21.pathX;
var9[var8] -= var5;
var9 = var21.pathY;
var9[var8] -= var6;
}
var21.x -= var5 * 128;
var21.y -= var6 * 128;
}
}
byte var22 = 0;
byte var11 = 104;
byte var12 = 1;
if (var5 < 0) {
var22 = 103;
var11 = -1;
var12 = -1;
}
byte var13 = 0;
byte var14 = 104;
byte var15 = 1;
if (var6 < 0) {
var13 = 103;
var14 = -1;
var15 = -1;
}
int var16;
for (int var17 = var22; var17 != var11; var17 += var12) {
for (var16 = var13; var14 != var16; var16 += var15) {
int var18 = var17 + var5;
int var19 = var16 + var6;
for (int var20 = 0; var20 < 4; ++var20) {
if (var18 >= 0 && var19 >= 0 && var18 < 104 && var19 < 104) {
Client.groundItems[var20][var17][var16] = Client.groundItems[var20][var18][var19];
} else {
Client.groundItems[var20][var17][var16] = null;
}
}
}
}
for (PendingSpawn var23 = (PendingSpawn)Client.pendingSpawns.last(); var23 != null; var23 = (PendingSpawn)Client.pendingSpawns.previous()) {
var23.x -= var5;
var23.y -= var6;
if (var23.x < 0 || var23.y < 0 || var23.x >= 104 || var23.y >= 104) {
var23.remove();
}
}
if (Client.destinationX != 0) {
Client.destinationX -= var5;
Client.destinationY -= var6;
}
Client.soundEffectCount = 0;
Client.isCameraLocked = false;
WorldMapSection2.cameraX -= var5 << 7;
GrandExchangeOfferNameComparator.cameraZ -= var6 << 7;
MouseHandler.oculusOrbFocalPointX -= var5 << 7;
ScriptEvent.oculusOrbFocalPointY -= var6 << 7;
Client.field125 = -1;
Client.graphicsObjects.clear();
Client.projectiles.clear();
for (var16 = 0; var16 < 4; ++var16) {
Client.collisionMaps[var16].clear();
}
}
}
}