Skip to content

Commit 6739361

Browse files
committed
clean up
1 parent 84b024a commit 6739361

File tree

2 files changed

+34
-18
lines changed

2 files changed

+34
-18
lines changed

src/main/java/com/jagex/runescape/cache/def/VarbitDefinition.java

Lines changed: 31 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,18 @@
11
package com.jagex.runescape.cache.def;
22

3-
import com.jagex.runescape.*;
3+
import com.jagex.runescape.HuffmanEncoding;
44
import com.jagex.runescape.cache.CacheArchive;
5-
import com.jagex.runescape.input.MouseHandler;
65
import com.jagex.runescape.io.Buffer;
7-
import com.jagex.runescape.media.renderable.actor.Player;
8-
import com.jagex.runescape.media.renderable.actor.PlayerAppearance;
9-
import com.jagex.runescape.net.PacketBuffer;
106
import com.jagex.runescape.node.CachedNode;
7+
import com.jagex.runescape.node.NodeCache;
118
import com.jagex.runescape.scene.GroundItemTile;
129

1310
public class VarbitDefinition extends CachedNode {
14-
public static ProducingGraphicsBuffer gameScreenImageProducer;
15-
public static int anInt2359 = 0;
16-
public static int[] anIntArray2361 = new int[]{0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535, 131071, 262143, 524287, 1048575, 2097151, 4194303, 8388607, 16777215, 33554431, 67108863, 134217727, 268435455, 536870911, 1073741823, 2147483647, -1};
17-
public static CacheArchive aCacheArchive_2364;
18-
public static int destinationX = 0;
1911
public static int[] varbitMasks = new int[32];
12+
public static NodeCache varbitDefinitionCache = new NodeCache(64);
13+
public static CacheArchive gameDefinitionsCacheArchive;
2014

15+
// Pre-calculate varbit masks
2116
static {
2217
int i = 2;
2318
for(int i_7_ = 0; i_7_ < 32; i_7_++) {
@@ -31,14 +26,14 @@ public class VarbitDefinition extends CachedNode {
3126
public int mostSignificantBit;
3227

3328
public static VarbitDefinition getDefinition(int varbitId) {
34-
VarbitDefinition varbitDefinition = (VarbitDefinition) Class57.varbitDefinitionCache.get(varbitId);
29+
VarbitDefinition varbitDefinition = (VarbitDefinition) varbitDefinitionCache.get(varbitId);
3530
if (varbitDefinition != null)
3631
return varbitDefinition;
37-
byte[] is = RSCanvas.aCacheArchive_61.getFile(14, varbitId);
32+
byte[] cacheData = gameDefinitionsCacheArchive.getFile(14, varbitId);
3833
varbitDefinition = new VarbitDefinition();
39-
if (is != null)
40-
varbitDefinition.readValues(new Buffer(is));
41-
Class57.varbitDefinitionCache.put(varbitId, varbitDefinition);
34+
if (cacheData != null)
35+
varbitDefinition.readValues(new Buffer(cacheData));
36+
varbitDefinitionCache.put(varbitId, varbitDefinition);
4237
return varbitDefinition;
4338
}
4439

@@ -56,6 +51,27 @@ public static int getVarbitValue(int varbitId) {
5651
return GroundItemTile.varPlayers[varPlayerIndex] >> leastSignificantBit & mask;
5752
}
5853

54+
public static void setVarbitValue(int value, int varbitId) {
55+
VarbitDefinition varbitDefinition = getDefinition(varbitId);
56+
int index = varbitDefinition.index;
57+
int leastSignificantBit = varbitDefinition.leastSignificantBit;
58+
int mostSignificantBit = varbitDefinition.mostSignificantBit;
59+
int mask = varbitMasks[mostSignificantBit + -leastSignificantBit];
60+
if (value < 0 || mask < value)
61+
value = 0;
62+
mask <<= leastSignificantBit;
63+
GroundItemTile.varPlayers[index] = UnderlayDefinition.bitWiseOR(HuffmanEncoding.bitWiseAND(GroundItemTile.varPlayers[index], mask ^ 0xffffffff), HuffmanEncoding.bitWiseAND(mask, value << leastSignificantBit));
64+
}
65+
66+
public static void initializeVarbitDefinitionCache(CacheArchive cacheArchive) {
67+
gameDefinitionsCacheArchive = cacheArchive;
68+
69+
}
70+
71+
public static void clearVarbitDefinitionCache() {
72+
varbitDefinitionCache.clear();
73+
}
74+
5975
public void readValues(Buffer buffer) {
6076
while(true) {
6177
int opCode = buffer.getUnsignedByte();

src/main/java/com/jagex/runescape/net/IncomingPackets.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ public static boolean parseIncomingPackets(boolean arg0) {
167167
}
168168
if(incomingPacket == 233) { // clear destination X
169169
incomingPacket = -1;
170-
VarbitDefinition.destinationX = 0;
170+
MovedStatics.destinationX = 0;
171171
return true;
172172
}
173173
if(incomingPacket == 7) { // close cutscene
@@ -857,8 +857,8 @@ public static boolean parseIncomingPackets(boolean arg0) {
857857
return true;
858858
}
859859
if(incomingPacket == 14) { // reset client configs?
860-
for(int varPlayerIndex = 0; Class59.varPlayerConfigSize > varPlayerIndex; varPlayerIndex++) {
861-
VarPlayerDefinition varPlayerDefinition = VarPlayerDefinition.getVarPlayerConfig(varPlayerIndex);
860+
for(int varPlayerIndex = 0; VarPlayerDefinition.varPlayerDefinitionsSize > varPlayerIndex; varPlayerIndex++) {
861+
VarPlayerDefinition varPlayerDefinition = VarPlayerDefinition.getDefinition(varPlayerIndex);
862862
if(varPlayerDefinition.type == 0) {
863863
Buffer.anIntArray1984[varPlayerIndex] = 0;
864864
GroundItemTile.varPlayers[varPlayerIndex] = 0;

0 commit comments

Comments
 (0)