Skip to content

Commit 83c9a8f

Browse files
committed
change varplayer array location, add bitutils
1 parent 769320a commit 83c9a8f

23 files changed

+94
-81
lines changed

src/main/java/com/jagex/runescape/Class22.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
import com.jagex.runescape.media.renderable.actor.Actor;
1717
import com.jagex.runescape.media.renderable.actor.Npc;
1818
import com.jagex.runescape.media.renderable.actor.Player;
19-
import com.jagex.runescape.scene.GroundItemTile;
2019
import com.jagex.runescape.scene.util.CollisionMap;
2120

2221
public abstract class Class22 {
@@ -124,7 +123,7 @@ public static void method309(int varPlayerIndex) {
124123
HuffmanEncoding.method1030((byte) 127);
125124
int varPlayerType = VarPlayerDefinition.getDefinition(varPlayerIndex).type;
126125
if(varPlayerType != 0) {
127-
int varPlayerValue = GroundItemTile.varPlayers[varPlayerIndex];
126+
int varPlayerValue = VarPlayerDefinition.varPlayers[varPlayerIndex];
128127
if(varPlayerType == 1) {
129128
if(varPlayerValue == 1) {
130129
Rasterizer3D.method711(0.9);

src/main/java/com/jagex/runescape/Class22_Sub2.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import com.jagex.runescape.media.renderable.actor.Actor;
1212
import com.jagex.runescape.media.renderable.actor.Npc;
1313
import com.jagex.runescape.scene.GroundItemTile;
14+
import com.jagex.runescape.util.BitUtils;
1415

1516
public abstract class Class22_Sub2 extends Class22 {
1617
public static GameInterface aGameInterface_1887;
@@ -56,7 +57,7 @@ public static ImageRGB[] method319(byte arg0) {
5657
int i_4_ = class40_sub5_sub14_sub4.imageHeight * class40_sub5_sub14_sub4.imageWidth;
5758
class40_sub5_sub14_sub4.pixels = new int[i_4_];
5859
for(int i_5_ = 0; i_5_ < i_4_; i_5_++)
59-
class40_sub5_sub14_sub4.pixels[i_5_] = Buffer.anIntArray1972[HuffmanEncoding.bitWiseAND(255, is[i_5_])];
60+
class40_sub5_sub14_sub4.pixels[i_5_] = Buffer.anIntArray1972[BitUtils.bitWiseAND(255, is[i_5_])];
6061
}
6162
ActorDefinition.method569();
6263
return class40_sub5_sub14_sub4s;

src/main/java/com/jagex/runescape/Class22_Sub2_Sub2.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.jagex.runescape;
22

33
import com.jagex.runescape.audio.MidiFileReader;
4-
import com.jagex.runescape.cache.def.UnderlayDefinition;
4+
import com.jagex.runescape.util.BitUtils;
55
import com.jagex.runescape.util.Signlink;
66

77
public class Class22_Sub2_Sub2 extends Class22_Sub2 implements Runnable {
@@ -41,7 +41,7 @@ public static void method326(int arg0, byte arg1, int arg2, int arg3, int arg4)
4141
}
4242
anIntArray2227[anInt2229++] = -anInt2226 + arg3;
4343
anInt2226 = arg3;
44-
anIntArray2227[anInt2229++] = UnderlayDefinition.bitWiseOR(UnderlayDefinition.bitWiseOR(arg4, arg0 << 8), arg2 << 16);
44+
anIntArray2227[anInt2229++] = BitUtils.bitWiseOR(BitUtils.bitWiseOR(arg4, arg0 << 8), arg2 << 16);
4545

4646
}
4747

src/main/java/com/jagex/runescape/Class40_Sub5_Sub17_Sub1.java

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import com.jagex.runescape.scene.tile.FloorDecoration;
2727
import com.jagex.runescape.scene.tile.WallDecoration;
2828
import com.jagex.runescape.scene.util.CollisionMap;
29+
import com.jagex.runescape.util.BitUtils;
2930
import tech.henning.fourthreefive.Configuration;
3031

3132
import java.awt.*;
@@ -435,7 +436,7 @@ public static void addObject(int objectId, int localX, int localY, int plane, in
435436
renderable = gameObjectDefinition.createTerrainObjectModel(vertexHeightTopRight, vertexHeightTop, face, vertexHeight, type, vertexHeightRight);
436437
scene.addEntityB(localX, localY, plane, vertexMix, 0, 1, 1, hash, renderable, objectConfig);
437438
if(type >= 12 && type <= 17 && type != 13 && plane > 0)
438-
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 2340);
439+
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 2340);
439440
if(gameObjectDefinition.solid && collisionMap != null)
440441
collisionMap.unmarkSolidOccupant(localX, localY, gameObjectDefinition.sizeX, gameObjectDefinition.sizeY, face, gameObjectDefinition.walkable);
441442
} else if(type == 0) {
@@ -451,28 +452,28 @@ public static void addObject(int objectId, int localX, int localY, int plane, in
451452
InteractiveObject.aByteArrayArrayArray492[plane][localX][localY + 1] = (byte) 50;
452453
}
453454
if(gameObjectDefinition.wall)
454-
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 585);
455+
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 585);
455456
} else if(face == 1) {
456457
if(gameObjectDefinition.castsShadow) {
457458
InteractiveObject.aByteArrayArrayArray492[plane][localX][localY + 1] = (byte) 50;
458459
InteractiveObject.aByteArrayArrayArray492[plane][localX + 1][1 + localY] = (byte) 50;
459460
}
460461
if(gameObjectDefinition.wall)
461-
MovedStatics.anIntArrayArrayArray262[plane][localX][localY + 1] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY + 1], 1170);
462+
MovedStatics.anIntArrayArrayArray262[plane][localX][localY + 1] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY + 1], 1170);
462463
} else if(face == 2) {
463464
if(gameObjectDefinition.castsShadow) {
464465
InteractiveObject.aByteArrayArrayArray492[plane][1 + localX][localY] = (byte) 50;
465466
InteractiveObject.aByteArrayArrayArray492[plane][localX + 1][1 + localY] = (byte) 50;
466467
}
467468
if(gameObjectDefinition.wall)
468-
MovedStatics.anIntArrayArrayArray262[plane][localX + 1][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX + 1][localY], 585);
469+
MovedStatics.anIntArrayArrayArray262[plane][localX + 1][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX + 1][localY], 585);
469470
} else if(face == 3) {
470471
if(gameObjectDefinition.castsShadow) {
471472
InteractiveObject.aByteArrayArrayArray492[plane][localX][localY] = (byte) 50;
472473
InteractiveObject.aByteArrayArrayArray492[plane][localX + 1][localY] = (byte) 50;
473474
}
474475
if(gameObjectDefinition.wall)
475-
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 1170);
476+
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 1170);
476477
}
477478
if(gameObjectDefinition.solid && collisionMap != null)
478479
collisionMap.unmarkWall(localX, localY, type, face, gameObjectDefinition.walkable);
@@ -511,17 +512,17 @@ else if(face == 3)
511512
scene.addWall(localX, localY, plane, vertexMix, SceneCluster.anIntArray761[face], SceneCluster.anIntArray761[i_46_], hash, renderable, renderable_47_, objectConfig);
512513
if(gameObjectDefinition.wall) {
513514
if(face == 0) {
514-
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 585);
515-
MovedStatics.anIntArrayArrayArray262[plane][localX][localY + 1] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY + 1], 1170);
515+
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 585);
516+
MovedStatics.anIntArrayArrayArray262[plane][localX][localY + 1] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY + 1], 1170);
516517
} else if(face == 1) {
517-
MovedStatics.anIntArrayArrayArray262[plane][localX][1 + localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][1 + localY], 1170);
518-
MovedStatics.anIntArrayArrayArray262[plane][1 + localX][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][1 + localX][localY], 585);
518+
MovedStatics.anIntArrayArrayArray262[plane][localX][1 + localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][1 + localY], 1170);
519+
MovedStatics.anIntArrayArrayArray262[plane][1 + localX][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][1 + localX][localY], 585);
519520
} else if(face == 2) {
520-
MovedStatics.anIntArrayArrayArray262[plane][localX + 1][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX + 1][localY], 585);
521-
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 1170);
521+
MovedStatics.anIntArrayArrayArray262[plane][localX + 1][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX + 1][localY], 585);
522+
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 1170);
522523
} else if(face == 3) {
523-
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 1170);
524-
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = UnderlayDefinition.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 585);
524+
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 1170);
525+
MovedStatics.anIntArrayArrayArray262[plane][localX][localY] = BitUtils.bitWiseOR(MovedStatics.anIntArrayArrayArray262[plane][localX][localY], 585);
525526
}
526527
}
527528
if(gameObjectDefinition.solid && collisionMap != null)

src/main/java/com/jagex/runescape/Class48.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import com.jagex.runescape.media.renderable.actor.Npc;
1818
import com.jagex.runescape.net.ISAAC;
1919
import com.jagex.runescape.net.PacketBuffer;
20+
import com.jagex.runescape.util.BitUtils;
2021
import tech.henning.fourthreefive.Configuration;
2122

2223
import java.text.MessageFormat;
@@ -87,7 +88,7 @@ public static void method922(int arg0, int arg1, Buffer arg2, int arg4, int arg5
8788
if(i <= 49) {
8889
MouseHandler.tile_overlayids[arg7][arg0][arg4] = arg2.getByte();
8990
OverlayDefinition.tile_underlay_path[arg7][arg0][arg4] = (byte) ((i + -2) / 4);
90-
Class35.tile_overlay_rotation[arg7][arg0][arg4] = (byte) HuffmanEncoding.bitWiseAND(arg1 + -2 + i, 3);
91+
Class35.tile_overlay_rotation[arg7][arg0][arg4] = (byte) BitUtils.bitWiseAND(arg1 + -2 + i, 3);
9192
} else if(i <= 81)
9293
OverlayDefinition.tile_flags[arg7][arg0][arg4] = (byte) (-49 + i);
9394
else

src/main/java/com/jagex/runescape/ClientScriptRunner.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@
1313
import com.jagex.runescape.language.Native;
1414
import com.jagex.runescape.media.renderable.actor.Player;
1515
import com.jagex.runescape.net.PacketBuffer;
16-
import com.jagex.runescape.scene.GroundItemTile;
1716
import com.jagex.runescape.scene.InteractiveObject;
1817
import com.jagex.runescape.scene.tile.WallDecoration;
1918
import com.jagex.runescape.scene.util.CollisionMap;
19+
import com.jagex.runescape.util.BitUtils;
2020
import com.jagex.runescape.util.Signlink;
2121
import com.jagex.runescape.util.SignlinkNode;
2222

@@ -339,12 +339,12 @@ public static void runClientScripts(Object[] listeners, int arg1, int arg2, Game
339339
}
340340
if(scriptOpcode == 1) {
341341
int operand = intOperands[scriptIndex];
342-
scriptIntValues[intValueIndex++] = GroundItemTile.varPlayers[operand];
342+
scriptIntValues[intValueIndex++] = VarPlayerDefinition.varPlayers[operand];
343343
continue;
344344
}
345345
if(scriptOpcode == 2) {
346346
int operand = intOperands[scriptIndex];
347-
GroundItemTile.varPlayers[operand] = scriptIntValues[--intValueIndex];
347+
VarPlayerDefinition.varPlayers[operand] = scriptIntValues[--intValueIndex];
348348
continue;
349349
}
350350
if(scriptOpcode == 3) {
@@ -521,7 +521,7 @@ public static void runClientScripts(Object[] listeners, int arg1, int arg2, Game
521521
} else if(scriptOpcode == 101) {
522522
GameInterface gameInterface = !bool ? Class22_Sub2.aGameInterface_1887 : MovedStatics.aGameInterface_2116;
523523
GameInterface childInterface = GameInterface.getInterface(gameInterface.parentId);
524-
childInterface.children[HuffmanEncoding.bitWiseAND(gameInterface.id, 32767)] = null;
524+
childInterface.children[BitUtils.bitWiseAND(gameInterface.id, 32767)] = null;
525525
} else {
526526
if(scriptOpcode != 102) {
527527
break;
@@ -817,17 +817,17 @@ public static void runClientScripts(Object[] listeners, int arg1, int arg2, Game
817817
intValueIndex -= 2;
818818
int i_63_ = scriptIntValues[intValueIndex];
819819
int i_64_ = scriptIntValues[intValueIndex + 1];
820-
scriptIntValues[intValueIndex++] = UnderlayDefinition.bitWiseOR(1 << i_64_, i_63_);
820+
scriptIntValues[intValueIndex++] = BitUtils.bitWiseOR(1 << i_64_, i_63_);
821821
} else if(scriptOpcode == 4009) {
822822
intValueIndex -= 2;
823823
int i_65_ = scriptIntValues[intValueIndex];
824824
int i_66_ = scriptIntValues[1 + intValueIndex];
825-
scriptIntValues[intValueIndex++] = HuffmanEncoding.bitWiseAND(i_65_, -1 + -(1 << i_66_));
825+
scriptIntValues[intValueIndex++] = BitUtils.bitWiseAND(i_65_, -1 + -(1 << i_66_));
826826
} else if(scriptOpcode == 4010) {
827827
intValueIndex -= 2;
828828
int i_67_ = scriptIntValues[intValueIndex];
829829
int i_68_ = scriptIntValues[1 + intValueIndex];
830-
scriptIntValues[intValueIndex++] = HuffmanEncoding.bitWiseAND(1 << i_68_, i_67_) != 0 ? 1 : 0;
830+
scriptIntValues[intValueIndex++] = BitUtils.bitWiseAND(1 << i_68_, i_67_) != 0 ? 1 : 0;
831831
} else if(scriptOpcode == 4011) {
832832
intValueIndex -= 2;
833833
int i_69_ = scriptIntValues[intValueIndex + 1];

src/main/java/com/jagex/runescape/HuffmanEncoding.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import com.jagex.runescape.media.renderable.actor.Player;
1111
import com.jagex.runescape.net.PacketBuffer;
1212
import com.jagex.runescape.scene.tile.SceneTile;
13+
import com.jagex.runescape.util.BitUtils;
1314
import tech.henning.fourthreefive.Configuration;
1415

1516
import java.text.MessageFormat;
@@ -48,7 +49,7 @@ public HuffmanEncoding(byte[] arg0) {
4849
}
4950
int i_37_ = 1 << -i_35_ + 32;
5051
if ((i_36_ & i_37_) == 0) {
51-
is[i_35_] = UnderlayDefinition.bitWiseOR(i_36_, i_37_);
52+
is[i_35_] = BitUtils.bitWiseOR(i_36_, i_37_);
5253
} else {
5354
is[i_35_] = is[-1 + i_35_];
5455
break;
@@ -93,10 +94,6 @@ public HuffmanEncoding(byte[] arg0) {
9394

9495
}
9596

96-
public static int bitWiseAND(int arg0, int arg1) {
97-
return arg0 & arg1;
98-
}
99-
10097

10198
public static RSString method1024(boolean arg0, byte arg1, int arg2) {
10299
if (arg1 > -30) {
@@ -355,7 +352,7 @@ public int encrypt(int arg1, int bufferPos, int sourceLength, byte[] source, byt
355352
i &= -bitOffset >> 31;
356353
int i_12_ = bitOffset2 + (size + bitOffset - 1 >> 3);
357354
bitOffset += 24;
358-
dest[bitOffset2] = (byte) (i = UnderlayDefinition.bitWiseOR(i, mask >>> bitOffset));
355+
dest[bitOffset2] = (byte) (i = BitUtils.bitWiseOR(i, mask >>> bitOffset));
359356
if (bitOffset2 < i_12_) {
360357
bitOffset2++;
361358
bitOffset -= 8;

src/main/java/com/jagex/runescape/Landscape.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import com.jagex.runescape.scene.SceneCluster;
2020
import com.jagex.runescape.scene.tile.GenericTile;
2121
import com.jagex.runescape.scene.util.CollisionMap;
22+
import com.jagex.runescape.util.BitUtils;
2223
import tech.henning.fourthreefive.OldEngine.MapDecompressor;
2324

2425
import java.io.IOException;
@@ -305,7 +306,7 @@ public static void loadTerrainSubblock(int arg0, int arg2, int arg3, int arg4, i
305306
for(int i = 0; i < 8; i++) {
306307
for(int y = 0; y < 8; y++) {
307308
if(x + i > 0 && i + x < 103 && arg0 + y > 0 && y + arg0 < 103)
308-
arg9[arg4].clippingData[x + i][y + arg0] = HuffmanEncoding.bitWiseAND(arg9[arg4].clippingData[x + i][y + arg0], -16777217);
309+
arg9[arg4].clippingData[x + i][y + arg0] = BitUtils.bitWiseAND(arg9[arg4].clippingData[x + i][y + arg0], -16777217);
309310
}
310311
}
311312
Buffer class40_sub1 = new Buffer(arg8);

0 commit comments

Comments
 (0)