Autoformat using tab characters

This commit is contained in:
Pazaz 2022-06-27 20:30:17 -04:00
parent 0b44eca4ba
commit a3b7beeed7
278 changed files with 22710 additions and 22769 deletions

View file

@ -38,34 +38,34 @@ public final class AnimFrameset extends SecondaryNode {
} }
} }
@OriginalMember(owner = "client!gn", name = "a", descriptor = "(Lclient!ve;ZLclient!ve;BI)Lclient!cl;") @OriginalMember(owner = "client!gn", name = "a", descriptor = "(Lclient!ve;ZLclient!ve;BI)Lclient!cl;")
public static AnimFrameset create(@OriginalArg(0) Js5 animsArchive, @OriginalArg(2) Js5 basesArchive, @OriginalArg(4) int id) { public static AnimFrameset create(@OriginalArg(0) Js5 animsArchive, @OriginalArg(2) Js5 basesArchive, @OriginalArg(4) int id) {
@Pc(5) boolean ready = true; @Pc(5) boolean ready = true;
@Pc(16) int[] fileIds = animsArchive.getFileIds(id); @Pc(16) int[] fileIds = animsArchive.getFileIds(id);
for (@Pc(18) int i = 0; i < fileIds.length; i++) { for (@Pc(18) int i = 0; i < fileIds.length; i++) {
@Pc(30) byte[] bytes = animsArchive.fetchFileNoDiscard(fileIds[i], id); @Pc(30) byte[] bytes = animsArchive.fetchFileNoDiscard(fileIds[i], id);
if (bytes == null) { if (bytes == null) {
ready = false; ready = false;
} else { } else {
@Pc(49) int baseId = (bytes[0] & 0xFF) << 8 | bytes[1] & 0xFF; @Pc(49) int baseId = (bytes[0] & 0xFF) << 8 | bytes[1] & 0xFF;
@Pc(57) byte[] baseBytes = basesArchive.fetchFileNoDiscard(0, baseId); @Pc(57) byte[] baseBytes = basesArchive.fetchFileNoDiscard(0, baseId);
if (baseBytes == null) { if (baseBytes == null) {
ready = false; ready = false;
} }
} }
} }
if (!ready) { if (!ready) {
return null; return null;
} }
try { try {
return new AnimFrameset(animsArchive, basesArchive, id, false); return new AnimFrameset(animsArchive, basesArchive, id, false);
} catch (@Pc(84) Exception ex) { } catch (@Pc(84) Exception ex) {
ex.printStackTrace(); ex.printStackTrace();
return null; return null;
} }
} }
@OriginalMember(owner = "client!cl", name = "c", descriptor = "(II)Z") @OriginalMember(owner = "client!cl", name = "c", descriptor = "(II)Z")
public final boolean isAlphaTransformed(@OriginalArg(1) int frame) { public final boolean isAlphaTransformed(@OriginalArg(1) int frame) {
return this.frames[frame].transformsAlpha; return this.frames[frame].transformsAlpha;
} }

View file

@ -5,286 +5,286 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class AreaSoundManager { public class AreaSoundManager {
@OriginalMember(owner = "client!he", name = "ab", descriptor = "Lclient!sc;") @OriginalMember(owner = "client!he", name = "ab", descriptor = "Lclient!sc;")
public static final HashTable playerSounds = new HashTable(16); public static final HashTable playerSounds = new HashTable(16);
@OriginalMember(owner = "client!ab", name = "n", descriptor = "Lclient!ih;") @OriginalMember(owner = "client!ab", name = "n", descriptor = "Lclient!ih;")
public static final LinkedList locSounds = new LinkedList(); public static final LinkedList locSounds = new LinkedList();
@OriginalMember(owner = "client!ma", name = "x", descriptor = "Lclient!ih;") @OriginalMember(owner = "client!ma", name = "x", descriptor = "Lclient!ih;")
public static final LinkedList npcSounds = new LinkedList(); public static final LinkedList npcSounds = new LinkedList();
@OriginalMember(owner = "client!wc", name = "a", descriptor = "(Lclient!e;I)V") @OriginalMember(owner = "client!wc", name = "a", descriptor = "(Lclient!e;I)V")
public static void remove(@OriginalArg(0) Player player) { public static void remove(@OriginalArg(0) Player player) {
@Pc(10) AreaSound areaSound = (AreaSound) playerSounds.get(player.username.encode37()); @Pc(10) AreaSound areaSound = (AreaSound) playerSounds.get(player.username.encode37());
if (areaSound == null) { if (areaSound == null) {
return; return;
} }
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
client.soundStream.removeSubStream(areaSound.primaryStream); client.soundStream.removeSubStream(areaSound.primaryStream);
areaSound.primaryStream = null; areaSound.primaryStream = null;
} }
areaSound.unlink(); areaSound.unlink();
} }
@OriginalMember(owner = "client!jh", name = "a", descriptor = "(IZLclient!pb;ILclient!km;IILclient!e;)V") @OriginalMember(owner = "client!jh", name = "a", descriptor = "(IZLclient!pb;ILclient!km;IILclient!e;)V")
public static void add(@OriginalArg(0) int z, @OriginalArg(2) LocType loc, @OriginalArg(3) int arg2, @OriginalArg(4) Npc npc, @OriginalArg(5) int x, @OriginalArg(6) int level, @OriginalArg(7) Player player) { public static void add(@OriginalArg(0) int z, @OriginalArg(2) LocType loc, @OriginalArg(3) int arg2, @OriginalArg(4) Npc npc, @OriginalArg(5) int x, @OriginalArg(6) int level, @OriginalArg(7) Player player) {
@Pc(13) AreaSound sound = new AreaSound(); @Pc(13) AreaSound sound = new AreaSound();
sound.minZFine = z * 128; sound.minZFine = z * 128;
sound.minXFine = x * 128; sound.minXFine = x * 128;
sound.level = level; sound.level = level;
if (loc != null) { if (loc != null) {
sound.sounds = loc.anIntArray381; sound.sounds = loc.anIntArray381;
sound.radius = loc.soundRadius * 128; sound.radius = loc.soundRadius * 128;
sound.maxInterval = loc.anInt4414; sound.maxInterval = loc.anInt4414;
sound.locType = loc; sound.locType = loc;
sound.sound = loc.sound; sound.sound = loc.sound;
sound.minInterval = loc.anInt4419; sound.minInterval = loc.anInt4419;
@Pc(57) int local57 = loc.width; @Pc(57) int local57 = loc.width;
@Pc(60) int local60 = loc.length; @Pc(60) int local60 = loc.length;
if (arg2 == 1 || arg2 == 3) { if (arg2 == 1 || arg2 == 3) {
local57 = loc.length; local57 = loc.length;
local60 = loc.width; local60 = loc.width;
} }
sound.maxZFine = (local60 + z) * 128; sound.maxZFine = (local60 + z) * 128;
sound.maxXFine = (x + local57) * 128; sound.maxXFine = (x + local57) * 128;
if (loc.multiLocs != null) { if (loc.multiLocs != null) {
sound.multiLocOrNpc = true; sound.multiLocOrNpc = true;
sound.update(); sound.update();
} }
if (sound.sounds != null) { if (sound.sounds != null) {
sound.remainingLoops = sound.minInterval + (int) (Math.random() * (double) (sound.maxInterval - sound.minInterval)); sound.remainingLoops = sound.minInterval + (int) (Math.random() * (double) (sound.maxInterval - sound.minInterval));
} }
locSounds.addTail(sound); locSounds.addTail(sound);
} else if (npc != null) { } else if (npc != null) {
sound.npc = npc; sound.npc = npc;
@Pc(138) NpcType npcType = npc.type; @Pc(138) NpcType npcType = npc.type;
if (npcType.multiNpcs != null) { if (npcType.multiNpcs != null) {
sound.multiLocOrNpc = true; sound.multiLocOrNpc = true;
npcType = npcType.getMultiNpc(); npcType = npcType.getMultiNpc();
} }
if (npcType != null) { if (npcType != null) {
sound.maxZFine = (npcType.size + z) * 128; sound.maxZFine = (npcType.size + z) * 128;
sound.maxXFine = (npcType.size + x) * 128; sound.maxXFine = (npcType.size + x) * 128;
sound.sound = Npc.getSound(npc); sound.sound = Npc.getSound(npc);
sound.radius = npcType.soundRadius * 128; sound.radius = npcType.soundRadius * 128;
} }
npcSounds.addTail(sound); npcSounds.addTail(sound);
} else if (player != null) { } else if (player != null) {
sound.player = player; sound.player = player;
sound.maxXFine = (player.getSize() + x) * 128; sound.maxXFine = (player.getSize() + x) * 128;
sound.maxZFine = (player.getSize() + z) * 128; sound.maxZFine = (player.getSize() + z) * 128;
sound.sound = Player.getSound(player); sound.sound = Player.getSound(player);
sound.radius = player.soundRadius * 128; sound.radius = player.soundRadius * 128;
playerSounds.put(sound, player.username.encode37()); playerSounds.put(sound, player.username.encode37());
} }
} }
@OriginalMember(owner = "client!hc", name = "a", descriptor = "(Lclient!km;Z)V") @OriginalMember(owner = "client!hc", name = "a", descriptor = "(Lclient!km;Z)V")
public static void remove(@OriginalArg(0) Npc npc) { public static void remove(@OriginalArg(0) Npc npc) {
for (@Pc(13) AreaSound areaSound = (AreaSound) npcSounds.head(); areaSound != null; areaSound = (AreaSound) npcSounds.next()) { for (@Pc(13) AreaSound areaSound = (AreaSound) npcSounds.head(); areaSound != null; areaSound = (AreaSound) npcSounds.next()) {
if (npc == areaSound.npc) { if (npc == areaSound.npc) {
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
client.soundStream.removeSubStream(areaSound.primaryStream); client.soundStream.removeSubStream(areaSound.primaryStream);
areaSound.primaryStream = null; areaSound.primaryStream = null;
} }
areaSound.unlink(); areaSound.unlink();
return; return;
} }
} }
} }
@OriginalMember(owner = "client!ih", name = "a", descriptor = "(IIIII)V") @OriginalMember(owner = "client!ih", name = "a", descriptor = "(IIIII)V")
public static void redraw(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3) { public static void redraw(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3) {
@Pc(6) AreaSound areaSound; @Pc(6) AreaSound areaSound;
for (areaSound = (AreaSound) locSounds.head(); areaSound != null; areaSound = (AreaSound) locSounds.next()) { for (areaSound = (AreaSound) locSounds.head(); areaSound != null; areaSound = (AreaSound) locSounds.next()) {
redraw(arg1, areaSound, arg3, arg0, arg2); redraw(arg1, areaSound, arg3, arg0, arg2);
} }
@Pc(37) byte movementSpeed; @Pc(37) byte movementSpeed;
@Pc(42) BasType basType; @Pc(42) BasType basType;
@Pc(141) int sound; @Pc(141) int sound;
for (areaSound = (AreaSound) npcSounds.head(); areaSound != null; areaSound = (AreaSound) npcSounds.next()) { for (areaSound = (AreaSound) npcSounds.head(); areaSound != null; areaSound = (AreaSound) npcSounds.next()) {
movementSpeed = 1; movementSpeed = 1;
basType = areaSound.npc.getBasType(); basType = areaSound.npc.getBasType();
if (basType.idleAnimationId == areaSound.npc.movementSeqId) { if (basType.idleAnimationId == areaSound.npc.movementSeqId) {
movementSpeed = 0; movementSpeed = 0;
} else if (basType.runAnimationId == areaSound.npc.movementSeqId || basType.runAnimationId2 == areaSound.npc.movementSeqId || basType.runAnimationId4 == areaSound.npc.movementSeqId || basType.runAnimationId3 == areaSound.npc.movementSeqId) { } else if (basType.runAnimationId == areaSound.npc.movementSeqId || basType.runAnimationId2 == areaSound.npc.movementSeqId || basType.runAnimationId4 == areaSound.npc.movementSeqId || basType.runAnimationId3 == areaSound.npc.movementSeqId) {
movementSpeed = 2; movementSpeed = 2;
} else if (basType.anInt1062 == areaSound.npc.movementSeqId || basType.anInt1042 == areaSound.npc.movementSeqId || areaSound.npc.movementSeqId == basType.anInt1048 || basType.anInt1066 == areaSound.npc.movementSeqId) { } else if (basType.anInt1062 == areaSound.npc.movementSeqId || basType.anInt1042 == areaSound.npc.movementSeqId || areaSound.npc.movementSeqId == basType.anInt1048 || basType.anInt1066 == areaSound.npc.movementSeqId) {
movementSpeed = 3; movementSpeed = 3;
} }
if (areaSound.movementSpeed != movementSpeed) { if (areaSound.movementSpeed != movementSpeed) {
sound = Npc.getSound(areaSound.npc); sound = Npc.getSound(areaSound.npc);
if (sound != areaSound.sound) { if (sound != areaSound.sound) {
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
client.soundStream.removeSubStream(areaSound.primaryStream); client.soundStream.removeSubStream(areaSound.primaryStream);
areaSound.primaryStream = null; areaSound.primaryStream = null;
} }
areaSound.sound = sound; areaSound.sound = sound;
} }
areaSound.movementSpeed = movementSpeed; areaSound.movementSpeed = movementSpeed;
} }
areaSound.minXFine = areaSound.npc.xFine; areaSound.minXFine = areaSound.npc.xFine;
areaSound.maxXFine = areaSound.npc.xFine + areaSound.npc.getSize() * 64; areaSound.maxXFine = areaSound.npc.xFine + areaSound.npc.getSize() * 64;
areaSound.minZFine = areaSound.npc.zFine; areaSound.minZFine = areaSound.npc.zFine;
areaSound.maxZFine = areaSound.npc.zFine + areaSound.npc.getSize() * 64; areaSound.maxZFine = areaSound.npc.zFine + areaSound.npc.getSize() * 64;
redraw(arg1, areaSound, arg3, arg0, arg2); redraw(arg1, areaSound, arg3, arg0, arg2);
} }
for (areaSound = (AreaSound) playerSounds.head(); areaSound != null; areaSound = (AreaSound) playerSounds.next()) { for (areaSound = (AreaSound) playerSounds.head(); areaSound != null; areaSound = (AreaSound) playerSounds.next()) {
movementSpeed = 1; movementSpeed = 1;
basType = areaSound.player.getBasType(); basType = areaSound.player.getBasType();
if (areaSound.player.movementSeqId == basType.idleAnimationId) { if (areaSound.player.movementSeqId == basType.idleAnimationId) {
movementSpeed = 0; movementSpeed = 0;
} else if (areaSound.player.movementSeqId == basType.runAnimationId || areaSound.player.movementSeqId == basType.runAnimationId2 || areaSound.player.movementSeqId == basType.runAnimationId4 || basType.runAnimationId3 == areaSound.player.movementSeqId) { } else if (areaSound.player.movementSeqId == basType.runAnimationId || areaSound.player.movementSeqId == basType.runAnimationId2 || areaSound.player.movementSeqId == basType.runAnimationId4 || basType.runAnimationId3 == areaSound.player.movementSeqId) {
movementSpeed = 2; movementSpeed = 2;
} else if (basType.anInt1062 == areaSound.player.movementSeqId || areaSound.player.movementSeqId == basType.anInt1042 || areaSound.player.movementSeqId == basType.anInt1048 || areaSound.player.movementSeqId == basType.anInt1066) { } else if (basType.anInt1062 == areaSound.player.movementSeqId || areaSound.player.movementSeqId == basType.anInt1042 || areaSound.player.movementSeqId == basType.anInt1048 || areaSound.player.movementSeqId == basType.anInt1066) {
movementSpeed = 3; movementSpeed = 3;
} }
if (areaSound.movementSpeed != movementSpeed) { if (areaSound.movementSpeed != movementSpeed) {
sound = Player.getSound(areaSound.player); sound = Player.getSound(areaSound.player);
if (areaSound.sound != sound) { if (areaSound.sound != sound) {
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
client.soundStream.removeSubStream(areaSound.primaryStream); client.soundStream.removeSubStream(areaSound.primaryStream);
areaSound.primaryStream = null; areaSound.primaryStream = null;
} }
areaSound.sound = sound; areaSound.sound = sound;
} }
areaSound.movementSpeed = movementSpeed; areaSound.movementSpeed = movementSpeed;
} }
areaSound.minXFine = areaSound.player.xFine; areaSound.minXFine = areaSound.player.xFine;
areaSound.maxXFine = areaSound.player.xFine + areaSound.player.getSize() * 64; areaSound.maxXFine = areaSound.player.xFine + areaSound.player.getSize() * 64;
areaSound.minZFine = areaSound.player.zFine; areaSound.minZFine = areaSound.player.zFine;
areaSound.maxZFine = areaSound.player.zFine + areaSound.player.getSize() * 64; areaSound.maxZFine = areaSound.player.zFine + areaSound.player.getSize() * 64;
redraw(arg1, areaSound, arg3, arg0, arg2); redraw(arg1, areaSound, arg3, arg0, arg2);
} }
} }
@OriginalMember(owner = "client!je", name = "k", descriptor = "(I)V") @OriginalMember(owner = "client!je", name = "k", descriptor = "(I)V")
public static void updateMulti() { public static void updateMulti() {
@Pc(6) AreaSound areaSound; @Pc(6) AreaSound areaSound;
for (areaSound = (AreaSound) locSounds.head(); areaSound != null; areaSound = (AreaSound) locSounds.next()) { for (areaSound = (AreaSound) locSounds.head(); areaSound != null; areaSound = (AreaSound) locSounds.next()) {
if (areaSound.multiLocOrNpc) { if (areaSound.multiLocOrNpc) {
areaSound.update(); areaSound.update();
} }
} }
for (areaSound = (AreaSound) npcSounds.head(); areaSound != null; areaSound = (AreaSound) npcSounds.next()) { for (areaSound = (AreaSound) npcSounds.head(); areaSound != null; areaSound = (AreaSound) npcSounds.next()) {
if (areaSound.multiLocOrNpc) { if (areaSound.multiLocOrNpc) {
areaSound.update(); areaSound.update();
} }
} }
} }
@OriginalMember(owner = "client!ra", name = "a", descriptor = "(ILclient!pb;BII)V") @OriginalMember(owner = "client!ra", name = "a", descriptor = "(ILclient!pb;BII)V")
public static void remove(@OriginalArg(0) int x, @OriginalArg(1) LocType locType, @OriginalArg(3) int z, @OriginalArg(4) int level) { public static void remove(@OriginalArg(0) int x, @OriginalArg(1) LocType locType, @OriginalArg(3) int z, @OriginalArg(4) int level) {
for (@Pc(10) AreaSound areaSound = (AreaSound) locSounds.head(); areaSound != null; areaSound = (AreaSound) locSounds.next()) { for (@Pc(10) AreaSound areaSound = (AreaSound) locSounds.head(); areaSound != null; areaSound = (AreaSound) locSounds.next()) {
if (level == areaSound.level && areaSound.minXFine == x * 128 && areaSound.minZFine == z * 128 && locType.id == areaSound.locType.id) { if (level == areaSound.level && areaSound.minXFine == x * 128 && areaSound.minZFine == z * 128 && locType.id == areaSound.locType.id) {
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
client.soundStream.removeSubStream(areaSound.primaryStream); client.soundStream.removeSubStream(areaSound.primaryStream);
areaSound.primaryStream = null; areaSound.primaryStream = null;
} }
if (areaSound.secondaryStream != null) { if (areaSound.secondaryStream != null) {
client.soundStream.removeSubStream(areaSound.secondaryStream); client.soundStream.removeSubStream(areaSound.secondaryStream);
areaSound.secondaryStream = null; areaSound.secondaryStream = null;
} }
areaSound.unlink(); areaSound.unlink();
return; return;
} }
} }
} }
@OriginalMember(owner = "client!vd", name = "a", descriptor = "(BZ)V") @OriginalMember(owner = "client!vd", name = "a", descriptor = "(BZ)V")
public static void clear(@OriginalArg(1) boolean pathingEntities) { public static void clear(@OriginalArg(1) boolean pathingEntities) {
@Pc(14) AreaSound areaSound; @Pc(14) AreaSound areaSound;
for (areaSound = (AreaSound) locSounds.head(); areaSound != null; areaSound = (AreaSound) locSounds.next()) { for (areaSound = (AreaSound) locSounds.head(); areaSound != null; areaSound = (AreaSound) locSounds.next()) {
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
client.soundStream.removeSubStream(areaSound.primaryStream); client.soundStream.removeSubStream(areaSound.primaryStream);
areaSound.primaryStream = null; areaSound.primaryStream = null;
} }
if (areaSound.secondaryStream != null) { if (areaSound.secondaryStream != null) {
client.soundStream.removeSubStream(areaSound.secondaryStream); client.soundStream.removeSubStream(areaSound.secondaryStream);
areaSound.secondaryStream = null; areaSound.secondaryStream = null;
} }
areaSound.unlink(); areaSound.unlink();
} }
if (!pathingEntities) { if (!pathingEntities) {
return; return;
} }
for (areaSound = (AreaSound) npcSounds.head(); areaSound != null; areaSound = (AreaSound) npcSounds.next()) { for (areaSound = (AreaSound) npcSounds.head(); areaSound != null; areaSound = (AreaSound) npcSounds.next()) {
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
client.soundStream.removeSubStream(areaSound.primaryStream); client.soundStream.removeSubStream(areaSound.primaryStream);
areaSound.primaryStream = null; areaSound.primaryStream = null;
} }
areaSound.unlink(); areaSound.unlink();
} }
for (areaSound = (AreaSound) playerSounds.head(); areaSound != null; areaSound = (AreaSound) playerSounds.next()) { for (areaSound = (AreaSound) playerSounds.head(); areaSound != null; areaSound = (AreaSound) playerSounds.next()) {
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
client.soundStream.removeSubStream(areaSound.primaryStream); client.soundStream.removeSubStream(areaSound.primaryStream);
areaSound.primaryStream = null; areaSound.primaryStream = null;
} }
areaSound.unlink(); areaSound.unlink();
} }
} }
@OriginalMember(owner = "client!lk", name = "a", descriptor = "(ILclient!fl;IIII)V") @OriginalMember(owner = "client!lk", name = "a", descriptor = "(ILclient!fl;IIII)V")
public static void redraw(@OriginalArg(0) int x, @OriginalArg(1) AreaSound areaSound, @OriginalArg(2) int level, @OriginalArg(3) int loops, @OriginalArg(4) int z) { public static void redraw(@OriginalArg(0) int x, @OriginalArg(1) AreaSound areaSound, @OriginalArg(2) int level, @OriginalArg(3) int loops, @OriginalArg(4) int z) {
if (areaSound.sound == -1 && areaSound.sounds == null) { if (areaSound.sound == -1 && areaSound.sounds == null) {
return; return;
} }
@Pc(20) int distance = 0; @Pc(20) int distance = 0;
if (areaSound.maxXFine < x) { if (areaSound.maxXFine < x) {
distance = x - areaSound.maxXFine; distance = x - areaSound.maxXFine;
} else if (areaSound.minXFine > x) { } else if (areaSound.minXFine > x) {
distance = areaSound.minXFine - x; distance = areaSound.minXFine - x;
} }
if (areaSound.maxZFine < z) { if (areaSound.maxZFine < z) {
distance += z - areaSound.maxZFine; distance += z - areaSound.maxZFine;
} else if (z < areaSound.minZFine) { } else if (z < areaSound.minZFine) {
distance += areaSound.minZFine - z; distance += areaSound.minZFine - z;
} }
if (areaSound.radius == 0 || areaSound.radius < distance - 64 || Preferences.ambientSoundsVolume == 0 || level != areaSound.level) { if (areaSound.radius == 0 || areaSound.radius < distance - 64 || Preferences.ambientSoundsVolume == 0 || level != areaSound.level) {
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
client.soundStream.removeSubStream(areaSound.primaryStream); client.soundStream.removeSubStream(areaSound.primaryStream);
areaSound.primaryStream = null; areaSound.primaryStream = null;
} }
if (areaSound.secondaryStream != null) { if (areaSound.secondaryStream != null) {
client.soundStream.removeSubStream(areaSound.secondaryStream); client.soundStream.removeSubStream(areaSound.secondaryStream);
areaSound.secondaryStream = null; areaSound.secondaryStream = null;
} }
return; return;
} }
distance -= 64; distance -= 64;
if (distance < 0) { if (distance < 0) {
distance = 0; distance = 0;
} }
@Pc(134) int volume = (areaSound.radius - distance) * Preferences.ambientSoundsVolume / areaSound.radius; @Pc(134) int volume = (areaSound.radius - distance) * Preferences.ambientSoundsVolume / areaSound.radius;
if (areaSound.primaryStream != null) { if (areaSound.primaryStream != null) {
areaSound.primaryStream.setVolume(volume); areaSound.primaryStream.setVolume(volume);
} else if (areaSound.sound >= 0) { } else if (areaSound.sound >= 0) {
@Pc(150) SynthSound synthSound = SynthSound.create(client.js5Archive4, areaSound.sound, 0); @Pc(150) SynthSound synthSound = SynthSound.create(client.js5Archive4, areaSound.sound, 0);
if (synthSound != null) { if (synthSound != null) {
@Pc(158) PcmSound pcmSound = synthSound.toPcmSound().resample(client.resampler); @Pc(158) PcmSound pcmSound = synthSound.toPcmSound().resample(client.resampler);
@Pc(163) SoundPcmStream stream = SoundPcmStream.create(pcmSound, volume); @Pc(163) SoundPcmStream stream = SoundPcmStream.create(pcmSound, volume);
stream.setLoops(-1); stream.setLoops(-1);
client.soundStream.addSubStream(stream); client.soundStream.addSubStream(stream);
areaSound.primaryStream = stream; areaSound.primaryStream = stream;
} }
} }
if (areaSound.secondaryStream != null) { if (areaSound.secondaryStream != null) {
areaSound.secondaryStream.setVolume(volume); areaSound.secondaryStream.setVolume(volume);
if (!areaSound.secondaryStream.isLinked()) { if (!areaSound.secondaryStream.isLinked()) {
areaSound.secondaryStream = null; areaSound.secondaryStream = null;
} }
} else if (areaSound.sounds != null && (areaSound.remainingLoops -= loops) <= 0) { } else if (areaSound.sounds != null && (areaSound.remainingLoops -= loops) <= 0) {
@Pc(219) int index = (int) ((double) areaSound.sounds.length * Math.random()); @Pc(219) int index = (int) ((double) areaSound.sounds.length * Math.random());
@Pc(227) SynthSound synthSound = SynthSound.create(client.js5Archive4, areaSound.sounds[index], 0); @Pc(227) SynthSound synthSound = SynthSound.create(client.js5Archive4, areaSound.sounds[index], 0);
if (synthSound != null) { if (synthSound != null) {
@Pc(236) PcmSound pcmSound = synthSound.toPcmSound().resample(client.resampler); @Pc(236) PcmSound pcmSound = synthSound.toPcmSound().resample(client.resampler);
@Pc(241) SoundPcmStream stream = SoundPcmStream.create(pcmSound, volume); @Pc(241) SoundPcmStream stream = SoundPcmStream.create(pcmSound, volume);
stream.setLoops(0); stream.setLoops(0);
client.soundStream.addSubStream(stream); client.soundStream.addSubStream(stream);
areaSound.remainingLoops = (int) ((double) (areaSound.maxInterval - areaSound.minInterval) * Math.random()) + areaSound.minInterval; areaSound.remainingLoops = (int) ((double) (areaSound.maxInterval - areaSound.minInterval) * Math.random()) + areaSound.minInterval;
areaSound.secondaryStream = stream; areaSound.secondaryStream = stream;
} }
} }
} }
} }

View file

@ -46,7 +46,7 @@ public final class ArrayUtils {
} }
} }
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([II[III)V") @OriginalMember(owner = "client!kg", name = "a", descriptor = "([II[III)V")
public static void copy(@OriginalArg(0) int[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int[] arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) { public static void copy(@OriginalArg(0) int[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int[] arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
@Pc(15) int local15; @Pc(15) int local15;
if (arg0 == arg2) { if (arg0 == arg2) {

View file

@ -8,10 +8,10 @@ import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!cn") @OriginalClass("client!cn")
public final class AttachLocRequest extends Node { public final class AttachLocRequest extends Node {
@OriginalMember(owner = "client!ka", name = "q", descriptor = "Lclient!ih;") @OriginalMember(owner = "client!ka", name = "q", descriptor = "Lclient!ih;")
public static final LinkedList queue = new LinkedList(); public static final LinkedList queue = new LinkedList();
@OriginalMember(owner = "client!cn", name = "p", descriptor = "I") @OriginalMember(owner = "client!cn", name = "p", descriptor = "I")
public int setLoops; public int setLoops;
@OriginalMember(owner = "client!cn", name = "r", descriptor = "I") @OriginalMember(owner = "client!cn", name = "r", descriptor = "I")
@ -141,21 +141,21 @@ public final class AttachLocRequest extends Node {
} }
} }
@OriginalMember(owner = "client!nh", name = "a", descriptor = "(IIIIIIIIIIIII)V") @OriginalMember(owner = "client!nh", name = "a", descriptor = "(IIIIIIIIIIIII)V")
public static void push(@OriginalArg(0) int x1Delta, @OriginalArg(1) int setLoops, @OriginalArg(2) int entityId, @OriginalArg(3) int resetLoops, @OriginalArg(4) int z, @OriginalArg(5) int z1Delta, @OriginalArg(6) int angle, @OriginalArg(7) int x0Delta, @OriginalArg(8) int x, @OriginalArg(9) int shape, @OriginalArg(11) int z0Delta, @OriginalArg(12) int locId) { public static void push(@OriginalArg(0) int x1Delta, @OriginalArg(1) int setLoops, @OriginalArg(2) int entityId, @OriginalArg(3) int resetLoops, @OriginalArg(4) int z, @OriginalArg(5) int z1Delta, @OriginalArg(6) int angle, @OriginalArg(7) int x0Delta, @OriginalArg(8) int x, @OriginalArg(9) int shape, @OriginalArg(11) int z0Delta, @OriginalArg(12) int locId) {
@Pc(7) AttachLocRequest req = new AttachLocRequest(); @Pc(7) AttachLocRequest req = new AttachLocRequest();
req.angle = angle; req.angle = angle;
req.resetLoops = resetLoops; req.resetLoops = resetLoops;
req.setLoops = setLoops; req.setLoops = setLoops;
req.z1Delta = z1Delta; req.z1Delta = z1Delta;
req.entityId = entityId; req.entityId = entityId;
req.x = x; req.x = x;
req.z0Delta = z0Delta; req.z0Delta = z0Delta;
req.z = z; req.z = z;
req.locId = locId; req.locId = locId;
req.x0Delta = x0Delta; req.x0Delta = x0Delta;
req.x1Delta = x1Delta; req.x1Delta = x1Delta;
req.shape = shape; req.shape = shape;
queue.addTail(req); queue.addTail(req);
} }
} }

View file

@ -1,20 +1,21 @@
package rt4; package rt4;
import java.awt.Component;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.awt.Component;
@OriginalClass("client!vh") @OriginalClass("client!vh")
public class AudioChannel { public class AudioChannel {
@OriginalMember(owner = "client!na", name = "w", descriptor = "Z") @OriginalMember(owner = "client!na", name = "w", descriptor = "Z")
public static boolean stereo; public static boolean stereo;
@OriginalMember(owner = "client!va", name = "O", descriptor = "I") @OriginalMember(owner = "client!va", name = "O", descriptor = "I")
public static int threadPriority; public static int threadPriority;
@OriginalMember(owner = "client!em", name = "x", descriptor = "Lclient!cj;") @OriginalMember(owner = "client!em", name = "x", descriptor = "Lclient!cj;")
public static AudioThread thread; public static AudioThread thread;
@OriginalMember(owner = "client!dh", name = "h", descriptor = "I") @OriginalMember(owner = "client!dh", name = "h", descriptor = "I")
public static int sampleRate; public static int sampleRate;
@ -66,12 +67,12 @@ public class AudioChannel {
@OriginalMember(owner = "client!vh", name = "C", descriptor = "I") @OriginalMember(owner = "client!vh", name = "C", descriptor = "I")
private int prevBufferSize = 0; private int prevBufferSize = 0;
@OriginalMember(owner = "client!dc", name = "a", descriptor = "(IIIZ)V") @OriginalMember(owner = "client!dc", name = "a", descriptor = "(IIIZ)V")
public static void init(@OriginalArg(3) boolean stereo) { public static void init(@OriginalArg(3) boolean stereo) {
threadPriority = 2; threadPriority = 2;
AudioChannel.stereo = stereo; AudioChannel.stereo = stereo;
sampleRate = 22050; sampleRate = 22050;
} }
@OriginalMember(owner = "client!id", name = "a", descriptor = "(ILsignlink!ll;Ljava/awt/Component;II)Lclient!vh;") @OriginalMember(owner = "client!id", name = "a", descriptor = "(ILsignlink!ll;Ljava/awt/Component;II)Lclient!vh;")
public static AudioChannel create(@OriginalArg(0) int arg0, @OriginalArg(1) SignLink arg1, @OriginalArg(2) Component arg2, @OriginalArg(3) int arg3) { public static AudioChannel create(@OriginalArg(0) int arg0, @OriginalArg(1) SignLink arg1, @OriginalArg(2) Component arg2, @OriginalArg(3) int arg3) {
@ -128,18 +129,18 @@ public class AudioChannel {
} }
} }
@OriginalMember(owner = "client!nd", name = "a", descriptor = "(ZLclient!qb;)V") @OriginalMember(owner = "client!nd", name = "a", descriptor = "(ZLclient!qb;)V")
public static void setInactive(@OriginalArg(1) PcmStream arg0) { public static void setInactive(@OriginalArg(1) PcmStream arg0) {
if (arg0.sound != null) { if (arg0.sound != null) {
arg0.sound.position = 0; arg0.sound.position = 0;
} }
arg0.active = false; arg0.active = false;
for (@Pc(14) PcmStream local14 = arg0.firstSubStream(); local14 != null; local14 = arg0.nextSubStream()) { for (@Pc(14) PcmStream local14 = arg0.firstSubStream(); local14 != null; local14 = arg0.nextSubStream()) {
setInactive(local14); setInactive(local14);
} }
} }
@OriginalMember(owner = "client!vh", name = "a", descriptor = "()V") @OriginalMember(owner = "client!vh", name = "a", descriptor = "()V")
protected void write() throws Exception { protected void write() throws Exception {
} }
@ -166,7 +167,8 @@ public class AudioChannel {
@Pc(45) int local45 = 0; @Pc(45) int local45 = 0;
@Pc(47) int local47 = 255; @Pc(47) int local47 = 255;
@Pc(49) int local49 = 7; @Pc(49) int local49 = 7;
label106: while (local47 != 0) { label106:
while (local47 != 0) {
@Pc(57) int local57; @Pc(57) int local57;
@Pc(62) int local62; @Pc(62) int local62;
if (local49 < 0) { if (local49 < 0) {
@ -181,7 +183,8 @@ public class AudioChannel {
local47 &= ~(0x1 << local57); local47 &= ~(0x1 << local57);
@Pc(91) PcmStream local91 = null; @Pc(91) PcmStream local91 = null;
@Pc(96) PcmStream local96 = this.aClass3_Sub3Array5[local57]; @Pc(96) PcmStream local96 = this.aClass3_Sub3Array5[local57];
label100: while (true) { label100:
while (true) {
while (true) { while (true) {
if (local96 == null) { if (local96 == null) {
break label100; break label100;

View file

@ -5,44 +5,44 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class BasTypeList { public class BasTypeList {
@OriginalMember(owner = "client!vf", name = "a", descriptor = "Lclient!n;") @OriginalMember(owner = "client!vf", name = "a", descriptor = "Lclient!n;")
public static final SoftLruHashTable types = new SoftLruHashTable(64); public static final SoftLruHashTable types = new SoftLruHashTable(64);
@OriginalMember(owner = "client!nd", name = "p", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!nd", name = "p", descriptor = "Lclient!ve;")
public static Js5 archive; public static Js5 archive;
@OriginalMember(owner = "client!ge", name = "a", descriptor = "(BLclient!ve;)V") @OriginalMember(owner = "client!ge", name = "a", descriptor = "(BLclient!ve;)V")
public static void init(@OriginalArg(1) Js5 arg0) { public static void init(@OriginalArg(1) Js5 arg0) {
archive = arg0; archive = arg0;
} }
@OriginalMember(owner = "client!hb", name = "a", descriptor = "(ZI)Lclient!ck;") @OriginalMember(owner = "client!hb", name = "a", descriptor = "(ZI)Lclient!ck;")
public static BasType get(@OriginalArg(1) int arg0) { public static BasType get(@OriginalArg(1) int arg0) {
@Pc(10) BasType local10 = (BasType) types.get((long) arg0); @Pc(10) BasType local10 = (BasType) types.get(arg0);
if (local10 != null) { if (local10 != null) {
return local10; return local10;
} }
@Pc(21) byte[] local21 = archive.fetchFile(32, arg0); @Pc(21) byte[] local21 = archive.fetchFile(32, arg0);
local10 = new BasType(); local10 = new BasType();
if (local21 != null) { if (local21 != null) {
local10.decode(new Buffer(local21)); local10.decode(new Buffer(local21));
} }
local10.method878(); local10.method878();
types.put(local10, (long) arg0); types.put(local10, arg0);
return local10; return local10;
} }
@OriginalMember(owner = "client!jk", name = "e", descriptor = "(B)V") @OriginalMember(owner = "client!jk", name = "e", descriptor = "(B)V")
public static void method2433() { public static void method2433() {
types.clear(); types.clear();
} }
@OriginalMember(owner = "client!bi", name = "c", descriptor = "(II)V") @OriginalMember(owner = "client!bi", name = "c", descriptor = "(II)V")
public static void clean() { public static void clean() {
types.clean(5); types.clean(5);
} }
@OriginalMember(owner = "client!di", name = "d", descriptor = "(I)V") @OriginalMember(owner = "client!di", name = "d", descriptor = "(I)V")
public static void method1172() { public static void method1172() {
types.removeSoft(); types.removeSoft();
} }
} }

View file

@ -5,33 +5,33 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class Base37 { public class Base37 {
@OriginalMember(owner = "client!ch", name = "v", descriptor = "[B") @OriginalMember(owner = "client!ch", name = "v", descriptor = "[B")
public static final byte[] aByteArray12 = new byte[] { 95, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57 }; public static final byte[] aByteArray12 = new byte[]{95, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57};
@OriginalMember(owner = "client!ge", name = "a", descriptor = "(IJ)Lclient!na;") @OriginalMember(owner = "client!ge", name = "a", descriptor = "(IJ)Lclient!na;")
public static JagString decode37(@OriginalArg(1) long arg0) { public static JagString decode37(@OriginalArg(1) long arg0) {
if (arg0 <= 0L || arg0 >= 6582952005840035281L) { if (arg0 <= 0L || arg0 >= 6582952005840035281L) {
return null; return null;
} else if (arg0 % 37L == 0L) { } else if (arg0 % 37L == 0L) {
return null; return null;
} else { } else {
@Pc(32) int local32 = 0; @Pc(32) int local32 = 0;
@Pc(34) long local34 = arg0; @Pc(34) long local34 = arg0;
while (local34 != 0L) { while (local34 != 0L) {
local34 /= 37L; local34 /= 37L;
local32++; local32++;
} }
@Pc(48) byte[] local48 = new byte[local32]; @Pc(48) byte[] local48 = new byte[local32];
while (arg0 != 0L) { while (arg0 != 0L) {
@Pc(65) long local65 = arg0; @Pc(65) long local65 = arg0;
arg0 /= 37L; arg0 /= 37L;
local32--; local32--;
local48[local32] = aByteArray12[(int) (local65 - arg0 * 37L)]; local48[local32] = aByteArray12[(int) (local65 - arg0 * 37L)];
} }
@Pc(88) JagString local88 = new JagString(); @Pc(88) JagString local88 = new JagString();
local88.chars = local48; local88.chars = local48;
local88.length = local48.length; local88.length = local48.length;
return local88; return local88;
} }
} }
} }

View file

@ -1,9 +1,10 @@
package rt4; package rt4;
import java.io.InputStream;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import java.io.InputStream;
@OriginalClass("client!qk") @OriginalClass("client!qk")
public final class BrokenInputStream extends InputStream { public final class BrokenInputStream extends InputStream {

View file

@ -1,11 +1,12 @@
package rt4; package rt4;
import java.io.IOException;
import java.io.OutputStream;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import java.io.IOException;
import java.io.OutputStream;
@OriginalClass("client!vg") @OriginalClass("client!vg")
public final class BrokenOutputStream extends OutputStream { public final class BrokenOutputStream extends OutputStream {

View file

@ -1,10 +1,10 @@
package rt4; package rt4;
import java.applet.Applet;
// import netscape.javascript.JSObject;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import java.applet.Applet;
public final class BrowserControl { public final class BrowserControl {
@OriginalMember(owner = "client!gh", name = "a", descriptor = "(Ljava/lang/String;BLjava/applet/Applet;)Ljava/lang/Object;") @OriginalMember(owner = "client!gh", name = "a", descriptor = "(Ljava/lang/String;BLjava/applet/Applet;)Ljava/lang/Object;")

View file

@ -36,7 +36,7 @@ public class Buffer extends Node {
public static final byte[][] allocatedMin = new byte[1000][]; public static final byte[][] allocatedMin = new byte[1000][];
@OriginalMember(owner = "client!bb", name = "t", descriptor = "[[B") @OriginalMember(owner = "client!bb", name = "t", descriptor = "[[B")
public static final byte[][] allocatedMid = new byte[250][]; public static final byte[][] allocatedMid = new byte[250][];
@OriginalMember(owner = "client!dc", name = "db", descriptor = "[[B") @OriginalMember(owner = "client!dc", name = "db", descriptor = "[[B")
public static final byte[][] allocatedMax = new byte[50][]; public static final byte[][] allocatedMax = new byte[50][];
@ -51,22 +51,22 @@ public class Buffer extends Node {
public static int allocatedMaxCount = 0; public static int allocatedMaxCount = 0;
@OriginalMember(owner = "client!wa", name = "y", descriptor = "[B") @OriginalMember(owner = "client!wa", name = "y", descriptor = "[B")
public byte[] data; public byte[] data;
@OriginalMember(owner = "client!wa", name = "T", descriptor = "I") @OriginalMember(owner = "client!wa", name = "T", descriptor = "I")
public int offset; public int offset;
@OriginalMember(owner = "client!wa", name = "<init>", descriptor = "(I)V") @OriginalMember(owner = "client!wa", name = "<init>", descriptor = "(I)V")
public Buffer(@OriginalArg(0) int size) { public Buffer(@OriginalArg(0) int size) {
this.data = allocate(size); this.data = allocate(size);
this.offset = 0; this.offset = 0;
} }
@OriginalMember(owner = "client!wa", name = "<init>", descriptor = "([B)V") @OriginalMember(owner = "client!wa", name = "<init>", descriptor = "([B)V")
public Buffer(@OriginalArg(0) byte[] src) { public Buffer(@OriginalArg(0) byte[] src) {
this.offset = 0; this.offset = 0;
this.data = src; this.data = src;
} }
@OriginalMember(owner = "client!sh", name = "a", descriptor = "(II)[B") @OriginalMember(owner = "client!sh", name = "a", descriptor = "(II)[B")
public static synchronized byte[] allocate(@OriginalArg(1) int length) { public static synchronized byte[] allocate(@OriginalArg(1) int length) {
@ -421,11 +421,11 @@ public class Buffer extends Node {
this.data[this.offset - length - 1] = (byte) length; this.data[this.offset - length - 1] = (byte) length;
} }
@OriginalMember(owner = "client!wa", name = "o", descriptor = "(II)V") @OriginalMember(owner = "client!wa", name = "o", descriptor = "(II)V")
public final void p2(@OriginalArg(1) int value) { public final void p2(@OriginalArg(1) int value) {
this.data[this.offset++] = (byte) (value >> 8); this.data[this.offset++] = (byte) (value >> 8);
this.data[this.offset++] = (byte) value; this.data[this.offset++] = (byte) value;
} }
@OriginalMember(owner = "client!wa", name = "l", descriptor = "(II)V") @OriginalMember(owner = "client!wa", name = "l", descriptor = "(II)V")
public final void p2add(@OriginalArg(0) int value) { public final void p2add(@OriginalArg(0) int value) {

View file

@ -1,13 +1,14 @@
package rt4; package rt4;
import java.io.EOFException;
import java.io.File;
import java.io.IOException;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.io.EOFException;
import java.io.File;
import java.io.IOException;
@OriginalClass("client!en") @OriginalClass("client!en")
public final class BufferedFile { public final class BufferedFile {

View file

@ -1,19 +1,15 @@
package rt4; package rt4;
import java.awt.Component;
import java.awt.Graphics;
import java.awt.Shape;
import java.awt.image.BufferedImage;
import java.awt.image.DataBufferInt;
import java.awt.image.DirectColorModel;
import java.awt.image.Raster;
import java.awt.image.WritableRaster;
import java.util.Hashtable;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.awt.Component;
import java.awt.*;
import java.awt.image.*;
import java.util.Hashtable;
@OriginalClass("client!ti") @OriginalClass("client!ti")
public final class BufferedImageFrameBuffer extends FrameBuffer { public final class BufferedImageFrameBuffer extends FrameBuffer {

View file

@ -1,14 +1,15 @@
package rt4; package rt4;
import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
import java.io.EOFException; import java.io.EOFException;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.OutputStream; import java.io.OutputStream;
import java.net.Socket; import java.net.Socket;
import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!ma") @OriginalClass("client!ma")
public final class BufferedSocket implements Runnable { public final class BufferedSocket implements Runnable {
@ -60,9 +61,11 @@ public final class BufferedSocket implements Runnable {
while (true) { while (true) {
@Pc(39) int len; @Pc(39) int len;
@Pc(24) int off; @Pc(24) int off;
ready: { ready:
{
synchronized (this) { synchronized (this) {
close: { close:
{
if (this.writePointer == this.readPointer) { if (this.writePointer == this.readPointer) {
if (this.closed) { if (this.closed) {
break close; break close;

View file

@ -8,52 +8,52 @@ import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!u") @OriginalClass("client!u")
public abstract class ByteArray { public abstract class ByteArray {
@OriginalMember(owner = "client!gk", name = "g", descriptor = "Z") @OriginalMember(owner = "client!gk", name = "g", descriptor = "Z")
public static boolean directBuffersUnsupported = false; public static boolean directBuffersUnsupported = false;
@OriginalMember(owner = "client!km", name = "a", descriptor = "(ILjava/lang/Object;Z)[B") @OriginalMember(owner = "client!km", name = "a", descriptor = "(ILjava/lang/Object;Z)[B")
public static byte[] unwrap(@OriginalArg(1) Object in, @OriginalArg(2) boolean copy) { public static byte[] unwrap(@OriginalArg(1) Object in, @OriginalArg(2) boolean copy) {
if (in == null) { if (in == null) {
return null; return null;
} else if (in instanceof byte[]) { } else if (in instanceof byte[]) {
@Pc(14) byte[] bytes = (byte[]) in; @Pc(14) byte[] bytes = (byte[]) in;
return copy ? copy(bytes) : bytes; return copy ? copy(bytes) : bytes;
} else if (in instanceof ByteArray) { } else if (in instanceof ByteArray) {
@Pc(34) ByteArray array = (ByteArray) in; @Pc(34) ByteArray array = (ByteArray) in;
return array.get(); return array.get();
} else { } else {
throw new IllegalArgumentException(); throw new IllegalArgumentException();
} }
} }
@OriginalMember(owner = "client!bm", name = "a", descriptor = "(B[B)[B") @OriginalMember(owner = "client!bm", name = "a", descriptor = "(B[B)[B")
public static byte[] copy(@OriginalArg(1) byte[] in) { public static byte[] copy(@OriginalArg(1) byte[] in) {
@Pc(6) int len = in.length; @Pc(6) int len = in.length;
@Pc(9) byte[] out = new byte[len]; @Pc(9) byte[] out = new byte[len];
JagString.copy(in, 0, out, 0, len); JagString.copy(in, 0, out, 0, len);
return out; return out;
} }
@OriginalMember(owner = "client!cj", name = "a", descriptor = "(ZI[B)Ljava/lang/Object;") @OriginalMember(owner = "client!cj", name = "a", descriptor = "(ZI[B)Ljava/lang/Object;")
public static Object wrap(@OriginalArg(2) byte[] bytes) { public static Object wrap(@OriginalArg(2) byte[] bytes) {
if (bytes == null) { if (bytes == null) {
return null; return null;
} }
if (bytes.length > 136 && !directBuffersUnsupported) { if (bytes.length > 136 && !directBuffersUnsupported) {
try { try {
@Pc(27) ByteArray array = new DirectByteArray(); @Pc(27) ByteArray array = new DirectByteArray();
array.set(bytes); array.set(bytes);
return array; return array;
} catch (@Pc(34) Throwable ex) { } catch (@Pc(34) Throwable ex) {
directBuffersUnsupported = true; directBuffersUnsupported = true;
} }
} }
return bytes; return bytes;
} }
@OriginalMember(owner = "client!u", name = "a", descriptor = "(I)[B") @OriginalMember(owner = "client!u", name = "a", descriptor = "(I)[B")
public abstract byte[] get(); public abstract byte[] get();
@OriginalMember(owner = "client!u", name = "a", descriptor = "(I[B)V") @OriginalMember(owner = "client!u", name = "a", descriptor = "(I[B)V")
public abstract void set(@OriginalArg(1) byte[] bytes); public abstract void set(@OriginalArg(1) byte[] bytes);
} }

View file

@ -3,7 +3,6 @@ package rt4;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!ea") @OriginalClass("client!ea")
public final class ByteArrayNode extends Node { public final class ByteArrayNode extends Node {

View file

@ -37,7 +37,8 @@ public final class Bzip2Decompressor {
@Pc(25) int local25 = arg0.strmAvailOut; @Pc(25) int local25 = arg0.strmAvailOut;
@Pc(27) int local27 = local25; @Pc(27) int local27 = local25;
@Pc(32) int local32 = arg0.saveNblock + 1; @Pc(32) int local32 = arg0.saveNblock + 1;
returnNotr: while (true) { returnNotr:
while (true) {
if (local5 > 0) { if (local5 > 0) {
while (true) { while (true) {
if (local25 == 0) { if (local25 == 0) {
@ -226,11 +227,7 @@ public final class Bzip2Decompressor {
@Pc(141) int local141; @Pc(141) int local141;
for (local141 = 0; local141 < 16; local141++) { for (local141 = 0; local141 < 16; local141++) {
local61 = getBit(arg0); local61 = getBit(arg0);
if (local61 == 1) { arg0.inUse16[local141] = local61 == 1;
arg0.inUse16[local141] = true;
} else {
arg0.inUse16[local141] = false;
}
} }
for (local141 = 0; local141 < 256; local141++) { for (local141 = 0; local141 < 256; local141++) {
arg0.inUse[local141] = false; arg0.inUse[local141] = false;

View file

@ -1,12 +1,13 @@
package rt4; package rt4;
import java.io.EOFException;
import java.io.IOException;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.io.EOFException;
import java.io.IOException;
@OriginalClass("client!ge") @OriginalClass("client!ge")
public final class Cache { public final class Cache {
@ -64,7 +65,7 @@ public final class Cache {
local27 = null; local27 = null;
return (byte[]) local27; return (byte[]) local27;
} }
this.index.seek((long) (group * 6)); this.index.seek(group * 6);
this.index.read(0, buffer, 6); this.index.read(0, buffer, 6);
@Pc(69) int local69 = ((buffer[3] & 0xFF) << 16) - (-((buffer[4] & 0xFF) << 8) - (buffer[5] & 0xFF)); @Pc(69) int local69 = ((buffer[3] & 0xFF) << 16) - (-((buffer[4] & 0xFF) << 8) - (buffer[5] & 0xFF));
@Pc(99) int local99 = (buffer[2] & 0xFF) + ((buffer[1] & 0xFF) << 8) + ((buffer[0] & 0xFF) << 16); @Pc(99) int local99 = (buffer[2] & 0xFF) + ((buffer[1] & 0xFF) << 8) + ((buffer[0] & 0xFF) << 16);
@ -84,7 +85,7 @@ public final class Cache {
return (byte[]) local27; return (byte[]) local27;
} }
@Pc(157) int local157 = local99 - local136; @Pc(157) int local157 = local99 - local136;
this.data.seek((long) (local69 * 520)); this.data.seek(local69 * 520);
if (local157 > 512) { if (local157 > 512) {
local157 = 512; local157 = 512;
} }
@ -129,7 +130,7 @@ public final class Cache {
local27 = false; local27 = false;
return local27; return local27;
} }
this.index.seek((long) (arg1 * 6)); this.index.seek(arg1 * 6);
this.index.read(0, buffer, 6); this.index.read(0, buffer, 6);
local67 = ((buffer[3] & 0xFF) << 16) + (buffer[4] << 8 & 0xFF00) + (buffer[5] & 0xFF); local67 = ((buffer[3] & 0xFF) << 16) + (buffer[4] << 8 & 0xFF00) + (buffer[5] & 0xFF);
if (local67 <= 0 || this.data.length() / 520L < (long) local67) { if (local67 <= 0 || this.data.length() / 520L < (long) local67) {
@ -150,15 +151,16 @@ public final class Cache {
buffer[3] = (byte) (local67 >> 16); buffer[3] = (byte) (local67 >> 16);
@Pc(156) int local156 = 0; @Pc(156) int local156 = 0;
buffer[1] = (byte) (arg0 >> 8); buffer[1] = (byte) (arg0 >> 8);
this.index.seek((long) (arg1 * 6)); this.index.seek(arg1 * 6);
this.index.write(buffer, 0, 6); this.index.write(buffer, 0, 6);
while (true) { while (true) {
if (local125 < arg0) { if (local125 < arg0) {
label134: { label134:
{
@Pc(189) int local189 = 0; @Pc(189) int local189 = 0;
@Pc(248) int local248; @Pc(248) int local248;
if (arg3) { if (arg3) {
this.data.seek((long) (local67 * 520)); this.data.seek(local67 * 520);
try { try {
this.data.read(0, buffer, 8); this.data.read(0, buffer, 8);
} catch (@Pc(209) EOFException local209) { } catch (@Pc(209) EOFException local209) {
@ -203,7 +205,7 @@ public final class Cache {
buffer[3] = (byte) local156; buffer[3] = (byte) local156;
local156++; local156++;
buffer[5] = (byte) (local189 >> 8); buffer[5] = (byte) (local189 >> 8);
this.data.seek((long) (local67 * 520)); this.data.seek(local67 * 520);
local67 = local189; local67 = local189;
this.data.write(buffer, 0, 8); this.data.write(buffer, 0, 8);
this.data.write(arg2, local125, local248); this.data.write(arg2, local125, local248);

View file

@ -5,301 +5,297 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class Camera { public class Camera {
@OriginalMember(owner = "client!id", name = "d", descriptor = "[[[I") @OriginalMember(owner = "client!id", name = "d", descriptor = "[[[I")
public static final int[][][] anIntArrayArrayArray9 = new int[2][][]; public static final int[][][] anIntArrayArrayArray9 = new int[2][][];
@OriginalMember(owner = "client!sa", name = "Q", descriptor = "[I") @OriginalMember(owner = "client!sa", name = "Q", descriptor = "[I")
public static final int[] cameraJitter = new int[5]; public static final int[] cameraJitter = new int[5];
@OriginalMember(owner = "client!wh", name = "m", descriptor = "[I") @OriginalMember(owner = "client!wh", name = "m", descriptor = "[I")
public static final int[] cameraAmplitude = new int[5]; public static final int[] cameraAmplitude = new int[5];
@OriginalMember(owner = "client!qg", name = "Y", descriptor = "[I") @OriginalMember(owner = "client!qg", name = "Y", descriptor = "[I")
public static final int[] cameraFrequency = new int[5]; public static final int[] cameraFrequency = new int[5];
@OriginalMember(owner = "client!fl", name = "s", descriptor = "I") @OriginalMember(owner = "client!fl", name = "s", descriptor = "I")
public static double pitchTarget = 128; public static double pitchTarget = 128;
@OriginalMember(owner = "client!eg", name = "d", descriptor = "I") @OriginalMember(owner = "client!eg", name = "d", descriptor = "I")
public static double yawTarget = 0; public static double yawTarget = 0;
@OriginalMember(owner = "client!ef", name = "i", descriptor = "I") @OriginalMember(owner = "client!ef", name = "i", descriptor = "I")
public static double pitchAccel = 0; public static double pitchAccel = 0;
@OriginalMember(owner = "client!ii", name = "a", descriptor = "I") @OriginalMember(owner = "client!ii", name = "a", descriptor = "I")
public static int cameraZ; public static int cameraZ;
@OriginalMember(owner = "client!gg", name = "bb", descriptor = "I") @OriginalMember(owner = "client!gg", name = "bb", descriptor = "I")
public static int cameraX; public static int cameraX;
@OriginalMember(owner = "client!tg", name = "b", descriptor = "I") @OriginalMember(owner = "client!tg", name = "b", descriptor = "I")
public static int cameraPitch; public static int cameraPitch;
@OriginalMember(owner = "client!ol", name = "ib", descriptor = "I") @OriginalMember(owner = "client!ol", name = "ib", descriptor = "I")
public static int cameraYaw; public static int cameraYaw;
@OriginalMember(owner = "client!sg", name = "o", descriptor = "I") @OriginalMember(owner = "client!sg", name = "o", descriptor = "I")
public static int cameraType; public static int cameraType;
@OriginalMember(owner = "client!g", name = "d", descriptor = "I") @OriginalMember(owner = "client!g", name = "d", descriptor = "I")
public static int anInt2119 = 0; public static int anInt2119 = 0;
@OriginalMember(owner = "client!eb", name = "t", descriptor = "I") @OriginalMember(owner = "client!eb", name = "t", descriptor = "I")
public static int anInt1694 = -1; public static int anInt1694 = -1;
@OriginalMember(owner = "client!j", name = "K", descriptor = "I") @OriginalMember(owner = "client!j", name = "K", descriptor = "I")
public static int anInt5843 = 0; public static int anInt5843 = 0;
@OriginalMember(owner = "client!sh", name = "c", descriptor = "I") @OriginalMember(owner = "client!sh", name = "c", descriptor = "I")
public static int anInt5101 = 0; public static int anInt5101 = 0;
@OriginalMember(owner = "client!t", name = "z", descriptor = "I") @OriginalMember(owner = "client!t", name = "z", descriptor = "I")
public static int anInt5224 = 0; public static int anInt5224 = 0;
@OriginalMember(owner = "client!k", name = "i", descriptor = "I") @OriginalMember(owner = "client!k", name = "i", descriptor = "I")
public static int anInt3125 = 0; public static int anInt3125 = 0;
@OriginalMember(owner = "client!me", name = "k", descriptor = "I") @OriginalMember(owner = "client!me", name = "k", descriptor = "I")
public static int anInt3718 = -1; public static int anInt3718 = -1;
@OriginalMember(owner = "client!lc", name = "n", descriptor = "I") @OriginalMember(owner = "client!lc", name = "n", descriptor = "I")
public static int originZ; public static int originZ;
@OriginalMember(owner = "client!se", name = "a", descriptor = "I") @OriginalMember(owner = "client!se", name = "a", descriptor = "I")
public static int originX; public static int originX;
@OriginalMember(owner = "client!bc", name = "I", descriptor = "Z") @OriginalMember(owner = "client!bc", name = "I", descriptor = "Z")
public static boolean aBoolean16 = false; public static boolean aBoolean16 = false;
@OriginalMember(owner = "client!km", name = "Pc", descriptor = "I") @OriginalMember(owner = "client!km", name = "Pc", descriptor = "I")
public static int renderX; public static int renderX;
@OriginalMember(owner = "client!kh", name = "f", descriptor = "I") @OriginalMember(owner = "client!kh", name = "f", descriptor = "I")
public static int renderZ; public static int renderZ;
@OriginalMember(owner = "client!uc", name = "f", descriptor = "I") @OriginalMember(owner = "client!uc", name = "f", descriptor = "I")
public static int anInt4232; public static int anInt4232;
@OriginalMember(owner = "client!ug", name = "h", descriptor = "I") @OriginalMember(owner = "client!ug", name = "h", descriptor = "I")
public static int anInt5449; public static int anInt5449;
@OriginalMember(owner = "client!vj", name = "d", descriptor = "I") @OriginalMember(owner = "client!vj", name = "d", descriptor = "I")
public static int anInt5765; public static int anInt5765;
@OriginalMember(owner = "client!tm", name = "g", descriptor = "I") @OriginalMember(owner = "client!tm", name = "g", descriptor = "I")
public static int anInt5375; public static int anInt5375;
@OriginalMember(owner = "client!pa", name = "K", descriptor = "Z") @OriginalMember(owner = "client!pa", name = "K", descriptor = "Z")
public static boolean aBoolean205 = false; public static boolean aBoolean205 = false;
@OriginalMember(owner = "client!gk", name = "d", descriptor = "F") @OriginalMember(owner = "client!gk", name = "d", descriptor = "F")
public static float aFloat10; public static float aFloat10;
public static int ZOOM = 600; public static int ZOOM = 600;
@OriginalMember(owner = "client!il", name = "O", descriptor = "I") @OriginalMember(owner = "client!il", name = "O", descriptor = "I")
public static int anInt4612; public static int anInt4612;
@OriginalMember(owner = "client!eg", name = "a", descriptor = "I") @OriginalMember(owner = "client!eg", name = "a", descriptor = "I")
public static int anInt1744; public static int anInt1744;
@OriginalMember(owner = "client!kf", name = "f", descriptor = "I") @OriginalMember(owner = "client!kf", name = "f", descriptor = "I")
public static int anInt5230; public static int anInt5230;
@OriginalMember(owner = "client!ke", name = "U", descriptor = "I") @OriginalMember(owner = "client!ke", name = "U", descriptor = "I")
public static int anInt3291 = 0; public static int anInt3291 = 0;
@OriginalMember(owner = "client!uc", name = "a", descriptor = "I") @OriginalMember(owner = "client!uc", name = "a", descriptor = "I")
public static int anInt4229 = 2; public static int anInt4229 = 2;
@OriginalMember(owner = "client!ta", name = "B", descriptor = "I") @OriginalMember(owner = "client!ta", name = "B", descriptor = "I")
public static int anInt5245 = 0; public static int anInt5245 = 0;
@OriginalMember(owner = "client!qk", name = "h", descriptor = "I") @OriginalMember(owner = "client!qk", name = "h", descriptor = "I")
public static int anInt4774 = 0; public static int anInt4774 = 0;
@OriginalMember(owner = "client!sj", name = "H", descriptor = "I") @OriginalMember(owner = "client!sj", name = "H", descriptor = "I")
public static int anInt5161 = 0; public static int anInt5161 = 0;
@OriginalMember(owner = "client!af", name = "d", descriptor = "I") @OriginalMember(owner = "client!af", name = "d", descriptor = "I")
public static int anInt40; public static int anInt40;
public static double mod(double a, double b) { public static double mod(double a, double b) {
return ((a % b) + b) % b; return ((a % b) + b) % b;
} }
@OriginalMember(owner = "client!gn", name = "b", descriptor = "(B)V") @OriginalMember(owner = "client!gn", name = "b", descriptor = "(B)V")
public static void clampCameraAngle() { public static void clampCameraAngle() {
if (pitchTarget < 128) { if (pitchTarget < 128) {
pitchTarget = 128; pitchTarget = 128;
} }
if (pitchTarget > 383) { if (pitchTarget > 383) {
pitchTarget = 383; pitchTarget = 383;
} }
yawTarget = mod(yawTarget, 2047.0d); yawTarget = mod(yawTarget, 2047.0d);
@Pc(33) int local33 = cameraX >> 7; @Pc(33) int local33 = cameraX >> 7;
@Pc(37) int local37 = cameraZ >> 7; @Pc(37) int local37 = cameraZ >> 7;
@Pc(43) int local43 = SceneGraph.getTileHeight(Player.level, cameraX, cameraZ); @Pc(43) int local43 = SceneGraph.getTileHeight(Player.level, cameraX, cameraZ);
@Pc(45) int local45 = 0; @Pc(45) int local45 = 0;
@Pc(64) int local64; @Pc(64) int local64;
if (local33 > 3 && local37 > 3 && local33 < 100 && local37 < 100) { if (local33 > 3 && local37 > 3 && local33 < 100 && local37 < 100) {
for (local64 = local33 - 4; local64 <= local33 + 4; local64++) { for (local64 = local33 - 4; local64 <= local33 + 4; local64++) {
for (@Pc(73) int local73 = local37 - 4; local73 <= local37 + 4; local73++) { for (@Pc(73) int local73 = local37 - 4; local73 <= local37 + 4; local73++) {
@Pc(80) int local80 = Player.level; @Pc(80) int local80 = Player.level;
if (local80 < 3 && (SceneGraph.tileFlags[1][local64][local73] & 0x2) == 2) { if (local80 < 3 && (SceneGraph.tileFlags[1][local64][local73] & 0x2) == 2) {
local80++; local80++;
} }
@Pc(117) int local117 = (SceneGraph.aByteArrayArrayArray13[local80][local64][local73] & 0xFF) * 8 + local43 - SceneGraph.tileHeights[local80][local64][local73]; @Pc(117) int local117 = (SceneGraph.aByteArrayArrayArray13[local80][local64][local73] & 0xFF) * 8 + local43 - SceneGraph.tileHeights[local80][local64][local73];
if (local117 > local45) { if (local117 > local45) {
local45 = local117; local45 = local117;
} }
} }
} }
} }
local64 = local45 * 192; local64 = local45 * 192;
if (local64 > 98048) { if (local64 > 98048) {
local64 = 98048; local64 = 98048;
} }
if (local64 < 32768) { if (local64 < 32768) {
local64 = 32768; local64 = 32768;
} }
if (anInt5245 < local64) { if (anInt5245 < local64) {
anInt5245 += (local64 - anInt5245) / 24; anInt5245 += (local64 - anInt5245) / 24;
} else if (local64 < anInt5245) { } else if (local64 < anInt5245) {
anInt5245 += (local64 - anInt5245) / 80; anInt5245 += (local64 - anInt5245) / 80;
} }
} }
@OriginalMember(owner = "client!jl", name = "c", descriptor = "(I)V") @OriginalMember(owner = "client!jl", name = "c", descriptor = "(I)V")
public static void updateLockedCamera() { public static void updateLockedCamera() {
@Pc(9) int local9 = anInt4232 * 128 + 64; @Pc(9) int local9 = anInt4232 * 128 + 64;
@Pc(15) int local15 = anInt5375 * 128 + 64; @Pc(15) int local15 = anInt5375 * 128 + 64;
@Pc(23) int local23 = SceneGraph.getTileHeight(Player.level, local15, local9) - Static231.anInt5203; @Pc(23) int local23 = SceneGraph.getTileHeight(Player.level, local15, local9) - Static231.anInt5203;
if (anInt4612 >= 100) { if (anInt4612 >= 100) {
renderX = anInt5375 * 128 + 64; renderX = anInt5375 * 128 + 64;
renderZ = anInt4232 * 128 + 64; renderZ = anInt4232 * 128 + 64;
anInt40 = SceneGraph.getTileHeight(Player.level, renderX, renderZ) - Static231.anInt5203; anInt40 = SceneGraph.getTileHeight(Player.level, renderX, renderZ) - Static231.anInt5203;
} else { } else {
if (renderX < local15) { if (renderX < local15) {
renderX += Static233.anInt5225 + anInt4612 * (local15 - renderX) / 1000; renderX += Static233.anInt5225 + anInt4612 * (local15 - renderX) / 1000;
if (renderX > local15) { if (renderX > local15) {
renderX = local15; renderX = local15;
} }
} }
if (anInt40 < local23) { if (anInt40 < local23) {
anInt40 += (local23 - anInt40) * anInt4612 / 1000 + Static233.anInt5225; anInt40 += (local23 - anInt40) * anInt4612 / 1000 + Static233.anInt5225;
if (anInt40 > local23) { if (anInt40 > local23) {
anInt40 = local23; anInt40 = local23;
} }
} }
if (renderX > local15) { if (renderX > local15) {
renderX -= Static233.anInt5225 + (renderX - local15) * anInt4612 / 1000; renderX -= Static233.anInt5225 + (renderX - local15) * anInt4612 / 1000;
if (renderX < local15) { if (renderX < local15) {
renderX = local15; renderX = local15;
} }
} }
if (renderZ < local9) { if (renderZ < local9) {
renderZ += Static233.anInt5225 + anInt4612 * (local9 - renderZ) / 1000; renderZ += Static233.anInt5225 + anInt4612 * (local9 - renderZ) / 1000;
if (local9 < renderZ) { if (local9 < renderZ) {
renderZ = local9; renderZ = local9;
} }
} }
if (local23 < anInt40) { if (local23 < anInt40) {
anInt40 -= (anInt40 - local23) * anInt4612 / 1000 + Static233.anInt5225; anInt40 -= (anInt40 - local23) * anInt4612 / 1000 + Static233.anInt5225;
if (local23 > anInt40) { if (local23 > anInt40) {
anInt40 = local23; anInt40 = local23;
} }
} }
if (renderZ > local9) { if (renderZ > local9) {
renderZ -= Static233.anInt5225 + (renderZ - local9) * anInt4612 / 1000; renderZ -= Static233.anInt5225 + (renderZ - local9) * anInt4612 / 1000;
if (local9 > renderZ) { if (local9 > renderZ) {
renderZ = local9; renderZ = local9;
} }
} }
} }
local9 = anInt5765 * 128 + 64; local9 = anInt5765 * 128 + 64;
local15 = anInt5449 * 128 + 64; local15 = anInt5449 * 128 + 64;
local23 = SceneGraph.getTileHeight(Player.level, local15, local9) - anInt1744; local23 = SceneGraph.getTileHeight(Player.level, local15, local9) - anInt1744;
@Pc(236) int local236 = local23 - anInt40; @Pc(236) int local236 = local23 - anInt40;
@Pc(241) int local241 = local9 - renderZ; @Pc(241) int local241 = local9 - renderZ;
@Pc(246) int local246 = local15 - renderX; @Pc(246) int local246 = local15 - renderX;
@Pc(257) int local257 = (int) Math.sqrt((double) (local246 * local246 + local241 * local241)); @Pc(257) int local257 = (int) Math.sqrt(local246 * local246 + local241 * local241);
@Pc(268) int local268 = (int) (Math.atan2((double) local236, (double) local257) * 325.949D) & 0x7FF; @Pc(268) int local268 = (int) (Math.atan2(local236, local257) * 325.949D) & 0x7FF;
if (local268 < 128) { if (local268 < 128) {
local268 = 128; local268 = 128;
} }
if (local268 > 383) { if (local268 > 383) {
local268 = 383; local268 = 383;
} }
@Pc(292) int local292 = (int) (-325.949D * Math.atan2((double) local246, (double) local241)) & 0x7FF; @Pc(292) int local292 = (int) (-325.949D * Math.atan2(local246, local241)) & 0x7FF;
if (cameraPitch < local268) { if (cameraPitch < local268) {
cameraPitch += anInt5230 + Static233.anInt5217 * (local268 - cameraPitch) / 1000; cameraPitch += anInt5230 + Static233.anInt5217 * (local268 - cameraPitch) / 1000;
if (cameraPitch > local268) { if (cameraPitch > local268) {
cameraPitch = local268; cameraPitch = local268;
} }
} }
if (cameraPitch > local268) { if (cameraPitch > local268) {
cameraPitch -= (cameraPitch - local268) * Static233.anInt5217 / 1000 + anInt5230; cameraPitch -= (cameraPitch - local268) * Static233.anInt5217 / 1000 + anInt5230;
if (cameraPitch < local268) { if (cameraPitch < local268) {
cameraPitch = local268; cameraPitch = local268;
} }
} }
@Pc(350) int local350 = local292 - cameraYaw; @Pc(350) int local350 = local292 - cameraYaw;
if (local350 > 1024) { if (local350 > 1024) {
local350 -= 2048; local350 -= 2048;
} }
if (local350 < -1024) { if (local350 < -1024) {
local350 += 2048; local350 += 2048;
} }
if (local350 > 0) { if (local350 > 0) {
cameraYaw += local350 * Static233.anInt5217 / 1000 + anInt5230; cameraYaw += local350 * Static233.anInt5217 / 1000 + anInt5230;
cameraYaw &= 0x7FF; cameraYaw &= 0x7FF;
} }
if (local350 < 0) { if (local350 < 0) {
cameraYaw -= Static233.anInt5217 * -local350 / 1000 + anInt5230; cameraYaw -= Static233.anInt5217 * -local350 / 1000 + anInt5230;
cameraYaw &= 0x7FF; cameraYaw &= 0x7FF;
} }
@Pc(404) int local404 = local292 - cameraYaw; @Pc(404) int local404 = local292 - cameraYaw;
if (local404 > 1024) { if (local404 > 1024) {
local404 -= 2048; local404 -= 2048;
} }
if (local404 < -1024) { if (local404 < -1024) {
local404 += 2048; local404 += 2048;
} }
if (local404 < 0 && local350 > 0 || local404 > 0 && local350 < 0) { if (local404 < 0 && local350 > 0 || local404 > 0 && local350 < 0) {
cameraYaw = local292; cameraYaw = local292;
} }
} }
@OriginalMember(owner = "client!da", name = "d", descriptor = "(I)V") @OriginalMember(owner = "client!da", name = "d", descriptor = "(I)V")
public static void updateLoginScreenCamera() { public static void updateLoginScreenCamera() {
if (anInt3718 == -1 || anInt1694 == -1) { if (anInt3718 == -1 || anInt1694 == -1) {
return; return;
} }
@Pc(27) int local27 = (anInt5224 * (anInt5843 - anInt5101) >> 16) + anInt5101; @Pc(27) int local27 = (anInt5224 * (anInt5843 - anInt5101) >> 16) + anInt5101;
@Pc(30) float[] renderCoordinates = new float[3]; @Pc(30) float[] renderCoordinates = new float[3];
anInt5224 += local27; anInt5224 += local27;
if (anInt5224 >= 65535) { if (anInt5224 >= 65535) {
anInt5224 = 65535; anInt5224 = 65535;
if (aBoolean205) { aBoolean16 = !aBoolean205;
aBoolean16 = false; aBoolean205 = true;
} else { } else {
aBoolean16 = true; aBoolean205 = false;
} aBoolean16 = false;
aBoolean205 = true; }
} else { @Pc(66) float local66 = (float) anInt5224 / 65535.0F;
aBoolean205 = false; @Pc(70) int local70 = anInt3125 * 2;
aBoolean16 = false; @Pc(141) int local141;
} @Pc(131) int local131;
@Pc(66) float local66 = (float) anInt5224 / 65535.0F; @Pc(111) int local111;
@Pc(70) int local70 = anInt3125 * 2; @Pc(119) int local119;
@Pc(141) int local141; @Pc(146) int local146;
@Pc(131) int local131; @Pc(155) int local155;
@Pc(111) int local111; @Pc(173) int local173;
@Pc(119) int local119; for (@Pc(72) int local72 = 0; local72 < 3; local72++) {
@Pc(146) int local146; local111 = (anIntArrayArrayArray9[anInt3718][local70 + 2][local72] + anIntArrayArrayArray9[anInt3718][local70 + 2][local72] - anIntArrayArrayArray9[anInt3718][local70 + 3][local72]) * 3;
@Pc(155) int local155; local119 = anIntArrayArrayArray9[anInt3718][local70][local72];
@Pc(173) int local173; local131 = anIntArrayArrayArray9[anInt3718][local70 + 1][local72] * 3;
for (@Pc(72) int local72 = 0; local72 < 3; local72++) { local141 = anIntArrayArrayArray9[anInt3718][local70][local72] * 3;
local111 = (anIntArrayArrayArray9[anInt3718][local70 + 2][local72] + anIntArrayArrayArray9[anInt3718][local70 + 2][local72] - anIntArrayArrayArray9[anInt3718][local70 + 3][local72]) * 3; local146 = local131 - local141;
local119 = anIntArrayArrayArray9[anInt3718][local70][local72]; local155 = local111 + local141 - local131 * 2;
local131 = anIntArrayArrayArray9[anInt3718][local70 + 1][local72] * 3; local173 = anIntArrayArrayArray9[anInt3718][local70 + 2][local72] + local131 - local119 - local111;
local141 = anIntArrayArrayArray9[anInt3718][local70][local72] * 3; renderCoordinates[local72] = (float) local119 + (((float) local173 * local66 + (float) local155) * local66 + (float) local146) * local66;
local146 = local131 - local141; }
local155 = local111 + local141 - local131 * 2; anInt40 = (int) renderCoordinates[1] * -1;
local173 = anIntArrayArrayArray9[anInt3718][local70 + 2][local72] + local131 - local119 - local111; renderX = (int) renderCoordinates[0] - originX * 128;
renderCoordinates[local72] = (float) local119 + (((float) local173 * local66 + (float) local155) * local66 + (float) local146) * local66; renderZ = (int) renderCoordinates[2] - originZ * 128;
} @Pc(226) float[] local226 = new float[3];
anInt40 = (int) renderCoordinates[1] * -1; local141 = anInt2119 * 2;
renderX = (int) renderCoordinates[0] - originX * 128; for (local131 = 0; local131 < 3; local131++) {
renderZ = (int) renderCoordinates[2] - originZ * 128; local111 = anIntArrayArrayArray9[anInt1694][local141][local131] * 3;
@Pc(226) float[] local226 = new float[3]; local146 = (anIntArrayArrayArray9[anInt1694][local141 + 2][local131] + anIntArrayArrayArray9[anInt1694][local141 + 2][local131] - anIntArrayArrayArray9[anInt1694][local141 + 3][local131]) * 3;
local141 = anInt2119 * 2; local155 = anIntArrayArrayArray9[anInt1694][local141][local131];
for (local131 = 0; local131 < 3; local131++) { local119 = anIntArrayArrayArray9[anInt1694][local141 + 1][local131] * 3;
local111 = anIntArrayArrayArray9[anInt1694][local141][local131] * 3; local173 = local119 - local111;
local146 = (anIntArrayArrayArray9[anInt1694][local141 + 2][local131] + anIntArrayArrayArray9[anInt1694][local141 + 2][local131] - anIntArrayArrayArray9[anInt1694][local141 + 3][local131]) * 3; @Pc(313) int local313 = local146 + local111 - local119 * 2;
local155 = anIntArrayArrayArray9[anInt1694][local141][local131]; @Pc(331) int local331 = anIntArrayArrayArray9[anInt1694][local141 + 2][local131] + local119 - local146 - local155;
local119 = anIntArrayArrayArray9[anInt1694][local141 + 1][local131] * 3; local226[local131] = (float) local155 + local66 * (local66 * (local66 * (float) local331 + (float) local313) + (float) local173);
local173 = local119 - local111; }
@Pc(313) int local313 = local146 + local111 - local119 * 2; @Pc(363) float local363 = local226[0] - renderCoordinates[0];
@Pc(331) int local331 = anIntArrayArrayArray9[anInt1694][local141 + 2][local131] + local119 - local146 - local155; @Pc(371) float local371 = local226[2] - renderCoordinates[2];
local226[local131] = (float) local155 + local66 * (local66 * (local66 * (float) local331 + (float) local313) + (float) local173); @Pc(382) float local382 = (local226[1] - renderCoordinates[1]) * -1.0F;
} @Pc(392) double local392 = Math.sqrt(local371 * local371 + local363 * local363);
@Pc(363) float local363 = local226[0] - renderCoordinates[0]; Static146.aFloat15 = (float) Math.atan2(local382, local392);
@Pc(371) float local371 = local226[2] - renderCoordinates[2]; aFloat10 = -((float) Math.atan2(local363, local371));
@Pc(382) float local382 = (local226[1] - renderCoordinates[1]) * -1.0F; cameraPitch = (int) ((double) Static146.aFloat15 * 325.949D) & 0x7FF;
@Pc(392) double local392 = Math.sqrt((double) (local371 * local371 + local363 * local363)); cameraYaw = (int) ((double) aFloat10 * 325.949D) & 0x7FF;
Static146.aFloat15 = (float) Math.atan2((double) local382, local392); }
aFloat10 = -((float) Math.atan2((double) local363, (double) local371));
cameraPitch = (int) ((double) Static146.aFloat15 * 325.949D) & 0x7FF;
cameraYaw = (int) ((double) aFloat10 * 325.949D) & 0x7FF;
}
@OriginalMember(owner = "client!vd", name = "a", descriptor = "(IIIIBI)V") @OriginalMember(owner = "client!vd", name = "a", descriptor = "(IIIIBI)V")
public static void method3849(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(5) int arg4) { public static void method3849(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(5) int arg4) {
anInt5230 = arg2; anInt5230 = arg2;
anInt5765 = arg1; anInt5765 = arg1;
@ -313,9 +309,9 @@ public class Camera {
@Pc(49) int local49 = local44 - anInt40; @Pc(49) int local49 = local44 - anInt40;
@Pc(54) int local54 = local30 - renderX; @Pc(54) int local54 = local30 - renderX;
@Pc(59) int local59 = local36 - renderZ; @Pc(59) int local59 = local36 - renderZ;
@Pc(70) int local70 = (int) Math.sqrt((double) (local59 * local59 + local54 * local54)); @Pc(70) int local70 = (int) Math.sqrt(local59 * local59 + local54 * local54);
cameraPitch = (int) (Math.atan2((double) local49, (double) local70) * 325.949D) & 0x7FF; cameraPitch = (int) (Math.atan2(local49, local70) * 325.949D) & 0x7FF;
cameraYaw = (int) (Math.atan2((double) local54, (double) local59) * -325.949D) & 0x7FF; cameraYaw = (int) (Math.atan2(local54, local59) * -325.949D) & 0x7FF;
if (cameraPitch < 128) { if (cameraPitch < 128) {
cameraPitch = 128; cameraPitch = 128;
} }
@ -326,65 +322,65 @@ public class Camera {
cameraType = 2; cameraType = 2;
} }
@OriginalMember(owner = "client!lb", name = "a", descriptor = "(ZIIIBII)V") @OriginalMember(owner = "client!lb", name = "a", descriptor = "(ZIIIBII)V")
public static void method2722(@OriginalArg(0) boolean arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5) { public static void method2722(@OriginalArg(0) boolean arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5) {
anInt4612 = arg3; anInt4612 = arg3;
Static231.anInt5203 = arg2; Static231.anInt5203 = arg2;
anInt5375 = arg5; anInt5375 = arg5;
Static233.anInt5225 = arg1; Static233.anInt5225 = arg1;
anInt4232 = arg4; anInt4232 = arg4;
if (arg0 && anInt4612 >= 100) { if (arg0 && anInt4612 >= 100) {
renderX = anInt5375 * 128 + 64; renderX = anInt5375 * 128 + 64;
renderZ = anInt4232 * 128 + 64; renderZ = anInt4232 * 128 + 64;
anInt40 = SceneGraph.getTileHeight(Player.level, renderX, renderZ) - Static231.anInt5203; anInt40 = SceneGraph.getTileHeight(Player.level, renderX, renderZ) - Static231.anInt5203;
} }
cameraType = 2; cameraType = 2;
} }
@OriginalMember(owner = "client!cl", name = "e", descriptor = "(I)V") @OriginalMember(owner = "client!cl", name = "e", descriptor = "(I)V")
public static void resetCameraEffects() { public static void resetCameraEffects() {
for (@Pc(3) int local3 = 0; local3 < 5; local3++) { for (@Pc(3) int local3 = 0; local3 < 5; local3++) {
Static176.customCameraActive[local3] = false; Static176.customCameraActive[local3] = false;
} }
anInt5230 = 0; anInt5230 = 0;
Static233.anInt5217 = 0; Static233.anInt5217 = 0;
anInt3718 = -1; anInt3718 = -1;
anInt1694 = -1; anInt1694 = -1;
cameraType = 1; cameraType = 1;
} }
@OriginalMember(owner = "client!uf", name = "a", descriptor = "(B)V") @OriginalMember(owner = "client!uf", name = "a", descriptor = "(B)V")
public static void method4273() { public static void method4273() {
@Pc(14) int playerX = PlayerList.self.xFine + anInt3291; @Pc(14) int playerX = PlayerList.self.xFine + anInt3291;
@Pc(20) int playerZ = PlayerList.self.zFine + anInt4774; @Pc(20) int playerZ = PlayerList.self.zFine + anInt4774;
if (cameraX - playerX < -500 || cameraX - playerX > 500 || cameraZ - playerZ < -500 || cameraZ - playerZ > 500) { if (cameraX - playerX < -500 || cameraX - playerX > 500 || cameraZ - playerZ < -500 || cameraZ - playerZ > 500) {
cameraX = playerX; cameraX = playerX;
cameraZ = playerZ; cameraZ = playerZ;
} }
if (cameraZ != playerZ) { if (cameraZ != playerZ) {
cameraZ += (playerZ - cameraZ) / 16; cameraZ += (playerZ - cameraZ) / 16;
} }
if (cameraX != playerX) { if (cameraX != playerX) {
cameraX += (playerX - cameraX) / 16; cameraX += (playerX - cameraX) / 16;
} }
if (Preferences.aBoolean63) { if (Preferences.aBoolean63) {
for (@Pc(93) int local93 = 0; local93 < InterfaceList.keyQueueSize; local93++) { for (@Pc(93) int local93 = 0; local93 < InterfaceList.keyQueueSize; local93++) {
@Pc(104) int code = InterfaceList.keyCodes[local93]; @Pc(104) int code = InterfaceList.keyCodes[local93];
if (code == Keyboard.KEY_UP) { if (code == Keyboard.KEY_UP) {
pitchTarget += 47; pitchTarget += 47;
} else if (code == Keyboard.KEY_DOWN) { } else if (code == Keyboard.KEY_DOWN) {
pitchTarget -= 17; pitchTarget -= 17;
} else if (code == Keyboard.KEY_LEFT) { } else if (code == Keyboard.KEY_LEFT) {
yawTarget -= 65; yawTarget -= 65;
} else if (code == Keyboard.KEY_RIGHT) { } else if (code == Keyboard.KEY_RIGHT) {
yawTarget += 191; yawTarget += 191;
} }
} }
clampCameraAngle(); clampCameraAngle();
} }
} }
@OriginalMember(owner = "client!bh", name = "a", descriptor = "(IIIIIIII)V") @OriginalMember(owner = "client!bh", name = "a", descriptor = "(IIIIIIII)V")
public static void method555(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6) { public static void method555(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6) {
@Pc(5) int local5; @Pc(5) int local5;
@Pc(29) int local29; @Pc(29) int local29;

View file

@ -138,15 +138,15 @@ public final class ChangeLocRequest extends Node {
} }
} }
@OriginalMember(owner = "client!il", name = "a", descriptor = "(BII)Z") @OriginalMember(owner = "client!il", name = "a", descriptor = "(BII)Z")
public static boolean method3557(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) { public static boolean method3557(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) {
if (arg1 == 11) { if (arg1 == 11) {
arg1 = 10; arg1 = 10;
} }
if (arg1 >= 5 && arg1 <= 8) { if (arg1 >= 5 && arg1 <= 8) {
arg1 = 4; arg1 = 4;
} }
@Pc(30) LocType local30 = LocTypeList.get(arg0); @Pc(30) LocType local30 = LocTypeList.get(arg0);
return local30.isReady(arg1); return local30.isReady(arg1);
} }
} }

View file

@ -5,56 +5,56 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class Chat { public class Chat {
@OriginalMember(owner = "client!ca", name = "eb", descriptor = "[I") @OriginalMember(owner = "client!ca", name = "eb", descriptor = "[I")
public static final int[] types = new int[100]; public static final int[] types = new int[100];
@OriginalMember(owner = "client!fb", name = "l", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!fb", name = "l", descriptor = "[Lclient!na;")
public static final JagString[] clans = new JagString[100]; public static final JagString[] clans = new JagString[100];
@OriginalMember(owner = "client!sj", name = "q", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!sj", name = "q", descriptor = "[Lclient!na;")
public static final JagString[] messages = new JagString[100]; public static final JagString[] messages = new JagString[100];
@OriginalMember(owner = "client!th", name = "l", descriptor = "[I") @OriginalMember(owner = "client!th", name = "l", descriptor = "[I")
public static final int[] phraseIds = new int[100]; public static final int[] phraseIds = new int[100];
@OriginalMember(owner = "client!mc", name = "Y", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!mc", name = "Y", descriptor = "[Lclient!na;")
public static final JagString[] names = new JagString[100]; public static final JagString[] names = new JagString[100];
@OriginalMember(owner = "client!t", name = "w", descriptor = "[J") @OriginalMember(owner = "client!t", name = "w", descriptor = "[J")
public static final long[] recentMessages = new long[100]; public static final long[] recentMessages = new long[100];
@OriginalMember(owner = "client!dm", name = "u", descriptor = "I") @OriginalMember(owner = "client!dm", name = "u", descriptor = "I")
public static int transmitAt = 0; public static int transmitAt = 0;
@OriginalMember(owner = "client!f", name = "Z", descriptor = "I") @OriginalMember(owner = "client!f", name = "Z", descriptor = "I")
public static int size = 0; public static int size = 0;
@OriginalMember(owner = "client!gk", name = "i", descriptor = "I") @OriginalMember(owner = "client!gk", name = "i", descriptor = "I")
public static int tradeFilter = 0; public static int tradeFilter = 0;
@OriginalMember(owner = "client!dm", name = "m", descriptor = "I") @OriginalMember(owner = "client!dm", name = "m", descriptor = "I")
public static int privateFilter = 0; public static int privateFilter = 0;
@OriginalMember(owner = "client!ej", name = "U", descriptor = "I") @OriginalMember(owner = "client!ej", name = "U", descriptor = "I")
public static int publicFilter = 0; public static int publicFilter = 0;
@OriginalMember(owner = "client!ug", name = "e", descriptor = "I") @OriginalMember(owner = "client!ug", name = "e", descriptor = "I")
public static int messageCounter = 0; public static int messageCounter = 0;
@OriginalMember(owner = "client!md", name = "a", descriptor = "(IILclient!na;Lclient!na;BLclient!na;)V") @OriginalMember(owner = "client!md", name = "a", descriptor = "(IILclient!na;Lclient!na;BLclient!na;)V")
public static void add(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) JagString arg2, @OriginalArg(3) JagString arg3, @OriginalArg(5) JagString arg4) { public static void add(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) JagString arg2, @OriginalArg(3) JagString arg3, @OriginalArg(5) JagString arg4) {
for (@Pc(14) int local14 = 99; local14 > 0; local14--) { for (@Pc(14) int local14 = 99; local14 > 0; local14--) {
types[local14] = types[local14 - 1]; types[local14] = types[local14 - 1];
names[local14] = names[local14 - 1]; names[local14] = names[local14 - 1];
messages[local14] = messages[local14 - 1]; messages[local14] = messages[local14 - 1];
clans[local14] = clans[local14 - 1]; clans[local14] = clans[local14 - 1];
phraseIds[local14] = phraseIds[local14 - 1]; phraseIds[local14] = phraseIds[local14 - 1];
} }
size++; size++;
types[0] = arg1; types[0] = arg1;
names[0] = arg4; names[0] = arg4;
transmitAt = InterfaceList.transmitTimer; transmitAt = InterfaceList.transmitTimer;
phraseIds[0] = arg0; phraseIds[0] = arg0;
messages[0] = arg2; messages[0] = arg2;
clans[0] = arg3; clans[0] = arg3;
} }
@OriginalMember(owner = "client!i", name = "a", descriptor = "(Lclient!na;ILclient!na;I)V") @OriginalMember(owner = "client!i", name = "a", descriptor = "(Lclient!na;ILclient!na;I)V")
public static void add(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1, @OriginalArg(2) JagString arg2) { public static void add(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1, @OriginalArg(2) JagString arg2) {
add(-1, arg1, arg2, null, arg0); add(-1, arg1, arg2, null, arg0);
} }
@OriginalMember(owner = "client!fm", name = "a", descriptor = "(ILclient!na;Lclient!na;Lclient!na;I)V") @OriginalMember(owner = "client!fm", name = "a", descriptor = "(ILclient!na;Lclient!na;Lclient!na;I)V")
public static void method1598(@OriginalArg(1) JagString arg0, @OriginalArg(2) JagString arg1, @OriginalArg(3) JagString arg2) { public static void method1598(@OriginalArg(1) JagString arg0, @OriginalArg(2) JagString arg1, @OriginalArg(3) JagString arg2) {
add(-1, 9, arg0, arg2, arg1); add(-1, 9, arg0, arg2, arg1);
} }
} }

View file

@ -5,231 +5,231 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class Cheat { public class Cheat {
@OriginalMember(owner = "client!p", name = "f", descriptor = "Lclient!na;") @OriginalMember(owner = "client!p", name = "f", descriptor = "Lclient!na;")
public static final JagString JS5DROP = JagString.parse("::serverjs5drop"); public static final JagString JS5DROP = JagString.parse("::serverjs5drop");
@OriginalMember(owner = "client!v", name = "d", descriptor = "Lclient!na;") @OriginalMember(owner = "client!v", name = "d", descriptor = "Lclient!na;")
public static final JagString CLIENTDROP = JagString.parse("::clientdrop"); public static final JagString CLIENTDROP = JagString.parse("::clientdrop");
@OriginalMember(owner = "client!dg", name = "b", descriptor = "Lclient!na;") @OriginalMember(owner = "client!dg", name = "b", descriptor = "Lclient!na;")
public static final JagString aClass100_333 = JagString.parse("Shift)2click ENABLED(Q"); public static final JagString aClass100_333 = JagString.parse("Shift)2click ENABLED(Q");
@OriginalMember(owner = "client!nh", name = "hb", descriptor = "Lclient!na;") @OriginalMember(owner = "client!nh", name = "hb", descriptor = "Lclient!na;")
public static final JagString COMMAND_FPS = JagString.parse("::fps "); public static final JagString COMMAND_FPS = JagString.parse("::fps ");
@OriginalMember(owner = "client!nb", name = "e", descriptor = "Lclient!na;") @OriginalMember(owner = "client!nb", name = "e", descriptor = "Lclient!na;")
public static final JagString BREAKCON = JagString.parse("::breakcon"); public static final JagString BREAKCON = JagString.parse("::breakcon");
@OriginalMember(owner = "client!wf", name = "s", descriptor = "Lclient!na;") @OriginalMember(owner = "client!wf", name = "s", descriptor = "Lclient!na;")
public static final JagString aClass100_943 = JagString.parse("Forced tweening disabled)3"); public static final JagString aClass100_943 = JagString.parse("Forced tweening disabled)3");
@OriginalMember(owner = "client!wd", name = "f", descriptor = "Lclient!na;") @OriginalMember(owner = "client!wd", name = "f", descriptor = "Lclient!na;")
public static final JagString ERROR_TEST = JagString.parse("::errortest"); public static final JagString ERROR_TEST = JagString.parse("::errortest");
@OriginalMember(owner = "client!wb", name = "j", descriptor = "Lclient!na;") @OriginalMember(owner = "client!wb", name = "j", descriptor = "Lclient!na;")
public static final JagString aClass100_1093 = JagString.parse("Memory after cleanup="); public static final JagString aClass100_1093 = JagString.parse("Memory after cleanup=");
@OriginalMember(owner = "client!th", name = "h", descriptor = "Lclient!na;") @OriginalMember(owner = "client!th", name = "h", descriptor = "Lclient!na;")
public static final JagString PARTICLES = JagString.parse("::setparticles"); public static final JagString PARTICLES = JagString.parse("::setparticles");
@OriginalMember(owner = "client!rc", name = "K", descriptor = "Lclient!na;") @OriginalMember(owner = "client!rc", name = "K", descriptor = "Lclient!na;")
public static final JagString RECT_DEBUG = JagString.parse("::rect_debug"); public static final JagString RECT_DEBUG = JagString.parse("::rect_debug");
@OriginalMember(owner = "client!hh", name = "b", descriptor = "Lclient!na;") @OriginalMember(owner = "client!hh", name = "b", descriptor = "Lclient!na;")
public static final JagString aClass100_521 = JagString.parse("::tele "); public static final JagString aClass100_521 = JagString.parse("::tele ");
@OriginalMember(owner = "client!hh", name = "k", descriptor = "Lclient!na;") @OriginalMember(owner = "client!hh", name = "k", descriptor = "Lclient!na;")
public static final JagString WM0 = JagString.parse("::wm0"); public static final JagString WM0 = JagString.parse("::wm0");
@OriginalMember(owner = "client!tg", name = "i", descriptor = "Lclient!na;") @OriginalMember(owner = "client!tg", name = "i", descriptor = "Lclient!na;")
public static final JagString PCACHESIZE = JagString.parse("::pcachesize"); public static final JagString PCACHESIZE = JagString.parse("::pcachesize");
@OriginalMember(owner = "client!fh", name = "ab", descriptor = "Lclient!na;") @OriginalMember(owner = "client!fh", name = "ab", descriptor = "Lclient!na;")
public static final JagString NOCLIP = JagString.parse("::noclip"); public static final JagString NOCLIP = JagString.parse("::noclip");
@OriginalMember(owner = "client!en", name = "e", descriptor = "Lclient!na;") @OriginalMember(owner = "client!en", name = "e", descriptor = "Lclient!na;")
public static final JagString FPSOFF = JagString.parse("::fpsoff"); public static final JagString FPSOFF = JagString.parse("::fpsoff");
@OriginalMember(owner = "client!ja", name = "k", descriptor = "Lclient!na;") @OriginalMember(owner = "client!ja", name = "k", descriptor = "Lclient!na;")
public static final JagString DEBUG_FPS = JagString.parse("FPS: "); public static final JagString DEBUG_FPS = JagString.parse("FPS: ");
@OriginalMember(owner = "client!qh", name = "i", descriptor = "Lclient!na;") @OriginalMember(owner = "client!qh", name = "i", descriptor = "Lclient!na;")
public static final JagString DEBUG_MEMORY = JagString.parse("RAM: "); public static final JagString DEBUG_MEMORY = JagString.parse("RAM: ");
@OriginalMember(owner = "client!bi", name = "W", descriptor = "Lclient!na;") @OriginalMember(owner = "client!bi", name = "W", descriptor = "Lclient!na;")
public static final JagString DEBUG_MEMORY_UNIT = JagString.parse(" MB"); public static final JagString DEBUG_MEMORY_UNIT = JagString.parse(" MB");
@OriginalMember(owner = "client!dg", name = "d", descriptor = "Lclient!na;") @OriginalMember(owner = "client!dg", name = "d", descriptor = "Lclient!na;")
public static final JagString DEBUG_CAHE = JagString.parse("Cache: "); public static final JagString DEBUG_CAHE = JagString.parse("Cache: ");
@OriginalMember(owner = "client!hm", name = "Y", descriptor = "Lclient!na;") @OriginalMember(owner = "client!hm", name = "Y", descriptor = "Lclient!na;")
public static final JagString DEBUG_FPS2 = JagString.parse("FPS: "); public static final JagString DEBUG_FPS2 = JagString.parse("FPS: ");
@OriginalMember(owner = "client!c", name = "Y", descriptor = "Lclient!na;") @OriginalMember(owner = "client!c", name = "Y", descriptor = "Lclient!na;")
public static final JagString DEBUG_MEM = JagString.parse("RAM: "); public static final JagString DEBUG_MEM = JagString.parse("RAM: ");
@OriginalMember(owner = "client!bg", name = "z", descriptor = "Lclient!na;") @OriginalMember(owner = "client!bg", name = "z", descriptor = "Lclient!na;")
public static final JagString DEBUG_MEM_UNIT = JagString.parse(" MB"); public static final JagString DEBUG_MEM_UNIT = JagString.parse(" MB");
@OriginalMember(owner = "client!q", name = "h", descriptor = "Lclient!na;") @OriginalMember(owner = "client!q", name = "h", descriptor = "Lclient!na;")
public static final JagString DEBUG_CARD = JagString.parse("GPU: "); public static final JagString DEBUG_CARD = JagString.parse("GPU: ");
@OriginalMember(owner = "client!oi", name = "b", descriptor = "Lclient!na;") @OriginalMember(owner = "client!oi", name = "b", descriptor = "Lclient!na;")
public static final JagString QA_OP_TEST = JagString.parse("::qa_op_test"); public static final JagString QA_OP_TEST = JagString.parse("::qa_op_test");
@OriginalMember(owner = "client!jk", name = "F", descriptor = "Lclient!na;") @OriginalMember(owner = "client!jk", name = "F", descriptor = "Lclient!na;")
public static final JagString TWEENING = JagString.parse("::tween"); public static final JagString TWEENING = JagString.parse("::tween");
@OriginalMember(owner = "client!j", name = "z", descriptor = "Lclient!na;") @OriginalMember(owner = "client!j", name = "z", descriptor = "Lclient!na;")
public static final JagString SHIFTCLICK = JagString.parse("::shiftclick"); public static final JagString SHIFTCLICK = JagString.parse("::shiftclick");
@OriginalMember(owner = "client!qf", name = "N", descriptor = "Lclient!na;") @OriginalMember(owner = "client!qf", name = "N", descriptor = "Lclient!na;")
public static final JagString CARDMEM = JagString.parse("::cardmem"); public static final JagString CARDMEM = JagString.parse("::cardmem");
@OriginalMember(owner = "client!e", name = "Ac", descriptor = "Lclient!na;") @OriginalMember(owner = "client!e", name = "Ac", descriptor = "Lclient!na;")
public static final JagString aClass100_362 = JagString.parse("Forced tweening ENABLED(Q"); public static final JagString aClass100_362 = JagString.parse("Forced tweening ENABLED(Q");
@OriginalMember(owner = "client!md", name = "T", descriptor = "Lclient!na;") @OriginalMember(owner = "client!md", name = "T", descriptor = "Lclient!na;")
public static final JagString aClass100_736 = JagString.parse("Shift)2click disabled)3"); public static final JagString aClass100_736 = JagString.parse("Shift)2click disabled)3");
@OriginalMember(owner = "client!wh", name = "o", descriptor = "Lclient!na;") @OriginalMember(owner = "client!wh", name = "o", descriptor = "Lclient!na;")
public static final JagString RECT_DEBUG_EQUALS = JagString.parse("rect_debug="); public static final JagString RECT_DEBUG_EQUALS = JagString.parse("rect_debug=");
@OriginalMember(owner = "client!dh", name = "e", descriptor = "Lclient!na;") @OriginalMember(owner = "client!dh", name = "e", descriptor = "Lclient!na;")
public static final JagString aClass100_335 = JagString.parse("Number of player models in cache:"); public static final JagString aClass100_335 = JagString.parse("Number of player models in cache:");
@OriginalMember(owner = "client!qh", name = "c", descriptor = "Lclient!na;") @OriginalMember(owner = "client!qh", name = "c", descriptor = "Lclient!na;")
public static final JagString aClass100_893 = JagString.parse("Memory before cleanup="); public static final JagString aClass100_893 = JagString.parse("Memory before cleanup=");
@OriginalMember(owner = "client!qg", name = "Z", descriptor = "Lclient!na;") @OriginalMember(owner = "client!qg", name = "Z", descriptor = "Lclient!na;")
public static final JagString aClass100_892 = JagString.parse("mem="); public static final JagString aClass100_892 = JagString.parse("mem=");
@OriginalMember(owner = "client!gg", name = "Y", descriptor = "Lclient!na;") @OriginalMember(owner = "client!gg", name = "Y", descriptor = "Lclient!na;")
public static final JagString aClass100_476 = JagString.parse("::gc"); public static final JagString aClass100_476 = JagString.parse("::gc");
@OriginalMember(owner = "client!wk", name = "u", descriptor = "Lclient!na;") @OriginalMember(owner = "client!wk", name = "u", descriptor = "Lclient!na;")
public static final JagString CLIENTJS5DROP = JagString.parse("::clientjs5drop"); public static final JagString CLIENTJS5DROP = JagString.parse("::clientjs5drop");
@OriginalMember(owner = "client!id", name = "c", descriptor = "Lclient!na;") @OriginalMember(owner = "client!id", name = "c", descriptor = "Lclient!na;")
public static final JagString FPSON = JagString.parse("::fpson"); public static final JagString FPSON = JagString.parse("::fpson");
@OriginalMember(owner = "client!md", name = "Q", descriptor = "Lclient!na;") @OriginalMember(owner = "client!md", name = "Q", descriptor = "Lclient!na;")
public static final JagString MM = JagString.parse("::mm"); public static final JagString MM = JagString.parse("::mm");
@OriginalMember(owner = "client!j", name = "M", descriptor = "Lclient!na;") @OriginalMember(owner = "client!j", name = "M", descriptor = "Lclient!na;")
public static final JagString REPLACECANVAS = JagString.parse("::replacecanvas"); public static final JagString REPLACECANVAS = JagString.parse("::replacecanvas");
@OriginalMember(owner = "client!li", name = "p", descriptor = "Lclient!na;") @OriginalMember(owner = "client!li", name = "p", descriptor = "Lclient!na;")
public static final JagString REBUILD = JagString.parse("::rebuild"); public static final JagString REBUILD = JagString.parse("::rebuild");
@OriginalMember(owner = "client!oi", name = "j", descriptor = "Lclient!na;") @OriginalMember(owner = "client!oi", name = "j", descriptor = "Lclient!na;")
public static final JagString WM1 = JagString.parse("::wm1"); public static final JagString WM1 = JagString.parse("::wm1");
@OriginalMember(owner = "client!ql", name = "i", descriptor = "Lclient!na;") @OriginalMember(owner = "client!ql", name = "i", descriptor = "Lclient!na;")
public static final JagString WM2 = JagString.parse("::wm2"); public static final JagString WM2 = JagString.parse("::wm2");
@OriginalMember(owner = "client!hk", name = "db", descriptor = "Lclient!na;") @OriginalMember(owner = "client!hk", name = "db", descriptor = "Lclient!na;")
public static final JagString WM3 = JagString.parse("::wm3"); public static final JagString WM3 = JagString.parse("::wm3");
@OriginalMember(owner = "client!dg", name = "f", descriptor = "Z") @OriginalMember(owner = "client!dg", name = "f", descriptor = "Z")
public static boolean displayFps = false; public static boolean displayFps = false;
@OriginalMember(owner = "client!nj", name = "a", descriptor = "Z") @OriginalMember(owner = "client!nj", name = "a", descriptor = "Z")
public static boolean shiftClick = GlobalConfig.USE_SHIFT_CLICK; public static boolean shiftClick = GlobalConfig.USE_SHIFT_CLICK;
@OriginalMember(owner = "client!qc", name = "U", descriptor = "I") @OriginalMember(owner = "client!qc", name = "U", descriptor = "I")
public static int rectDebug = 0; public static int rectDebug = 0;
@OriginalMember(owner = "client!en", name = "a", descriptor = "(IIIB)V") @OriginalMember(owner = "client!en", name = "a", descriptor = "(IIIB)V")
public static void teleport(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2) { public static void teleport(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2) {
@Pc(66) JagString local66 = JagString.concatenate(new JagString[] { aClass100_521, JagString.parseInt(arg2), Static70.aClass100_760, JagString.parseInt(arg0 >> 6), Static70.aClass100_760, JagString.parseInt(arg1 >> 6), Static70.aClass100_760, JagString.parseInt(arg0 & 0x3F), Static70.aClass100_760, JagString.parseInt(arg1 & 0x3F) }); @Pc(66) JagString local66 = JagString.concatenate(new JagString[]{aClass100_521, JagString.parseInt(arg2), Static70.aClass100_760, JagString.parseInt(arg0 >> 6), Static70.aClass100_760, JagString.parseInt(arg1 >> 6), Static70.aClass100_760, JagString.parseInt(arg0 & 0x3F), Static70.aClass100_760, JagString.parseInt(arg1 & 0x3F)});
local66.print(); local66.print();
execute(local66); execute(local66);
} }
@OriginalMember(owner = "client!k", name = "a", descriptor = "(Lclient!na;Z)V") @OriginalMember(owner = "client!k", name = "a", descriptor = "(Lclient!na;Z)V")
public static void execute(@OriginalArg(0) JagString arg0) { public static void execute(@OriginalArg(0) JagString arg0) {
if (LoginManager.staffModLevel >= 2) { if (LoginManager.staffModLevel >= 2) {
@Pc(18) int local18; @Pc(18) int local18;
@Pc(38) int local38; @Pc(38) int local38;
@Pc(29) Runtime local29; @Pc(29) Runtime local29;
if (arg0.equalsIgnoreCase(aClass100_476)) { if (arg0.equalsIgnoreCase(aClass100_476)) {
client.method2380(); client.method2380();
for (local18 = 0; local18 < 10; local18++) { for (local18 = 0; local18 < 10; local18++) {
System.gc(); System.gc();
} }
local29 = Runtime.getRuntime(); local29 = Runtime.getRuntime();
local38 = (int) ((local29.totalMemory() - local29.freeMemory()) / 1024L); local38 = (int) ((local29.totalMemory() - local29.freeMemory()) / 1024L);
Chat.add(null, 0, JagString.concatenate(new JagString[] { aClass100_892, JagString.parseInt(local38), DEBUG_MEM_UNIT})); Chat.add(null, 0, JagString.concatenate(new JagString[]{aClass100_892, JagString.parseInt(local38), DEBUG_MEM_UNIT}));
} }
@Pc(117) int local117; @Pc(117) int local117;
if (arg0.equalsIgnoreCase(MM)) { if (arg0.equalsIgnoreCase(MM)) {
client.method2380(); client.method2380();
for (local18 = 0; local18 < 10; local18++) { for (local18 = 0; local18 < 10; local18++) {
System.gc(); System.gc();
} }
local29 = Runtime.getRuntime(); local29 = Runtime.getRuntime();
local38 = (int) ((local29.totalMemory() - local29.freeMemory()) / 1024L); local38 = (int) ((local29.totalMemory() - local29.freeMemory()) / 1024L);
Chat.add(null, 0, JagString.concatenate(new JagString[] { aClass100_893, JagString.parseInt(local38), DEBUG_MEM_UNIT})); Chat.add(null, 0, JagString.concatenate(new JagString[]{aClass100_893, JagString.parseInt(local38), DEBUG_MEM_UNIT}));
Player.method501(); Player.method501();
client.method2380(); client.method2380();
for (local117 = 0; local117 < 10; local117++) { for (local117 = 0; local117 < 10; local117++) {
System.gc(); System.gc();
} }
local38 = (int) ((local29.totalMemory() - local29.freeMemory()) / 1024L); local38 = (int) ((local29.totalMemory() - local29.freeMemory()) / 1024L);
Chat.add(null, 0, JagString.concatenate(new JagString[] {aClass100_1093, JagString.parseInt(local38), DEBUG_MEM_UNIT})); Chat.add(null, 0, JagString.concatenate(new JagString[]{aClass100_1093, JagString.parseInt(local38), DEBUG_MEM_UNIT}));
} }
if (arg0.equalsIgnoreCase(PCACHESIZE)) { if (arg0.equalsIgnoreCase(PCACHESIZE)) {
Chat.add(null, 0, JagString.concatenate(new JagString[] { aClass100_335, JagString.parseInt(PlayerAppearance.method1029()) })); Chat.add(null, 0, JagString.concatenate(new JagString[]{aClass100_335, JagString.parseInt(PlayerAppearance.method1029())}));
} }
if (GlRenderer.enabled && arg0.equalsIgnoreCase(CARDMEM)) { if (GlRenderer.enabled && arg0.equalsIgnoreCase(CARDMEM)) {
System.out.println("oncard_geometry:" + GlCleaner.onCardGeometry); System.out.println("oncard_geometry:" + GlCleaner.onCardGeometry);
System.out.println("oncard_2d:" + GlCleaner.onCard2d); System.out.println("oncard_2d:" + GlCleaner.onCard2d);
System.out.println("oncard_texture:" + GlCleaner.onCardTexture); System.out.println("oncard_texture:" + GlCleaner.onCardTexture);
} }
if (arg0.equalsIgnoreCase(CLIENTDROP)) { if (arg0.equalsIgnoreCase(CLIENTDROP)) {
Protocol.method3279(); Protocol.method3279();
} }
if (arg0.equalsIgnoreCase(CLIENTJS5DROP)) { if (arg0.equalsIgnoreCase(CLIENTJS5DROP)) {
client.js5NetQueue.quit(); client.js5NetQueue.quit();
} }
if (arg0.equalsIgnoreCase(JS5DROP)) { if (arg0.equalsIgnoreCase(JS5DROP)) {
client.js5NetQueue.drop(); client.js5NetQueue.drop();
} }
if (arg0.equalsIgnoreCase(BREAKCON)) { if (arg0.equalsIgnoreCase(BREAKCON)) {
GameShell.signLink.breakConnection(); GameShell.signLink.breakConnection();
Protocol.socket.breakConnection(); Protocol.socket.breakConnection();
client.js5NetQueue.breakConnection(); client.js5NetQueue.breakConnection();
} }
if (arg0.equalsIgnoreCase(REPLACECANVAS)) { if (arg0.equalsIgnoreCase(REPLACECANVAS)) {
GameShell.replaceCanvas = true; GameShell.replaceCanvas = true;
} }
if (arg0.equalsIgnoreCase(REBUILD)) { if (arg0.equalsIgnoreCase(REBUILD)) {
client.setGameState(25); client.setGameState(25);
} }
if (arg0.equalsIgnoreCase(FPSON)) { if (arg0.equalsIgnoreCase(FPSON)) {
displayFps = true; displayFps = true;
} }
if (arg0.equalsIgnoreCase(FPSOFF)) { if (arg0.equalsIgnoreCase(FPSOFF)) {
displayFps = false; displayFps = false;
} }
if (arg0.equalsIgnoreCase(WM0)) { if (arg0.equalsIgnoreCase(WM0)) {
DisplayMode.setWindowMode(false, 0, -1, -1); DisplayMode.setWindowMode(false, 0, -1, -1);
} }
if (arg0.equalsIgnoreCase(WM1)) { if (arg0.equalsIgnoreCase(WM1)) {
DisplayMode.setWindowMode(false, 1, -1, -1); DisplayMode.setWindowMode(false, 1, -1, -1);
} }
if (arg0.equalsIgnoreCase(WM2)) { if (arg0.equalsIgnoreCase(WM2)) {
DisplayMode.setWindowMode(false, 2, -1, -1); DisplayMode.setWindowMode(false, 2, -1, -1);
} }
if (arg0.equalsIgnoreCase(WM3)) { if (arg0.equalsIgnoreCase(WM3)) {
DisplayMode.setWindowMode(false, 3, 1024, 768); DisplayMode.setWindowMode(false, 3, 1024, 768);
} }
if (arg0.equalsIgnoreCase(NOCLIP)) { if (arg0.equalsIgnoreCase(NOCLIP)) {
for (local18 = 0; local18 < 4; local18++) { for (local18 = 0; local18 < 4; local18++) {
for (local38 = 1; local38 < 103; local38++) { for (local38 = 1; local38 < 103; local38++) {
for (local117 = 1; local117 < 103; local117++) { for (local117 = 1; local117 < 103; local117++) {
PathFinder.collisionMaps[local18].flags[local38][local117] = 0; PathFinder.collisionMaps[local18].flags[local38][local117] = 0;
} }
} }
} }
} }
if (arg0.startsWith(PARTICLES)) { if (arg0.startsWith(PARTICLES)) {
Preferences.setParticles(arg0.substring(15).parseInt()); Preferences.setParticles(arg0.substring(15).parseInt());
Preferences.write(GameShell.signLink); Preferences.write(GameShell.signLink);
Preferences.sentToServer = false; Preferences.sentToServer = false;
} }
if (arg0.startsWith(COMMAND_FPS) && client.modeWhere != 0) { if (arg0.startsWith(COMMAND_FPS) && client.modeWhere != 0) {
GameShell.setFpsTarget(arg0.substring(6).parseInt()); GameShell.setFpsTarget(arg0.substring(6).parseInt());
} }
if (arg0.equalsIgnoreCase(ERROR_TEST)) { if (arg0.equalsIgnoreCase(ERROR_TEST)) {
throw new RuntimeException(); throw new RuntimeException();
} }
if (arg0.startsWith(RECT_DEBUG)) { if (arg0.startsWith(RECT_DEBUG)) {
rectDebug = arg0.substring(12).trim().parseInt(); rectDebug = arg0.substring(12).trim().parseInt();
Chat.add(null, 0, JagString.concatenate(new JagString[] { RECT_DEBUG_EQUALS, JagString.parseInt(rectDebug) })); Chat.add(null, 0, JagString.concatenate(new JagString[]{RECT_DEBUG_EQUALS, JagString.parseInt(rectDebug)}));
} }
if (arg0.equalsIgnoreCase(QA_OP_TEST)) { if (arg0.equalsIgnoreCase(QA_OP_TEST)) {
Static121.qaOpTest = true; Static121.qaOpTest = true;
} }
if (arg0.equalsIgnoreCase(TWEENING)) { if (arg0.equalsIgnoreCase(TWEENING)) {
if (SeqType.applyTweening) { if (SeqType.applyTweening) {
SeqType.applyTweening = false; SeqType.applyTweening = false;
Chat.add(null, 0, aClass100_943); Chat.add(null, 0, aClass100_943);
} else { } else {
SeqType.applyTweening = true; SeqType.applyTweening = true;
Chat.add(null, 0, aClass100_362); Chat.add(null, 0, aClass100_362);
} }
} }
if (arg0.equalsIgnoreCase(SHIFTCLICK)) { if (arg0.equalsIgnoreCase(SHIFTCLICK)) {
if (shiftClick) { if (shiftClick) {
aClass100_736.print(); aClass100_736.print();
shiftClick = false; shiftClick = false;
} else { } else {
aClass100_333.print(); aClass100_333.print();
shiftClick = true; shiftClick = true;
} }
} }
} }
Protocol.outboundBuffer.p1isaac(44); Protocol.outboundBuffer.p1isaac(44);
Protocol.outboundBuffer.p1(arg0.length() - 1); Protocol.outboundBuffer.p1(arg0.length() - 1);
Protocol.outboundBuffer.pjstr(arg0.substring(2)); Protocol.outboundBuffer.pjstr(arg0.substring(2));
} }
} }

View file

@ -5,36 +5,36 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class ClanChat { public class ClanChat {
@OriginalMember(owner = "client!wj", name = "l", descriptor = "I") @OriginalMember(owner = "client!wj", name = "l", descriptor = "I")
public static int transmitAt = 0; public static int transmitAt = 0;
@OriginalMember(owner = "client!mj", name = "u", descriptor = "B") @OriginalMember(owner = "client!mj", name = "u", descriptor = "B")
public static byte rank; public static byte rank;
@OriginalMember(owner = "client!e", name = "rc", descriptor = "B") @OriginalMember(owner = "client!e", name = "rc", descriptor = "B")
public static byte minKick; public static byte minKick;
@OriginalMember(owner = "client!wb", name = "m", descriptor = "Lclient!na;") @OriginalMember(owner = "client!wb", name = "m", descriptor = "Lclient!na;")
public static JagString owner = null; public static JagString owner = null;
@OriginalMember(owner = "client!be", name = "ac", descriptor = "Lclient!na;") @OriginalMember(owner = "client!be", name = "ac", descriptor = "Lclient!na;")
public static JagString name = null; public static JagString name = null;
@OriginalMember(owner = "client!rg", name = "y", descriptor = "I") @OriginalMember(owner = "client!rg", name = "y", descriptor = "I")
public static int size; public static int size;
@OriginalMember(owner = "client!qc", name = "bb", descriptor = "[Lclient!kl;") @OriginalMember(owner = "client!qc", name = "bb", descriptor = "[Lclient!kl;")
public static ClanMember[] members; public static ClanMember[] members;
@OriginalMember(owner = "client!kh", name = "b", descriptor = "(I)V") @OriginalMember(owner = "client!kh", name = "b", descriptor = "(I)V")
public static void leave() { public static void leave() {
Protocol.outboundBuffer.p1isaac(104); Protocol.outboundBuffer.p1isaac(104);
Protocol.outboundBuffer.p8(0L); Protocol.outboundBuffer.p8(0L);
} }
@OriginalMember(owner = "client!mf", name = "a", descriptor = "(JI)V") @OriginalMember(owner = "client!mf", name = "a", descriptor = "(JI)V")
public static void join(@OriginalArg(0) long arg0) { public static void join(@OriginalArg(0) long arg0) {
if ((long) 0 != arg0) { if ((long) 0 != arg0) {
Protocol.outboundBuffer.p1isaac(104); Protocol.outboundBuffer.p1isaac(104);
Protocol.outboundBuffer.p8(arg0); Protocol.outboundBuffer.p8(arg0);
} }
} }
@OriginalMember(owner = "client!od", name = "a", descriptor = "(ILclient!na;)V") @OriginalMember(owner = "client!od", name = "a", descriptor = "(ILclient!na;)V")
public static void kick(@OriginalArg(1) JagString arg0) { public static void kick(@OriginalArg(1) JagString arg0) {
if (members == null) { if (members == null) {
return; return;

View file

@ -7,431 +7,431 @@ import org.openrs2.deob.annotation.Pc;
import java.io.IOException; import java.io.IOException;
public class ClientProt { public class ClientProt {
@OriginalMember(owner = "client!e", name = "Dc", descriptor = "Lclient!na;") @OriginalMember(owner = "client!e", name = "Dc", descriptor = "Lclient!na;")
public static final JagString aClass100_363 = JagString.parse("_labels"); public static final JagString aClass100_363 = JagString.parse("_labels");
@OriginalMember(owner = "client!bh", name = "C", descriptor = "Lclient!na;") @OriginalMember(owner = "client!bh", name = "C", descriptor = "Lclient!na;")
public static final JagString COMPLETE_PERCENT = JagString.parse("<br>(X100(U(Y"); public static final JagString COMPLETE_PERCENT = JagString.parse("<br>(X100(U(Y");
@OriginalMember(owner = "client!wc", name = "g", descriptor = "I") @OriginalMember(owner = "client!wc", name = "g", descriptor = "I")
public static int anInt5804 = 0; public static int anInt5804 = 0;
@OriginalMember(owner = "client!nm", name = "U", descriptor = "I") @OriginalMember(owner = "client!nm", name = "U", descriptor = "I")
public static int mapFilesMissingCount = 0; public static int mapFilesMissingCount = 0;
@OriginalMember(owner = "client!vg", name = "a", descriptor = "(Lclient!na;IIBI)V") @OriginalMember(owner = "client!vg", name = "a", descriptor = "(Lclient!na;IIBI)V")
public static void method4512(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(4) int arg3) { public static void method4512(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(4) int arg3) {
@Pc(8) Component local8 = InterfaceList.method1418(arg3, arg1); @Pc(8) Component local8 = InterfaceList.method1418(arg3, arg1);
if (local8 == null) { if (local8 == null) {
return; return;
} }
if (local8.onOptionClick != null) { if (local8.onOptionClick != null) {
@Pc(19) HookRequest local19 = new HookRequest(); @Pc(19) HookRequest local19 = new HookRequest();
local19.arguments = local8.onOptionClick; local19.arguments = local8.onOptionClick;
local19.source = local8; local19.source = local8;
local19.opBase = arg0; local19.opBase = arg0;
local19.op = arg2; local19.op = arg2;
ScriptRunner.run(local19); ScriptRunner.run(local19);
} }
@Pc(37) boolean local37 = true; @Pc(37) boolean local37 = true;
if (local8.clientCode > 0) { if (local8.clientCode > 0) {
local37 = MiniMenu.method4265(local8); local37 = MiniMenu.method4265(local8);
} }
if (!local37 || !InterfaceList.getServerActiveProperties(local8).method503(arg2 - 1)) { if (!local37 || !InterfaceList.getServerActiveProperties(local8).method503(arg2 - 1)) {
return; return;
} }
if (arg2 == 1) { if (arg2 == 1) {
Protocol.outboundBuffer.p1isaac(155); Protocol.outboundBuffer.p1isaac(155);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
if (arg2 == 2) { if (arg2 == 2) {
Protocol.outboundBuffer.p1isaac(196); Protocol.outboundBuffer.p1isaac(196);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
if (arg2 == 3) { if (arg2 == 3) {
Protocol.outboundBuffer.p1isaac(124); Protocol.outboundBuffer.p1isaac(124);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
if (arg2 == 4) { if (arg2 == 4) {
Protocol.outboundBuffer.p1isaac(199); Protocol.outboundBuffer.p1isaac(199);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
if (arg2 == 5) { if (arg2 == 5) {
Protocol.outboundBuffer.p1isaac(234); Protocol.outboundBuffer.p1isaac(234);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
if (arg2 == 6) { if (arg2 == 6) {
Protocol.outboundBuffer.p1isaac(168); Protocol.outboundBuffer.p1isaac(168);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
if (arg2 == 7) { if (arg2 == 7) {
Protocol.outboundBuffer.p1isaac(166); Protocol.outboundBuffer.p1isaac(166);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
if (arg2 == 8) { if (arg2 == 8) {
Protocol.outboundBuffer.p1isaac(64); Protocol.outboundBuffer.p1isaac(64);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
if (arg2 == 9) { if (arg2 == 9) {
Protocol.outboundBuffer.p1isaac(53); Protocol.outboundBuffer.p1isaac(53);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
if (arg2 == 10) { if (arg2 == 10) {
Protocol.outboundBuffer.p1isaac(9); Protocol.outboundBuffer.p1isaac(9);
Protocol.outboundBuffer.p4(arg3); Protocol.outboundBuffer.p4(arg3);
Protocol.outboundBuffer.p2(arg1); Protocol.outboundBuffer.p2(arg1);
} }
} }
@OriginalMember(owner = "client!pi", name = "c", descriptor = "(III)V") @OriginalMember(owner = "client!pi", name = "c", descriptor = "(III)V")
public static void method3502(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) { public static void method3502(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) {
@Pc(13) int local13 = arg0; @Pc(13) int local13 = arg0;
if (arg0 > 25) { if (arg0 > 25) {
local13 = 25; local13 = 25;
} }
arg0--; arg0--;
@Pc(23) int local23 = PathFinder.queueX[arg0]; @Pc(23) int local23 = PathFinder.queueX[arg0];
@Pc(27) int local27 = PathFinder.queueZ[arg0]; @Pc(27) int local27 = PathFinder.queueZ[arg0];
if (arg1 == 0) { if (arg1 == 0) {
Protocol.outboundBuffer.p1isaac(215); Protocol.outboundBuffer.p1isaac(215);
Protocol.outboundBuffer.p1(local13 + local13 + 3); Protocol.outboundBuffer.p1(local13 + local13 + 3);
} }
if (arg1 == 1) { if (arg1 == 1) {
Protocol.outboundBuffer.p1isaac(39); Protocol.outboundBuffer.p1isaac(39);
Protocol.outboundBuffer.p1(local13 + local13 + 3 + 14); Protocol.outboundBuffer.p1(local13 + local13 + 3 + 14);
} }
if (arg1 == 2) { if (arg1 == 2) {
Protocol.outboundBuffer.p1isaac(77); Protocol.outboundBuffer.p1isaac(77);
Protocol.outboundBuffer.p1(local13 + local13 + 3); Protocol.outboundBuffer.p1(local13 + local13 + 3);
} }
Protocol.outboundBuffer.p1add(Keyboard.pressedKeys[Keyboard.KEY_CTRL] ? 1 : 0); Protocol.outboundBuffer.p1add(Keyboard.pressedKeys[Keyboard.KEY_CTRL] ? 1 : 0);
Protocol.outboundBuffer.p2(Camera.originX + local23); Protocol.outboundBuffer.p2(Camera.originX + local23);
Protocol.outboundBuffer.p2add(Camera.originZ + local27); Protocol.outboundBuffer.p2add(Camera.originZ + local27);
LoginManager.mapFlagZ = PathFinder.queueZ[0]; LoginManager.mapFlagZ = PathFinder.queueZ[0];
LoginManager.mapFlagX = PathFinder.queueX[0]; LoginManager.mapFlagX = PathFinder.queueX[0];
for (@Pc(126) int local126 = 1; local126 < local13; local126++) { for (@Pc(126) int local126 = 1; local126 < local13; local126++) {
arg0--; arg0--;
Protocol.outboundBuffer.p1add(PathFinder.queueX[arg0] - local23); Protocol.outboundBuffer.p1add(PathFinder.queueX[arg0] - local23);
Protocol.outboundBuffer.p1sub(PathFinder.queueZ[arg0] - local27); Protocol.outboundBuffer.p1sub(PathFinder.queueZ[arg0] - local27);
} }
} }
@OriginalMember(owner = "client!mc", name = "f", descriptor = "(B)V") @OriginalMember(owner = "client!mc", name = "f", descriptor = "(B)V")
public static void closeWidget() { public static void closeWidget() {
Protocol.outboundBuffer.p1isaac(184); Protocol.outboundBuffer.p1isaac(184);
for (@Pc(18) ComponentPointer local18 = (ComponentPointer) InterfaceList.openInterfaces.head(); local18 != null; local18 = (ComponentPointer) InterfaceList.openInterfaces.next()) { for (@Pc(18) ComponentPointer local18 = (ComponentPointer) InterfaceList.openInterfaces.head(); local18 != null; local18 = (ComponentPointer) InterfaceList.openInterfaces.next()) {
if (local18.anInt5879 == 0) { if (local18.anInt5879 == 0) {
InterfaceList.closeInterface(true, local18); InterfaceList.closeInterface(true, local18);
} }
} }
if (Static44.aClass13_10 != null) { if (Static44.aClass13_10 != null) {
InterfaceList.redraw(Static44.aClass13_10); InterfaceList.redraw(Static44.aClass13_10);
Static44.aClass13_10 = null; Static44.aClass13_10 = null;
} }
} }
@OriginalMember(owner = "client!wh", name = "a", descriptor = "(IILclient!na;)V") @OriginalMember(owner = "client!wh", name = "a", descriptor = "(IILclient!na;)V")
public static void clickPlayerOption(@OriginalArg(0) int arg0, @OriginalArg(2) JagString arg1) { public static void clickPlayerOption(@OriginalArg(0) int arg0, @OriginalArg(2) JagString arg1) {
@Pc(7) JagString local7 = arg1.method3159().toTitleCase(); @Pc(7) JagString local7 = arg1.method3159().toTitleCase();
@Pc(13) boolean local13 = false; @Pc(13) boolean local13 = false;
for (@Pc(15) int local15 = 0; local15 < PlayerList.size; local15++) { for (@Pc(15) int local15 = 0; local15 < PlayerList.size; local15++) {
@Pc(28) Player local28 = PlayerList.players[PlayerList.ids[local15]]; @Pc(28) Player local28 = PlayerList.players[PlayerList.ids[local15]];
if (local28 != null && local28.username != null && local28.username.equalsIgnoreCase(local7)) { if (local28 != null && local28.username != null && local28.username.equalsIgnoreCase(local7)) {
local13 = true; local13 = true;
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local28.movementQueueX[0], 1, 0, 2, local28.movementQueueZ[0], PlayerList.self.movementQueueX[0]); PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local28.movementQueueX[0], 1, 0, 2, local28.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
if (arg0 == 1) { if (arg0 == 1) {
Protocol.outboundBuffer.p1isaac(68); Protocol.outboundBuffer.p1isaac(68);
Protocol.outboundBuffer.ip2add(PlayerList.ids[local15]); Protocol.outboundBuffer.ip2add(PlayerList.ids[local15]);
} else if (arg0 == 4) { } else if (arg0 == 4) {
Protocol.outboundBuffer.p1isaac(180); Protocol.outboundBuffer.p1isaac(180);
Protocol.outboundBuffer.ip2add(PlayerList.ids[local15]); Protocol.outboundBuffer.ip2add(PlayerList.ids[local15]);
} else if (arg0 == 5) { } else if (arg0 == 5) {
Protocol.outboundBuffer.p1isaac(4); Protocol.outboundBuffer.p1isaac(4);
Protocol.outboundBuffer.ip2(PlayerList.ids[local15]); Protocol.outboundBuffer.ip2(PlayerList.ids[local15]);
} else if (arg0 == 6) { } else if (arg0 == 6) {
Protocol.outboundBuffer.p1isaac(133); Protocol.outboundBuffer.p1isaac(133);
Protocol.outboundBuffer.ip2(PlayerList.ids[local15]); Protocol.outboundBuffer.ip2(PlayerList.ids[local15]);
} else if (arg0 == 7) { } else if (arg0 == 7) {
Protocol.outboundBuffer.p1isaac(114); Protocol.outboundBuffer.p1isaac(114);
Protocol.outboundBuffer.ip2add(PlayerList.ids[local15]); Protocol.outboundBuffer.ip2add(PlayerList.ids[local15]);
} }
break; break;
} }
} }
if (!local13) { if (!local13) {
Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[] { LocalizedText.UNABLETOFIND, local7 })); Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[]{LocalizedText.UNABLETOFIND, local7}));
} }
} }
@OriginalMember(owner = "client!gd", name = "c", descriptor = "(I)V") @OriginalMember(owner = "client!gd", name = "c", descriptor = "(I)V")
public static void rebuildMap() { public static void rebuildMap() {
ping(false); ping(false);
mapFilesMissingCount = 0; mapFilesMissingCount = 0;
@Pc(12) boolean fileExists = true; @Pc(12) boolean fileExists = true;
@Pc(14) int id; @Pc(14) int id;
for (id = 0; id < LoginManager.mapFilesBuffer.length; id++) { for (id = 0; id < LoginManager.mapFilesBuffer.length; id++) {
if (LoginManager.mapFileIds[id] != -1 && LoginManager.mapFilesBuffer[id] == null) { if (LoginManager.mapFileIds[id] != -1 && LoginManager.mapFilesBuffer[id] == null) {
LoginManager.mapFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.mapFileIds[id], 0); LoginManager.mapFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.mapFileIds[id], 0);
if (LoginManager.mapFilesBuffer[id] == null) { if (LoginManager.mapFilesBuffer[id] == null) {
mapFilesMissingCount++; mapFilesMissingCount++;
fileExists = false; fileExists = false;
} }
} }
if (LoginManager.locationsMapFileIds[id] != -1 && LoginManager.locationMapFilesBuffer[id] == null) { if (LoginManager.locationsMapFileIds[id] != -1 && LoginManager.locationMapFilesBuffer[id] == null) {
LoginManager.locationMapFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.locationsMapFileIds[id], LoginManager.regionsXteaKeys[id], 0); LoginManager.locationMapFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.locationsMapFileIds[id], LoginManager.regionsXteaKeys[id], 0);
if (LoginManager.locationMapFilesBuffer[id] == null) { if (LoginManager.locationMapFilesBuffer[id] == null) {
fileExists = false; fileExists = false;
mapFilesMissingCount++; mapFilesMissingCount++;
} }
} }
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
if (LoginManager.underWaterMapFileIds[id] != -1 && LoginManager.underWaterMapFilesBuffer[id] == null) { if (LoginManager.underWaterMapFileIds[id] != -1 && LoginManager.underWaterMapFilesBuffer[id] == null) {
LoginManager.underWaterMapFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.underWaterMapFileIds[id], 0); LoginManager.underWaterMapFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.underWaterMapFileIds[id], 0);
if (LoginManager.underWaterMapFilesBuffer[id] == null) { if (LoginManager.underWaterMapFilesBuffer[id] == null) {
fileExists = false; fileExists = false;
mapFilesMissingCount++; mapFilesMissingCount++;
} }
} }
if (LoginManager.underWaterLocationsMapFileIds[id] != -1 && LoginManager.underWaterLocationsMapFilesBuffer[id] == null) { if (LoginManager.underWaterLocationsMapFileIds[id] != -1 && LoginManager.underWaterLocationsMapFilesBuffer[id] == null) {
LoginManager.underWaterLocationsMapFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.underWaterLocationsMapFileIds[id], 0); LoginManager.underWaterLocationsMapFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.underWaterLocationsMapFileIds[id], 0);
if (LoginManager.underWaterLocationsMapFilesBuffer[id] == null) { if (LoginManager.underWaterLocationsMapFilesBuffer[id] == null) {
mapFilesMissingCount++; mapFilesMissingCount++;
fileExists = false; fileExists = false;
} }
} }
} }
if (LoginManager.npcSpawnsFileIds != null && LoginManager.npcSpawnsFilesBuffer[id] == null && LoginManager.npcSpawnsFileIds[id] != -1) { if (LoginManager.npcSpawnsFileIds != null && LoginManager.npcSpawnsFilesBuffer[id] == null && LoginManager.npcSpawnsFileIds[id] != -1) {
LoginManager.npcSpawnsFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.npcSpawnsFileIds[id], LoginManager.regionsXteaKeys[id], 0); LoginManager.npcSpawnsFilesBuffer[id] = client.js5Archive5.fetchFile(LoginManager.npcSpawnsFileIds[id], LoginManager.regionsXteaKeys[id], 0);
if (LoginManager.npcSpawnsFilesBuffer[id] == null) { if (LoginManager.npcSpawnsFilesBuffer[id] == null) {
mapFilesMissingCount++; mapFilesMissingCount++;
fileExists = false; fileExists = false;
} }
} }
} }
if (LoginManager.mapElementList == null) { if (LoginManager.mapElementList == null) {
if (LoginManager.map == null || !client.js5Archive23.isGroupNameValid(JagString.concatenate(new JagString[] { LoginManager.map.group, aClass100_363 }))) { if (LoginManager.map == null || !client.js5Archive23.isGroupNameValid(JagString.concatenate(new JagString[]{LoginManager.map.group, aClass100_363}))) {
LoginManager.mapElementList = new MapElementList(0); LoginManager.mapElementList = new MapElementList(0);
} else if (client.js5Archive23.isGroupReady(JagString.concatenate(new JagString[] { LoginManager.map.group, aClass100_363 }))) { } else if (client.js5Archive23.isGroupReady(JagString.concatenate(new JagString[]{LoginManager.map.group, aClass100_363}))) {
LoginManager.mapElementList = MapElementList.create(JagString.concatenate(new JagString[] { LoginManager.map.group, aClass100_363 }), client.js5Archive23); LoginManager.mapElementList = MapElementList.create(JagString.concatenate(new JagString[]{LoginManager.map.group, aClass100_363}), client.js5Archive23);
} else { } else {
fileExists = false; fileExists = false;
mapFilesMissingCount++; mapFilesMissingCount++;
} }
} }
if (!fileExists) { if (!fileExists) {
Static233.loadingScreenState = 1; Static233.loadingScreenState = 1;
return; return;
} }
anInt5804 = 0; anInt5804 = 0;
fileExists = true; fileExists = true;
@Pc(320) int chunkX; @Pc(320) int chunkX;
@Pc(309) int chunkZ; @Pc(309) int chunkZ;
for (id = 0; id < LoginManager.mapFilesBuffer.length; id++) { for (id = 0; id < LoginManager.mapFilesBuffer.length; id++) {
@Pc(294) byte[] local294 = LoginManager.locationMapFilesBuffer[id]; @Pc(294) byte[] local294 = LoginManager.locationMapFilesBuffer[id];
if (local294 != null) { if (local294 != null) {
chunkZ = (LoginManager.regionBitPacked[id] & 0xFF) * 64 - Camera.originZ; chunkZ = (LoginManager.regionBitPacked[id] & 0xFF) * 64 - Camera.originZ;
chunkX = (LoginManager.regionBitPacked[id] >> 8) * 64 - Camera.originX; chunkX = (LoginManager.regionBitPacked[id] >> 8) * 64 - Camera.originX;
if (LoginManager.dynamicMapRegion) { if (LoginManager.dynamicMapRegion) {
chunkZ = 10; chunkZ = 10;
chunkX = 10; chunkX = 10;
} }
fileExists &= Static49.method1201(chunkX, chunkZ, local294); fileExists &= Static49.method1201(chunkX, chunkZ, local294);
} }
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
local294 = LoginManager.underWaterLocationsMapFilesBuffer[id]; local294 = LoginManager.underWaterLocationsMapFilesBuffer[id];
if (local294 != null) { if (local294 != null) {
chunkX = (LoginManager.regionBitPacked[id] >> 8) * 64 - Camera.originX; chunkX = (LoginManager.regionBitPacked[id] >> 8) * 64 - Camera.originX;
chunkZ = (LoginManager.regionBitPacked[id] & 0xFF) * 64 - Camera.originZ; chunkZ = (LoginManager.regionBitPacked[id] & 0xFF) * 64 - Camera.originZ;
if (LoginManager.dynamicMapRegion) { if (LoginManager.dynamicMapRegion) {
chunkZ = 10; chunkZ = 10;
chunkX = 10; chunkX = 10;
} }
fileExists &= Static49.method1201(chunkX, chunkZ, local294); fileExists &= Static49.method1201(chunkX, chunkZ, local294);
} }
} }
} }
if (!fileExists) { if (!fileExists) {
Static233.loadingScreenState = 2; Static233.loadingScreenState = 2;
return; return;
} }
if (Static233.loadingScreenState != 0) { if (Static233.loadingScreenState != 0) {
Static114.drawTextOnScreen(true, JagString.concatenate(new JagString[] { LocalizedText.LOADING, COMPLETE_PERCENT})); Static114.drawTextOnScreen(true, JagString.concatenate(new JagString[]{LocalizedText.LOADING, COMPLETE_PERCENT}));
} }
client.audioLoop(); client.audioLoop();
client.method3768(); client.method3768();
@Pc(420) boolean hasUnderWaterMap = false; @Pc(420) boolean hasUnderWaterMap = false;
@Pc(427) int i; @Pc(427) int i;
if (GlRenderer.enabled && Preferences.highWaterDetail) { if (GlRenderer.enabled && Preferences.highWaterDetail) {
for (i = 0; i < LoginManager.mapFilesBuffer.length; i++) { for (i = 0; i < LoginManager.mapFilesBuffer.length; i++) {
if (LoginManager.underWaterLocationsMapFilesBuffer[i] != null || LoginManager.underWaterMapFilesBuffer[i] != null) { if (LoginManager.underWaterLocationsMapFilesBuffer[i] != null || LoginManager.underWaterMapFilesBuffer[i] != null) {
hasUnderWaterMap = true; hasUnderWaterMap = true;
break; break;
} }
} }
} }
SceneGraph.init(GlRenderer.enabled ? GlobalConfig.TILE_DISTANCE : 25, hasUnderWaterMap); SceneGraph.init(GlRenderer.enabled ? GlobalConfig.TILE_DISTANCE : 25, hasUnderWaterMap);
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
PathFinder.collisionMaps[i].clear(); PathFinder.collisionMaps[i].clear();
} }
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
for (chunkX = 0; chunkX < 104; chunkX++) { for (chunkX = 0; chunkX < 104; chunkX++) {
for (chunkZ = 0; chunkZ < 104; chunkZ++) { for (chunkZ = 0; chunkZ < 104; chunkZ++) {
SceneGraph.tileFlags[i][chunkX][chunkZ] = 0; SceneGraph.tileFlags[i][chunkX][chunkZ] = 0;
} }
} }
} }
AreaSoundManager.clear(false); AreaSoundManager.clear(false);
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
ShadowManager.shadowMapImage.clear(); ShadowManager.shadowMapImage.clear();
for (i = 0; i < 13; i++) { for (i = 0; i < 13; i++) {
for (chunkX = 0; chunkX < 13; chunkX++) { for (chunkX = 0; chunkX < 13; chunkX++) {
ShadowManager.shadows[i][chunkX].outputToSprite = true; ShadowManager.shadows[i][chunkX].outputToSprite = true;
} }
} }
} }
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
LightingManager.method2404(); LightingManager.method2404();
} }
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
setDefaultChunksAtmosphere(); setDefaultChunksAtmosphere();
} }
client.audioLoop(); client.audioLoop();
System.gc(); System.gc();
ping(true); ping(true);
SceneGraph.load(false); SceneGraph.load(false);
if (!LoginManager.dynamicMapRegion) { if (!LoginManager.dynamicMapRegion) {
Static87.method1805(false); Static87.method1805(false);
ping(true); ping(true);
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
i = PlayerList.self.movementQueueX[0] >> 3; i = PlayerList.self.movementQueueX[0] >> 3;
chunkX = PlayerList.self.movementQueueZ[0] >> 3; chunkX = PlayerList.self.movementQueueZ[0] >> 3;
Static73.setLightPosition(chunkX, i); Static73.setLightPosition(chunkX, i);
} }
LoginManager.method743(false); LoginManager.method743(false);
if (LoginManager.npcSpawnsFilesBuffer != null) { if (LoginManager.npcSpawnsFilesBuffer != null) {
Static158.decodeNpcFiles(); Static158.decodeNpcFiles();
} }
} }
if (LoginManager.dynamicMapRegion) { if (LoginManager.dynamicMapRegion) {
Static89.method1835(false); Static89.method1835(false);
ping(true); ping(true);
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
i = PlayerList.self.movementQueueX[0] >> 3; i = PlayerList.self.movementQueueX[0] >> 3;
chunkX = PlayerList.self.movementQueueZ[0] >> 3; chunkX = PlayerList.self.movementQueueZ[0] >> 3;
Static73.setLightPosition(chunkX, i); Static73.setLightPosition(chunkX, i);
} }
Static233.method4002(false); Static233.method4002(false);
} }
client.method3768(); client.method3768();
ping(true); ping(true);
SceneGraph.method1169(PathFinder.collisionMaps, false); SceneGraph.method1169(PathFinder.collisionMaps, false);
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
LightingManager.method2395(); LightingManager.method2395();
} }
ping(true); ping(true);
i = SceneGraph.firstVisibleLevel; i = SceneGraph.firstVisibleLevel;
if (i > Player.level) { if (i > Player.level) {
i = Player.level; i = Player.level;
} }
if (i < Player.level - 1) { if (i < Player.level - 1) {
} }
if (SceneGraph.allLevelsAreVisible()) { if (SceneGraph.allLevelsAreVisible()) {
SceneGraph.method2750(0); SceneGraph.method2750(0);
} else { } else {
SceneGraph.method2750(SceneGraph.firstVisibleLevel); SceneGraph.method2750(SceneGraph.firstVisibleLevel);
} }
SceneGraph.unload(); SceneGraph.unload();
if (GlRenderer.enabled && hasUnderWaterMap) { if (GlRenderer.enabled && hasUnderWaterMap) {
SceneGraph.setUnderwater(true); SceneGraph.setUnderwater(true);
SceneGraph.load(true); SceneGraph.load(true);
if (!LoginManager.dynamicMapRegion) { if (!LoginManager.dynamicMapRegion) {
Static87.method1805(true); Static87.method1805(true);
ping(true); ping(true);
LoginManager.method743(true); LoginManager.method743(true);
} }
if (LoginManager.dynamicMapRegion) { if (LoginManager.dynamicMapRegion) {
Static89.method1835(true); Static89.method1835(true);
ping(true); ping(true);
Static233.method4002(true); Static233.method4002(true);
} }
client.method3768(); client.method3768();
ping(true); ping(true);
SceneGraph.method1169(PathFinder.collisionMaps, true); SceneGraph.method1169(PathFinder.collisionMaps, true);
ping(true); ping(true);
SceneGraph.unload(); SceneGraph.unload();
SceneGraph.setUnderwater(false); SceneGraph.setUnderwater(false);
} }
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
for (chunkX = 0; chunkX < 13; chunkX++) { for (chunkX = 0; chunkX < 13; chunkX++) {
for (chunkZ = 0; chunkZ < 13; chunkZ++) { for (chunkZ = 0; chunkZ < 13; chunkZ++) {
ShadowManager.shadows[chunkX][chunkZ].method4676(SceneGraph.tileHeights[0], chunkX * 8, chunkZ * 8); ShadowManager.shadows[chunkX][chunkZ].method4676(SceneGraph.tileHeights[0], chunkX * 8, chunkZ * 8);
} }
} }
} }
for (chunkX = 0; chunkX < 104; chunkX++) { for (chunkX = 0; chunkX < 104; chunkX++) {
for (chunkZ = 0; chunkZ < 104; chunkZ++) { for (chunkZ = 0; chunkZ < 104; chunkZ++) {
Protocol.spawnGroundObject(chunkZ, chunkX); Protocol.spawnGroundObject(chunkZ, chunkX);
} }
} }
ScriptRunner.method2218(); ScriptRunner.method2218();
client.audioLoop(); client.audioLoop();
ChangeLocRequest.flush(); ChangeLocRequest.flush();
client.method3768(); client.method3768();
Static231.aBoolean252 = false; Static231.aBoolean252 = false;
if (GameShell.frame != null && Protocol.socket != null && client.gameState == 25) { if (GameShell.frame != null && Protocol.socket != null && client.gameState == 25) {
Protocol.outboundBuffer.p1isaac(20); Protocol.outboundBuffer.p1isaac(20);
Protocol.outboundBuffer.p4(1057001181); Protocol.outboundBuffer.p4(1057001181);
} }
if (!LoginManager.dynamicMapRegion) { if (!LoginManager.dynamicMapRegion) {
@Pc(815) int local815 = (LoginManager.centralZoneZ + 6) / 8; @Pc(815) int local815 = (LoginManager.centralZoneZ + 6) / 8;
@Pc(821) int local821 = (LoginManager.centralZoneZ - 6) / 8; @Pc(821) int local821 = (LoginManager.centralZoneZ - 6) / 8;
chunkX = (LoginManager.centralZoneX - 6) / 8; chunkX = (LoginManager.centralZoneX - 6) / 8;
chunkZ = (LoginManager.centralZoneX + 6) / 8; chunkZ = (LoginManager.centralZoneX + 6) / 8;
for (@Pc(837) int local837 = chunkX - 1; local837 <= chunkZ + 1; local837++) { for (@Pc(837) int local837 = chunkX - 1; local837 <= chunkZ + 1; local837++) {
for (@Pc(850) int local850 = local821 - 1; local850 <= local815 + 1; local850++) { for (@Pc(850) int local850 = local821 - 1; local850 <= local815 + 1; local850++) {
if (local837 < chunkX || local837 > chunkZ || local850 < local821 || local850 > local815) { if (local837 < chunkX || local837 > chunkZ || local850 < local821 || local850 > local815) {
client.js5Archive5.prefetchGroup(JagString.concatenate(new JagString[] { LoginManager.aClass100_558, JagString.parseInt(local837), LoginManager.UNDERSCORE, JagString.parseInt(local850) })); client.js5Archive5.prefetchGroup(JagString.concatenate(new JagString[]{LoginManager.aClass100_558, JagString.parseInt(local837), LoginManager.UNDERSCORE, JagString.parseInt(local850)}));
client.js5Archive5.prefetchGroup(JagString.concatenate(new JagString[] { LoginManager.aClass100_1090, JagString.parseInt(local837), LoginManager.UNDERSCORE, JagString.parseInt(local850) })); client.js5Archive5.prefetchGroup(JagString.concatenate(new JagString[]{LoginManager.aClass100_1090, JagString.parseInt(local837), LoginManager.UNDERSCORE, JagString.parseInt(local850)}));
} }
} }
} }
} }
if (client.gameState == 28) { if (client.gameState == 28) {
client.setGameState(10); client.setGameState(10);
} else { } else {
client.setGameState(30); client.setGameState(30);
if (Protocol.socket != null) { if (Protocol.socket != null) {
Protocol.outboundBuffer.p1isaac(110); Protocol.outboundBuffer.p1isaac(110);
} }
} }
WorldMap.method2720(); WorldMap.method2720();
client.audioLoop(); client.audioLoop();
GameShell.resetTimer(); GameShell.resetTimer();
} }
@OriginalMember(owner = "client!ej", name = "i", descriptor = "(I)V") @OriginalMember(owner = "client!ej", name = "i", descriptor = "(I)V")
public static void method1373() { public static void method1373() {
Protocol.outboundBuffer.p1isaac(243); Protocol.outboundBuffer.p1isaac(243);
Protocol.outboundBuffer.p1(DisplayMode.getWindowMode()); Protocol.outboundBuffer.p1(DisplayMode.getWindowMode());
Protocol.outboundBuffer.p2(GameShell.canvasWidth); Protocol.outboundBuffer.p2(GameShell.canvasWidth);
Protocol.outboundBuffer.p2(GameShell.canvasHeight); Protocol.outboundBuffer.p2(GameShell.canvasHeight);
Protocol.outboundBuffer.p1(Preferences.antiAliasingMode); Protocol.outboundBuffer.p1(Preferences.antiAliasingMode);
} }
@OriginalMember(owner = "client!ah", name = "a", descriptor = "(BZ)V") @OriginalMember(owner = "client!ah", name = "a", descriptor = "(BZ)V")
public static void ping(@OriginalArg(1) boolean arg0) { public static void ping(@OriginalArg(1) boolean arg0) {
client.audioLoop(); client.audioLoop();
if (client.gameState != 30 && client.gameState != 25) { if (client.gameState != 30 && client.gameState != 25) {
@ -454,82 +454,82 @@ public class ClientProt {
client.audioLoop(); client.audioLoop();
} }
@OriginalMember(owner = "client!ac", name = "b", descriptor = "(I)V") @OriginalMember(owner = "client!ac", name = "b", descriptor = "(I)V")
public static void method28() { public static void method28() {
InterfaceList.redraw(Static40.aClass13_14); InterfaceList.redraw(Static40.aClass13_14);
Static40.anInt4851++; Static40.anInt4851++;
if (Static44.aBoolean83 && Static146.aBoolean174) { if (Static44.aBoolean83 && Static146.aBoolean174) {
@Pc(30) int local30 = Mouse.lastMouseX; @Pc(30) int local30 = Mouse.lastMouseX;
local30 -= Static40.anInt5388; local30 -= Static40.anInt5388;
if (Static81.anInt2225 > local30) { if (Static81.anInt2225 > local30) {
local30 = Static81.anInt2225; local30 = Static81.anInt2225;
} }
@Pc(41) int local41 = Mouse.lastMouseY; @Pc(41) int local41 = Mouse.lastMouseY;
if (Static81.anInt2225 + Static40.aClass13_1.width < local30 - -Static40.aClass13_14.width) { if (Static81.anInt2225 + Static40.aClass13_1.width < local30 - -Static40.aClass13_14.width) {
local30 = Static81.anInt2225 + Static40.aClass13_1.width - Static40.aClass13_14.width; local30 = Static81.anInt2225 + Static40.aClass13_1.width - Static40.aClass13_14.width;
} }
local41 -= Static40.anInt4035; local41 -= Static40.anInt4035;
if (local41 < InterfaceList.anInt5103) { if (local41 < InterfaceList.anInt5103) {
local41 = InterfaceList.anInt5103; local41 = InterfaceList.anInt5103;
} }
if (InterfaceList.anInt5103 + Static40.aClass13_1.height < local41 - -Static40.aClass13_14.height) { if (InterfaceList.anInt5103 + Static40.aClass13_1.height < local41 - -Static40.aClass13_14.height) {
local41 = InterfaceList.anInt5103 + Static40.aClass13_1.height - Static40.aClass13_14.height; local41 = InterfaceList.anInt5103 + Static40.aClass13_1.height - Static40.aClass13_14.height;
} }
@Pc(109) int local109 = local41 - Static36.anInt660; @Pc(109) int local109 = local41 - Static36.anInt660;
@Pc(114) int local114 = local30 - Static36.anInt3075; @Pc(114) int local114 = local30 - Static36.anInt3075;
@Pc(122) int local122 = local30 + Static40.aClass13_1.scrollX - Static81.anInt2225; @Pc(122) int local122 = local30 + Static40.aClass13_1.scrollX - Static81.anInt2225;
@Pc(130) int local130 = Static40.aClass13_1.scrollY + local41 - InterfaceList.anInt5103; @Pc(130) int local130 = Static40.aClass13_1.scrollY + local41 - InterfaceList.anInt5103;
@Pc(133) int local133 = Static40.aClass13_14.dragDeadzone; @Pc(133) int local133 = Static40.aClass13_14.dragDeadzone;
if (Static40.anInt4851 > Static40.aClass13_14.dragDeadtime && (local133 < local114 || -local133 > local114 || local109 > local133 || local109 < -local133)) { if (Static40.anInt4851 > Static40.aClass13_14.dragDeadtime && (local133 < local114 || -local133 > local114 || local109 > local133 || local109 < -local133)) {
Static40.aBoolean172 = true; Static40.aBoolean172 = true;
} }
@Pc(176) HookRequest local176; @Pc(176) HookRequest local176;
if (Static40.aClass13_14.onDragStart != null && Static40.aBoolean172) { if (Static40.aClass13_14.onDragStart != null && Static40.aBoolean172) {
local176 = new HookRequest(); local176 = new HookRequest();
local176.source = Static40.aClass13_14; local176.source = Static40.aClass13_14;
local176.arguments = Static40.aClass13_14.onDragStart; local176.arguments = Static40.aClass13_14.onDragStart;
local176.mouseX = local122; local176.mouseX = local122;
local176.mouseY = local130; local176.mouseY = local130;
ScriptRunner.run(local176); ScriptRunner.run(local176);
} }
if (Mouse.pressedButton == 0) { if (Mouse.pressedButton == 0) {
if (Static40.aBoolean172) { if (Static40.aBoolean172) {
if (Static40.aClass13_14.onDragRelease != null) { if (Static40.aClass13_14.onDragRelease != null) {
local176 = new HookRequest(); local176 = new HookRequest();
local176.mouseY = local130; local176.mouseY = local130;
local176.target = InterfaceList.aClass13_12; local176.target = InterfaceList.aClass13_12;
local176.mouseX = local122; local176.mouseX = local122;
local176.arguments = Static40.aClass13_14.onDragRelease; local176.arguments = Static40.aClass13_14.onDragRelease;
local176.source = Static40.aClass13_14; local176.source = Static40.aClass13_14;
ScriptRunner.run(local176); ScriptRunner.run(local176);
} }
if (InterfaceList.aClass13_12 != null && Static36.method938(Static40.aClass13_14) != null) { if (InterfaceList.aClass13_12 != null && Static36.method938(Static40.aClass13_14) != null) {
Protocol.outboundBuffer.p1isaac(79); Protocol.outboundBuffer.p1isaac(79);
Protocol.outboundBuffer.mp4(Static40.aClass13_14.id); Protocol.outboundBuffer.mp4(Static40.aClass13_14.id);
Protocol.outboundBuffer.ip2(InterfaceList.aClass13_12.createdComponentId); Protocol.outboundBuffer.ip2(InterfaceList.aClass13_12.createdComponentId);
Protocol.outboundBuffer.p4(InterfaceList.aClass13_12.id); Protocol.outboundBuffer.p4(InterfaceList.aClass13_12.id);
Protocol.outboundBuffer.ip2(Static40.aClass13_14.createdComponentId); Protocol.outboundBuffer.ip2(Static40.aClass13_14.createdComponentId);
} }
} else if ((VarpDomain.anInt2952 == 1 || MiniMenu.method4640(MiniMenu.size - 1)) && MiniMenu.size > 2) { } else if ((VarpDomain.anInt2952 == 1 || MiniMenu.method4640(MiniMenu.size - 1)) && MiniMenu.size > 2) {
Static226.method3901(); Static226.method3901();
} else if (MiniMenu.size > 0) { } else if (MiniMenu.size > 0) {
Static59.method1372(); Static59.method1372();
} }
Static40.aClass13_14 = null; Static40.aClass13_14 = null;
} }
} else if (Static40.anInt4851 > 1) { } else if (Static40.anInt4851 > 1) {
Static40.aClass13_14 = null; Static40.aClass13_14 = null;
} }
} }
@OriginalMember(owner = "client!aa", name = "a", descriptor = "(IZI)V") @OriginalMember(owner = "client!aa", name = "a", descriptor = "(IZI)V")
public static void method10(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) { public static void method10(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) {
Protocol.outboundBuffer.p1isaac(132); Protocol.outboundBuffer.p1isaac(132);
Protocol.outboundBuffer.imp4(arg1); Protocol.outboundBuffer.imp4(arg1);
Protocol.outboundBuffer.ip2(arg0); Protocol.outboundBuffer.ip2(arg0);
} }
@OriginalMember(owner = "client!g", name = "b", descriptor = "(I)V") @OriginalMember(owner = "client!g", name = "b", descriptor = "(I)V")
public static void setDefaultChunksAtmosphere() { public static void setDefaultChunksAtmosphere() {
@Pc(9) Environment local9 = new Environment(); @Pc(9) Environment local9 = new Environment();
for (@Pc(18) int local18 = 0; local18 < 13; local18++) { for (@Pc(18) int local18 = 0; local18 < 13; local18++) {

View file

@ -5,62 +5,62 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class ClientScriptList { public class ClientScriptList {
@OriginalMember(owner = "client!ib", name = "d", descriptor = "Lclient!gn;") @OriginalMember(owner = "client!ib", name = "d", descriptor = "Lclient!gn;")
public static final LruHashTable scripts = new LruHashTable(128); public static final LruHashTable scripts = new LruHashTable(128);
@OriginalMember(owner = "client!hc", name = "a", descriptor = "(IB)Lclient!qc;") @OriginalMember(owner = "client!hc", name = "a", descriptor = "(IB)Lclient!qc;")
public static ClientScript get(@OriginalArg(0) int id) { public static ClientScript get(@OriginalArg(0) int id) {
@Pc(12) ClientScript script = (ClientScript) scripts.get(id); @Pc(12) ClientScript script = (ClientScript) scripts.get(id);
if (script != null) { if (script != null) {
return script; return script;
} }
@Pc(22) byte[] bytes = client.js5Archive12.fetchFile(id, 0); @Pc(22) byte[] bytes = client.js5Archive12.fetchFile(id, 0);
if (bytes == null) { if (bytes == null) {
return null; return null;
} }
script = new ClientScript(); script = new ClientScript();
@Pc(42) Buffer buffer = new Buffer(bytes); @Pc(42) Buffer buffer = new Buffer(bytes);
buffer.offset = buffer.data.length - 2; buffer.offset = buffer.data.length - 2;
@Pc(53) int trailerLen = buffer.g2(); @Pc(53) int trailerLen = buffer.g2();
@Pc(63) int trailerPos = buffer.data.length - trailerLen - 12 - 2; @Pc(63) int trailerPos = buffer.data.length - trailerLen - 12 - 2;
buffer.offset = trailerPos; buffer.offset = trailerPos;
@Pc(70) int instructions = buffer.g4(); @Pc(70) int instructions = buffer.g4();
script.intLocals = buffer.g2(); script.intLocals = buffer.g2();
script.stringLocals = buffer.g2(); script.stringLocals = buffer.g2();
script.intArgs = buffer.g2(); script.intArgs = buffer.g2();
script.stringArgs = buffer.g2(); script.stringArgs = buffer.g2();
@Pc(98) int switches = buffer.g1(); @Pc(98) int switches = buffer.g1();
if (switches > 0) { if (switches > 0) {
script.switchTables = new HashTable[switches]; script.switchTables = new HashTable[switches];
for (int i = 0; i < switches; i++) { for (int i = 0; i < switches; i++) {
int cases = buffer.g2(); int cases = buffer.g2();
@Pc(121) HashTable table = new HashTable(IntUtils.clp2(cases)); @Pc(121) HashTable table = new HashTable(IntUtils.clp2(cases));
script.switchTables[i] = table; script.switchTables[i] = table;
while (cases-- > 0) { while (cases-- > 0) {
@Pc(136) int value = buffer.g4(); @Pc(136) int value = buffer.g4();
@Pc(140) int offset = buffer.g4(); @Pc(140) int offset = buffer.g4();
table.put(new IntNode(offset), value); table.put(new IntNode(offset), value);
} }
} }
} }
buffer.offset = 0; buffer.offset = 0;
script.name = buffer.fastgjstr(); script.name = buffer.fastgjstr();
script.opcodes = new int[instructions]; script.opcodes = new int[instructions];
script.stringOperands = new JagString[instructions]; script.stringOperands = new JagString[instructions];
int i = 0; int i = 0;
script.intOperands = new int[instructions]; script.intOperands = new int[instructions];
while (trailerPos > buffer.offset) { while (trailerPos > buffer.offset) {
int cases = buffer.g2(); int cases = buffer.g2();
if (cases == 3) { if (cases == 3) {
script.stringOperands[i] = buffer.gjstr(); script.stringOperands[i] = buffer.gjstr();
} else if (cases >= 100 || cases == 21 || cases == 38 || cases == 39) { } else if (cases >= 100 || cases == 21 || cases == 38 || cases == 39) {
script.intOperands[i] = buffer.g1(); script.intOperands[i] = buffer.g1();
} else { } else {
script.intOperands[i] = buffer.g4(); script.intOperands[i] = buffer.g4();
} }
script.opcodes[i++] = cases; script.opcodes[i++] = cases;
} }
scripts.put(script, id); scripts.put(script, id);
return script; return script;
} }
} }

View file

@ -413,9 +413,7 @@ public final class CollisionMap {
if (endX == startX - 1 && endZ == startZ && (this.flags[endX][endZ] & 0x8) == 0) { if (endX == startX - 1 && endZ == startZ && (this.flags[endX][endZ] & 0x8) == 0) {
return true; return true;
} }
if (startX + 1 == endX && startZ == endZ && (this.flags[endX][endZ] & 0x80) == 0) { return startX + 1 == endX && startZ == endZ && (this.flags[endX][endZ] & 0x80) == 0;
return true;
}
} }
} else { } else {
@Pc(785) int x1 = size + endX - 1; @Pc(785) int x1 = size + endX - 1;
@ -528,9 +526,7 @@ public final class CollisionMap {
if (startX - size == endX && startZ >= endZ && startZ <= z1 && (this.flags[x1][startZ] & 0x12C0108) == 0) { if (startX - size == endX && startZ >= endZ && startZ <= z1 && (this.flags[x1][startZ] & 0x12C0108) == 0) {
return true; return true;
} }
if (endX == startX + 1 && startZ >= endZ && z1 >= startZ && (this.flags[endX][startZ] & 0x12C0180) == 0) { return endX == startX + 1 && startZ >= endZ && z1 >= startZ && (this.flags[endX][startZ] & 0x12C0180) == 0;
return true;
}
} }
} }
return false; return false;
@ -618,9 +614,7 @@ public final class CollisionMap {
if (startX - 1 == endX && endZ == startZ && (this.flags[endX][endZ] & 0x8) == 0) { if (startX - 1 == endX && endZ == startZ && (this.flags[endX][endZ] & 0x8) == 0) {
return true; return true;
} }
if (endX == startX + 1 && startZ == endZ && (this.flags[endX][endZ] & 0x80) == 0) { return endX == startX + 1 && startZ == endZ && (this.flags[endX][endZ] & 0x80) == 0;
return true;
}
} }
} else { } else {
@Pc(414) int x1 = endX + size - 1; @Pc(414) int x1 = endX + size - 1;
@ -669,9 +663,7 @@ public final class CollisionMap {
if (endX == startX - size && endZ <= startZ && z1 >= startZ && (this.flags[x1][startZ] & 0x8) == 0) { if (endX == startX - size && endZ <= startZ && z1 >= startZ && (this.flags[x1][startZ] & 0x8) == 0) {
return true; return true;
} }
if (endX == startX + 1 && startZ >= endZ && startZ <= z1 && (this.flags[endX][startZ] & 0x80) == 0) { return endX == startX + 1 && startZ >= endZ && startZ <= z1 && (this.flags[endX][startZ] & 0x80) == 0;
return true;
}
} }
} }
return false; return false;

View file

@ -8,9 +8,9 @@ import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!pf") @OriginalClass("client!pf")
public final class ColorImageCache { public final class ColorImageCache {
@OriginalMember(owner = "client!ib", name = "c", descriptor = "Lclient!qi;") @OriginalMember(owner = "client!ib", name = "c", descriptor = "Lclient!qi;")
public static final ColorImageCacheEntry VALID = new ColorImageCacheEntry(0, 0); public static final ColorImageCacheEntry VALID = new ColorImageCacheEntry(0, 0);
@OriginalMember(owner = "client!pf", name = "d", descriptor = "I") @OriginalMember(owner = "client!pf", name = "d", descriptor = "I")
private int size = 0; private int size = 0;
@OriginalMember(owner = "client!pf", name = "m", descriptor = "I") @OriginalMember(owner = "client!pf", name = "m", descriptor = "I")

View file

@ -5,120 +5,120 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class ColorUtils { public class ColorUtils {
@OriginalMember(owner = "client!ug", name = "b", descriptor = "[F") @OriginalMember(owner = "client!ug", name = "b", descriptor = "[F")
public static final float[] aFloatArray28 = new float[4]; public static final float[] aFloatArray28 = new float[4];
@OriginalMember(owner = "client!ib", name = "a", descriptor = "(II)I") @OriginalMember(owner = "client!ib", name = "a", descriptor = "(II)I")
public static int rgbToHsl(@OriginalArg(1) int arg0) { public static int rgbToHsl(@OriginalArg(1) int arg0) {
@Pc(10) double local10 = (double) (arg0 >> 16 & 0xFF) / 256.0D; @Pc(10) double local10 = (double) (arg0 >> 16 & 0xFF) / 256.0D;
@Pc(19) double local19 = (double) (arg0 >> 8 & 0xFF) / 256.0D; @Pc(19) double local19 = (double) (arg0 >> 8 & 0xFF) / 256.0D;
@Pc(25) double local25 = 0.0D; @Pc(25) double local25 = 0.0D;
@Pc(32) double local32 = (double) (arg0 & 0xFF) / 256.0D; @Pc(32) double local32 = (double) (arg0 & 0xFF) / 256.0D;
@Pc(34) double local34 = local10; @Pc(34) double local34 = local10;
@Pc(37) double local37 = (double) 0; @Pc(37) double local37 = 0;
@Pc(39) double local39 = local10; @Pc(39) double local39 = local10;
if (local10 > local19) { if (local10 > local19) {
local34 = local19; local34 = local19;
} }
if (local32 < local34) { if (local32 < local34) {
local34 = local32; local34 = local32;
} }
if (local19 > local10) { if (local19 > local10) {
local39 = local19; local39 = local19;
} }
if (local32 > local39) { if (local32 > local39) {
local39 = local32; local39 = local32;
} }
@Pc(72) double local72 = (local34 + local39) / 2.0D; @Pc(72) double local72 = (local34 + local39) / 2.0D;
if (local34 != local39) { if (local34 != local39) {
if (local72 < 0.5D) { if (local72 < 0.5D) {
local37 = (local39 - local34) / (local34 + local39); local37 = (local39 - local34) / (local34 + local39);
} }
if (local72 >= 0.5D) { if (local72 >= 0.5D) {
local37 = (local39 - local34) / (2.0D - local39 - local34); local37 = (local39 - local34) / (2.0D - local39 - local34);
} }
if (local39 == local10) { if (local39 == local10) {
local25 = (local19 - local32) / (local39 - local34); local25 = (local19 - local32) / (local39 - local34);
} else if (local19 == local39) { } else if (local19 == local39) {
local25 = (local32 - local10) / (local39 - local34) + 2.0D; local25 = (local32 - local10) / (local39 - local34) + 2.0D;
} else if (local39 == local32) { } else if (local39 == local32) {
local25 = (local10 - local19) / (-local34 + local39) + 4.0D; local25 = (local10 - local19) / (-local34 + local39) + 4.0D;
} }
} }
@Pc(159) int local159 = (int) (local37 * 256.0D); @Pc(159) int local159 = (int) (local37 * 256.0D);
@Pc(164) int local164 = (int) (local72 * 256.0D); @Pc(164) int local164 = (int) (local72 * 256.0D);
local25 /= 6.0D; local25 /= 6.0D;
if (local164 < 0) { if (local164 < 0) {
local164 = 0; local164 = 0;
} else if (local164 > 255) { } else if (local164 > 255) {
local164 = 255; local164 = 255;
} }
@Pc(188) int local188 = (int) (local25 * 256.0D); @Pc(188) int local188 = (int) (local25 * 256.0D);
if (local159 < 0) { if (local159 < 0) {
local159 = 0; local159 = 0;
} else if (local159 > 255) { } else if (local159 > 255) {
local159 = 255; local159 = 255;
} }
if (local164 > 243) { if (local164 > 243) {
local159 >>= 0x4; local159 >>= 0x4;
} else if (local164 > 217) { } else if (local164 > 217) {
local159 >>= 0x3; local159 >>= 0x3;
} else if (local164 > 192) { } else if (local164 > 192) {
local159 >>= 0x2; local159 >>= 0x2;
} else if (local164 > 179) { } else if (local164 > 179) {
local159 >>= 0x1; local159 >>= 0x1;
} }
return (local188 >> 2 << 10) + (local159 >> 5 << 7) + (local164 >> 1); return (local188 >> 2 << 10) + (local159 >> 5 << 7) + (local164 >> 1);
} }
@OriginalMember(owner = "client!pf", name = "a", descriptor = "(II)[F") @OriginalMember(owner = "client!pf", name = "a", descriptor = "(II)[F")
public static float[] getRgbFloat(@OriginalArg(0) int arg0) { public static float[] getRgbFloat(@OriginalArg(0) int arg0) {
@Pc(7) float local7 = FogManager.method3068() + FogManager.method3059(); @Pc(7) float local7 = FogManager.method3068() + FogManager.method3059();
@Pc(9) int local9 = FogManager.method3064(); @Pc(9) int local9 = FogManager.method3064();
@Pc(11) float local11 = 0.58823526F; @Pc(11) float local11 = 0.58823526F;
aFloatArray28[3] = 1.0F; aFloatArray28[3] = 1.0F;
@Pc(24) float local24 = (float) (local9 >> 16 & 0xFF) / 255.0F; @Pc(24) float local24 = (float) (local9 >> 16 & 0xFF) / 255.0F;
@Pc(33) float local33 = (float) (local9 >> 8 & 0xFF) / 255.0F; @Pc(33) float local33 = (float) (local9 >> 8 & 0xFF) / 255.0F;
aFloatArray28[1] = local7 * (float) (arg0 >> 8 & 0xFF) / 255.0F * local33 * local11; aFloatArray28[1] = local7 * (float) (arg0 >> 8 & 0xFF) / 255.0F * local33 * local11;
aFloatArray28[0] = local7 * local11 * local24 * ((float) (arg0 >> 16 & 0xFF) / 255.0F); aFloatArray28[0] = local7 * local11 * local24 * ((float) (arg0 >> 16 & 0xFF) / 255.0F);
@Pc(74) float local74 = (float) (local9 & 0xFF) / 255.0F; @Pc(74) float local74 = (float) (local9 & 0xFF) / 255.0F;
aFloatArray28[2] = (float) (arg0 & 0xFF) / 255.0F * local74 * local11 * local7; aFloatArray28[2] = (float) (arg0 & 0xFF) / 255.0F * local74 * local11 * local7;
return aFloatArray28; return aFloatArray28;
} }
@OriginalMember(owner = "client!gn", name = "a", descriptor = "(IZI)I") @OriginalMember(owner = "client!gn", name = "a", descriptor = "(IZI)I")
public static int multiplyLightnessSafe(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) { public static int multiplyLightnessSafe(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) {
if (arg1 == -1) { if (arg1 == -1) {
return 12345678; return 12345678;
} }
arg0 = arg0 * (arg1 & 0x7F) >> 7; arg0 = arg0 * (arg1 & 0x7F) >> 7;
if (arg0 < 2) { if (arg0 < 2) {
arg0 = 2; arg0 = 2;
} else if (arg0 > 126) { } else if (arg0 > 126) {
arg0 = 126; arg0 = 126;
} }
return arg0 + (arg1 & 0xFF80); return arg0 + (arg1 & 0xFF80);
} }
@OriginalMember(owner = "client!sj", name = "a", descriptor = "(BII)I") @OriginalMember(owner = "client!sj", name = "a", descriptor = "(BII)I")
public static int multiplyLightnessGrayscale(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) { public static int multiplyLightnessGrayscale(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) {
if (arg0 == -2) { if (arg0 == -2) {
return 12345678; return 12345678;
} else if (arg0 == -1) { } else if (arg0 == -1) {
if (arg1 < 2) { if (arg1 < 2) {
arg1 = 2; arg1 = 2;
} else if (arg1 > 126) { } else if (arg1 > 126) {
arg1 = 126; arg1 = 126;
} }
return arg1; return arg1;
} else { } else {
arg1 = (arg0 & 0x7F) * arg1 >> 7; arg1 = (arg0 & 0x7F) * arg1 >> 7;
if (arg1 < 2) { if (arg1 < 2) {
arg1 = 2; arg1 = 2;
} else if (arg1 > 126) { } else if (arg1 > 126) {
arg1 = 126; arg1 = 126;
} }
return (arg0 & 0xFF80) + arg1; return (arg0 & 0xFF80) + arg1;
} }
} }
} }

View file

@ -8,15 +8,15 @@ import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!be") @OriginalClass("client!be")
public final class Component { public final class Component {
@OriginalMember(owner = "client!pf", name = "b", descriptor = "Lclient!n;") @OriginalMember(owner = "client!pf", name = "b", descriptor = "Lclient!n;")
public static final SoftLruHashTable sprites = new SoftLruHashTable(200); public static final SoftLruHashTable sprites = new SoftLruHashTable(200);
@OriginalMember(owner = "client!jk", name = "z", descriptor = "Lclient!n;") @OriginalMember(owner = "client!jk", name = "z", descriptor = "Lclient!n;")
public static final SoftLruHashTable models = new SoftLruHashTable(50); public static final SoftLruHashTable models = new SoftLruHashTable(50);
@OriginalMember(owner = "client!gn", name = "i", descriptor = "Lclient!n;") @OriginalMember(owner = "client!gn", name = "i", descriptor = "Lclient!n;")
public static final SoftLruHashTable fonts = new SoftLruHashTable(20); public static final SoftLruHashTable fonts = new SoftLruHashTable(20);
@OriginalMember(owner = "client!rc", name = "C", descriptor = "Z") @OriginalMember(owner = "client!rc", name = "C", descriptor = "Z")
public static boolean aBoolean72 = false; public static boolean aBoolean72 = false;
@OriginalMember(owner = "client!be", name = "b", descriptor = "[Ljava/lang/Object;") @OriginalMember(owner = "client!be", name = "b", descriptor = "[Ljava/lang/Object;")
public Object[] onFriendTransmit; public Object[] onFriendTransmit;
@OriginalMember(owner = "client!be", name = "d", descriptor = "[Ljava/lang/Object;") @OriginalMember(owner = "client!be", name = "d", descriptor = "[Ljava/lang/Object;")
@ -794,7 +794,7 @@ public final class Component {
if (local29 == -1) { if (local29 == -1) {
return null; return null;
} }
@Pc(43) Sprite local43 = (Sprite) sprites.get((long) local29); @Pc(43) Sprite local43 = (Sprite) sprites.get(local29);
if (local43 != null) { if (local43 != null) {
return local43; return local43;
} }
@ -802,7 +802,7 @@ public final class Component {
if (local43 == null) { if (local43 == null) {
aBoolean72 = true; aBoolean72 = true;
} else { } else {
sprites.put(local43, (long) local29); sprites.put(local43, local29);
} }
return local43; return local43;
} }
@ -869,7 +869,7 @@ public final class Component {
} else { } else {
@Pc(61) Model local61; @Pc(61) Model local61;
if (local10 == 1) { if (local10 == 1) {
local61 = (Model) models.get((long) ((local10 << 16) + local13)); local61 = (Model) models.get((local10 << 16) + local13);
if (local61 == null) { if (local61 == null) {
@Pc(69) RawModel local69 = RawModel.create(InterfaceList.aClass153_85, local13); @Pc(69) RawModel local69 = RawModel.create(InterfaceList.aClass153_85, local13);
if (local69 == null) { if (local69 == null) {
@ -877,7 +877,7 @@ public final class Component {
return null; return null;
} }
local61 = local69.createModel(64, 768, -50, -10, -50); local61 = local69.createModel(64, 768, -50, -10, -50);
models.put(local61, (long) (local13 + (local10 << 16))); models.put(local61, local13 + (local10 << 16));
} }
if (arg1 != null) { if (arg1 != null) {
local61 = arg1.method4215(local61, arg0, arg3, arg2); local61 = arg1.method4215(local61, arg0, arg3, arg2);
@ -1183,7 +1183,7 @@ public final class Component {
if (this.font == -1) { if (this.font == -1) {
return null; return null;
} }
@Pc(21) Font local21 = (Font) fonts.get((long) this.font); @Pc(21) Font local21 = (Font) fonts.get(this.font);
if (local21 != null) { if (local21 != null) {
return local21; return local21;
} }
@ -1192,7 +1192,7 @@ public final class Component {
aBoolean72 = true; aBoolean72 = true;
} else { } else {
local21.setNameIcons(arg0, null); local21.setNameIcons(arg0, null);
fonts.put(local21, (long) this.font); fonts.put(local21, this.font);
} }
return local21; return local21;
} }

View file

@ -8,138 +8,138 @@ import java.io.IOException;
import java.net.Socket; import java.net.Socket;
public class CreateManager { public class CreateManager {
@OriginalMember(owner = "client!oe", name = "l", descriptor = "I") @OriginalMember(owner = "client!oe", name = "l", descriptor = "I")
public static int step = 0; public static int step = 0;
@OriginalMember(owner = "client!sf", name = "a", descriptor = "I") @OriginalMember(owner = "client!sf", name = "a", descriptor = "I")
public static int loops = 0; public static int loops = 0;
@OriginalMember(owner = "client!eg", name = "v", descriptor = "I") @OriginalMember(owner = "client!eg", name = "v", descriptor = "I")
public static int errors = 0; public static int errors = 0;
@OriginalMember(owner = "client!sc", name = "y", descriptor = "I") @OriginalMember(owner = "client!sc", name = "y", descriptor = "I")
public static int reply = -2; public static int reply = -2;
@OriginalMember(owner = "client!si", name = "S", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!si", name = "S", descriptor = "[Lclient!na;")
public static JagString[] suggestedNames; public static JagString[] suggestedNames;
@OriginalMember(owner = "client!mh", name = "f", descriptor = "(B)V") @OriginalMember(owner = "client!mh", name = "f", descriptor = "(B)V")
public static void loop() { public static void loop() {
if (step == 0) { if (step == 0) {
return; return;
} }
try { try {
if (++loops > 2000) { if (++loops > 2000) {
if (Protocol.socket != null) { if (Protocol.socket != null) {
Protocol.socket.close(); Protocol.socket.close();
Protocol.socket = null; Protocol.socket = null;
} }
if (errors >= 1) { if (errors >= 1) {
reply = -5; reply = -5;
step = 0; step = 0;
return; return;
} }
step = 1; step = 1;
loops = 0; loops = 0;
errors++; errors++;
if (client.port == client.defaultPort) { if (client.port == client.defaultPort) {
client.port = client.alternatePort; client.port = client.alternatePort;
} else { } else {
client.port = client.defaultPort; client.port = client.defaultPort;
} }
} }
if (step == 1) { if (step == 1) {
Protocol.socketRequest = GameShell.signLink.openSocket(client.hostname, client.port); Protocol.socketRequest = GameShell.signLink.openSocket(client.hostname, client.port);
step = 2; step = 2;
} }
@Pc(120) int local120; @Pc(120) int local120;
if (step == 2) { if (step == 2) {
if (Protocol.socketRequest.status == 2) { if (Protocol.socketRequest.status == 2) {
throw new IOException(); throw new IOException();
} }
if (Protocol.socketRequest.status != 1) { if (Protocol.socketRequest.status != 1) {
return; return;
} }
Protocol.socket = new BufferedSocket((Socket) Protocol.socketRequest.result, GameShell.signLink); Protocol.socket = new BufferedSocket((Socket) Protocol.socketRequest.result, GameShell.signLink);
Protocol.socketRequest = null; Protocol.socketRequest = null;
Protocol.socket.write(Protocol.outboundBuffer.data, Protocol.outboundBuffer.offset); Protocol.socket.write(Protocol.outboundBuffer.data, Protocol.outboundBuffer.offset);
if (client.musicChannel != null) { if (client.musicChannel != null) {
client.musicChannel.method3571(); client.musicChannel.method3571();
} }
if (client.soundChannel != null) { if (client.soundChannel != null) {
client.soundChannel.method3571(); client.soundChannel.method3571();
} }
local120 = Protocol.socket.read(); local120 = Protocol.socket.read();
if (client.musicChannel != null) { if (client.musicChannel != null) {
client.musicChannel.method3571(); client.musicChannel.method3571();
} }
if (client.soundChannel != null) { if (client.soundChannel != null) {
client.soundChannel.method3571(); client.soundChannel.method3571();
} }
if (local120 != 21) { if (local120 != 21) {
reply = local120; reply = local120;
step = 0; step = 0;
Protocol.socket.close(); Protocol.socket.close();
Protocol.socket = null; Protocol.socket = null;
return; return;
} }
step = 3; step = 3;
} }
if (step == 3) { if (step == 3) {
if (Protocol.socket.available() < 1) { if (Protocol.socket.available() < 1) {
return; return;
} }
suggestedNames = new JagString[Protocol.socket.read()]; suggestedNames = new JagString[Protocol.socket.read()];
step = 4; step = 4;
} }
if (step == 4) { if (step == 4) {
if (Protocol.socket.available() < suggestedNames.length * 8) { if (Protocol.socket.available() < suggestedNames.length * 8) {
return; return;
} }
Protocol.inboundBuffer.offset = 0; Protocol.inboundBuffer.offset = 0;
Protocol.socket.read(0, suggestedNames.length * 8, Protocol.inboundBuffer.data); Protocol.socket.read(0, suggestedNames.length * 8, Protocol.inboundBuffer.data);
for (local120 = 0; local120 < suggestedNames.length; local120++) { for (local120 = 0; local120 < suggestedNames.length; local120++) {
suggestedNames[local120] = Base37.decode37(Protocol.inboundBuffer.g8()); suggestedNames[local120] = Base37.decode37(Protocol.inboundBuffer.g8());
} }
reply = 21; reply = 21;
step = 0; step = 0;
Protocol.socket.close(); Protocol.socket.close();
Protocol.socket = null; Protocol.socket = null;
return; return;
} }
} catch (@Pc(238) IOException local238) { } catch (@Pc(238) IOException local238) {
if (Protocol.socket != null) { if (Protocol.socket != null) {
Protocol.socket.close(); Protocol.socket.close();
Protocol.socket = null; Protocol.socket = null;
} }
if (errors < 1) { if (errors < 1) {
errors++; errors++;
if (client.defaultPort == client.port) { if (client.defaultPort == client.port) {
client.port = client.alternatePort; client.port = client.alternatePort;
} else { } else {
client.port = client.defaultPort; client.port = client.defaultPort;
} }
loops = 0; loops = 0;
step = 1; step = 1;
} else { } else {
reply = -4; reply = -4;
step = 0; step = 0;
} }
} }
} }
@OriginalMember(owner = "client!gd", name = "a", descriptor = "(JI)V") @OriginalMember(owner = "client!gd", name = "a", descriptor = "(JI)V")
public static void method1691(@OriginalArg(0) long name) { public static void method1691(@OriginalArg(0) long name) {
Protocol.outboundBuffer.offset = 0; Protocol.outboundBuffer.offset = 0;
Protocol.outboundBuffer.p1(186); Protocol.outboundBuffer.p1(186);
if (GlobalConfig.LOGIN_USE_STRINGS) { if (GlobalConfig.LOGIN_USE_STRINGS) {
Protocol.outboundBuffer.pjstr(Base37.decode37(name)); Protocol.outboundBuffer.pjstr(Base37.decode37(name));
} else { } else {
Protocol.outboundBuffer.p8(name); Protocol.outboundBuffer.p8(name);
} }
step = 1; step = 1;
loops = 0; loops = 0;
errors = 0; errors = 0;
reply = -3; reply = -3;
} }
@OriginalMember(owner = "client!jl", name = "a", descriptor = "(IIIII)V") @OriginalMember(owner = "client!jl", name = "a", descriptor = "(IIIII)V")
public static void method2448(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3) { public static void method2448(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3) {
Protocol.outboundBuffer.offset = 0; Protocol.outboundBuffer.offset = 0;
Protocol.outboundBuffer.p1(147); Protocol.outboundBuffer.p1(147);
@ -153,35 +153,35 @@ public class CreateManager {
reply = -3; reply = -3;
} }
@OriginalMember(owner = "client!da", name = "a", descriptor = "(IIIILclient!na;JI)V") @OriginalMember(owner = "client!da", name = "a", descriptor = "(IIIILclient!na;JI)V")
public static void method1016(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) JagString password, @OriginalArg(5) long name, @OriginalArg(6) int arg5) { public static void method1016(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) JagString password, @OriginalArg(5) long name, @OriginalArg(6) int arg5) {
@Pc(8) Buffer local8 = new Buffer(GlobalConfig.LOGIN_USE_STRINGS ? 129 : 128); @Pc(8) Buffer local8 = new Buffer(GlobalConfig.LOGIN_USE_STRINGS ? 129 : 128);
local8.p1(10); local8.p1(10);
local8.p2((int) (Math.random() * 99999.0D)); local8.p2((int) (Math.random() * 99999.0D));
local8.p2(530); local8.p2(530);
if (GlobalConfig.LOGIN_USE_STRINGS) { if (GlobalConfig.LOGIN_USE_STRINGS) {
local8.pjstr(Base37.decode37(name)); local8.pjstr(Base37.decode37(name));
} else { } else {
local8.p8(name); local8.p8(name);
} }
local8.p4((int) (Math.random() * 9.9999999E7D)); local8.p4((int) (Math.random() * 9.9999999E7D));
local8.pjstr(password); local8.pjstr(password);
local8.p4((int) (Math.random() * 9.9999999E7D)); local8.p4((int) (Math.random() * 9.9999999E7D));
local8.p2(client.affiliate); local8.p2(client.affiliate);
local8.p1(arg0); local8.p1(arg0);
local8.p1(arg2); local8.p1(arg2);
local8.p4((int) (Math.random() * 9.9999999E7D)); local8.p4((int) (Math.random() * 9.9999999E7D));
local8.p2(arg5); local8.p2(arg5);
local8.p2(arg1); local8.p2(arg1);
local8.p4((int) (Math.random() * 9.9999999E7D)); local8.p4((int) (Math.random() * 9.9999999E7D));
local8.rsaenc(GlobalConfig.RSA_EXPONENT, GlobalConfig.RSA_MODULUS); local8.rsaenc(GlobalConfig.RSA_EXPONENT, GlobalConfig.RSA_MODULUS);
Protocol.outboundBuffer.offset = 0; Protocol.outboundBuffer.offset = 0;
Protocol.outboundBuffer.p1(36); Protocol.outboundBuffer.p1(36);
Protocol.outboundBuffer.p1(local8.offset); Protocol.outboundBuffer.p1(local8.offset);
Protocol.outboundBuffer.pdata(local8.data, local8.offset); Protocol.outboundBuffer.pdata(local8.data, local8.offset);
reply = -3; reply = -3;
step = 1; step = 1;
loops = 0; loops = 0;
errors = 0; errors = 0;
} }
} }

View file

@ -3,12 +3,12 @@ package rt4;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
public class Cross { public class Cross {
@OriginalMember(owner = "client!fi", name = "k", descriptor = "I") @OriginalMember(owner = "client!fi", name = "k", descriptor = "I")
public static int type = 0; public static int type = 0;
@OriginalMember(owner = "client!bg", name = "M", descriptor = "I") @OriginalMember(owner = "client!bg", name = "M", descriptor = "I")
public static int milliseconds = 0; public static int milliseconds = 0;
@OriginalMember(owner = "client!c", name = "eb", descriptor = "I") @OriginalMember(owner = "client!c", name = "eb", descriptor = "I")
public static int y = 0; public static int y = 0;
@OriginalMember(owner = "client!jh", name = "j", descriptor = "I") @OriginalMember(owner = "client!jh", name = "j", descriptor = "I")
public static int x = 0; public static int x = 0;
} }

View file

@ -19,13 +19,13 @@ public final class CursorType {
@OriginalMember(owner = "client!ia", name = "a", descriptor = "(B)Lclient!mm;") @OriginalMember(owner = "client!ia", name = "a", descriptor = "(B)Lclient!mm;")
public final SoftwareSprite getSprite() { public final SoftwareSprite getSprite() {
@Pc(7) SoftwareSprite local7 = (SoftwareSprite) CursorTypeList.sprites.get((long) this.spriteId); @Pc(7) SoftwareSprite local7 = (SoftwareSprite) CursorTypeList.sprites.get(this.spriteId);
if (local7 != null) { if (local7 != null) {
return local7; return local7;
} }
local7 = SoftwareSprite.loadSoftwareAlphaSprite(CursorTypeList.spritesArchive, this.spriteId); local7 = SoftwareSprite.loadSoftwareAlphaSprite(CursorTypeList.spritesArchive, this.spriteId);
if (local7 != null) { if (local7 != null) {
CursorTypeList.sprites.put(local7, (long) this.spriteId); CursorTypeList.sprites.put(local7, this.spriteId);
} }
return local7; return local7;
} }

View file

@ -5,51 +5,51 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class CursorTypeList { public class CursorTypeList {
@OriginalMember(owner = "client!ge", name = "i", descriptor = "Lclient!n;") @OriginalMember(owner = "client!ge", name = "i", descriptor = "Lclient!n;")
public static final SoftLruHashTable types = new SoftLruHashTable(64); public static final SoftLruHashTable types = new SoftLruHashTable(64);
@OriginalMember(owner = "client!ah", name = "i", descriptor = "Lclient!n;") @OriginalMember(owner = "client!ah", name = "i", descriptor = "Lclient!n;")
public static final SoftLruHashTable sprites = new SoftLruHashTable(2); public static final SoftLruHashTable sprites = new SoftLruHashTable(2);
@OriginalMember(owner = "client!mc", name = "Z", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!mc", name = "Z", descriptor = "Lclient!ve;")
public static Js5 archive; public static Js5 archive;
@OriginalMember(owner = "client!tk", name = "j", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!tk", name = "j", descriptor = "Lclient!ve;")
public static Js5 spritesArchive; public static Js5 spritesArchive;
@OriginalMember(owner = "client!u", name = "a", descriptor = "(BLclient!ve;Lclient!ve;)V") @OriginalMember(owner = "client!u", name = "a", descriptor = "(BLclient!ve;Lclient!ve;)V")
public static void init(@OriginalArg(1) Js5 arg0, @OriginalArg(2) Js5 arg1) { public static void init(@OriginalArg(1) Js5 arg0, @OriginalArg(2) Js5 arg1) {
archive = arg0; archive = arg0;
spritesArchive = arg1; spritesArchive = arg1;
} }
@OriginalMember(owner = "client!qg", name = "d", descriptor = "(II)Lclient!ia;") @OriginalMember(owner = "client!qg", name = "d", descriptor = "(II)Lclient!ia;")
public static CursorType get(@OriginalArg(0) int arg0) { public static CursorType get(@OriginalArg(0) int arg0) {
@Pc(10) CursorType local10 = (CursorType) types.get((long) arg0); @Pc(10) CursorType local10 = (CursorType) types.get(arg0);
if (local10 != null) { if (local10 != null) {
return local10; return local10;
} }
@Pc(20) byte[] local20 = archive.fetchFile(33, arg0); @Pc(20) byte[] local20 = archive.fetchFile(33, arg0);
local10 = new CursorType(); local10 = new CursorType();
if (local20 != null) { if (local20 != null) {
local10.decode(new Buffer(local20), arg0); local10.decode(new Buffer(local20), arg0);
} }
types.put(local10, (long) arg0); types.put(local10, arg0);
return local10; return local10;
} }
@OriginalMember(owner = "client!an", name = "i", descriptor = "(I)V") @OriginalMember(owner = "client!an", name = "i", descriptor = "(I)V")
public static void method351() { public static void method351() {
types.clear(); types.clear();
sprites.clear(); sprites.clear();
} }
@OriginalMember(owner = "client!c", name = "d", descriptor = "(II)V") @OriginalMember(owner = "client!c", name = "d", descriptor = "(II)V")
public static void clean() { public static void clean() {
types.clean(5); types.clean(5);
sprites.clean(5); sprites.clean(5);
} }
@OriginalMember(owner = "client!ca", name = "a", descriptor = "(Z)V") @OriginalMember(owner = "client!ca", name = "a", descriptor = "(Z)V")
public static void method741() { public static void method741() {
types.removeSoft(); types.removeSoft();
sprites.removeSoft(); sprites.removeSoft();
} }
} }

View file

@ -60,7 +60,7 @@ public final class DateUtil {
private static final JagString OCT = JagString.parse("Oct"); private static final JagString OCT = JagString.parse("Oct");
@OriginalMember(owner = "client!km", name = "Ac", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!km", name = "Ac", descriptor = "[Lclient!na;")
public static final JagString[] MONTHS = new JagString[] {JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC}; public static final JagString[] MONTHS = new JagString[]{JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC};
@OriginalMember(owner = "client!rl", name = "T", descriptor = "Lclient!na;") @OriginalMember(owner = "client!rl", name = "T", descriptor = "Lclient!na;")
private static final JagString SAT = JagString.parse("Sat"); private static final JagString SAT = JagString.parse("Sat");
@OriginalMember(owner = "client!rl", name = "U", descriptor = "Lclient!na;") @OriginalMember(owner = "client!rl", name = "U", descriptor = "Lclient!na;")
@ -76,7 +76,7 @@ public final class DateUtil {
@OriginalMember(owner = "client!rl", name = "bb", descriptor = "Lclient!na;") @OriginalMember(owner = "client!rl", name = "bb", descriptor = "Lclient!na;")
private static final JagString THU = JagString.parse("Thu"); private static final JagString THU = JagString.parse("Thu");
@OriginalMember(owner = "client!rl", name = "Y", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!rl", name = "Y", descriptor = "[Lclient!na;")
public static final JagString[] DAYS = new JagString[] {SUN, MON, TUE, WED, THU, FRI, SAT}; public static final JagString[] DAYS = new JagString[]{SUN, MON, TUE, WED, THU, FRI, SAT};
@OriginalMember(owner = "client!cj", name = "a", descriptor = "(JB)Lclient!na;") @OriginalMember(owner = "client!cj", name = "a", descriptor = "(JB)Lclient!na;")
public static JagString getDateString(@OriginalArg(0) long date) { public static JagString getDateString(@OriginalArg(0) long date) {
@ -88,6 +88,6 @@ public final class DateUtil {
@Pc(36) int local36 = calendar.get(Calendar.HOUR_OF_DAY); @Pc(36) int local36 = calendar.get(Calendar.HOUR_OF_DAY);
@Pc(40) int local40 = calendar.get(Calendar.MINUTE); @Pc(40) int local40 = calendar.get(Calendar.MINUTE);
@Pc(44) int local44 = calendar.get(Calendar.SECOND); @Pc(44) int local44 = calendar.get(Calendar.SECOND);
return JagString.concatenate(new JagString[] { DAYS[local13 - 1], aClass100_461, JagString.parseInt(local17 / 10), JagString.parseInt(local17 % 10), aClass100_1089, MONTHS[local21], aClass100_1089, JagString.parseInt(local32), SPACE, JagString.parseInt(local36 / 10), JagString.parseInt(local36 % 10), COLON, JagString.parseInt(local40 / 10), JagString.parseInt(local40 % 10), COLON, JagString.parseInt(local44 / 10), JagString.parseInt(local44 % 10), TIMEZONE}); return JagString.concatenate(new JagString[]{DAYS[local13 - 1], aClass100_461, JagString.parseInt(local17 / 10), JagString.parseInt(local17 % 10), aClass100_1089, MONTHS[local21], aClass100_1089, JagString.parseInt(local32), SPACE, JagString.parseInt(local36 / 10), JagString.parseInt(local36 % 10), COLON, JagString.parseInt(local40 / 10), JagString.parseInt(local40 % 10), COLON, JagString.parseInt(local44 / 10), JagString.parseInt(local44 % 10), TIMEZONE});
} }
} }

View file

@ -9,9 +9,9 @@ public final class DeadClass {
@OriginalMember(owner = "client!ul", name = "I", descriptor = "Lclient!gn;") @OriginalMember(owner = "client!ul", name = "I", descriptor = "Lclient!gn;")
public static final LruHashTable cache = new LruHashTable(4); public static final LruHashTable cache = new LruHashTable(4);
@OriginalMember(owner = "client!ck", name = "b", descriptor = "Lclient!na;") @OriginalMember(owner = "client!ck", name = "b", descriptor = "Lclient!na;")
private static final JagString aClass100_195 = JagString.parse("Discard"); private static final JagString aClass100_195 = JagString.parse("Discard");
@OriginalMember(owner = "client!rc", name = "R", descriptor = "Z") @OriginalMember(owner = "client!rc", name = "R", descriptor = "Z")
private static boolean aBoolean74; private static boolean aBoolean74;
} }

View file

@ -31,19 +31,19 @@ public final class DelayedStateChange extends SecondaryNode {
this.key = (long) arg0 << 32 | (long) arg1; this.key = (long) arg0 << 32 | (long) arg1;
} }
@OriginalMember(owner = "client!bj", name = "d", descriptor = "(B)V") @OriginalMember(owner = "client!bj", name = "d", descriptor = "(B)V")
public static void clear() { public static void clear() {
changes.clear(); changes.clear();
clientQueue.clear(); clientQueue.clear();
serverQueue.clear(); serverQueue.clear();
} }
@OriginalMember(owner = "client!pf", name = "a", descriptor = "(III)V") @OriginalMember(owner = "client!pf", name = "a", descriptor = "(III)V")
public static void setComponentModelRotationSpeedServer(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) { public static void setComponentModelRotationSpeedServer(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
@Pc(14) DelayedStateChange local14 = create(13, arg1); @Pc(14) DelayedStateChange local14 = create(13, arg1);
local14.pushServer(); local14.pushServer();
local14.intArg1 = arg0; local14.intArg1 = arg0;
} }
@OriginalMember(owner = "client!pi", name = "a", descriptor = "(Lclient!na;BI)V") @OriginalMember(owner = "client!pi", name = "a", descriptor = "(Lclient!na;BI)V")
public static void method3498(@OriginalArg(0) JagString arg0, @OriginalArg(2) int arg1) { public static void method3498(@OriginalArg(0) JagString arg0, @OriginalArg(2) int arg1) {
@ -106,18 +106,18 @@ public final class DelayedStateChange extends SecondaryNode {
local18.intArg1 = arg0; local18.intArg1 = arg0;
} }
@OriginalMember(owner = "client!gf", name = "a", descriptor = "(Lclient!na;II)V") @OriginalMember(owner = "client!gf", name = "a", descriptor = "(Lclient!na;II)V")
public static void method3617(@OriginalArg(0) JagString arg0, @OriginalArg(2) int arg1) { public static void method3617(@OriginalArg(0) JagString arg0, @OriginalArg(2) int arg1) {
@Pc(6) DelayedStateChange local6 = create(3, arg1); @Pc(6) DelayedStateChange local6 = create(3, arg1);
local6.pushServer(); local6.pushServer();
local6.stringArg = arg0; local6.stringArg = arg0;
} }
@OriginalMember(owner = "client!ug", name = "a", descriptor = "(IB)V") @OriginalMember(owner = "client!ug", name = "a", descriptor = "(IB)V")
public static void setComponentObjClient(@OriginalArg(0) int arg0) { public static void setComponentObjClient(@OriginalArg(0) int arg0) {
@Pc(14) DelayedStateChange local14 = create(9, arg0); @Pc(14) DelayedStateChange local14 = create(9, arg0);
local14.pushClient(); local14.pushClient();
} }
@OriginalMember(owner = "client!mc", name = "a", descriptor = "(BI)V") @OriginalMember(owner = "client!mc", name = "a", descriptor = "(BI)V")
public static void setComponentModelAngleClient(@OriginalArg(1) int arg0) { public static void setComponentModelAngleClient(@OriginalArg(1) int arg0) {

View file

@ -1,11 +1,12 @@
package rt4; package rt4;
import java.nio.ByteBuffer;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!ua") @OriginalClass("client!ua")
public final class DirectByteArray extends ByteArray { public final class DirectByteArray extends ByteArray {

View file

@ -12,10 +12,10 @@ public final class DisplayMode {
@OriginalMember(owner = "client!ib", name = "i", descriptor = "[Lclient!od;") @OriginalMember(owner = "client!ib", name = "i", descriptor = "[Lclient!od;")
public static DisplayMode[] aClass114Array1; public static DisplayMode[] aClass114Array1;
@OriginalMember(owner = "client!rc", name = "M", descriptor = "Z") @OriginalMember(owner = "client!rc", name = "M", descriptor = "Z")
public static boolean aBoolean73 = false; public static boolean aBoolean73 = false;
@OriginalMember(owner = "client!jk", name = "y", descriptor = "Z") @OriginalMember(owner = "client!jk", name = "y", descriptor = "Z")
public static boolean aBoolean156 = false; public static boolean aBoolean156 = false;
@OriginalMember(owner = "client!hi", name = "f", descriptor = "J") @OriginalMember(owner = "client!hi", name = "f", descriptor = "J")
public static long aLong89 = 0L; public static long aLong89 = 0L;
@ -54,10 +54,7 @@ public final class DisplayMode {
if (arg1 == 3 || mode == 3) { if (arg1 == 3 || mode == 3) {
arg0 = true; arg0 = true;
} }
@Pc(44) boolean useHd = false; @Pc(44) boolean useHd = mode > 0 != arg1 > 0;
if (mode > 0 != arg1 > 0) {
useHd = true;
}
if (arg0 && arg1 > 0) { if (arg0 && arg1 > 0) {
useHd = true; useHd = true;
} }
@ -227,11 +224,7 @@ public final class DisplayMode {
if (arg2) { if (arg2) {
client.method2721(); client.method2721();
} }
if (arg1 >= 2) { aBoolean156 = arg1 >= 2;
aBoolean156 = true;
} else {
aBoolean156 = false;
}
if (InterfaceList.topLevelInterface != -1) { if (InterfaceList.topLevelInterface != -1) {
InterfaceList.method3712(true); InterfaceList.method3712(true);
} }
@ -250,7 +243,8 @@ public final class DisplayMode {
@Pc(16) DisplayMode[] local16 = method3558(GameShell.signLink); @Pc(16) DisplayMode[] local16 = method3558(GameShell.signLink);
@Pc(20) DisplayMode[] local20 = new DisplayMode[local16.length]; @Pc(20) DisplayMode[] local20 = new DisplayMode[local16.length];
@Pc(22) int local22 = 0; @Pc(22) int local22 = 0;
label52: for (@Pc(24) int local24 = 0; local24 < local16.length; local24++) { label52:
for (@Pc(24) int local24 = 0; local24 < local16.length; local24++) {
@Pc(32) DisplayMode local32 = local16[local24]; @Pc(32) DisplayMode local32 = local16[local24];
if ((local32.bitDepth <= 0 || local32.bitDepth >= 24) && local32.width >= 800 && local32.height >= 600) { if ((local32.bitDepth <= 0 || local32.bitDepth >= 24) && local32.width >= 800 && local32.height >= 600) {
for (@Pc(52) int local52 = 0; local52 < local22; local52++) { for (@Pc(52) int local52 = 0; local52 < local22; local52++) {

View file

@ -47,7 +47,7 @@ public final class EnumType extends SecondaryNode {
} else { } else {
local70 = new IntNode(arg1.g4()); local70 = new IntNode(arg1.g4());
} }
this.table.put(local70, (long) local58); this.table.put(local70, local58);
} }
} }
} }
@ -57,7 +57,7 @@ public final class EnumType extends SecondaryNode {
if (this.table == null) { if (this.table == null) {
return this.defaultString; return this.defaultString;
} else { } else {
@Pc(26) StringNode local26 = (StringNode) this.table.get((long) arg0); @Pc(26) StringNode local26 = (StringNode) this.table.get(arg0);
return local26 == null ? this.defaultString : local26.value; return local26 == null ? this.defaultString : local26.value;
} }
} }
@ -92,7 +92,7 @@ public final class EnumType extends SecondaryNode {
if (this.table == null) { if (this.table == null) {
return this.defaultInt; return this.defaultInt;
} else { } else {
@Pc(18) IntNode local18 = (IntNode) this.table.get((long) arg0); @Pc(18) IntNode local18 = (IntNode) this.table.get(arg0);
return local18 == null ? this.defaultInt : local18.value; return local18 == null ? this.defaultInt : local18.value;
} }
} }
@ -105,7 +105,7 @@ public final class EnumType extends SecondaryNode {
if (this.inverseTable == null) { if (this.inverseTable == null) {
this.inverseInts(); this.inverseInts();
} }
@Pc(34) IntNode node = (IntNode) this.inverseTable.get((long) arg0); @Pc(34) IntNode node = (IntNode) this.inverseTable.get(arg0);
return node != null; return node != null;
} }
@ -114,7 +114,7 @@ public final class EnumType extends SecondaryNode {
this.inverseTable = new HashTable(this.table.getBucketCount()); this.inverseTable = new HashTable(this.table.getBucketCount());
for (@Pc(24) IntNode node = (IntNode) this.table.head(); node != null; node = (IntNode) this.table.next()) { for (@Pc(24) IntNode node = (IntNode) this.table.head(); node != null; node = (IntNode) this.table.next()) {
@Pc(34) IntNode inverseNode = new IntNode((int) node.key); @Pc(34) IntNode inverseNode = new IntNode((int) node.key);
this.inverseTable.put(inverseNode, (long) node.value); this.inverseTable.put(inverseNode, node.value);
} }
} }

View file

@ -5,38 +5,38 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class EnumTypeList { public class EnumTypeList {
@OriginalMember(owner = "client!lj", name = "p", descriptor = "Lclient!gn;") @OriginalMember(owner = "client!lj", name = "p", descriptor = "Lclient!gn;")
public static final LruHashTable types = new LruHashTable(128); public static final LruHashTable types = new LruHashTable(128);
@OriginalMember(owner = "client!gk", name = "e", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!gk", name = "e", descriptor = "Lclient!ve;")
public static Js5 archive; public static Js5 archive;
@OriginalMember(owner = "client!gl", name = "a", descriptor = "(Lclient!ve;I)V") @OriginalMember(owner = "client!gl", name = "a", descriptor = "(Lclient!ve;I)V")
public static void init(@OriginalArg(0) Js5 arg0) { public static void init(@OriginalArg(0) Js5 arg0) {
archive = arg0; archive = arg0;
} }
@OriginalMember(owner = "client!ui", name = "a", descriptor = "(IZ)Lclient!ml;") @OriginalMember(owner = "client!ui", name = "a", descriptor = "(IZ)Lclient!ml;")
public static EnumType get(@OriginalArg(0) int arg0) { public static EnumType get(@OriginalArg(0) int arg0) {
@Pc(10) EnumType local10 = (EnumType) types.get((long) arg0); @Pc(10) EnumType local10 = (EnumType) types.get(arg0);
if (local10 != null) { if (local10 != null) {
return local10; return local10;
} }
@Pc(24) byte[] local24 = archive.fetchFile(getGroupId(arg0), getFileId(arg0)); @Pc(24) byte[] local24 = archive.fetchFile(getGroupId(arg0), getFileId(arg0));
local10 = new EnumType(); local10 = new EnumType();
if (local24 != null) { if (local24 != null) {
local10.decode(new Buffer(local24)); local10.decode(new Buffer(local24));
} }
types.put(local10, (long) arg0); types.put(local10, arg0);
return local10; return local10;
} }
@OriginalMember(owner = "client!i", name = "e", descriptor = "(BI)I") @OriginalMember(owner = "client!i", name = "e", descriptor = "(BI)I")
public static int getFileId(@OriginalArg(1) int arg0) { public static int getFileId(@OriginalArg(1) int arg0) {
return arg0 & 0xFF; return arg0 & 0xFF;
} }
@OriginalMember(owner = "client!hi", name = "a", descriptor = "(BI)I") @OriginalMember(owner = "client!hi", name = "a", descriptor = "(BI)I")
public static int getGroupId(@OriginalArg(1) int arg0) { public static int getGroupId(@OriginalArg(1) int arg0) {
return arg0 >>> 8; return arg0 >>> 8;
} }
} }

View file

@ -4,23 +4,23 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class Equipment { public class Equipment {
@OriginalMember(owner = "client!ta", name = "p", descriptor = "[I") @OriginalMember(owner = "client!ta", name = "p", descriptor = "[I")
public static int[] anIntArray455; public static int[] anIntArray455;
@OriginalMember(owner = "client!eh", name = "a", descriptor = "(I)V") @OriginalMember(owner = "client!eh", name = "a", descriptor = "(I)V")
public static void init() { public static void init() {
@Pc(8) int[] local8 = new int[ObjTypeList.anInt3245]; @Pc(8) int[] local8 = new int[ObjTypeList.anInt3245];
@Pc(10) int local10 = 0; @Pc(10) int local10 = 0;
@Pc(12) int local12; @Pc(12) int local12;
for (local12 = 0; local12 < ObjTypeList.anInt3245; local12++) { for (local12 = 0; local12 < ObjTypeList.anInt3245; local12++) {
@Pc(19) ObjType local19 = ObjTypeList.get(local12); @Pc(19) ObjType local19 = ObjTypeList.get(local12);
if (local19.manwear >= 0 || local19.womanwear >= 0) { if (local19.manwear >= 0 || local19.womanwear >= 0) {
local8[local10++] = local12; local8[local10++] = local12;
} }
} }
anIntArray455 = new int[local10]; anIntArray455 = new int[local10];
for (local12 = 0; local12 < local10; local12++) { for (local12 = 0; local12 < local10; local12++) {
anIntArray455[local12] = local8[local12]; anIntArray455[local12] = local8[local12];
} }
} }
} }

View file

@ -5,114 +5,114 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class Find { public class Find {
@OriginalMember(owner = "client!nf", name = "c", descriptor = "[S") @OriginalMember(owner = "client!nf", name = "c", descriptor = "[S")
public static short[] results; public static short[] results;
@OriginalMember(owner = "client!fe", name = "x", descriptor = "I") @OriginalMember(owner = "client!fe", name = "x", descriptor = "I")
public static int size; public static int size;
@OriginalMember(owner = "client!ii", name = "l", descriptor = "I") @OriginalMember(owner = "client!ii", name = "l", descriptor = "I")
public static int index; public static int index;
@OriginalMember(owner = "client!bn", name = "a", descriptor = "(BZLclient!na;)V") @OriginalMember(owner = "client!bn", name = "a", descriptor = "(BZLclient!na;)V")
public static void findQuickChatPhrases(@OriginalArg(1) boolean arg0, @OriginalArg(2) JagString arg1) { public static void findQuickChatPhrases(@OriginalArg(1) boolean arg0, @OriginalArg(2) JagString arg1) {
@Pc(9) JagString local9 = arg1.toLowerCase(); @Pc(9) JagString local9 = arg1.toLowerCase();
@Pc(11) int local11 = 0; @Pc(11) int local11 = 0;
@Pc(22) short[] local22 = new short[16]; @Pc(22) short[] local22 = new short[16];
@Pc(28) int local28 = arg0 ? 32768 : 0; @Pc(28) int local28 = arg0 ? 32768 : 0;
@Pc(36) int local36 = (arg0 ? QuickChatPhraseTypeList.anInt1047 : QuickChatPhraseTypeList.anInt3490) + local28; @Pc(36) int local36 = (arg0 ? QuickChatPhraseTypeList.anInt1047 : QuickChatPhraseTypeList.anInt3490) + local28;
for (@Pc(38) int local38 = local28; local38 < local36; local38++) { for (@Pc(38) int local38 = local28; local38 < local36; local38++) {
@Pc(45) QuickChatPhraseType local45 = QuickChatPhraseTypeList.get(local38); @Pc(45) QuickChatPhraseType local45 = QuickChatPhraseTypeList.get(local38);
if (local45.aBoolean60 && local45.getText().toLowerCase().indexOf(local9) != -1) { if (local45.aBoolean60 && local45.getText().toLowerCase().indexOf(local9) != -1) {
if (local11 >= 50) { if (local11 >= 50) {
index = -1; index = -1;
results = null; results = null;
return; return;
} }
if (local11 >= local22.length) { if (local11 >= local22.length) {
@Pc(79) short[] local79 = new short[local22.length * 2]; @Pc(79) short[] local79 = new short[local22.length * 2];
for (@Pc(81) int local81 = 0; local81 < local11; local81++) { for (@Pc(81) int local81 = 0; local81 < local11; local81++) {
local79[local81] = local22[local81]; local79[local81] = local22[local81];
} }
local22 = local79; local22 = local79;
} }
local22[local11++] = (short) local38; local22[local11++] = (short) local38;
} }
} }
results = local22; results = local22;
index = local11; index = local11;
size = 0; size = 0;
@Pc(113) JagString[] local113 = new JagString[index]; @Pc(113) JagString[] local113 = new JagString[index];
for (@Pc(115) int local115 = 0; local115 < index; local115++) { for (@Pc(115) int local115 = 0; local115 < index; local115++) {
local113[local115] = QuickChatPhraseTypeList.get(local22[local115]).getText(); local113[local115] = QuickChatPhraseTypeList.get(local22[local115]).getText();
} }
method3656(local113, results); method3656(local113, results);
} }
@OriginalMember(owner = "client!me", name = "a", descriptor = "(ZLclient!na;I)V") @OriginalMember(owner = "client!me", name = "a", descriptor = "(ZLclient!na;I)V")
public static void search(@OriginalArg(0) boolean arg0, @OriginalArg(1) JagString arg1) { public static void search(@OriginalArg(0) boolean arg0, @OriginalArg(1) JagString arg1) {
@Pc(8) short[] local8 = new short[16]; @Pc(8) short[] local8 = new short[16];
@Pc(12) JagString local12 = arg1.toLowerCase(); @Pc(12) JagString local12 = arg1.toLowerCase();
@Pc(14) int local14 = 0; @Pc(14) int local14 = 0;
for (@Pc(16) int local16 = 0; local16 < ObjTypeList.anInt3245; local16++) { for (@Pc(16) int local16 = 0; local16 < ObjTypeList.anInt3245; local16++) {
@Pc(27) ObjType local27 = ObjTypeList.get(local16); @Pc(27) ObjType local27 = ObjTypeList.get(local16);
if ((!arg0 || local27.stockMarket) && local27.certtemplate == -1 && local27.lentTemplate == -1 && local27.dummyItem == 0 && local27.name.toLowerCase().indexOf(local12) != -1) { if ((!arg0 || local27.stockMarket) && local27.certtemplate == -1 && local27.lentTemplate == -1 && local27.dummyItem == 0 && local27.name.toLowerCase().indexOf(local12) != -1) {
if (local14 >= 250) { if (local14 >= 250) {
results = null; results = null;
index = -1; index = -1;
return; return;
} }
if (local14 >= local8.length) { if (local14 >= local8.length) {
@Pc(83) short[] local83 = new short[local8.length * 2]; @Pc(83) short[] local83 = new short[local8.length * 2];
for (@Pc(85) int local85 = 0; local85 < local14; local85++) { for (@Pc(85) int local85 = 0; local85 < local14; local85++) {
local83[local85] = local8[local85]; local83[local85] = local8[local85];
} }
local8 = local83; local8 = local83;
} }
local8[local14++] = (short) local16; local8[local14++] = (short) local16;
} }
} }
results = local8; results = local8;
size = 0; size = 0;
index = local14; index = local14;
@Pc(117) JagString[] local117 = new JagString[index]; @Pc(117) JagString[] local117 = new JagString[index];
for (@Pc(119) int local119 = 0; local119 < index; local119++) { for (@Pc(119) int local119 = 0; local119 < index; local119++) {
local117[local119] = ObjTypeList.get(local8[local119]).name; local117[local119] = ObjTypeList.get(local8[local119]).name;
} }
method3656(local117, results); method3656(local117, results);
} }
@OriginalMember(owner = "client!qg", name = "a", descriptor = "([Lclient!na;[SI)V") @OriginalMember(owner = "client!qg", name = "a", descriptor = "([Lclient!na;[SI)V")
public static void method3656(@OriginalArg(0) JagString[] arg0, @OriginalArg(1) short[] arg1) { public static void method3656(@OriginalArg(0) JagString[] arg0, @OriginalArg(1) short[] arg1) {
method1307(arg1, arg0.length - 1, arg0, 0); method1307(arg1, arg0.length - 1, arg0, 0);
} }
@OriginalMember(owner = "client!ed", name = "a", descriptor = "([SI[Lclient!na;II)V") @OriginalMember(owner = "client!ed", name = "a", descriptor = "([SI[Lclient!na;II)V")
public static void method1307(@OriginalArg(0) short[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) JagString[] arg2, @OriginalArg(4) int arg3) { public static void method1307(@OriginalArg(0) short[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) JagString[] arg2, @OriginalArg(4) int arg3) {
if (arg1 <= arg3) { if (arg1 <= arg3) {
return; return;
} }
@Pc(14) int local14 = arg3; @Pc(14) int local14 = arg3;
@Pc(21) int local21 = (arg3 + arg1) / 2; @Pc(21) int local21 = (arg3 + arg1) / 2;
@Pc(25) JagString local25 = arg2[local21]; @Pc(25) JagString local25 = arg2[local21];
arg2[local21] = arg2[arg1]; arg2[local21] = arg2[arg1];
arg2[arg1] = local25; arg2[arg1] = local25;
@Pc(39) short local39 = arg0[local21]; @Pc(39) short local39 = arg0[local21];
arg0[local21] = arg0[arg1]; arg0[local21] = arg0[arg1];
arg0[arg1] = local39; arg0[arg1] = local39;
for (@Pc(51) int local51 = arg3; local51 < arg1; local51++) { for (@Pc(51) int local51 = arg3; local51 < arg1; local51++) {
if (local25 == null || arg2[local51] != null && arg2[local51].method3139(local25) < (local51 & 0x1)) { if (local25 == null || arg2[local51] != null && arg2[local51].method3139(local25) < (local51 & 0x1)) {
@Pc(80) JagString local80 = arg2[local51]; @Pc(80) JagString local80 = arg2[local51];
arg2[local51] = arg2[local14]; arg2[local51] = arg2[local14];
arg2[local14] = local80; arg2[local14] = local80;
@Pc(94) short local94 = arg0[local51]; @Pc(94) short local94 = arg0[local51];
arg0[local51] = arg0[local14]; arg0[local51] = arg0[local14];
arg0[local14++] = local94; arg0[local14++] = local94;
} }
} }
arg2[arg1] = arg2[local14]; arg2[arg1] = arg2[local14];
arg2[local14] = local25; arg2[local14] = local25;
arg0[arg1] = arg0[local14]; arg0[arg1] = arg0[local14];
arg0[local14] = local39; arg0[local14] = local39;
method1307(arg0, local14 - 1, arg2, arg3); method1307(arg0, local14 - 1, arg2, arg3);
method1307(arg0, arg1, arg2, local14 + 1); method1307(arg0, arg1, arg2, local14 + 1);
} }
} }

View file

@ -4,27 +4,27 @@ import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
public class Flames { public class Flames {
@OriginalMember(owner = "client!se", name = "t", descriptor = "[I") @OriginalMember(owner = "client!se", name = "t", descriptor = "[I")
public static final int[] anIntArray445 = new int[] { 12543016, 15504954, 15914854, 16773818 }; public static final int[] anIntArray445 = new int[]{12543016, 15504954, 15914854, 16773818};
@OriginalMember(owner = "client!bb", name = "m", descriptor = "Lclient!na;") @OriginalMember(owner = "client!bb", name = "m", descriptor = "Lclient!na;")
public static final JagString RUNES = JagString.parse("runes"); public static final JagString RUNES = JagString.parse("runes");
@OriginalMember(owner = "client!km", name = "Yc", descriptor = "I") @OriginalMember(owner = "client!km", name = "Yc", descriptor = "I")
public static int anInt3443; public static int anInt3443;
@OriginalMember(owner = "client!uf", name = "e", descriptor = "I") @OriginalMember(owner = "client!uf", name = "e", descriptor = "I")
public static int anInt5434 = 0; public static int anInt5434 = 0;
@OriginalMember(owner = "client!gg", name = "a", descriptor = "(ILclient!ve;)V") @OriginalMember(owner = "client!gg", name = "a", descriptor = "(ILclient!ve;)V")
public static void init(@OriginalArg(1) Js5 arg0) { public static void init(@OriginalArg(1) Js5 arg0) {
anInt3443 = arg0.getGroupId(RUNES); anInt3443 = arg0.getGroupId(RUNES);
} }
@OriginalMember(owner = "client!sk", name = "a", descriptor = "(Lclient!ve;I)Z") @OriginalMember(owner = "client!sk", name = "a", descriptor = "(Lclient!ve;I)Z")
public static boolean isReady(@OriginalArg(0) Js5 arg0) { public static boolean isReady(@OriginalArg(0) Js5 arg0) {
return arg0.isFileReady(anInt3443); return arg0.isFileReady(anInt3443);
} }
@OriginalMember(owner = "client!wa", name = "a", descriptor = "(Z)V") @OriginalMember(owner = "client!wa", name = "a", descriptor = "(Z)V")
public static void update() { public static void update() {
anInt5434++; anInt5434++;
} }
} }

View file

@ -8,9 +8,9 @@ import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!wl") @OriginalClass("client!wl")
public final class FloType { public final class FloType {
@OriginalMember(owner = "client!ca", name = "db", descriptor = "I") @OriginalMember(owner = "client!ca", name = "db", descriptor = "I")
public static int anInt865 = 0; public static int anInt865 = 0;
@OriginalMember(owner = "client!wl", name = "j", descriptor = "Z") @OriginalMember(owner = "client!wl", name = "j", descriptor = "Z")
public boolean aBoolean310 = false; public boolean aBoolean310 = false;
@OriginalMember(owner = "client!wl", name = "l", descriptor = "Z") @OriginalMember(owner = "client!wl", name = "l", descriptor = "Z")
@ -40,12 +40,12 @@ public final class FloType {
@OriginalMember(owner = "client!wl", name = "m", descriptor = "I") @OriginalMember(owner = "client!wl", name = "m", descriptor = "I")
public int anInt5889 = 1190717; public int anInt5889 = 1190717;
@OriginalMember(owner = "client!be", name = "a", descriptor = "(II)I") @OriginalMember(owner = "client!be", name = "a", descriptor = "(II)I")
public static int method492(@OriginalArg(1) int arg0) { public static int method492(@OriginalArg(1) int arg0) {
return arg0 == 16711935 ? -1 : ColorUtils.rgbToHsl(arg0); return arg0 == 16711935 ? -1 : ColorUtils.rgbToHsl(arg0);
} }
@OriginalMember(owner = "client!wl", name = "a", descriptor = "(ILclient!wa;I)V") @OriginalMember(owner = "client!wl", name = "a", descriptor = "(ILclient!wa;I)V")
public final void decode(@OriginalArg(1) Buffer arg0, @OriginalArg(2) int arg1) { public final void decode(@OriginalArg(1) Buffer arg0, @OriginalArg(2) int arg1) {
while (true) { while (true) {
@Pc(5) int local5 = arg0.g1(); @Pc(5) int local5 = arg0.g1();

View file

@ -5,46 +5,46 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class FloTypeList { public class FloTypeList {
@OriginalMember(owner = "client!t", name = "p", descriptor = "Lclient!n;") @OriginalMember(owner = "client!t", name = "p", descriptor = "Lclient!n;")
public static final SoftLruHashTable types = new SoftLruHashTable(64); public static final SoftLruHashTable types = new SoftLruHashTable(64);
@OriginalMember(owner = "client!hj", name = "a", descriptor = "I") @OriginalMember(owner = "client!hj", name = "a", descriptor = "I")
public static int capacity; public static int capacity;
@OriginalMember(owner = "client!cl", name = "J", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!cl", name = "J", descriptor = "Lclient!ve;")
public static Js5 archive; public static Js5 archive;
@OriginalMember(owner = "client!qc", name = "a", descriptor = "(ZLclient!ve;)V") @OriginalMember(owner = "client!qc", name = "a", descriptor = "(ZLclient!ve;)V")
public static void init(@OriginalArg(1) Js5 arg0) { public static void init(@OriginalArg(1) Js5 arg0) {
archive = arg0; archive = arg0;
capacity = archive.getGroupCapacity(4); capacity = archive.getGroupCapacity(4);
} }
@OriginalMember(owner = "client!um", name = "a", descriptor = "(BI)Lclient!wl;") @OriginalMember(owner = "client!um", name = "a", descriptor = "(BI)Lclient!wl;")
public static FloType method4395(@OriginalArg(1) int arg0) { public static FloType method4395(@OriginalArg(1) int arg0) {
@Pc(6) FloType local6 = (FloType) types.get((long) arg0); @Pc(6) FloType local6 = (FloType) types.get(arg0);
if (local6 != null) { if (local6 != null) {
return local6; return local6;
} }
@Pc(30) byte[] local30 = archive.fetchFile(4, arg0); @Pc(30) byte[] local30 = archive.fetchFile(4, arg0);
local6 = new FloType(); local6 = new FloType();
if (local30 != null) { if (local30 != null) {
local6.decode(new Buffer(local30), arg0); local6.decode(new Buffer(local30), arg0);
} }
types.put(local6, (long) arg0); types.put(local6, arg0);
return local6; return local6;
} }
@OriginalMember(owner = "client!uh", name = "e", descriptor = "(I)V") @OriginalMember(owner = "client!uh", name = "e", descriptor = "(I)V")
public static void method4301() { public static void method4301() {
types.removeSoft(); types.removeSoft();
} }
@OriginalMember(owner = "client!wh", name = "a", descriptor = "(I)V") @OriginalMember(owner = "client!wh", name = "a", descriptor = "(I)V")
public static void method4612() { public static void method4612() {
types.clear(); types.clear();
} }
@OriginalMember(owner = "client!aj", name = "c", descriptor = "(II)V") @OriginalMember(owner = "client!aj", name = "c", descriptor = "(II)V")
public static void clean() { public static void clean() {
types.clean(5); types.clean(5);
} }
} }

View file

@ -5,43 +5,43 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class FluTypeList { public class FluTypeList {
@OriginalMember(owner = "client!gj", name = "p", descriptor = "Lclient!n;") @OriginalMember(owner = "client!gj", name = "p", descriptor = "Lclient!n;")
public static final SoftLruHashTable types = new SoftLruHashTable(64); public static final SoftLruHashTable types = new SoftLruHashTable(64);
@OriginalMember(owner = "client!oj", name = "x", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!oj", name = "x", descriptor = "Lclient!ve;")
public static Js5 archive; public static Js5 archive;
@OriginalMember(owner = "client!qc", name = "a", descriptor = "(ZI)Lclient!ni;") @OriginalMember(owner = "client!qc", name = "a", descriptor = "(ZI)Lclient!ni;")
public static FluType get(@OriginalArg(1) int arg0) { public static FluType get(@OriginalArg(1) int arg0) {
@Pc(10) FluType local10 = (FluType) types.get((long) arg0); @Pc(10) FluType local10 = (FluType) types.get(arg0);
if (local10 != null) { if (local10 != null) {
return local10; return local10;
} }
@Pc(27) byte[] local27 = archive.fetchFile(1, arg0); @Pc(27) byte[] local27 = archive.fetchFile(1, arg0);
local10 = new FluType(); local10 = new FluType();
if (local27 != null) { if (local27 != null) {
local10.decode(arg0, new Buffer(local27)); local10.decode(arg0, new Buffer(local27));
} }
types.put(local10, (long) arg0); types.put(local10, arg0);
return local10; return local10;
} }
@OriginalMember(owner = "client!hc", name = "a", descriptor = "(Lclient!ve;I)V") @OriginalMember(owner = "client!hc", name = "a", descriptor = "(Lclient!ve;I)V")
public static void init(@OriginalArg(0) Js5 arg0) { public static void init(@OriginalArg(0) Js5 arg0) {
archive = arg0; archive = arg0;
} }
@OriginalMember(owner = "client!sd", name = "f", descriptor = "(B)V") @OriginalMember(owner = "client!sd", name = "f", descriptor = "(B)V")
public static void method3885() { public static void method3885() {
types.removeSoft(); types.removeSoft();
} }
@OriginalMember(owner = "client!ed", name = "c", descriptor = "(I)V") @OriginalMember(owner = "client!ed", name = "c", descriptor = "(I)V")
public static void method1308() { public static void method1308() {
types.clear(); types.clear();
} }
@OriginalMember(owner = "client!fk", name = "b", descriptor = "(IB)V") @OriginalMember(owner = "client!fk", name = "b", descriptor = "(IB)V")
public static void clean() { public static void clean() {
types.clean(5); types.clean(5);
} }
} }

View file

@ -1,6 +1,6 @@
package rt4; package rt4;
import com.jogamp.opengl.*; import com.jogamp.opengl.GL2;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
@ -71,11 +71,11 @@ public final class FogManager {
@Pc(34) float local34 = (float) (arg0 >> 16 & 0xFF) / 255.0F; @Pc(34) float local34 = (float) (arg0 >> 16 & 0xFF) / 255.0F;
@Pc(43) float local43 = (float) (arg0 >> 8 & 0xFF) / 255.0F; @Pc(43) float local43 = (float) (arg0 >> 8 & 0xFF) / 255.0F;
@Pc(50) float local50 = (float) (arg0 & 0xFF) / 255.0F; @Pc(50) float local50 = (float) (arg0 & 0xFF) / 255.0F;
@Pc(75) float[] local75 = new float[] { arg1 * local34, arg1 * local43, arg1 * local50, 1.0F }; @Pc(75) float[] local75 = new float[]{arg1 * local34, arg1 * local43, arg1 * local50, 1.0F};
local25.glLightModelfv(GL2.GL_LIGHT_MODEL_AMBIENT, local75, 0); local25.glLightModelfv(GL2.GL_LIGHT_MODEL_AMBIENT, local75, 0);
@Pc(105) float[] local105 = new float[] { arg2 * local34, arg2 * local43, arg2 * local50, 1.0F }; @Pc(105) float[] local105 = new float[]{arg2 * local34, arg2 * local43, arg2 * local50, 1.0F};
local25.glLightfv(GL2.GL_LIGHT0, GL2.GL_DIFFUSE, local105, 0); local25.glLightfv(GL2.GL_LIGHT0, GL2.GL_DIFFUSE, local105, 0);
@Pc(139) float[] local139 = new float[] { -arg3 * local34, -arg3 * local43, -arg3 * local50, 1.0F }; @Pc(139) float[] local139 = new float[]{-arg3 * local34, -arg3 * local43, -arg3 * local50, 1.0F};
local25.glLightfv(GL2.GL_LIGHT1, GL2.GL_DIFFUSE, local139, 0); local25.glLightfv(GL2.GL_LIGHT1, GL2.GL_DIFFUSE, local139, 0);
} }
@ -94,7 +94,7 @@ public final class FogManager {
gl.glFogf(GL2.GL_FOG_DENSITY, 0.95F); gl.glFogf(GL2.GL_FOG_DENSITY, 0.95F);
gl.glHint(GL2.GL_FOG_HINT, GL2.GL_FASTEST); gl.glHint(GL2.GL_FOG_HINT, GL2.GL_FASTEST);
int fogEnd = GlobalConfig.VIEW_DISTANCE; int fogEnd = GlobalConfig.VIEW_DISTANCE;
@Pc(65) int fogStart = fogEnd - (int)(GlobalConfig.VIEW_FADE_DISTANCE * 2.0f) - offset; @Pc(65) int fogStart = fogEnd - (int) (GlobalConfig.VIEW_FADE_DISTANCE * 2.0f) - offset;
if (fogStart < 50) { if (fogStart < 50) {
fogStart = 50; fogStart = 50;
} }
@ -128,10 +128,10 @@ public final class FogManager {
@Pc(1) GL2 local1 = GlRenderer.gl; @Pc(1) GL2 local1 = GlRenderer.gl;
local1.glColorMaterial(GL2.GL_FRONT, GL2.GL_AMBIENT_AND_DIFFUSE); local1.glColorMaterial(GL2.GL_FRONT, GL2.GL_AMBIENT_AND_DIFFUSE);
local1.glEnable(GL2.GL_COLOR_MATERIAL); local1.glEnable(GL2.GL_COLOR_MATERIAL);
@Pc(27) float[] local27 = new float[] { 0.0F, 0.0F, 0.0F, 1.0F }; @Pc(27) float[] local27 = new float[]{0.0F, 0.0F, 0.0F, 1.0F};
local1.glLightfv(GL2.GL_LIGHT0, GL2.GL_AMBIENT, local27, 0); local1.glLightfv(GL2.GL_LIGHT0, GL2.GL_AMBIENT, local27, 0);
local1.glEnable(GL2.GL_LIGHT0); local1.glEnable(GL2.GL_LIGHT0);
@Pc(55) float[] local55 = new float[] { 0.0F, 0.0F, 0.0F, 1.0F }; @Pc(55) float[] local55 = new float[]{0.0F, 0.0F, 0.0F, 1.0F};
local1.glLightfv(GL2.GL_LIGHT1, GL2.GL_AMBIENT, local55, 0); local1.glLightfv(GL2.GL_LIGHT1, GL2.GL_AMBIENT, local55, 0);
local1.glEnable(GL2.GL_LIGHT1); local1.glEnable(GL2.GL_LIGHT1);
anInt3919 = -1; anInt3919 = -1;
@ -160,11 +160,11 @@ public final class FogManager {
return aFloat21; return aFloat21;
} }
@OriginalMember(owner = "client!si", name = "a", descriptor = "(IZ)V") @OriginalMember(owner = "client!si", name = "a", descriptor = "(IZ)V")
public static void method3935(@OriginalArg(0) int arg0) { public static void method3935(@OriginalArg(0) int arg0) {
method3060(anInt3923, ((float) arg0 * 0.1F + 0.7F) * 1.1523438F, 0.69921875F, 0.69921875F); method3060(anInt3923, ((float) arg0 * 0.1F + 0.7F) * 1.1523438F, 0.69921875F, 0.69921875F);
method3063(-50.0F, -60.0F, -50.0F); method3063(-50.0F, -60.0F, -50.0F);
method3062(anInt3922, 0); method3062(anInt3922, 0);
method3058(); method3058();
} }
} }

View file

@ -1,11 +1,12 @@
package rt4; package rt4;
import java.util.Random;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.util.Random;
@OriginalClass("client!rk") @OriginalClass("client!rk")
public abstract class Font extends SecondaryNode { public abstract class Font extends SecondaryNode {
@ -198,7 +199,7 @@ public abstract class Font extends SecondaryNode {
return -local37; return -local37;
} }
@OriginalMember(owner = "client!ce", name = "a", descriptor = "(I[B)Lclient!rk;") @OriginalMember(owner = "client!ce", name = "a", descriptor = "(I[B)Lclient!rk;")
public static Font method799(@OriginalArg(1) byte[] arg0) { public static Font method799(@OriginalArg(1) byte[] arg0) {
if (arg0 == null) { if (arg0 == null) {
return null; return null;
@ -329,7 +330,7 @@ public abstract class Font extends SecondaryNode {
@OriginalMember(owner = "client!rk", name = "b", descriptor = "(Lclient!na;I)I") @OriginalMember(owner = "client!rk", name = "b", descriptor = "(Lclient!na;I)I")
public final int getMaxLineWidth(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1) { public final int getMaxLineWidth(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1) {
@Pc(10) int local10 = this.splitParagraph(arg0, new int[] { arg1 }, lines); @Pc(10) int local10 = this.splitParagraph(arg0, new int[]{arg1}, lines);
@Pc(12) int local12 = 0; @Pc(12) int local12 = 0;
for (@Pc(14) int local14 = 0; local14 < local10; local14++) { for (@Pc(14) int local14 = 0; local14 < local10; local14++) {
@Pc(23) int local23 = this.getStringWidth(lines[local14]); @Pc(23) int local23 = this.getStringWidth(lines[local14]);
@ -411,7 +412,7 @@ public abstract class Font extends SecondaryNode {
if (arg0 == null) { if (arg0 == null) {
return 0; return 0;
} }
arg3.setSeed((long) arg4); arg3.setSeed(arg4);
this.setColors(16777215, 0, (arg3.nextInt() & 0x1F) + 192); this.setColors(16777215, 0, (arg3.nextInt() & 0x1F) + 192);
@Pc(21) int local21 = arg0.length(); @Pc(21) int local21 = arg0.length();
@Pc(24) int[] local24 = new int[local21]; @Pc(24) int[] local24 = new int[local21];
@ -428,7 +429,7 @@ public abstract class Font extends SecondaryNode {
@OriginalMember(owner = "client!rk", name = "c", descriptor = "(Lclient!na;I)I") @OriginalMember(owner = "client!rk", name = "c", descriptor = "(Lclient!na;I)I")
public final int getParagraphLineCount(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1) { public final int getParagraphLineCount(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1) {
return this.splitParagraph(arg0, new int[] { arg1 }, lines); return this.splitParagraph(arg0, new int[]{arg1}, lines);
} }
@OriginalMember(owner = "client!rk", name = "b", descriptor = "(Lclient!na;)V") @OriginalMember(owner = "client!rk", name = "b", descriptor = "(Lclient!na;)V")
@ -670,7 +671,7 @@ public abstract class Font extends SecondaryNode {
if (arg9 == 0) { if (arg9 == 0) {
arg9 = this.lineHeight; arg9 = this.lineHeight;
} }
@Pc(20) int[] local20 = new int[] { arg3 }; @Pc(20) int[] local20 = new int[]{arg3};
if (arg4 < this.paragraphTopPadding + this.paragraphBottomPadding + arg9 && arg4 < arg9 + arg9) { if (arg4 < this.paragraphTopPadding + this.paragraphBottomPadding + arg9 && arg4 < arg9 + arg9) {
local20 = null; local20 = null;
} }
@ -850,7 +851,7 @@ public abstract class Font extends SecondaryNode {
if (arg0 == null) { if (arg0 == null) {
return 0; return 0;
} }
arg9.setSeed((long) arg10); arg9.setSeed(arg10);
this.setColors(arg5, arg6, (arg9.nextInt() & 0x1F) + 192); this.setColors(arg5, arg6, (arg9.nextInt() & 0x1F) + 192);
@Pc(21) int local21 = arg0.length(); @Pc(21) int local21 = arg0.length();
@Pc(24) int[] local24 = new int[local21]; @Pc(24) int[] local24 = new int[local21];

View file

@ -5,19 +5,19 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class FontMetricsList { public class FontMetricsList {
@OriginalMember(owner = "client!l", name = "f", descriptor = "Lclient!n;") @OriginalMember(owner = "client!l", name = "f", descriptor = "Lclient!n;")
public static final SoftLruHashTable fontMetrics = new SoftLruHashTable(4); public static final SoftLruHashTable fontMetrics = new SoftLruHashTable(4);
@OriginalMember(owner = "client!li", name = "a", descriptor = "(II)Lclient!dd;") @OriginalMember(owner = "client!li", name = "a", descriptor = "(II)Lclient!dd;")
public static SoftwareFont get(@OriginalArg(1) int arg0) { public static SoftwareFont get(@OriginalArg(1) int arg0) {
@Pc(16) SoftwareFont local16 = (SoftwareFont) fontMetrics.get((long) arg0); @Pc(16) SoftwareFont local16 = (SoftwareFont) fontMetrics.get(arg0);
if (local16 != null) { if (local16 != null) {
return local16; return local16;
} }
@Pc(26) byte[] local26 = client.js5Archive13.fetchFile(arg0, 0); @Pc(26) byte[] local26 = client.js5Archive13.fetchFile(arg0, 0);
local16 = new SoftwareFont(local26); local16 = new SoftwareFont(local26);
local16.setNameIcons(Sprites.nameIcons, null); local16.setNameIcons(Sprites.nameIcons, null);
fontMetrics.put(local16, (long) arg0); fontMetrics.put(local16, arg0);
return local16; return local16;
} }
} }

View file

@ -5,53 +5,53 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class Fonts { public class Fonts {
@OriginalMember(owner = "client!j", name = "x", descriptor = "Lclient!rk;") @OriginalMember(owner = "client!j", name = "x", descriptor = "Lclient!rk;")
public static Font p11Full; public static Font p11Full;
@OriginalMember(owner = "client!rh", name = "h", descriptor = "Lclient!rk;") @OriginalMember(owner = "client!rh", name = "h", descriptor = "Lclient!rk;")
public static Font p12Full; public static Font p12Full;
@OriginalMember(owner = "client!wl", name = "q", descriptor = "Lclient!rk;") @OriginalMember(owner = "client!wl", name = "q", descriptor = "Lclient!rk;")
public static Font b12Full; public static Font b12Full;
@OriginalMember(owner = "client!vj", name = "j", descriptor = "Lclient!dd;") @OriginalMember(owner = "client!vj", name = "j", descriptor = "Lclient!dd;")
public static SoftwareFont p11FullSoftware; public static SoftwareFont p11FullSoftware;
@OriginalMember(owner = "client!fn", name = "a", descriptor = "(Lclient!ve;Lclient!ve;Z)I") @OriginalMember(owner = "client!fn", name = "a", descriptor = "(Lclient!ve;Lclient!ve;Z)I")
public static int getReady(@OriginalArg(0) Js5 arg0, @OriginalArg(1) Js5 arg1) { public static int getReady(@OriginalArg(0) Js5 arg0, @OriginalArg(1) Js5 arg1) {
@Pc(5) int ready = 0; @Pc(5) int ready = 0;
if (arg0.isFileReady(Sprites.p11FullId)) { if (arg0.isFileReady(Sprites.p11FullId)) {
ready++; ready++;
} }
if (arg0.isFileReady(Sprites.p12FullId)) { if (arg0.isFileReady(Sprites.p12FullId)) {
ready++; ready++;
} }
if (arg0.isFileReady(Sprites.b12FullId)) { if (arg0.isFileReady(Sprites.b12FullId)) {
ready++; ready++;
} }
if (arg1.isFileReady(Sprites.p11FullId)) { if (arg1.isFileReady(Sprites.p11FullId)) {
ready++; ready++;
} }
if (arg1.isFileReady(Sprites.p12FullId)) { if (arg1.isFileReady(Sprites.p12FullId)) {
ready++; ready++;
} }
if (arg1.isFileReady(Sprites.b12FullId)) { if (arg1.isFileReady(Sprites.b12FullId)) {
ready++; ready++;
} }
return ready; return ready;
} }
@OriginalMember(owner = "client!ld", name = "a", descriptor = "(B)I") @OriginalMember(owner = "client!ld", name = "a", descriptor = "(B)I")
public static int getTotal() { public static int getTotal() {
return 6; return 6;
} }
@OriginalMember(owner = "client!hn", name = "a", descriptor = "(Lclient!ve;ILclient!ve;)V") @OriginalMember(owner = "client!hn", name = "a", descriptor = "(Lclient!ve;ILclient!ve;)V")
public static void load(@OriginalArg(0) Js5 arg0, @OriginalArg(2) Js5 arg1) { public static void load(@OriginalArg(0) Js5 arg0, @OriginalArg(2) Js5 arg1) {
p11Full = Font.method2462(Sprites.p11FullId, arg1, arg0); p11Full = Font.method2462(Sprites.p11FullId, arg1, arg0);
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
p11FullSoftware = SoftwareFont.method2412(Sprites.p11FullId, arg0, arg1); p11FullSoftware = SoftwareFont.method2412(Sprites.p11FullId, arg0, arg1);
} else { } else {
p11FullSoftware = (SoftwareFont) p11Full; p11FullSoftware = (SoftwareFont) p11Full;
} }
p12Full = Font.method2462(Sprites.p12FullId, arg1, arg0); p12Full = Font.method2462(Sprites.p12FullId, arg1, arg0);
b12Full = Font.method2462(Sprites.b12FullId, arg1, arg0); b12Full = Font.method2462(Sprites.b12FullId, arg1, arg0);
} }
} }

View file

@ -1,12 +1,12 @@
package rt4; package rt4;
import java.awt.Component;
import java.awt.Graphics;
import java.awt.Image;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import java.awt.Component;
import java.awt.*;
@OriginalClass("client!vk") @OriginalClass("client!vk")
public abstract class FrameBuffer { public abstract class FrameBuffer {

View file

@ -5,26 +5,26 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class FriendsList { public class FriendsList {
@OriginalMember(owner = "client!hd", name = "g", descriptor = "[J") @OriginalMember(owner = "client!hd", name = "g", descriptor = "[J")
public static final long[] encodedUsernames = new long[200]; public static final long[] encodedUsernames = new long[200];
@OriginalMember(owner = "client!rg", name = "r", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!rg", name = "r", descriptor = "[Lclient!na;")
public static final JagString[] worldNames = new JagString[200]; public static final JagString[] worldNames = new JagString[200];
@OriginalMember(owner = "client!ic", name = "l", descriptor = "[I") @OriginalMember(owner = "client!ic", name = "l", descriptor = "[I")
public static final int[] ranks = new int[200]; public static final int[] ranks = new int[200];
@OriginalMember(owner = "client!ia", name = "d", descriptor = "[I") @OriginalMember(owner = "client!ia", name = "d", descriptor = "[I")
public static final int[] worlds = new int[200]; public static final int[] worlds = new int[200];
@OriginalMember(owner = "client!jh", name = "b", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!jh", name = "b", descriptor = "[Lclient!na;")
public static final JagString[] usernames = new JagString[200]; public static final JagString[] usernames = new JagString[200];
@OriginalMember(owner = "client!ab", name = "c", descriptor = "[Z") @OriginalMember(owner = "client!ab", name = "c", descriptor = "[Z")
public static final boolean[] aBooleanArray135 = new boolean[200]; public static final boolean[] aBooleanArray135 = new boolean[200];
@OriginalMember(owner = "client!p", name = "d", descriptor = "I") @OriginalMember(owner = "client!p", name = "d", descriptor = "I")
public static int transmitAt = 0; public static int transmitAt = 0;
@OriginalMember(owner = "client!nc", name = "m", descriptor = "I") @OriginalMember(owner = "client!nc", name = "m", descriptor = "I")
public static int state = 0; public static int state = 0;
@OriginalMember(owner = "client!al", name = "m", descriptor = "I") @OriginalMember(owner = "client!al", name = "m", descriptor = "I")
public static int size = 0; public static int size = 0;
@OriginalMember(owner = "client!hj", name = "a", descriptor = "(Lclient!na;B)Z") @OriginalMember(owner = "client!hj", name = "a", descriptor = "(Lclient!na;B)Z")
public static boolean contains(@OriginalArg(0) JagString arg0) { public static boolean contains(@OriginalArg(0) JagString arg0) {
if (arg0 == null) { if (arg0 == null) {
return false; return false;
@ -34,93 +34,89 @@ public class FriendsList {
return true; return true;
} }
} }
if (arg0.equalsIgnoreCase(PlayerList.self.username)) { return arg0.equalsIgnoreCase(PlayerList.self.username);
return true; }
} else {
return false; @OriginalMember(owner = "client!fb", name = "a", descriptor = "(JB)V")
public static void add(@OriginalArg(0) long arg0) {
if (arg0 == 0L) {
return;
}
if (size >= 100 && !LoginManager.playerMember || size >= 200) {
Chat.add(JagString.EMPTY, 0, LocalizedText.FRIENDLISTFULL);
return;
}
@Pc(35) JagString local35 = Base37.decode37(arg0).toTitleCase();
@Pc(42) int local42;
for (local42 = 0; local42 < size; local42++) {
if (encodedUsernames[local42] == arg0) {
Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[]{local35, LocalizedText.FRIENDLISTDUPE}));
return;
}
}
for (local42 = 0; local42 < IgnoreList.size; local42++) {
if (arg0 == IgnoreList.encodedUsernames[local42]) {
Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[]{LocalizedText.REMOVESOCIAL1, local35, LocalizedText.REMOVEIGNORE}));
return;
}
}
if (local35.strEquals(PlayerList.self.username)) {
Chat.add(JagString.EMPTY, 0, LocalizedText.FRIENDCANTADDSELF);
return;
}
usernames[size] = local35;
encodedUsernames[size] = arg0;
worlds[size] = 0;
worldNames[size] = JagString.EMPTY;
ranks[size] = 0;
aBooleanArray135[size] = false;
size++;
transmitAt = InterfaceList.transmitTimer;
Protocol.outboundBuffer.p1isaac(120);
Protocol.outboundBuffer.p8(arg0);
}
@OriginalMember(owner = "client!pi", name = "a", descriptor = "(JI)V")
public static void remove(@OriginalArg(0) long arg0) {
if (arg0 == 0L) {
return;
}
for (@Pc(13) int local13 = 0; local13 < size; local13++) {
if (encodedUsernames[local13] == arg0) {
size--;
for (@Pc(41) int local41 = local13; local41 < size; local41++) {
usernames[local41] = usernames[local41 + 1];
worlds[local41] = worlds[local41 + 1];
worldNames[local41] = worldNames[local41 + 1];
encodedUsernames[local41] = encodedUsernames[local41 + 1];
ranks[local41] = ranks[local41 + 1];
aBooleanArray135[local41] = aBooleanArray135[local41 + 1];
}
transmitAt = InterfaceList.transmitTimer;
Protocol.outboundBuffer.p1isaac(57);
Protocol.outboundBuffer.p8(arg0);
break;
}
} }
} }
@OriginalMember(owner = "client!fb", name = "a", descriptor = "(JB)V") @OriginalMember(owner = "client!ni", name = "a", descriptor = "(ILclient!na;I)V")
public static void add(@OriginalArg(0) long arg0) { public static void setRank(@OriginalArg(1) JagString arg0, @OriginalArg(2) int arg1) {
if (arg0 == 0L) { Protocol.outboundBuffer.p1isaac(188);
return; Protocol.outboundBuffer.p1add(arg1);
} Protocol.outboundBuffer.p8(arg0.encode37());
if (size >= 100 && !LoginManager.playerMember || size >= 200) { }
Chat.add(JagString.EMPTY, 0, LocalizedText.FRIENDLISTFULL);
return;
}
@Pc(35) JagString local35 = Base37.decode37(arg0).toTitleCase();
@Pc(42) int local42;
for (local42 = 0; local42 < size; local42++) {
if (encodedUsernames[local42] == arg0) {
Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[] { local35, LocalizedText.FRIENDLISTDUPE}));
return;
}
}
for (local42 = 0; local42 < IgnoreList.size; local42++) {
if (arg0 == IgnoreList.encodedUsernames[local42]) {
Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[] { LocalizedText.REMOVESOCIAL1, local35, LocalizedText.REMOVEIGNORE}));
return;
}
}
if (local35.strEquals(PlayerList.self.username)) {
Chat.add(JagString.EMPTY, 0, LocalizedText.FRIENDCANTADDSELF);
return;
}
usernames[size] = local35;
encodedUsernames[size] = arg0;
worlds[size] = 0;
worldNames[size] = JagString.EMPTY;
ranks[size] = 0;
aBooleanArray135[size] = false;
size++;
transmitAt = InterfaceList.transmitTimer;
Protocol.outboundBuffer.p1isaac(120);
Protocol.outboundBuffer.p8(arg0);
}
@OriginalMember(owner = "client!pi", name = "a", descriptor = "(JI)V") @OriginalMember(owner = "client!ac", name = "a", descriptor = "(Lclient!na;I)I")
public static void remove(@OriginalArg(0) long arg0) { public static int method25(@OriginalArg(0) JagString arg0) {
if (arg0 == 0L) { if (arg0 == null) {
return; return -1;
} }
for (@Pc(13) int local13 = 0; local13 < size; local13++) { for (@Pc(20) int local20 = 0; local20 < size; local20++) {
if (encodedUsernames[local13] == arg0) { if (arg0.equalsIgnoreCase(usernames[local20])) {
size--; return local20;
for (@Pc(41) int local41 = local13; local41 < size; local41++) { }
usernames[local41] = usernames[local41 + 1]; }
worlds[local41] = worlds[local41 + 1]; return -1;
worldNames[local41] = worldNames[local41 + 1]; }
encodedUsernames[local41] = encodedUsernames[local41 + 1];
ranks[local41] = ranks[local41 + 1];
aBooleanArray135[local41] = aBooleanArray135[local41 + 1];
}
transmitAt = InterfaceList.transmitTimer;
Protocol.outboundBuffer.p1isaac(57);
Protocol.outboundBuffer.p8(arg0);
break;
}
}
}
@OriginalMember(owner = "client!ni", name = "a", descriptor = "(ILclient!na;I)V")
public static void setRank(@OriginalArg(1) JagString arg0, @OriginalArg(2) int arg1) {
Protocol.outboundBuffer.p1isaac(188);
Protocol.outboundBuffer.p1add(arg1);
Protocol.outboundBuffer.p8(arg0.encode37());
}
@OriginalMember(owner = "client!ac", name = "a", descriptor = "(Lclient!na;I)I")
public static int method25(@OriginalArg(0) JagString arg0) {
if (arg0 == null) {
return -1;
}
for (@Pc(20) int local20 = 0; local20 < size; local20++) {
if (arg0.equalsIgnoreCase(usernames[local20])) {
return local20;
}
}
return -1;
}
} }

View file

@ -1,12 +1,12 @@
package rt4; package rt4;
import java.awt.Canvas;
import java.awt.Component;
import java.awt.Graphics;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import java.awt.Component;
import java.awt.*;
@OriginalClass("client!tm") @OriginalClass("client!tm")
public final class GameCanvas extends Canvas { public final class GameCanvas extends Canvas {

View file

@ -1,15 +1,16 @@
package rt4; package rt4;
import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
import java.applet.Applet; import java.applet.Applet;
import java.applet.AppletContext; import java.applet.AppletContext;
import java.awt.*; import java.awt.*;
import java.awt.event.*; import java.awt.event.*;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.net.URL; import java.net.URL;
import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!rc") @OriginalClass("client!rc")
public abstract class GameShell extends Applet implements Runnable, FocusListener, WindowListener { public abstract class GameShell extends Applet implements Runnable, FocusListener, WindowListener {
@ -85,10 +86,10 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
@OriginalMember(owner = "client!ba", name = "B", descriptor = "I") @OriginalMember(owner = "client!ba", name = "B", descriptor = "I")
public static double VARIABLE_RENDER_RATE = 20.0d; public static double VARIABLE_RENDER_RATE = 20.0d;
public static long VARIABLE_RENDER_RATE_NS = (long)(VARIABLE_RENDER_RATE * 1_000_000.0d); public static long VARIABLE_RENDER_RATE_NS = (long) (VARIABLE_RENDER_RATE * 1_000_000.0d);
public static final double FIXED_UPDATE_RATE = 20.0d; public static final double FIXED_UPDATE_RATE = 20.0d;
public static final long FIXED_UPDATE_RATE_NS = (long)(FIXED_UPDATE_RATE * 1_000_000.0d); public static final long FIXED_UPDATE_RATE_NS = (long) (FIXED_UPDATE_RATE * 1_000_000.0d);
@OriginalMember(owner = "client!cm", name = "b", descriptor = "Ljava/lang/Thread;") @OriginalMember(owner = "client!cm", name = "b", descriptor = "Ljava/lang/Thread;")
public static Thread thread; public static Thread thread;
@ -158,26 +159,26 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
} }
} }
@OriginalMember(owner = "client!ta", name = "a", descriptor = "(Z)V") @OriginalMember(owner = "client!ta", name = "a", descriptor = "(Z)V")
public static void resetTimer() { public static void resetTimer() {
timer.reset(); timer.reset();
@Pc(10) int local10; @Pc(10) int local10;
for (local10 = 0; local10 < 32; local10++) { for (local10 = 0; local10 < 32; local10++) {
redrawTimes[local10] = 0L; redrawTimes[local10] = 0L;
} }
for (local10 = 0; local10 < 32; local10++) { for (local10 = 0; local10 < 32; local10++) {
logicTimes[local10] = 0L; logicTimes[local10] = 0L;
} }
logicCycles = 0; logicCycles = 0;
}
@OriginalMember(owner = "client!ja", name = "a", descriptor = "(II)V")
public static void setFpsTarget(@OriginalArg(0) int fps) {
VARIABLE_RENDER_RATE = 1000.0d / (double)fps;
VARIABLE_RENDER_RATE_NS = (int)(VARIABLE_RENDER_RATE * 1_000_000.0d);
} }
@OriginalMember(owner = "client!qh", name = "a", descriptor = "(Z)V") @OriginalMember(owner = "client!ja", name = "a", descriptor = "(II)V")
public static void setFpsTarget(@OriginalArg(0) int fps) {
VARIABLE_RENDER_RATE = 1000.0d / (double) fps;
VARIABLE_RENDER_RATE_NS = (int) (VARIABLE_RENDER_RATE * 1_000_000.0d);
}
@OriginalMember(owner = "client!qh", name = "a", descriptor = "(Z)V")
public static void method3662() { public static void method3662() {
@Pc(8) Container local8; @Pc(8) Container local8;
if (fullScreenFrame != null) { if (fullScreenFrame != null) {
@ -222,7 +223,7 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
Static139.method2704(); Static139.method2704();
} }
@OriginalMember(owner = "client!rc", name = "focusLost", descriptor = "(Ljava/awt/event/FocusEvent;)V") @OriginalMember(owner = "client!rc", name = "focusLost", descriptor = "(Ljava/awt/event/FocusEvent;)V")
@Override @Override
public final void focusLost(@OriginalArg(0) FocusEvent event) { public final void focusLost(@OriginalArg(0) FocusEvent event) {
focusIn = false; focusIn = false;
@ -446,7 +447,7 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
private void mainRedrawWrapper() { private void mainRedrawWrapper() {
long now = System.currentTimeMillis(); long now = System.currentTimeMillis();
if (now - lastFpsUpdate > 1000) { if (now - lastFpsUpdate > 1000) {
lastFps[lastFpsIndex++] = 1_000_000_000.0d / (double)renderDelta; lastFps[lastFpsIndex++] = 1_000_000_000.0d / (double) renderDelta;
double total = 0.0d; double total = 0.0d;
for (int i = 0; i < lastFps.length; ++i) { for (int i = 0; i < lastFps.length; ++i) {
total += lastFps[i]; total += lastFps[i];
@ -575,7 +576,7 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
updateDelta = currentTime - lastUpdateTime; updateDelta = currentTime - lastUpdateTime;
if (updateDelta >= FIXED_UPDATE_RATE_NS) { if (updateDelta >= FIXED_UPDATE_RATE_NS) {
logicCycles = timer.count(minimumDelay, (int)FIXED_UPDATE_RATE); logicCycles = timer.count(minimumDelay, (int) FIXED_UPDATE_RATE);
for (int cycle = 0; cycle < logicCycles; ++cycle) { for (int cycle = 0; cycle < logicCycles; ++cycle) {
this.mainLoopWrapper(); this.mainLoopWrapper();
} }
@ -688,11 +689,7 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
canvasHeight = 503; canvasHeight = 503;
frameHeight = 503; frameHeight = 503;
@Pc(54) String openWindowJavaScriptStr = this.getParameter("openwinjs"); @Pc(54) String openWindowJavaScriptStr = this.getParameter("openwinjs");
if (openWindowJavaScriptStr != null && openWindowJavaScriptStr.equals("1")) { openWindowJavaScript = openWindowJavaScriptStr != null && openWindowJavaScriptStr.equals("1");
openWindowJavaScript = true;
} else {
openWindowJavaScript = false;
}
if (signLink == null) { if (signLink == null) {
Static69.signLink = signLink = new SignLink(this, cacheId, null, 0); Static69.signLink = signLink = new SignLink(this, cacheId, null, 0);
} }

View file

@ -1,12 +1,13 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!el") @OriginalClass("client!el")
public final class GlAlphaSprite extends GlSprite { public final class GlAlphaSprite extends GlSprite {

View file

@ -1,9 +1,10 @@
package rt4; package rt4;
import java.nio.ByteBuffer;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import java.nio.ByteBuffer;
@OriginalClass("client!ql") @OriginalClass("client!ql")
public final class GlBuffer { public final class GlBuffer {

View file

@ -1,6 +1,6 @@
package rt4; package rt4;
import com.jogamp.opengl.*; import com.jogamp.opengl.GL2;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;

View file

@ -1,18 +1,19 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!mb") @OriginalClass("client!mb")
public final class GlFont extends Font { public final class GlFont extends Font {
@OriginalMember(owner = "client!dj", name = "a", descriptor = "Lclient!cf;") @OriginalMember(owner = "client!dj", name = "a", descriptor = "Lclient!cf;")
public static GlSprite masked = null; public static GlSprite masked = null;
@OriginalMember(owner = "client!mb", name = "Gb", descriptor = "[I") @OriginalMember(owner = "client!mb", name = "Gb", descriptor = "[I")
private int[] listIds; private int[] listIds;
@OriginalMember(owner = "client!mb", name = "Hb", descriptor = "I") @OriginalMember(owner = "client!mb", name = "Hb", descriptor = "I")
@ -121,13 +122,13 @@ public final class GlFont extends Font {
@OriginalMember(owner = "client!mb", name = "a", descriptor = "(IIIIIIIZ)V") @OriginalMember(owner = "client!mb", name = "a", descriptor = "(IIIIIIIZ)V")
@Override @Override
protected final void renderGlyphTransparent(@OriginalArg(0) int glyph, @OriginalArg(1) int x, @OriginalArg(2) int y, @OriginalArg(3) int width, @OriginalArg(4) int height, @OriginalArg(5) int color, @OriginalArg(6) int alpha) { protected final void renderGlyphTransparent(@OriginalArg(0) int glyph, @OriginalArg(1) int x, @OriginalArg(2) int y, @OriginalArg(3) int width, @OriginalArg(4) int height, @OriginalArg(5) int color, @OriginalArg(6) int alpha) {
GlRenderer.method4151(); GlRenderer.method4151();
@Pc(2) GL2 gl = GlRenderer.gl; @Pc(2) GL2 gl = GlRenderer.gl;
GlRenderer.setTextureId(this.textureId); GlRenderer.setTextureId(this.textureId);
gl.glColor4ub((byte) (color >> 16), (byte) (color >> 8), (byte) color, alpha > 255 ? -1 : (byte) alpha); gl.glColor4ub((byte) (color >> 16), (byte) (color >> 8), (byte) color, alpha > 255 ? -1 : (byte) alpha);
gl.glTranslatef((float) x, (float) (GlRenderer.canvasHeight - y), 0.0F); gl.glTranslatef((float) x, (float) (GlRenderer.canvasHeight - y), 0.0F);
gl.glCallList(this.listIds[glyph]); gl.glCallList(this.listIds[glyph]);
gl.glLoadIdentity(); gl.glLoadIdentity();
} }
@OriginalMember(owner = "client!mb", name = "b", descriptor = "()V") @OriginalMember(owner = "client!mb", name = "b", descriptor = "()V")

View file

@ -1,12 +1,13 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!oh") @OriginalClass("client!oh")
public final class GlIndexedSprite extends IndexedSprite { public final class GlIndexedSprite extends IndexedSprite {

View file

@ -1,19 +1,20 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!td") @OriginalClass("client!td")
public final class GlModel extends Model { public final class GlModel extends Model {
@OriginalMember(owner = "client!tf", name = "G", descriptor = "Z") @OriginalMember(owner = "client!tf", name = "G", descriptor = "Z")
public static boolean arbVboSupported; public static boolean arbVboSupported;
@OriginalMember(owner = "client!td", name = "D", descriptor = "Lclient!wa;") @OriginalMember(owner = "client!td", name = "D", descriptor = "Lclient!wa;")
public static Buffer aClass3_Sub15_8 = new Buffer(10000); public static Buffer aClass3_Sub15_8 = new Buffer(10000);
@OriginalMember(owner = "client!td", name = "bb", descriptor = "Lclient!td;") @OriginalMember(owner = "client!td", name = "bb", descriptor = "Lclient!td;")
public static GlModel aClass8_Sub1_Sub1_1 = new GlModel(); public static GlModel aClass8_Sub1_Sub1_1 = new GlModel();
@OriginalMember(owner = "client!td", name = "jb", descriptor = "Lclient!td;") @OriginalMember(owner = "client!td", name = "jb", descriptor = "Lclient!td;")
@ -54,10 +55,10 @@ public final class GlModel extends Model {
public static int anInt5300; public static int anInt5300;
@OriginalMember(owner = "client!td", name = "zb", descriptor = "F") @OriginalMember(owner = "client!td", name = "zb", descriptor = "F")
public static float aFloat28; public static float aFloat28;
@OriginalMember(owner = "client!lk", name = "V", descriptor = "I") @OriginalMember(owner = "client!lk", name = "V", descriptor = "I")
public static int anInt3582 = 0; public static int anInt3582 = 0;
@OriginalMember(owner = "client!td", name = "t", descriptor = "[S") @OriginalMember(owner = "client!td", name = "t", descriptor = "[S")
private short[] aShortArray75; private short[] aShortArray75;
@OriginalMember(owner = "client!td", name = "v", descriptor = "[S") @OriginalMember(owner = "client!td", name = "v", descriptor = "[S")
@ -688,7 +689,7 @@ public final class GlModel extends Model {
@Pc(32) float local32 = (float) local3 * arg6[0] + (float) local7 * arg6[1] + (float) local11 * arg6[2]; @Pc(32) float local32 = (float) local3 * arg6[0] + (float) local7 * arg6[1] + (float) local11 * arg6[2];
@Pc(53) float local53 = (float) local3 * arg6[3] + (float) local7 * arg6[4] + (float) local11 * arg6[5]; @Pc(53) float local53 = (float) local3 * arg6[3] + (float) local7 * arg6[4] + (float) local11 * arg6[5];
@Pc(74) float local74 = (float) local3 * arg6[6] + (float) local7 * arg6[7] + (float) local11 * arg6[8]; @Pc(74) float local74 = (float) local3 * arg6[6] + (float) local7 * arg6[7] + (float) local11 * arg6[8];
@Pc(85) float local85 = (float) Math.atan2((double) local32, (double) local74) / 6.2831855F + 0.5F; @Pc(85) float local85 = (float) Math.atan2(local32, local74) / 6.2831855F + 0.5F;
if (arg7 != 1.0F) { if (arg7 != 1.0F) {
local85 *= arg7; local85 *= arg7;
} }
@ -757,8 +758,8 @@ public final class GlModel extends Model {
public static float[] method4097(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) float arg4, @OriginalArg(5) float arg5, @OriginalArg(6) float arg6) { public static float[] method4097(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) float arg4, @OriginalArg(5) float arg5, @OriginalArg(6) float arg6) {
@Pc(2) float[] local2 = new float[9]; @Pc(2) float[] local2 = new float[9];
@Pc(5) float[] local5 = new float[9]; @Pc(5) float[] local5 = new float[9];
@Pc(13) float local13 = (float) Math.cos((double) ((float) arg3 * 0.024543693F)); @Pc(13) float local13 = (float) Math.cos((float) arg3 * 0.024543693F);
@Pc(21) float local21 = (float) Math.sin((double) ((float) arg3 * 0.024543693F)); @Pc(21) float local21 = (float) Math.sin((float) arg3 * 0.024543693F);
local2[0] = local13; local2[0] = local13;
local2[1] = 0.0F; local2[1] = 0.0F;
local2[2] = local21; local2[2] = local21;
@ -772,9 +773,9 @@ public final class GlModel extends Model {
@Pc(67) float local67 = 1.0F; @Pc(67) float local67 = 1.0F;
@Pc(69) float local69 = 0.0F; @Pc(69) float local69 = 0.0F;
@Pc(74) float local74 = (float) arg1 / 32767.0F; @Pc(74) float local74 = (float) arg1 / 32767.0F;
@Pc(84) float local84 = -((float) Math.sqrt((double) (1.0F - local74 * local74))); @Pc(84) float local84 = -((float) Math.sqrt(1.0F - local74 * local74));
@Pc(88) float local88 = 1.0F - local74; @Pc(88) float local88 = 1.0F - local74;
@Pc(99) float local99 = (float) Math.sqrt((double) (arg0 * arg0 + arg2 * arg2)); @Pc(99) float local99 = (float) Math.sqrt(arg0 * arg0 + arg2 * arg2);
if (local99 == 0.0F && local74 == 0.0F) { if (local99 == 0.0F && local74 == 0.0F) {
local5 = local2; local5 = local2;
} else { } else {
@ -821,9 +822,9 @@ public final class GlModel extends Model {
@Pc(32) float local32 = (float) local3 * arg6[0] + (float) local7 * arg6[1] + (float) local11 * arg6[2]; @Pc(32) float local32 = (float) local3 * arg6[0] + (float) local7 * arg6[1] + (float) local11 * arg6[2];
@Pc(53) float local53 = (float) local3 * arg6[3] + (float) local7 * arg6[4] + (float) local11 * arg6[5]; @Pc(53) float local53 = (float) local3 * arg6[3] + (float) local7 * arg6[4] + (float) local11 * arg6[5];
@Pc(74) float local74 = (float) local3 * arg6[6] + (float) local7 * arg6[7] + (float) local11 * arg6[8]; @Pc(74) float local74 = (float) local3 * arg6[6] + (float) local7 * arg6[7] + (float) local11 * arg6[8];
@Pc(89) float local89 = (float) Math.sqrt((double) (local32 * local32 + local53 * local53 + local74 * local74)); @Pc(89) float local89 = (float) Math.sqrt(local32 * local32 + local53 * local53 + local74 * local74);
@Pc(100) float local100 = (float) Math.atan2((double) local32, (double) local74) / 6.2831855F + 0.5F; @Pc(100) float local100 = (float) Math.atan2(local32, local74) / 6.2831855F + 0.5F;
@Pc(113) float local113 = (float) Math.asin((double) (local53 / local89)) / 3.1415927F + arg8 + 0.5F; @Pc(113) float local113 = (float) Math.asin(local53 / local89) / 3.1415927F + arg8 + 0.5F;
@Pc(118) float local118; @Pc(118) float local118;
if (arg7 == 1) { if (arg7 == 1) {
local118 = local100; local118 = local100;
@ -911,18 +912,18 @@ public final class GlModel extends Model {
aClass8_Sub1_Sub1_6 = new GlModel(); aClass8_Sub1_Sub1_6 = new GlModel();
} }
@OriginalMember(owner = "client!vg", name = "a", descriptor = "(I[S)[S") @OriginalMember(owner = "client!vg", name = "a", descriptor = "(I[S)[S")
public static short[] method4511(@OriginalArg(1) short[] arg0) { public static short[] method4511(@OriginalArg(1) short[] arg0) {
if (arg0 == null) { if (arg0 == null) {
return null; return null;
} else { } else {
@Pc(19) short[] local19 = new short[arg0.length]; @Pc(19) short[] local19 = new short[arg0.length];
ArrayUtils.copy(arg0, 0, local19, 0, arg0.length); ArrayUtils.copy(arg0, 0, local19, 0, arg0.length);
return local19; return local19;
} }
} }
@OriginalMember(owner = "client!td", name = "a", descriptor = "(ZZZ)Lclient!ak;") @OriginalMember(owner = "client!td", name = "a", descriptor = "(ZZZ)Lclient!ak;")
@Override @Override
public final Model method4560(@OriginalArg(0) boolean arg0, @OriginalArg(1) boolean arg1, @OriginalArg(2) boolean arg2) { public final Model method4560(@OriginalArg(0) boolean arg0, @OriginalArg(1) boolean arg1, @OriginalArg(2) boolean arg2) {
return this.method4114(arg0, arg1, arg2, aClass8_Sub1_Sub1_4, aClass8_Sub1_Sub1_3); return this.method4114(arg0, arg1, arg2, aClass8_Sub1_Sub1_4, aClass8_Sub1_Sub1_3);
@ -1002,9 +1003,9 @@ public final class GlModel extends Model {
@Pc(247) short local247 = this.vertexBuffer.aShort5; @Pc(247) short local247 = this.vertexBuffer.aShort5;
@Pc(251) short local251 = this.vertexBuffer.aShort8; @Pc(251) short local251 = this.vertexBuffer.aShort8;
@Pc(255) short local255 = this.vertexBuffer.aShort7; @Pc(255) short local255 = this.vertexBuffer.aShort7;
@Pc(290) int[] local290 = new int[] { local243, local247, local243, local247, local243, local247, local243, local247 }; @Pc(290) int[] local290 = new int[]{local243, local247, local243, local247, local243, local247, local243, local247};
@Pc(325) int[] local325 = new int[] { local251, local251, local255, local255, local251, local251, local255, local255 }; @Pc(325) int[] local325 = new int[]{local251, local251, local255, local255, local251, local251, local255, local255};
@Pc(360) int[] local360 = new int[] { local17, local17, local17, local17, local21, local21, local21, local21 }; @Pc(360) int[] local360 = new int[]{local17, local17, local17, local17, local21, local21, local21, local21};
@Pc(362) int local362; @Pc(362) int local362;
@Pc(369) int local369; @Pc(369) int local369;
@Pc(373) int local373; @Pc(373) int local373;
@ -1055,7 +1056,8 @@ public final class GlModel extends Model {
anIntArray467 = new int[this.anInt5296]; anIntArray467 = new int[this.anInt5296];
} }
local362 = 0; local362 = 0;
label118: while (true) { label118:
while (true) {
if (local362 >= this.vertexCount) { if (local362 >= this.vertexCount) {
local362 = 0; local362 = 0;
while (true) { while (true) {
@ -1750,7 +1752,7 @@ public final class GlModel extends Model {
local446 = local428 + anInt5298; local446 = local428 + anInt5298;
local454 = local434 + anInt5300; local454 = local434 + anInt5300;
local462 = local440 + anInt5299; local462 = local440 + anInt5299;
@Pc(1783) int[] local1783 = new int[] { local343 * arg7[0] + 16384 >> 15, local343 * arg7[3] + 16384 >> 15, local343 * arg7[6] + 16384 >> 15, local365 * arg7[1] + 16384 >> 15, local365 * arg7[4] + 16384 >> 15, local365 * arg7[7] + 16384 >> 15, local387 * arg7[2] + 16384 >> 15, local387 * arg7[5] + 16384 >> 15, local387 * arg7[8] + 16384 >> 15 }; @Pc(1783) int[] local1783 = new int[]{local343 * arg7[0] + 16384 >> 15, local343 * arg7[3] + 16384 >> 15, local343 * arg7[6] + 16384 >> 15, local365 * arg7[1] + 16384 >> 15, local365 * arg7[4] + 16384 >> 15, local365 * arg7[7] + 16384 >> 15, local387 * arg7[2] + 16384 >> 15, local387 * arg7[5] + 16384 >> 15, local387 * arg7[8] + 16384 >> 15};
local615 = local343 * local230 + 16384 >> 15; local615 = local343 * local230 + 16384 >> 15;
local640 = local365 * local45 + 16384 >> 15; local640 = local365 * local45 + 16384 >> 15;
local644 = local387 * local53 + 16384 >> 15; local644 = local387 * local53 + 16384 >> 15;
@ -2110,8 +2112,8 @@ public final class GlModel extends Model {
this.vertexBuffer.aShort3 = (short) local9; this.vertexBuffer.aShort3 = (short) local9;
this.vertexBuffer.aShort8 = (short) local5; this.vertexBuffer.aShort8 = (short) local5;
this.vertexBuffer.aShort7 = (short) local11; this.vertexBuffer.aShort7 = (short) local11;
this.vertexBuffer.aShort4 = (short) (Math.sqrt((double) local13) + 0.99D); this.vertexBuffer.aShort4 = (short) (Math.sqrt(local13) + 0.99D);
Math.sqrt((double) local15); Math.sqrt(local15);
this.vertexBuffer.valid = true; this.vertexBuffer.valid = true;
} }
@ -2395,7 +2397,7 @@ public final class GlModel extends Model {
local60 = (int) FogManager.aFloatArray18[0]; local60 = (int) FogManager.aFloatArray18[0];
local71 = (int) FogManager.aFloatArray18[1]; local71 = (int) FogManager.aFloatArray18[1];
local78 = (int) FogManager.aFloatArray18[2]; local78 = (int) FogManager.aFloatArray18[2];
local85 = (int) Math.sqrt((double) (local60 * local60 + local71 * local71 + local78 * local78)); local85 = (int) Math.sqrt(local60 * local60 + local71 * local71 + local78 * local78);
local90 = (int) ((float) this.aShort29 * 1.3F); local90 = (int) ((float) this.aShort29 * 1.3F);
local97 = this.aShort28 * local85 >> 8; local97 = this.aShort28 * local85 >> 8;
for (local99 = 0; local99 < this.anInt5297; local99++) { for (local99 = 0; local99 < this.anInt5297; local99++) {
@ -3317,28 +3319,28 @@ public final class GlModel extends Model {
if (this.bounds.aClass155_4 != null) { if (this.bounds.aClass155_4 != null) {
this.bounds.aClass155_4.method4516(); this.bounds.aClass155_4.method4516();
local172 = this.bounds.aClass155_4; local172 = this.bounds.aClass155_4;
local1.glVertexPointer(3, GL2.GL_FLOAT, this.bounds.anInt4782, (long) this.bounds.anInt4777); local1.glVertexPointer(3, GL2.GL_FLOAT, this.bounds.anInt4782, this.bounds.anInt4777);
} }
if (this.aClass127_1.aClass155_4 != null) { if (this.aClass127_1.aClass155_4 != null) {
if (local172 != this.aClass127_1.aClass155_4) { if (local172 != this.aClass127_1.aClass155_4) {
this.aClass127_1.aClass155_4.method4516(); this.aClass127_1.aClass155_4.method4516();
local172 = this.aClass127_1.aClass155_4; local172 = this.aClass127_1.aClass155_4;
} }
local1.glColorPointer(4, GL2.GL_UNSIGNED_BYTE, this.aClass127_1.anInt4782, (long) this.aClass127_1.anInt4777); local1.glColorPointer(4, GL2.GL_UNSIGNED_BYTE, this.aClass127_1.anInt4782, this.aClass127_1.anInt4777);
} }
if (Preferences.highDetailLighting && this.aClass127_2.aClass155_4 != null) { if (Preferences.highDetailLighting && this.aClass127_2.aClass155_4 != null) {
if (local172 != this.aClass127_2.aClass155_4) { if (local172 != this.aClass127_2.aClass155_4) {
this.aClass127_2.aClass155_4.method4516(); this.aClass127_2.aClass155_4.method4516();
local172 = this.aClass127_2.aClass155_4; local172 = this.aClass127_2.aClass155_4;
} }
local1.glNormalPointer(GL2.GL_FLOAT, this.aClass127_2.anInt4782, (long) this.aClass127_2.anInt4777); local1.glNormalPointer(GL2.GL_FLOAT, this.aClass127_2.anInt4782, this.aClass127_2.anInt4777);
} }
if (this.aClass127_3.aClass155_4 != null) { if (this.aClass127_3.aClass155_4 != null) {
if (local172 != this.aClass127_3.aClass155_4) { if (local172 != this.aClass127_3.aClass155_4) {
this.aClass127_3.aClass155_4.method4516(); this.aClass127_3.aClass155_4.method4516();
local172 = this.aClass127_3.aClass155_4; local172 = this.aClass127_3.aClass155_4;
} }
local1.glTexCoordPointer(2, GL2.GL_FLOAT, this.aClass127_3.anInt4782, (long) this.aClass127_3.anInt4777); local1.glTexCoordPointer(2, GL2.GL_FLOAT, this.aClass127_3.anInt4782, this.aClass127_3.anInt4777);
} }
if (this.aClass127_5.aClass155_4 != null) { if (this.aClass127_5.aClass155_4 != null) {
this.aClass127_5.aClass155_4.method4518(); this.aClass127_5.aClass155_4.method4518();
@ -3382,7 +3384,7 @@ public final class GlModel extends Model {
this.aClass127_5.aByteBuffer8.position(local427 * 12); this.aClass127_5.aByteBuffer8.position(local427 * 12);
local1.glDrawElements(GL2.GL_TRIANGLES, (local434 - local427) * 3, GL2.GL_UNSIGNED_INT, this.aClass127_5.aByteBuffer8); local1.glDrawElements(GL2.GL_TRIANGLES, (local434 - local427) * 3, GL2.GL_UNSIGNED_INT, this.aClass127_5.aByteBuffer8);
} else { } else {
local1.glDrawElements(GL2.GL_TRIANGLES, (local434 - local427) * 3, GL2.GL_UNSIGNED_INT, (long) (local427 * 12)); local1.glDrawElements(GL2.GL_TRIANGLES, (local434 - local427) * 3, GL2.GL_UNSIGNED_INT, local427 * 12);
} }
} }
} }

View file

@ -1,11 +1,12 @@
package rt4; package rt4;
import java.nio.IntBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.IntBuffer;
public final class GlRaster { public final class GlRaster {
@OriginalMember(owner = "client!dj", name = "b", descriptor = "I") @OriginalMember(owner = "client!dj", name = "b", descriptor = "I")
@ -64,7 +65,7 @@ public final class GlRaster {
GlRenderer.method4162(); GlRenderer.method4162();
@Pc(2) GL2 gl = GlRenderer.gl; @Pc(2) GL2 gl = GlRenderer.gl;
gl.glRasterPos2i(x, GlRenderer.canvasHeight - y); gl.glRasterPos2i(x, GlRenderer.canvasHeight - y);
gl.glPixelZoom((float) GameShell.canvasScale, (float) -GameShell.canvasScale); gl.glPixelZoom((float) GameShell.canvasScale, (float) -GameShell.canvasScale);
gl.glDisable(GL2.GL_BLEND); gl.glDisable(GL2.GL_BLEND);
gl.glDisable(GL2.GL_ALPHA_TEST); gl.glDisable(GL2.GL_ALPHA_TEST);
gl.glDrawPixels(width, height, GL2.GL_BGRA, GlRenderer.bigEndian ? GL2.GL_UNSIGNED_INT_8_8_8_8_REV : GL2.GL_UNSIGNED_BYTE, IntBuffer.wrap(arg0)); gl.glDrawPixels(width, height, GL2.GL_BGRA, GlRenderer.bigEndian ? GL2.GL_UNSIGNED_INT_8_8_8_8_REV : GL2.GL_UNSIGNED_BYTE, IntBuffer.wrap(arg0));
@ -191,7 +192,7 @@ public final class GlRaster {
@Pc(21) GL2 gl = GlRenderer.gl; @Pc(21) GL2 gl = GlRenderer.gl;
gl.glEnable(GL2.GL_SCISSOR_TEST); gl.glEnable(GL2.GL_SCISSOR_TEST);
if (clipLeft <= clipRight && clipTop <= clipBottom) { if (clipLeft <= clipRight && clipTop <= clipBottom) {
gl.glScissor((int)(clipLeft * GameShell.canvasScale + GameShell.subpixelX), (int)((GlRenderer.canvasHeight - clipBottom) * GameShell.canvasScale + GameShell.subpixelY), (int)((clipRight - clipLeft) * GameShell.canvasScale + GameShell.subpixelX), (int)((clipBottom - clipTop) * GameShell.canvasScale + GameShell.subpixelY)); gl.glScissor((int) (clipLeft * GameShell.canvasScale + GameShell.subpixelX), (int) ((GlRenderer.canvasHeight - clipBottom) * GameShell.canvasScale + GameShell.subpixelY), (int) ((clipRight - clipLeft) * GameShell.canvasScale + GameShell.subpixelX), (int) ((clipBottom - clipTop) * GameShell.canvasScale + GameShell.subpixelY));
} else { } else {
gl.glScissor(0, 0, 0, 0); gl.glScissor(0, 0, 0, 0);
} }
@ -256,7 +257,7 @@ public final class GlRaster {
@Pc(27) GL2 local27 = GlRenderer.gl; @Pc(27) GL2 local27 = GlRenderer.gl;
local27.glEnable(GL2.GL_SCISSOR_TEST); local27.glEnable(GL2.GL_SCISSOR_TEST);
if (clipLeft <= clipRight && clipTop <= clipBottom) { if (clipLeft <= clipRight && clipTop <= clipBottom) {
local27.glScissor((int)(clipLeft * GameShell.canvasScale + GameShell.subpixelX), (int)((GlRenderer.canvasHeight - clipBottom) * GameShell.canvasScale + GameShell.subpixelY), (int)((clipRight - clipLeft) * GameShell.canvasScale + GameShell.subpixelX), (int)((clipBottom - clipTop) * GameShell.canvasScale + GameShell.subpixelY)); local27.glScissor((int) (clipLeft * GameShell.canvasScale + GameShell.subpixelX), (int) ((GlRenderer.canvasHeight - clipBottom) * GameShell.canvasScale + GameShell.subpixelY), (int) ((clipRight - clipLeft) * GameShell.canvasScale + GameShell.subpixelX), (int) ((clipBottom - clipTop) * GameShell.canvasScale + GameShell.subpixelY));
} else { } else {
local27.glScissor(0, 0, 0, 0); local27.glScissor(0, 0, 0, 0);
} }

View file

@ -1,10 +1,5 @@
package rt4; package rt4;
import java.awt.Canvas;
import java.nio.ByteOrder;
import java.nio.IntBuffer;
import java.nio.charset.StandardCharsets;
import com.jogamp.nativewindow.awt.AWTGraphicsConfiguration; import com.jogamp.nativewindow.awt.AWTGraphicsConfiguration;
import com.jogamp.nativewindow.awt.JAWTWindow; import com.jogamp.nativewindow.awt.JAWTWindow;
import com.jogamp.opengl.*; import com.jogamp.opengl.*;
@ -13,6 +8,11 @@ import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.awt.*;
import java.nio.ByteOrder;
import java.nio.IntBuffer;
import java.nio.charset.StandardCharsets;
public final class GlRenderer { public final class GlRenderer {
@OriginalMember(owner = "client!tf", name = "a", descriptor = "Ljava/lang/String;") @OriginalMember(owner = "client!tf", name = "a", descriptor = "Ljava/lang/String;")
@ -693,7 +693,7 @@ public final class GlRenderer {
if (window.getLock().isLocked()) { if (window.getLock().isLocked()) {
window.unlockSurface(); window.unlockSurface();
} }
gl = GLContext.getCurrentGL().getGL2(); gl = GLContext.getCurrentGL().getGL2();
gl.glLineWidth((float) GameShell.canvasScale); gl.glLineWidth((float) GameShell.canvasScale);
enabled = true; enabled = true;
canvasWidth = canvas.getSize().width; canvasWidth = canvas.getSize().width;
@ -767,7 +767,7 @@ public final class GlRenderer {
@Pc(23) float local23 = (float) arg2 / 512.0F; @Pc(23) float local23 = (float) arg2 / 512.0F;
@Pc(30) float local30 = local23 * (256.0F / (float) arg4); @Pc(30) float local30 = local23 * (256.0F / (float) arg4);
@Pc(37) float local37 = local23 * (256.0F / (float) arg5); @Pc(37) float local37 = local23 * (256.0F / (float) arg5);
gl.glOrtho((double) ((float) local2 * local30), (double) ((float) local6 * local30), (double) ((float) -local13 * local37), (double) ((float) -local9 * local37), (double) (50 - arg3), (double) (GlobalConfig.VIEW_DISTANCE - arg3)); gl.glOrtho((float) local2 * local30, (float) local6 * local30, (float) -local13 * local37, (float) -local9 * local37, 50 - arg3, GlobalConfig.VIEW_DISTANCE - arg3);
setViewportBounds(0, 0, canvasWidth, canvasHeight); setViewportBounds(0, 0, canvasWidth, canvasHeight);
gl.glMatrixMode(GL2.GL_MODELVIEW); gl.glMatrixMode(GL2.GL_MODELVIEW);
gl.glLoadIdentity(); gl.glLoadIdentity();
@ -807,7 +807,7 @@ public final class GlRenderer {
gl.glGenTextures(1, local2, 0); gl.glGenTextures(1, local2, 0);
anInt5328 = local2[0]; anInt5328 = local2[0];
gl.glBindTexture(GL2.GL_TEXTURE_2D, anInt5328); gl.glBindTexture(GL2.GL_TEXTURE_2D, anInt5328);
gl.glTexImage2D(GL2.GL_TEXTURE_2D, 0, 4, 1, 1, 0, GL2.GL_RGBA, GL2.GL_UNSIGNED_BYTE, IntBuffer.wrap(new int[] { -1 })); gl.glTexImage2D(GL2.GL_TEXTURE_2D, 0, 4, 1, 1, 0, GL2.GL_RGBA, GL2.GL_UNSIGNED_BYTE, IntBuffer.wrap(new int[]{-1}));
LightingManager.method2401(); LightingManager.method2401();
MaterialManager.init(); MaterialManager.init();
} }

View file

@ -1,12 +1,13 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!sd") @OriginalClass("client!sd")
public final class GlSolidColorTexture extends SecondaryNode { public final class GlSolidColorTexture extends SecondaryNode {
@ -28,7 +29,7 @@ public final class GlSolidColorTexture extends SecondaryNode {
this.anInt5059 = GlCleaner.contextId; this.anInt5059 = GlCleaner.contextId;
GlRenderer.setTextureId(this.anInt5058); GlRenderer.setTextureId(this.anInt5058);
@Pc(32) int local32 = Rasteriser.palette[arg0]; @Pc(32) int local32 = Rasteriser.palette[arg0];
@Pc(58) byte[] local58 = new byte[] { (byte) (local32 >> 16), (byte) (local32 >> 8), (byte) local32, -1 }; @Pc(58) byte[] local58 = new byte[]{(byte) (local32 >> 16), (byte) (local32 >> 8), (byte) local32, -1};
@Pc(61) ByteBuffer local61 = ByteBuffer.wrap(local58); @Pc(61) ByteBuffer local61 = ByteBuffer.wrap(local58);
local9.glTexImage2D(GL2.GL_TEXTURE_2D, 0, GL2.GL_RGBA, 1, 1, 0, GL2.GL_RGBA, GL2.GL_UNSIGNED_BYTE, local61); local9.glTexImage2D(GL2.GL_TEXTURE_2D, 0, GL2.GL_RGBA, 1, 1, 0, GL2.GL_RGBA, GL2.GL_UNSIGNED_BYTE, local61);
local9.glTexParameteri(GL2.GL_TEXTURE_2D, GL2.GL_TEXTURE_MIN_FILTER, GL2.GL_LINEAR); local9.glTexParameteri(GL2.GL_TEXTURE_2D, GL2.GL_TEXTURE_MIN_FILTER, GL2.GL_LINEAR);

View file

@ -1,12 +1,13 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!cf") @OriginalClass("client!cf")
public class GlSprite extends Sprite { public class GlSprite extends Sprite {

View file

@ -1,12 +1,13 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!uh") @OriginalClass("client!uh")
public final class GlTexture extends SecondaryNode { public final class GlTexture extends SecondaryNode {
@ -86,7 +87,7 @@ public final class GlTexture extends SecondaryNode {
return null; return null;
} }
@Pc(36) int local36 = arg3 ? 64 : 128; @Pc(36) int local36 = arg3 ? 64 : 128;
this.anIntArray481 = this.aClass88_1.method2725(local36, this.aBoolean288, local36, (double) arg1, arg2, arg0, true); this.anIntArray481 = this.aClass88_1.method2725(local36, this.aBoolean288, local36, arg1, arg2, arg0, true);
this.aFloat35 = arg1; this.aFloat35 = arg1;
if (this.aBoolean286) { if (this.aBoolean286) {
@Pc(62) int[] local62 = new int[local36]; @Pc(62) int[] local62 = new int[local36];

View file

@ -1,18 +1,19 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import java.nio.ByteOrder;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
@OriginalClass("client!hg") @OriginalClass("client!hg")
public final class GlTile extends Node { public final class GlTile extends Node {
@OriginalMember(owner = "client!hg", name = "J", descriptor = "Ljava/nio/ByteBuffer;") @OriginalMember(owner = "client!hg", name = "J", descriptor = "Ljava/nio/ByteBuffer;")
public static ByteBuffer aByteBuffer4; public static ByteBuffer aByteBuffer4;
@OriginalMember(owner = "client!hg", name = "U", descriptor = "Lclient!wa;") @OriginalMember(owner = "client!hg", name = "U", descriptor = "Lclient!wa;")
public static Buffer aClass3_Sub15_3; public static Buffer aClass3_Sub15_3;
@OriginalMember(owner = "client!hg", name = "K", descriptor = "Lclient!wa;") @OriginalMember(owner = "client!hg", name = "K", descriptor = "Lclient!wa;")

View file

@ -1,12 +1,13 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!vi") @OriginalClass("client!vi")
public final class GlVertexBufferObject { public final class GlVertexBufferObject {

View file

@ -5,54 +5,54 @@ import org.openrs2.deob.annotation.OriginalMember;
import java.math.BigInteger; import java.math.BigInteger;
public class GlobalConfig { public class GlobalConfig {
// Jagex's RSA key: // Jagex's RSA key:
// public static final BigInteger RSA_MODULUS = new BigInteger("7162900525229798032761816791230527296329313291232324290237849263501208207972894053929065636522363163621000728841182238772712427862772219676577293600221789"); // public static final BigInteger RSA_MODULUS = new BigInteger("7162900525229798032761816791230527296329313291232324290237849263501208207972894053929065636522363163621000728841182238772712427862772219676577293600221789");
// public static final BigInteger RSA_EXPONENT = new BigInteger("58778699976184461502525193738213253649000149147835990136706041084440742975821"); // public static final BigInteger RSA_EXPONENT = new BigInteger("58778699976184461502525193738213253649000149147835990136706041084440742975821");
//region 2009scape-compatibility Configuration //region 2009scape-compatibility Configuration
@OriginalMember(owner = "client!um", name = "V", descriptor = "Ljava/math/BigInteger;") @OriginalMember(owner = "client!um", name = "V", descriptor = "Ljava/math/BigInteger;")
public static final BigInteger RSA_MODULUS = new BigInteger("96982303379631821170939875058071478695026608406924780574168393250855797534862289546229721580153879336741968220328805101128831071152160922518190059946555203865621183480223212969502122536662721687753974815205744569357388338433981424032996046420057284324856368815997832596174397728134370577184183004453899764051"); public static final BigInteger RSA_MODULUS = new BigInteger("96982303379631821170939875058071478695026608406924780574168393250855797534862289546229721580153879336741968220328805101128831071152160922518190059946555203865621183480223212969502122536662721687753974815205744569357388338433981424032996046420057284324856368815997832596174397728134370577184183004453899764051");
@OriginalMember(owner = "client!gm", name = "X", descriptor = "Ljava/math/BigInteger;") @OriginalMember(owner = "client!gm", name = "X", descriptor = "Ljava/math/BigInteger;")
public static final BigInteger RSA_EXPONENT = new BigInteger("65537"); public static final BigInteger RSA_EXPONENT = new BigInteger("65537");
public static String EXTENDED_CONFIG_PATH = "config.json"; public static String EXTENDED_CONFIG_PATH = "config.json";
// Server IP // Server IP
public static String DEFAULT_HOSTNAME = "test.2009scape.org"; public static String DEFAULT_HOSTNAME = "test.2009scape.org";
// Jagex had this at 40000+id // Jagex had this at 40000+id
public static int DEFAULT_PORT = 43594; public static int DEFAULT_PORT = 43594;
// Jagex had this at 50000+id/443 // Jagex had this at 50000+id/443
public static int ALTERNATE_PORT = 43593; public static int ALTERNATE_PORT = 43593;
// If this isn't set, the world server will need to send a default // If this isn't set, the world server will need to send a default
public static boolean SELECT_DEFAULT_WORLD = true; public static boolean SELECT_DEFAULT_WORLD = true;
// Send strings instead of base37 for login/registration packets // Send strings instead of base37 for login/registration packets
public static boolean LOGIN_USE_STRINGS = true; public static boolean LOGIN_USE_STRINGS = true;
// Send additional information like user/serial/mac address // Send additional information like user/serial/mac address
public static boolean LOGIN_EXTRA_INFO = true; public static boolean LOGIN_EXTRA_INFO = true;
// Send an additional empty CRC for idx28 (not in this revision originally) // Send an additional empty CRC for idx28 (not in this revision originally)
public static boolean LOGIN_FAKE_IDX28 = true; public static boolean LOGIN_FAKE_IDX28 = true;
// Packet opcode encryption // Packet opcode encryption
public static boolean USE_ISAAC = false; public static boolean USE_ISAAC = false;
//endregion //endregion
// default distance is 28 // default distance is 28
public static int TILE_DISTANCE = 56; public static int TILE_DISTANCE = 56;
public static int VIEW_DISTANCE = TILE_DISTANCE * 128; public static int VIEW_DISTANCE = TILE_DISTANCE * 128;
public static float VIEW_FADE_DISTANCE = ((float) TILE_DISTANCE / 28.0f) * 256.0f; public static float VIEW_FADE_DISTANCE = ((float) TILE_DISTANCE / 28.0f) * 256.0f;
public static boolean USE_SHIFT_CLICK = true; public static boolean USE_SHIFT_CLICK = true;
public static boolean USE_TWEENING = true; public static boolean USE_TWEENING = true;
public static boolean BILINEAR_MINIMAP = true; public static boolean BILINEAR_MINIMAP = true;
public static boolean MOUSEWHEEL_ZOOM = true; public static boolean MOUSEWHEEL_ZOOM = true;
public static int JS5_RESPONSE_TIMEOUT = 5000; public static int JS5_RESPONSE_TIMEOUT = 5000;
} }

View file

@ -5,26 +5,26 @@ import com.google.gson.Gson;
import java.io.FileReader; import java.io.FileReader;
public class GlobalJsonConfig { public class GlobalJsonConfig {
public static GlobalJsonConfig instance = null; public static GlobalJsonConfig instance = null;
public static void load(String path) { public static void load(String path) {
Gson gson = new Gson(); Gson gson = new Gson();
try { try {
instance = gson.fromJson(new FileReader(path), GlobalJsonConfig.class); instance = gson.fromJson(new FileReader(path), GlobalJsonConfig.class);
} catch (Exception ex) { } catch (Exception ex) {
System.err.println("No config.json file, using defaults"); System.err.println("No config.json file, using defaults");
} }
} }
// ---- // ----
String ip_management; String ip_management;
String ip_address; String ip_address;
int world; int world;
int server_port; int server_port;
int wl_port; int wl_port;
int js5_port; int js5_port;
boolean mouseWheelZoom = GlobalConfig.MOUSEWHEEL_ZOOM; boolean mouseWheelZoom = GlobalConfig.MOUSEWHEEL_ZOOM;
} }

View file

@ -1,11 +1,12 @@
package rt4; package rt4;
import java.util.zip.Inflater;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.util.zip.Inflater;
@OriginalClass("client!ha") @OriginalClass("client!ha")
public final class GzipDecompressor { public final class GzipDecompressor {

View file

@ -5,63 +5,63 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class HintArrowManager { public class HintArrowManager {
@OriginalMember(owner = "client!ih", name = "l", descriptor = "Lclient!n;") @OriginalMember(owner = "client!ih", name = "l", descriptor = "Lclient!n;")
public static final SoftLruHashTable models = new SoftLruHashTable(4); public static final SoftLruHashTable models = new SoftLruHashTable(4);
@OriginalMember(owner = "client!mh", name = "c", descriptor = "(II)V") @OriginalMember(owner = "client!mh", name = "c", descriptor = "(II)V")
public static void clean() { public static void clean() {
models.clean(5); models.clean(5);
} }
@OriginalMember(owner = "client!og", name = "a", descriptor = "(I)V") @OriginalMember(owner = "client!og", name = "a", descriptor = "(I)V")
public static void removeSoft() { public static void removeSoft() {
models.removeSoft(); models.removeSoft();
} }
@OriginalMember(owner = "client!oi", name = "b", descriptor = "(I)V") @OriginalMember(owner = "client!oi", name = "b", descriptor = "(I)V")
public static void clear() { public static void clear() {
models.clear(); models.clear();
} }
@OriginalMember(owner = "client!rm", name = "a", descriptor = "(ZIIIILclient!ak;I)Lclient!ak;") @OriginalMember(owner = "client!rm", name = "a", descriptor = "(ZIIIILclient!ak;I)Lclient!ak;")
public static Model getModel(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) Model arg4, @OriginalArg(6) int arg5) { public static Model getModel(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) Model arg4, @OriginalArg(6) int arg5) {
@Pc(4) long local4 = arg2; @Pc(4) long local4 = arg2;
@Pc(10) Model model = (Model) models.get(local4); @Pc(10) Model model = (Model) models.get(local4);
if (model == null) { if (model == null) {
@Pc(22) RawModel local22 = RawModel.create(client.js5Archive7, arg2); @Pc(22) RawModel local22 = RawModel.create(client.js5Archive7, arg2);
if (local22 == null) { if (local22 == null) {
return null; return null;
} }
model = local22.createModel(64, 768, -50, -10, -50); model = local22.createModel(64, 768, -50, -10, -50);
models.put(model, local4); models.put(model, local4);
} }
@Pc(42) int minX = arg4.getMinX(); @Pc(42) int minX = arg4.getMinX();
@Pc(45) int maxX = arg4.getMaxX(); @Pc(45) int maxX = arg4.getMaxX();
@Pc(48) int minZ = arg4.getMinZ(); @Pc(48) int minZ = arg4.getMinZ();
@Pc(51) int maxZ = arg4.getMaxZ(); @Pc(51) int maxZ = arg4.getMaxZ();
model = model.method4560(true, true, true); model = model.method4560(true, true, true);
if (arg0 != 0) { if (arg0 != 0) {
model.method4554(arg0); model.method4554(arg0);
} }
@Pc(94) int local94; @Pc(94) int local94;
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
@Pc(68) GlModel local68 = (GlModel) model; @Pc(68) GlModel local68 = (GlModel) model;
if (arg5 != SceneGraph.getTileHeight(Player.level, arg3 + minX, arg1 + minZ) || arg5 != SceneGraph.getTileHeight(Player.level, arg3 + maxX, maxZ + arg1)) { if (arg5 != SceneGraph.getTileHeight(Player.level, arg3 + minX, arg1 + minZ) || arg5 != SceneGraph.getTileHeight(Player.level, arg3 + maxX, maxZ + arg1)) {
for (local94 = 0; local94 < local68.vertexCount; local94++) { for (local94 = 0; local94 < local68.vertexCount; local94++) {
local68.vertexY[local94] += SceneGraph.getTileHeight(Player.level, local68.vertexX[local94] + arg3, local68.vertexZ[local94] + arg1) - arg5; local68.vertexY[local94] += SceneGraph.getTileHeight(Player.level, local68.vertexX[local94] + arg3, local68.vertexZ[local94] + arg1) - arg5;
} }
local68.bounds.valid = false; local68.bounds.valid = false;
local68.vertexBuffer.valid = false; local68.vertexBuffer.valid = false;
} }
} else { } else {
@Pc(142) SoftwareModel local142 = (SoftwareModel) model; @Pc(142) SoftwareModel local142 = (SoftwareModel) model;
if (arg5 != SceneGraph.getTileHeight(Player.level, minX + arg3, minZ + arg1) || arg5 != SceneGraph.getTileHeight(Player.level, arg3 + maxX, maxZ + arg1)) { if (arg5 != SceneGraph.getTileHeight(Player.level, minX + arg3, minZ + arg1) || arg5 != SceneGraph.getTileHeight(Player.level, arg3 + maxX, maxZ + arg1)) {
for (local94 = 0; local94 < local142.vertexCount; local94++) { for (local94 = 0; local94 < local142.vertexCount; local94++) {
local142.vertexY[local94] += SceneGraph.getTileHeight(Player.level, arg3 + local142.vertexX[local94], local142.vertexZ[local94] + arg1) - arg5; local142.vertexY[local94] += SceneGraph.getTileHeight(Player.level, arg3 + local142.vertexX[local94], local142.vertexZ[local94] + arg1) - arg5;
} }
local142.boundsValid = false; local142.boundsValid = false;
} }
} }
return model; return model;
} }
} }

View file

@ -3,6 +3,6 @@ package rt4;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
public class HitBarList { public class HitBarList {
@OriginalMember(owner = "client!fm", name = "S", descriptor = "Lclient!n;") @OriginalMember(owner = "client!fm", name = "S", descriptor = "Lclient!n;")
public static final SoftLruHashTable hitBars = new SoftLruHashTable(4); public static final SoftLruHashTable hitBars = new SoftLruHashTable(4);
} }

View file

@ -24,7 +24,7 @@ public final class IdkType {
private int[] bodyModels; private int[] bodyModels;
@OriginalMember(owner = "client!dm", name = "x", descriptor = "[I") @OriginalMember(owner = "client!dm", name = "x", descriptor = "[I")
private final int[] headModels = new int[] { -1, -1, -1, -1, -1 }; private final int[] headModels = new int[]{-1, -1, -1, -1, -1};
@OriginalMember(owner = "client!dm", name = "k", descriptor = "I") @OriginalMember(owner = "client!dm", name = "k", descriptor = "I")
public int feature = -1; public int feature = -1;

View file

@ -23,7 +23,7 @@ public class IdkTypeList {
@OriginalMember(owner = "client!gg", name = "d", descriptor = "(II)Lclient!dm;") @OriginalMember(owner = "client!gg", name = "d", descriptor = "(II)Lclient!dm;")
public static IdkType get(@OriginalArg(0) int arg0) { public static IdkType get(@OriginalArg(0) int arg0) {
@Pc(10) IdkType local10 = (IdkType) types.get((long) arg0); @Pc(10) IdkType local10 = (IdkType) types.get(arg0);
if (local10 != null) { if (local10 != null) {
return local10; return local10;
} }
@ -32,7 +32,7 @@ public class IdkTypeList {
if (local21 != null) { if (local21 != null) {
local10.decode(new Buffer(local21)); local10.decode(new Buffer(local21));
} }
types.put(local10, (long) arg0); types.put(local10, arg0);
return local10; return local10;
} }

View file

@ -5,77 +5,77 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class IgnoreList { public class IgnoreList {
@OriginalMember(owner = "client!pf", name = "h", descriptor = "[J") @OriginalMember(owner = "client!pf", name = "h", descriptor = "[J")
public static final long[] encodedUsernames = new long[100]; public static final long[] encodedUsernames = new long[100];
@OriginalMember(owner = "client!pi", name = "V", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!pi", name = "V", descriptor = "[Lclient!na;")
public static final JagString[] aClass100Array134 = new JagString[100]; public static final JagString[] aClass100Array134 = new JagString[100];
@OriginalMember(owner = "client!cl", name = "Z", descriptor = "I") @OriginalMember(owner = "client!cl", name = "Z", descriptor = "I")
public static int size = 0; public static int size = 0;
@OriginalMember(owner = "client!te", name = "b", descriptor = "(Lclient!na;I)Z") @OriginalMember(owner = "client!te", name = "b", descriptor = "(Lclient!na;I)Z")
public static boolean contains(@OriginalArg(0) JagString arg0) { public static boolean contains(@OriginalArg(0) JagString arg0) {
if (arg0 == null) { if (arg0 == null) {
return false; return false;
} }
for (@Pc(11) int local11 = 0; local11 < size; local11++) { for (@Pc(11) int local11 = 0; local11 < size; local11++) {
if (arg0.equalsIgnoreCase(aClass100Array134[local11])) { if (arg0.equalsIgnoreCase(aClass100Array134[local11])) {
return true; return true;
} }
} }
return false; return false;
} }
@OriginalMember(owner = "client!la", name = "a", descriptor = "(IJ)V") @OriginalMember(owner = "client!la", name = "a", descriptor = "(IJ)V")
public static void add(@OriginalArg(1) long arg0) { public static void add(@OriginalArg(1) long arg0) {
if (arg0 == 0L) { if (arg0 == 0L) {
return; return;
} }
if (size >= 100) { if (size >= 100) {
Chat.add(JagString.EMPTY, 0, LocalizedText.IGNORELISTFULL); Chat.add(JagString.EMPTY, 0, LocalizedText.IGNORELISTFULL);
return; return;
} }
@Pc(34) JagString local34 = Base37.decode37(arg0).toTitleCase(); @Pc(34) JagString local34 = Base37.decode37(arg0).toTitleCase();
@Pc(36) int local36; @Pc(36) int local36;
for (local36 = 0; local36 < size; local36++) { for (local36 = 0; local36 < size; local36++) {
if (encodedUsernames[local36] == arg0) { if (encodedUsernames[local36] == arg0) {
Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[] { local34, LocalizedText.IGNORELISTDUPE})); Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[]{local34, LocalizedText.IGNORELISTDUPE}));
return; return;
} }
} }
for (local36 = 0; local36 < FriendsList.size; local36++) { for (local36 = 0; local36 < FriendsList.size; local36++) {
if (FriendsList.encodedUsernames[local36] == arg0) { if (FriendsList.encodedUsernames[local36] == arg0) {
Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[] { LocalizedText.REMOVESOCIAL2, local34, LocalizedText.REMOVEFRIEND})); Chat.add(JagString.EMPTY, 0, JagString.concatenate(new JagString[]{LocalizedText.REMOVESOCIAL2, local34, LocalizedText.REMOVEFRIEND}));
return; return;
} }
} }
if (local34.strEquals(PlayerList.self.username)) { if (local34.strEquals(PlayerList.self.username)) {
Chat.add(JagString.EMPTY, 0, LocalizedText.IGNORECANTADDSELF); Chat.add(JagString.EMPTY, 0, LocalizedText.IGNORECANTADDSELF);
return; return;
} }
encodedUsernames[size] = arg0; encodedUsernames[size] = arg0;
aClass100Array134[size++] = Base37.decode37(arg0); aClass100Array134[size++] = Base37.decode37(arg0);
FriendsList.transmitAt = InterfaceList.transmitTimer; FriendsList.transmitAt = InterfaceList.transmitTimer;
Protocol.outboundBuffer.p1isaac(34); Protocol.outboundBuffer.p1isaac(34);
Protocol.outboundBuffer.p8(arg0); Protocol.outboundBuffer.p8(arg0);
} }
@OriginalMember(owner = "client!fh", name = "a", descriptor = "(JI)V") @OriginalMember(owner = "client!fh", name = "a", descriptor = "(JI)V")
public static void remove(@OriginalArg(0) long arg0) { public static void remove(@OriginalArg(0) long arg0) {
if (arg0 == 0L) { if (arg0 == 0L) {
return; return;
} }
for (@Pc(12) int local12 = 0; local12 < size; local12++) { for (@Pc(12) int local12 = 0; local12 < size; local12++) {
if (encodedUsernames[local12] == arg0) { if (encodedUsernames[local12] == arg0) {
size--; size--;
for (@Pc(36) int local36 = local12; local36 < size; local36++) { for (@Pc(36) int local36 = local12; local36 < size; local36++) {
encodedUsernames[local36] = encodedUsernames[local36 + 1]; encodedUsernames[local36] = encodedUsernames[local36 + 1];
aClass100Array134[local36] = aClass100Array134[local36 + 1]; aClass100Array134[local36] = aClass100Array134[local36 + 1];
} }
FriendsList.transmitAt = InterfaceList.transmitTimer; FriendsList.transmitAt = InterfaceList.transmitTimer;
Protocol.outboundBuffer.p1isaac(213); Protocol.outboundBuffer.p1isaac(213);
Protocol.outboundBuffer.p8(arg0); Protocol.outboundBuffer.p8(arg0);
break; break;
} }
} }
} }
} }

View file

@ -1,20 +1,14 @@
package rt4; package rt4;
import java.awt.Component;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Shape;
import java.awt.image.ColorModel;
import java.awt.image.DirectColorModel;
import java.awt.image.ImageConsumer;
import java.awt.image.ImageObserver;
import java.awt.image.ImageProducer;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.awt.Component;
import java.awt.*;
import java.awt.image.*;
@OriginalClass("client!di") @OriginalClass("client!di")
public final class ImageProducerFrameBuffer extends FrameBuffer implements ImageProducer, ImageObserver { public final class ImageProducerFrameBuffer extends FrameBuffer implements ImageProducer, ImageObserver {

View file

@ -5,57 +5,57 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class IntUtils { public class IntUtils {
@OriginalMember(owner = "client!ra", name = "b", descriptor = "(III)I") @OriginalMember(owner = "client!ra", name = "b", descriptor = "(III)I")
public static int pow(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) { public static int pow(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
@Pc(15) int local15 = 1; @Pc(15) int local15 = 1;
while (arg0 > 1) { while (arg0 > 1) {
if ((arg0 & 0x1) != 0) { if ((arg0 & 0x1) != 0) {
local15 *= arg1; local15 *= arg1;
} }
arg1 *= arg1; arg1 *= arg1;
arg0 >>= 0x1; arg0 >>= 0x1;
} }
if (arg0 == 1) { if (arg0 == 1) {
return local15 * arg1; return local15 * arg1;
} else { } else {
return local15; return local15;
} }
} }
@OriginalMember(owner = "client!nb", name = "a", descriptor = "(BI)I") @OriginalMember(owner = "client!nb", name = "a", descriptor = "(BI)I")
public static int clp2(@OriginalArg(1) int arg0) { public static int clp2(@OriginalArg(1) int arg0) {
@Pc(0) int local0 = arg0 - 1; @Pc(0) int local0 = arg0 - 1;
@Pc(6) int local6 = local0 | local0 >>> 1; @Pc(6) int local6 = local0 | local0 >>> 1;
@Pc(22) int local22 = local6 | local6 >>> 2; @Pc(22) int local22 = local6 | local6 >>> 2;
@Pc(28) int local28 = local22 | local22 >>> 4; @Pc(28) int local28 = local22 | local22 >>> 4;
@Pc(34) int local34 = local28 | local28 >>> 8; @Pc(34) int local34 = local28 | local28 >>> 8;
@Pc(40) int local40 = local34 | local34 >>> 16; @Pc(40) int local40 = local34 | local34 >>> 16;
return local40 + 1; return local40 + 1;
} }
@OriginalMember(owner = "client!qi", name = "b", descriptor = "(II)I") @OriginalMember(owner = "client!qi", name = "b", descriptor = "(II)I")
public static int bitCount(@OriginalArg(0) int arg0) { public static int bitCount(@OriginalArg(0) int arg0) {
@Pc(5) int local5 = 0; @Pc(5) int local5 = 0;
if (arg0 < 0 || arg0 >= 65536) { if (arg0 < 0 || arg0 >= 65536) {
local5 += 16; local5 += 16;
arg0 >>>= 0x10; arg0 >>>= 0x10;
} }
if (arg0 >= 256) { if (arg0 >= 256) {
local5 += 8; local5 += 8;
arg0 >>>= 0x8; arg0 >>>= 0x8;
} }
if (arg0 >= 16) { if (arg0 >= 16) {
local5 += 4; local5 += 4;
arg0 >>>= 0x4; arg0 >>>= 0x4;
} }
if (arg0 >= 4) { if (arg0 >= 4) {
arg0 >>>= 0x2; arg0 >>>= 0x2;
local5 += 2; local5 += 2;
} }
if (arg0 >= 1) { if (arg0 >= 1) {
arg0 >>>= 0x1; arg0 >>>= 0x1;
local5++; local5++;
} }
return arg0 + local5; return arg0 + local5;
} }
} }

File diff suppressed because it is too large Load diff

View file

@ -8,277 +8,277 @@ import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!qe") @OriginalClass("client!qe")
public final class Inv extends Node { public final class Inv extends Node {
@OriginalMember(owner = "client!cb", name = "I", descriptor = "[I") @OriginalMember(owner = "client!cb", name = "I", descriptor = "[I")
public static final int[] updatedInventories = new int[32]; public static final int[] updatedInventories = new int[32];
@OriginalMember(owner = "client!kl", name = "u", descriptor = "Lclient!na;") @OriginalMember(owner = "client!kl", name = "u", descriptor = "Lclient!na;")
public static final JagString aClass100_637 = JagString.parse("<col=ffffff>"); public static final JagString aClass100_637 = JagString.parse("<col=ffffff>");
@OriginalMember(owner = "client!ol", name = "Y", descriptor = "Lclient!na;") @OriginalMember(owner = "client!ol", name = "Y", descriptor = "Lclient!na;")
public static final JagString aClass100_819 = JagString.parse("<col=00ff80>"); public static final JagString aClass100_819 = JagString.parse("<col=00ff80>");
@OriginalMember(owner = "client!ib", name = "g", descriptor = "Lclient!na;") @OriginalMember(owner = "client!ib", name = "g", descriptor = "Lclient!na;")
public static final JagString aClass100_559 = JagString.parse("<col=ffff00>"); public static final JagString aClass100_559 = JagString.parse("<col=ffff00>");
@OriginalMember(owner = "client!jj", name = "m", descriptor = "Lclient!na;") @OriginalMember(owner = "client!jj", name = "m", descriptor = "Lclient!na;")
public static final JagString aClass100_594 = JagString.parse("<)4col>"); public static final JagString aClass100_594 = JagString.parse("<)4col>");
@OriginalMember(owner = "client!ii", name = "c", descriptor = "I") @OriginalMember(owner = "client!ii", name = "c", descriptor = "I")
public static int updatedInventoriesWriterIndex = 0; public static int updatedInventoriesWriterIndex = 0;
@OriginalMember(owner = "client!bj", name = "v", descriptor = "Lclient!sc;") @OriginalMember(owner = "client!bj", name = "v", descriptor = "Lclient!sc;")
public static HashTable objectContainerCache = new HashTable(32); public static HashTable objectContainerCache = new HashTable(32);
@OriginalMember(owner = "client!qe", name = "p", descriptor = "[I") @OriginalMember(owner = "client!qe", name = "p", descriptor = "[I")
public int[] objectIds = new int[] { -1 }; public int[] objectIds = new int[]{-1};
@OriginalMember(owner = "client!qe", name = "u", descriptor = "[I") @OriginalMember(owner = "client!qe", name = "u", descriptor = "[I")
public int[] anIntArray422 = new int[] { 0 }; public int[] anIntArray422 = new int[]{0};
@OriginalMember(owner = "client!ba", name = "a", descriptor = "(IB)I") @OriginalMember(owner = "client!ba", name = "a", descriptor = "(IB)I")
public static int getFreeSpace(@OriginalArg(0) int arg0) { public static int getFreeSpace(@OriginalArg(0) int arg0) {
if (arg0 < 0) { if (arg0 < 0) {
return 0; return 0;
} }
@Pc(17) Inv local17 = (Inv) objectContainerCache.get((long) arg0); @Pc(17) Inv local17 = (Inv) objectContainerCache.get(arg0);
if (local17 == null) { if (local17 == null) {
return InvTypeList.get(arg0).size; return InvTypeList.get(arg0).size;
} }
@Pc(31) int freeSpaces = 0; @Pc(31) int freeSpaces = 0;
for (@Pc(33) int id = 0; id < local17.objectIds.length; id++) { for (@Pc(33) int id = 0; id < local17.objectIds.length; id++) {
if (local17.objectIds[id] == -1) { if (local17.objectIds[id] == -1) {
freeSpaces++; freeSpaces++;
} }
} }
return freeSpaces + InvTypeList.get(arg0).size - local17.objectIds.length; return freeSpaces + InvTypeList.get(arg0).size - local17.objectIds.length;
} }
@OriginalMember(owner = "client!od", name = "a", descriptor = "(IZII)I") @OriginalMember(owner = "client!od", name = "a", descriptor = "(IZII)I")
public static int getTotalParam(@OriginalArg(1) boolean arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) { public static int getTotalParam(@OriginalArg(1) boolean arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
@Pc(19) Inv local19 = (Inv) objectContainerCache.get((long) arg1); @Pc(19) Inv local19 = (Inv) objectContainerCache.get(arg1);
if (local19 == null) { if (local19 == null) {
return 0; return 0;
} }
@Pc(27) int local27 = 0; @Pc(27) int local27 = 0;
for (@Pc(29) int local29 = 0; local29 < local19.objectIds.length; local29++) { for (@Pc(29) int local29 = 0; local29 < local19.objectIds.length; local29++) {
if (local19.objectIds[local29] >= 0 && ObjTypeList.anInt3245 > local19.objectIds[local29]) { if (local19.objectIds[local29] >= 0 && ObjTypeList.anInt3245 > local19.objectIds[local29]) {
@Pc(56) ObjType local56 = ObjTypeList.get(local19.objectIds[local29]); @Pc(56) ObjType local56 = ObjTypeList.get(local19.objectIds[local29]);
if (local56.params != null) { if (local56.params != null) {
@Pc(68) IntNode local68 = (IntNode) local56.params.get((long) arg2); @Pc(68) IntNode local68 = (IntNode) local56.params.get(arg2);
if (local68 != null) { if (local68 != null) {
if (arg0) { if (arg0) {
local27 += local19.anIntArray422[local29] * local68.value; local27 += local19.anIntArray422[local29] * local68.value;
} else { } else {
local27 += local68.value; local27 += local68.value;
} }
} }
} }
} }
} }
return local27; return local27;
} }
@OriginalMember(owner = "client!wj", name = "a", descriptor = "(BII)I") @OriginalMember(owner = "client!wj", name = "a", descriptor = "(BII)I")
public static int getSlotTotal(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) { public static int getSlotTotal(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) {
@Pc(8) Inv local8 = (Inv) objectContainerCache.get((long) arg0); @Pc(8) Inv local8 = (Inv) objectContainerCache.get(arg0);
if (local8 == null) { if (local8 == null) {
return 0; return 0;
} else if (arg1 == -1) { } else if (arg1 == -1) {
return 0; return 0;
} else { } else {
@Pc(25) int local25 = 0; @Pc(25) int local25 = 0;
for (@Pc(27) int local27 = 0; local27 < local8.anIntArray422.length; local27++) { for (@Pc(27) int local27 = 0; local27 < local8.anIntArray422.length; local27++) {
if (arg1 == local8.objectIds[local27]) { if (arg1 == local8.objectIds[local27]) {
local25 += local8.anIntArray422[local27]; local25 += local8.anIntArray422[local27];
} }
} }
return local25; return local25;
} }
} }
@OriginalMember(owner = "client!bm", name = "a", descriptor = "(III)I") @OriginalMember(owner = "client!bm", name = "a", descriptor = "(III)I")
public static int getItemCount(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) { public static int getItemCount(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) {
@Pc(10) Inv local10 = (Inv) objectContainerCache.get((long) arg0); @Pc(10) Inv local10 = (Inv) objectContainerCache.get(arg0);
if (local10 == null) { if (local10 == null) {
return 0; return 0;
} else if (arg1 >= 0 && arg1 < local10.anIntArray422.length) { } else if (arg1 >= 0 && arg1 < local10.anIntArray422.length) {
return local10.anIntArray422[arg1]; return local10.anIntArray422[arg1];
} else { } else {
return 0; return 0;
} }
} }
@OriginalMember(owner = "client!be", name = "a", descriptor = "(III)I") @OriginalMember(owner = "client!be", name = "a", descriptor = "(III)I")
public static int getItemType(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) { public static int getItemType(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) {
@Pc(10) Inv local10 = (Inv) objectContainerCache.get((long) arg0); @Pc(10) Inv local10 = (Inv) objectContainerCache.get(arg0);
if (local10 == null) { if (local10 == null) {
return -1; return -1;
} else if (arg1 >= 0 && arg1 < local10.objectIds.length) { } else if (arg1 >= 0 && arg1 < local10.objectIds.length) {
return local10.objectIds[arg1]; return local10.objectIds[arg1];
} else { } else {
return -1; return -1;
} }
} }
@OriginalMember(owner = "client!bc", name = "d", descriptor = "(II)V") @OriginalMember(owner = "client!bc", name = "d", descriptor = "(II)V")
public static void delete(@OriginalArg(0) int arg0) { public static void delete(@OriginalArg(0) int arg0) {
@Pc(14) Inv local14 = (Inv) objectContainerCache.get((long) arg0); @Pc(14) Inv local14 = (Inv) objectContainerCache.get(arg0);
if (local14 != null) { if (local14 != null) {
local14.unlink(); local14.unlink();
} }
} }
@OriginalMember(owner = "client!hn", name = "f", descriptor = "(B)V") @OriginalMember(owner = "client!hn", name = "f", descriptor = "(B)V")
public static void method2073() { public static void method2073() {
objectContainerCache = new HashTable(32); objectContainerCache = new HashTable(32);
} }
@OriginalMember(owner = "client!wl", name = "a", descriptor = "(IIIIB)V") @OriginalMember(owner = "client!wl", name = "a", descriptor = "(IIIIB)V")
public static void updateContainer(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3) { public static void updateContainer(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3) {
@Pc(12) Inv local12 = (Inv) objectContainerCache.get((long) arg3); @Pc(12) Inv local12 = (Inv) objectContainerCache.get(arg3);
if (local12 == null) { if (local12 == null) {
local12 = new Inv(); local12 = new Inv();
objectContainerCache.put(local12, (long) arg3); objectContainerCache.put(local12, arg3);
} }
if (arg1 >= local12.objectIds.length) { if (arg1 >= local12.objectIds.length) {
@Pc(39) int[] local39 = new int[arg1 + 1]; @Pc(39) int[] local39 = new int[arg1 + 1];
@Pc(44) int[] local44 = new int[arg1 + 1]; @Pc(44) int[] local44 = new int[arg1 + 1];
@Pc(46) int local46; @Pc(46) int local46;
for (local46 = 0; local46 < local12.objectIds.length; local46++) { for (local46 = 0; local46 < local12.objectIds.length; local46++) {
local39[local46] = local12.objectIds[local46]; local39[local46] = local12.objectIds[local46];
local44[local46] = local12.anIntArray422[local46]; local44[local46] = local12.anIntArray422[local46];
} }
for (local46 = local12.objectIds.length; local46 < arg1; local46++) { for (local46 = local12.objectIds.length; local46 < arg1; local46++) {
local39[local46] = -1; local39[local46] = -1;
local44[local46] = 0; local44[local46] = 0;
} }
local12.objectIds = local39; local12.objectIds = local39;
local12.anIntArray422 = local44; local12.anIntArray422 = local44;
} }
local12.objectIds[arg1] = arg0; local12.objectIds[arg1] = arg0;
local12.anIntArray422[arg1] = arg2; local12.anIntArray422[arg1] = arg2;
} }
@OriginalMember(owner = "client!pf", name = "a", descriptor = "(IIZIII)Lclient!qf;") @OriginalMember(owner = "client!pf", name = "a", descriptor = "(IIZIII)Lclient!qf;")
public static Sprite getObjectSprite(@OriginalArg(0) int selected, @OriginalArg(1) int id, @OriginalArg(2) boolean drawText, @OriginalArg(3) int count, @OriginalArg(4) int shadow) { public static Sprite getObjectSprite(@OriginalArg(0) int selected, @OriginalArg(1) int id, @OriginalArg(2) boolean drawText, @OriginalArg(3) int count, @OriginalArg(4) int shadow) {
@Pc(27) int key = (drawText ? 65536 : 0) + id + (selected << 17) + (shadow << 19); @Pc(27) int key = (drawText ? 65536 : 0) + id + (selected << 17) + (shadow << 19);
@Pc(37) long uid = (long) key * 3849834839L + (long) count * 3147483667L; @Pc(37) long uid = (long) key * 3849834839L + (long) count * 3147483667L;
@Pc(43) Sprite sprite = (Sprite) ObjTypeList.objectSpriteCache.get(uid); @Pc(43) Sprite sprite = (Sprite) ObjTypeList.objectSpriteCache.get(uid);
if (sprite != null) { if (sprite != null) {
return sprite; return sprite;
} }
Rasteriser.textureHasTransparency = false; Rasteriser.textureHasTransparency = false;
sprite = renderObjectSprite(shadow, false, id, drawText, selected, count, false); sprite = renderObjectSprite(shadow, false, id, drawText, selected, count, false);
if (sprite != null && !Rasteriser.textureHasTransparency) { if (sprite != null && !Rasteriser.textureHasTransparency) {
ObjTypeList.objectSpriteCache.put(sprite, uid); ObjTypeList.objectSpriteCache.put(sprite, uid);
} }
return sprite; return sprite;
} }
@OriginalMember(owner = "client!na", name = "a", descriptor = "(IBZIZIIZ)Lclient!qf;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(IBZIZIIZ)Lclient!qf;")
public static Sprite renderObjectSprite(@OriginalArg(0) int shadow, @OriginalArg(2) boolean linked, @OriginalArg(3) int id, @OriginalArg(4) boolean drawText, @OriginalArg(5) int state, @OriginalArg(6) int stack, @OriginalArg(7) boolean cert) { public static Sprite renderObjectSprite(@OriginalArg(0) int shadow, @OriginalArg(2) boolean linked, @OriginalArg(3) int id, @OriginalArg(4) boolean drawText, @OriginalArg(5) int state, @OriginalArg(6) int stack, @OriginalArg(7) boolean cert) {
@Pc(5) ObjType objType = ObjTypeList.get(id); @Pc(5) ObjType objType = ObjTypeList.get(id);
if (stack > 1 && objType.countobj != null) { if (stack > 1 && objType.countobj != null) {
@Pc(15) int stackId = -1; @Pc(15) int stackId = -1;
for (@Pc(17) int i = 0; i < 10; i++) { for (@Pc(17) int i = 0; i < 10; i++) {
if (stack >= objType.countco[i] && objType.countco[i] != 0) { if (stack >= objType.countco[i] && objType.countco[i] != 0) {
stackId = objType.countobj[i]; stackId = objType.countobj[i];
} }
} }
if (stackId != -1) { if (stackId != -1) {
objType = ObjTypeList.get(stackId); objType = ObjTypeList.get(stackId);
} }
} }
@Pc(60) SoftwareModel model = objType.getInvModel(); @Pc(60) SoftwareModel model = objType.getInvModel();
if (model == null) { if (model == null) {
return null; return null;
} }
@Pc(71) SoftwareSprite linkedSprite = null; @Pc(71) SoftwareSprite linkedSprite = null;
if (objType.certtemplate != -1) { if (objType.certtemplate != -1) {
linkedSprite = (SoftwareSprite) renderObjectSprite(0, true, objType.certlink, false, 1, 10, true); linkedSprite = (SoftwareSprite) renderObjectSprite(0, true, objType.certlink, false, 1, 10, true);
if (linkedSprite == null) { if (linkedSprite == null) {
return null; return null;
} }
} else if (objType.lentTemplate != -1) { } else if (objType.lentTemplate != -1) {
linkedSprite = (SoftwareSprite) renderObjectSprite(shadow, true, objType.lentLink, false, state, stack, false); linkedSprite = (SoftwareSprite) renderObjectSprite(shadow, true, objType.lentLink, false, state, stack, false);
if (linkedSprite == null) { if (linkedSprite == null) {
return null; return null;
} }
} }
@Pc(118) int[] pixels = SoftwareRaster.pixels; @Pc(118) int[] pixels = SoftwareRaster.pixels;
@Pc(120) int width = SoftwareRaster.width; @Pc(120) int width = SoftwareRaster.width;
@Pc(122) int height = SoftwareRaster.height; @Pc(122) int height = SoftwareRaster.height;
@Pc(125) int[] clip = new int[4]; @Pc(125) int[] clip = new int[4];
SoftwareRaster.saveClip(clip); SoftwareRaster.saveClip(clip);
final int canvasWidth = 36; final int canvasWidth = 36;
final int canvasHeight = 32; final int canvasHeight = 32;
@Pc(133) SoftwareSprite canvas = new SoftwareSprite(canvasWidth, canvasHeight); @Pc(133) SoftwareSprite canvas = new SoftwareSprite(canvasWidth, canvasHeight);
SoftwareRaster.setSize(canvas.pixels, canvasWidth, canvasHeight); SoftwareRaster.setSize(canvas.pixels, canvasWidth, canvasHeight);
Rasteriser.prepare(); Rasteriser.prepare();
Rasteriser.setBounds(canvasWidth / 2, canvasHeight / 2); Rasteriser.setBounds(canvasWidth / 2, canvasHeight / 2);
Rasteriser.jagged = false; Rasteriser.jagged = false;
@Pc(145) int zoom = objType.zoom2d; // / 4; @Pc(145) int zoom = objType.zoom2d; // / 4;
if (cert) { if (cert) {
zoom = (int) ((double) zoom * 1.5D); zoom = (int) ((double) zoom * 1.5D);
} else if (state == 2) { } else if (state == 2) {
zoom = (int) ((double) zoom * 1.04D); zoom = (int) ((double) zoom * 1.04D);
} }
@Pc(176) int pitchcos = MathUtils.cos[objType.xAngle2D] * zoom >> 16; @Pc(176) int pitchcos = MathUtils.cos[objType.xAngle2D] * zoom >> 16;
@Pc(185) int pitchsin = MathUtils.sin[objType.xAngle2D] * zoom >> 16; @Pc(185) int pitchsin = MathUtils.sin[objType.xAngle2D] * zoom >> 16;
model.setCamera(objType.yAngle2D, objType.zAngle2D, objType.xAngle2D, objType.xOffset2D, pitchsin + objType.yOffset2D - model.getMinY() / 2, objType.yOffset2D + pitchcos, -1L); model.setCamera(objType.yAngle2D, objType.zAngle2D, objType.xAngle2D, objType.xOffset2D, pitchsin + objType.yOffset2D - model.getMinY() / 2, objType.yOffset2D + pitchcos, -1L);
if (state >= 1) { if (state >= 1) {
canvas.drawOutline(1); canvas.drawOutline(1);
if (state >= 2) { if (state >= 2) {
canvas.drawOutline(16777215); canvas.drawOutline(16777215);
} }
SoftwareRaster.setSize(canvas.pixels, canvasWidth, canvasHeight); SoftwareRaster.setSize(canvas.pixels, canvasWidth, canvasHeight);
} }
if (shadow != 0) { if (shadow != 0) {
canvas.drawShadow(shadow); canvas.drawShadow(shadow);
} }
if (objType.certtemplate != -1) { if (objType.certtemplate != -1) {
linkedSprite.render(0, 0); linkedSprite.render(0, 0);
} else if (objType.lentTemplate != -1) { } else if (objType.lentTemplate != -1) {
SoftwareRaster.setSize(linkedSprite.pixels, canvasWidth, canvasHeight); SoftwareRaster.setSize(linkedSprite.pixels, canvasWidth, canvasHeight);
canvas.render(0, 0); canvas.render(0, 0);
canvas = linkedSprite; canvas = linkedSprite;
} }
if (drawText && (objType.stackable == 1 || stack != 1) && stack != -1) { if (drawText && (objType.stackable == 1 || stack != 1) && stack != -1) {
ObjTypeList.font.renderLeft(formatObjAmount(stack), 0, 9, 16776960, 1); ObjTypeList.font.renderLeft(formatObjAmount(stack), 0, 9, 16776960, 1);
} }
SoftwareRaster.setSize(pixels, width, height); SoftwareRaster.setSize(pixels, width, height);
SoftwareRaster.restoreClip(clip); SoftwareRaster.restoreClip(clip);
Rasteriser.prepare(); Rasteriser.prepare();
Rasteriser.jagged = true; Rasteriser.jagged = true;
return GlRenderer.enabled && !linked ? new GlSprite(canvas) : canvas; return GlRenderer.enabled && !linked ? new GlSprite(canvas) : canvas;
} }
@OriginalMember(owner = "client!eb", name = "b", descriptor = "(II)Lclient!na;") @OriginalMember(owner = "client!eb", name = "b", descriptor = "(II)Lclient!na;")
public static JagString formatObjAmount(@OriginalArg(1) int arg0) { public static JagString formatObjAmount(@OriginalArg(1) int arg0) {
if (arg0 < 100000) { if (arg0 < 100000) {
return JagString.concatenate(new JagString[] { aClass100_559, JagString.parseInt(arg0), aClass100_594 }); return JagString.concatenate(new JagString[]{aClass100_559, JagString.parseInt(arg0), aClass100_594});
} else if (arg0 >= 10000000) { } else if (arg0 >= 10000000) {
return JagString.concatenate(new JagString[] { aClass100_819, JagString.parseInt(arg0 / 1000000), LocalizedText.MILLION, aClass100_594 }); return JagString.concatenate(new JagString[]{aClass100_819, JagString.parseInt(arg0 / 1000000), LocalizedText.MILLION, aClass100_594});
} else { } else {
return JagString.concatenate(new JagString[] { aClass100_637, JagString.parseInt(arg0 / 1000), LocalizedText.THOUSAND, aClass100_594 }); return JagString.concatenate(new JagString[]{aClass100_637, JagString.parseInt(arg0 / 1000), LocalizedText.THOUSAND, aClass100_594});
} }
} }
@OriginalMember(owner = "client!bd", name = "a", descriptor = "(BI)V") @OriginalMember(owner = "client!bd", name = "a", descriptor = "(BI)V")
public static void method475(@OriginalArg(1) int arg0) { public static void method475(@OriginalArg(1) int arg0) {
@Pc(8) Inv local8 = (Inv) objectContainerCache.get((long) arg0); @Pc(8) Inv local8 = (Inv) objectContainerCache.get(arg0);
if (local8 != null) { if (local8 != null) {
for (@Pc(24) int local24 = 0; local24 < local8.objectIds.length; local24++) { for (@Pc(24) int local24 = 0; local24 < local8.objectIds.length; local24++) {
local8.objectIds[local24] = -1; local8.objectIds[local24] = -1;
local8.anIntArray422[local24] = 0; local8.anIntArray422[local24] = 0;
} }
} }
} }
} }

View file

@ -5,28 +5,28 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class InvTypeList { public class InvTypeList {
@OriginalMember(owner = "client!ha", name = "p", descriptor = "Lclient!gn;") @OriginalMember(owner = "client!ha", name = "p", descriptor = "Lclient!gn;")
public static final LruHashTable types = new LruHashTable(64); public static final LruHashTable types = new LruHashTable(64);
@OriginalMember(owner = "client!al", name = "q", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!al", name = "q", descriptor = "Lclient!ve;")
public static Js5 archive; public static Js5 archive;
@OriginalMember(owner = "client!je", name = "a", descriptor = "(ILclient!ve;)V") @OriginalMember(owner = "client!je", name = "a", descriptor = "(ILclient!ve;)V")
public static void init(@OriginalArg(1) Js5 arg0) { public static void init(@OriginalArg(1) Js5 arg0) {
archive = arg0; archive = arg0;
} }
@OriginalMember(owner = "client!u", name = "a", descriptor = "(II)Lclient!md;") @OriginalMember(owner = "client!u", name = "a", descriptor = "(II)Lclient!md;")
public static InvType get(@OriginalArg(0) int id) { public static InvType get(@OriginalArg(0) int id) {
@Pc(16) InvType invType = (InvType) types.get((long) id); @Pc(16) InvType invType = (InvType) types.get(id);
if (invType != null) { if (invType != null) {
return invType; return invType;
} }
@Pc(27) byte[] data = archive.fetchFile(5, id); @Pc(27) byte[] data = archive.fetchFile(5, id);
invType = new InvType(); invType = new InvType();
if (data != null) { if (data != null) {
invType.decode(new Buffer(data)); invType.decode(new Buffer(data));
} }
types.put(invType, (long) id); types.put(invType, id);
return invType; return invType;
} }
} }

View file

@ -1,22 +1,21 @@
package rt4; package rt4;
import java.applet.Applet;
import java.awt.FontMetrics;
import java.awt.Graphics;
import java.net.MalformedURLException;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.applet.Applet;
import java.awt.*;
import java.net.MalformedURLException;
import java.net.URL;
import java.nio.charset.StandardCharsets;
@OriginalClass("client!na") @OriginalClass("client!na")
public final class JagString implements StringInterface { public final class JagString implements StringInterface {
@OriginalMember(owner = "client!pa", name = "O", descriptor = "Lclient!na;") @OriginalMember(owner = "client!pa", name = "O", descriptor = "Lclient!na;")
public static final JagString EMPTY = parse(""); public static final JagString EMPTY = parse("");
@OriginalMember(owner = "client!pi", name = "Q", descriptor = "Lclient!na;") @OriginalMember(owner = "client!pi", name = "Q", descriptor = "Lclient!na;")
public static final JagString aClass100_853 = parse("null"); public static final JagString aClass100_853 = parse("null");
@OriginalMember(owner = "client!t", name = "C", descriptor = "Lclient!na;") @OriginalMember(owner = "client!t", name = "C", descriptor = "Lclient!na;")
@ -36,12 +35,12 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!bm", name = "p", descriptor = "Lclient!na;") @OriginalMember(owner = "client!bm", name = "p", descriptor = "Lclient!na;")
public static final JagString aClass100_133 = parse("(U1"); public static final JagString aClass100_133 = parse("(U1");
@OriginalMember(owner = "client!vk", name = "a", descriptor = "[I") @OriginalMember(owner = "client!vk", name = "a", descriptor = "[I")
public static final int[] anIntArray471 = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 73, 74, 76, 78, 83, 84, 85, 86, 91, 92, 93, 94, 95, 97, 103, 104, 105, 106, 107, 108, 113, 114, 115, 116, 118, 119, 120, 121, 122, 123, 124, 125, 133, 134, 136, 138, 143, 144, 145, 146, 151, 152, 153, 154, 155, 157, 163, 164, 165, 166, 168, 169, 174, 175, 176, 177, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 97, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 157, 215, 216, 117, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 66, 66, 66, 66, 66, 66, 65, 75, 79, 79, 79, 79, 87, 87, 87, 87, 77, 96, 98, 98, 98, 98, 98, 250, 251, 109, 109, 109, 109, 117, 252, 167, 126, 126, 126, 126, 126, 126, 125, 135, 139, 139, 139, 139, 147, 147, 147, 147, 137, 156, 158, 158, 158, 158, 158, 253, 254, 170, 170, 170, 170, 178, 255, 178 }; public static final int[] anIntArray471 = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 73, 74, 76, 78, 83, 84, 85, 86, 91, 92, 93, 94, 95, 97, 103, 104, 105, 106, 107, 108, 113, 114, 115, 116, 118, 119, 120, 121, 122, 123, 124, 125, 133, 134, 136, 138, 143, 144, 145, 146, 151, 152, 153, 154, 155, 157, 163, 164, 165, 166, 168, 169, 174, 175, 176, 177, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 97, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 157, 215, 216, 117, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 66, 66, 66, 66, 66, 66, 65, 75, 79, 79, 79, 79, 87, 87, 87, 87, 77, 96, 98, 98, 98, 98, 98, 250, 251, 109, 109, 109, 109, 117, 252, 167, 126, 126, 126, 126, 126, 126, 125, 135, 139, 139, 139, 139, 147, 147, 147, 147, 137, 156, 158, 158, 158, 158, 158, 253, 254, 170, 170, 170, 170, 178, 255, 178};
@OriginalMember(owner = "client!sh", name = "e", descriptor = "Lclient!na;") @OriginalMember(owner = "client!sh", name = "e", descriptor = "Lclient!na;")
public static final JagString aClass100_967 = parse(""); public static final JagString aClass100_967 = parse("");
@OriginalMember(owner = "client!li", name = "w", descriptor = "Lclient!sc;") @OriginalMember(owner = "client!li", name = "w", descriptor = "Lclient!sc;")
public static HashTable aClass133_13; public static HashTable aClass133_13;
@OriginalMember(owner = "client!na", name = "T", descriptor = "[B") @OriginalMember(owner = "client!na", name = "T", descriptor = "[B")
public byte[] chars; public byte[] chars;
@OriginalMember(owner = "client!na", name = "lb", descriptor = "I") @OriginalMember(owner = "client!na", name = "lb", descriptor = "I")
@ -50,13 +49,13 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "N", descriptor = "Z") @OriginalMember(owner = "client!na", name = "N", descriptor = "Z")
private boolean aBoolean193 = true; private boolean aBoolean193 = true;
@OriginalMember(owner = "client!ck", name = "a", descriptor = "([Lclient!na;B)Lclient!na;") @OriginalMember(owner = "client!ck", name = "a", descriptor = "([Lclient!na;B)Lclient!na;")
public static JagString concatenate(@OriginalArg(0) JagString[] arg0) { public static JagString concatenate(@OriginalArg(0) JagString[] arg0) {
if (arg0.length < 2) { if (arg0.length < 2) {
throw new IllegalArgumentException(); throw new IllegalArgumentException();
} }
return method2355(0, arg0.length, arg0); return method2355(0, arg0.length, arg0);
} }
@OriginalMember(owner = "client!jd", name = "a", descriptor = "(II[Lclient!na;I)Lclient!na;") @OriginalMember(owner = "client!jd", name = "a", descriptor = "(II[Lclient!na;I)Lclient!na;")
public static JagString method2355(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) JagString[] arg2) { public static JagString method2355(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) JagString[] arg2) {
@ -128,33 +127,33 @@ public final class JagString implements StringInterface {
} }
} }
@OriginalMember(owner = "client!cd", name = "a", descriptor = "(Ljava/lang/String;B)Lclient!na;") @OriginalMember(owner = "client!cd", name = "a", descriptor = "(Ljava/lang/String;B)Lclient!na;")
public static JagString parse(@OriginalArg(0) String arg0) { public static JagString parse(@OriginalArg(0) String arg0) {
@Pc(6) byte[] local6 = arg0.getBytes(); @Pc(6) byte[] local6 = arg0.getBytes();
@Pc(9) int local9 = local6.length; @Pc(9) int local9 = local6.length;
@Pc(13) JagString local13 = new JagString(); @Pc(13) JagString local13 = new JagString();
@Pc(15) int local15 = 0; @Pc(15) int local15 = 0;
local13.chars = new byte[local9]; local13.chars = new byte[local9];
while (local9 > local15) { while (local9 > local15) {
@Pc(29) int local29 = local6[local15++] & 0xFF; @Pc(29) int local29 = local6[local15++] & 0xFF;
if (local29 <= 45 && local29 >= 40) { if (local29 <= 45 && local29 >= 40) {
if (local15 >= local9) { if (local15 >= local9) {
break; break;
} }
@Pc(51) int local51 = local6[local15++] & 0xFF; @Pc(51) int local51 = local6[local15++] & 0xFF;
local13.chars[local13.length++] = (byte) (local51 + (local29 + -40) * 43 - 48); local13.chars[local13.length++] = (byte) (local51 + (local29 + -40) * 43 - 48);
} else if (local29 != 0) { } else if (local29 != 0) {
local13.chars[local13.length++] = (byte) local29; local13.chars[local13.length++] = (byte) local29;
} }
} }
local13.method3156(); local13.method3156();
return local13.method3151(); return local13.method3151();
} }
@OriginalMember(owner = "client!jj", name = "b", descriptor = "(BI)Lclient!na;") @OriginalMember(owner = "client!jj", name = "b", descriptor = "(BI)Lclient!na;")
public static JagString parseInt(@OriginalArg(1) int arg0) { public static JagString parseInt(@OriginalArg(1) int arg0) {
return parseInt(false, arg0); return parseInt(false, arg0);
} }
@OriginalMember(owner = "client!q", name = "a", descriptor = "(BZII)Lclient!na;") @OriginalMember(owner = "client!q", name = "a", descriptor = "(BZII)Lclient!na;")
public static JagString parseInt(@OriginalArg(1) boolean arg0, @OriginalArg(3) int arg1) { public static JagString parseInt(@OriginalArg(1) boolean arg0, @OriginalArg(3) int arg1) {
@ -191,33 +190,33 @@ public final class JagString implements StringInterface {
return local112; return local112;
} }
@OriginalMember(owner = "client!an", name = "a", descriptor = "([BIII)Lclient!na;") @OriginalMember(owner = "client!an", name = "a", descriptor = "([BIII)Lclient!na;")
public static JagString decodeString(@OriginalArg(0) byte[] arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) { public static JagString decodeString(@OriginalArg(0) byte[] arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
@Pc(7) JagString local7 = new JagString(); @Pc(7) JagString local7 = new JagString();
local7.chars = new byte[arg1]; local7.chars = new byte[arg1];
local7.length = 0; local7.length = 0;
for (@Pc(22) int local22 = arg2; local22 < arg1 + arg2; local22++) { for (@Pc(22) int local22 = arg2; local22 < arg1 + arg2; local22++) {
if (arg0[local22] != 0) { if (arg0[local22] != 0) {
local7.chars[local7.length++] = arg0[local22]; local7.chars[local7.length++] = arg0[local22];
} }
} }
return local7; return local7;
} }
@OriginalMember(owner = "client!bg", name = "d", descriptor = "(II)Z") @OriginalMember(owner = "client!bg", name = "d", descriptor = "(II)Z")
public static boolean method530(@OriginalArg(0) int arg0) { public static boolean method530(@OriginalArg(0) int arg0) {
return arg0 == 198 || arg0 == 230 || arg0 == 156 || arg0 == 140 || arg0 == 223; return arg0 == 198 || arg0 == 230 || arg0 == 156 || arg0 == 140 || arg0 == 223;
} }
@OriginalMember(owner = "client!ih", name = "a", descriptor = "(ZII)Lclient!na;") @OriginalMember(owner = "client!ih", name = "a", descriptor = "(ZII)Lclient!na;")
public static JagString parseIntTrue(@OriginalArg(2) int arg0) { public static JagString parseIntTrue(@OriginalArg(2) int arg0) {
return parseInt(true, arg0); return parseInt(true, arg0);
} }
@OriginalMember(owner = "client!oi", name = "a", descriptor = "(II)Lclient!na;") @OriginalMember(owner = "client!oi", name = "a", descriptor = "(II)Lclient!na;")
public static JagString formatIp(@OriginalArg(0) int arg0) { public static JagString formatIp(@OriginalArg(0) int arg0) {
return concatenate(new JagString[] { parseInt(arg0 >> 24 & 0xFF), aClass100_994, parseInt(arg0 >> 16 & 0xFF), aClass100_994, parseInt(arg0 >> 8 & 0xFF), aClass100_994, parseInt(arg0 & 0xFF) }); return concatenate(new JagString[]{parseInt(arg0 >> 24 & 0xFF), aClass100_994, parseInt(arg0 >> 16 & 0xFF), aClass100_994, parseInt(arg0 >> 8 & 0xFF), aClass100_994, parseInt(arg0 & 0xFF)});
} }
@OriginalMember(owner = "client!k", name = "a", descriptor = "(Lclient!be;Lclient!na;I)Lclient!na;") @OriginalMember(owner = "client!k", name = "a", descriptor = "(Lclient!be;Lclient!na;I)Lclient!na;")
public static JagString method2465(@OriginalArg(0) Component arg0, @OriginalArg(1) JagString arg1) { public static JagString method2465(@OriginalArg(0) Component arg0, @OriginalArg(1) JagString arg1) {
@ -252,165 +251,165 @@ public final class JagString implements StringInterface {
local246 = decodeString(local265, local265.length, 0); local246 = decodeString(local265, local265.length, 0);
} }
} }
arg1 = concatenate(new JagString[] { arg1.substring(local14, 0), local246, arg1.substring(local14 + 4) }); arg1 = concatenate(new JagString[]{arg1.substring(local14, 0), local246, arg1.substring(local14 + 4)});
} }
} }
arg1 = concatenate(new JagString[] { arg1.substring(local14, 0), StringUtils.method4510(method3212(4, arg0)), arg1.substring(local14 + 2) }); arg1 = concatenate(new JagString[]{arg1.substring(local14, 0), StringUtils.method4510(method3212(4, arg0)), arg1.substring(local14 + 2)});
} }
} }
arg1 = concatenate(new JagString[] { arg1.substring(local14, 0), StringUtils.method4510(method3212(3, arg0)), arg1.substring(local14 + 2) }); arg1 = concatenate(new JagString[]{arg1.substring(local14, 0), StringUtils.method4510(method3212(3, arg0)), arg1.substring(local14 + 2)});
} }
} }
arg1 = concatenate(new JagString[] { arg1.substring(local14, 0), StringUtils.method4510(method3212(2, arg0)), arg1.substring(local14 + 2) }); arg1 = concatenate(new JagString[]{arg1.substring(local14, 0), StringUtils.method4510(method3212(2, arg0)), arg1.substring(local14 + 2)});
} }
} }
arg1 = concatenate(new JagString[] { arg1.substring(local14, 0), StringUtils.method4510(method3212(1, arg0)), arg1.substring(local14 + 2) }); arg1 = concatenate(new JagString[]{arg1.substring(local14, 0), StringUtils.method4510(method3212(1, arg0)), arg1.substring(local14 + 2)});
} }
} }
arg1 = concatenate(new JagString[] { arg1.substring(local14, 0), StringUtils.method4510(method3212(0, arg0)), arg1.substring(local14 + 2) }); arg1 = concatenate(new JagString[]{arg1.substring(local14, 0), StringUtils.method4510(method3212(0, arg0)), arg1.substring(local14 + 2)});
} }
} }
@OriginalMember(owner = "client!we", name = "a", descriptor = "(BILclient!be;)I") @OriginalMember(owner = "client!we", name = "a", descriptor = "(BILclient!be;)I")
public static int method3212(@OriginalArg(1) int arg0, @OriginalArg(2) Component arg1) { public static int method3212(@OriginalArg(1) int arg0, @OriginalArg(2) Component arg1) {
if (arg1.anIntArrayArray4 == null || arg0 >= arg1.anIntArrayArray4.length) { if (arg1.anIntArrayArray4 == null || arg0 >= arg1.anIntArrayArray4.length) {
return -2; return -2;
} }
try { try {
@Pc(33) int[] local33 = arg1.anIntArrayArray4[arg0]; @Pc(33) int[] local33 = arg1.anIntArrayArray4[arg0];
@Pc(35) byte local35 = 0; @Pc(35) byte local35 = 0;
@Pc(37) int local37 = 0; @Pc(37) int local37 = 0;
@Pc(39) int local39 = 0; @Pc(39) int local39 = 0;
while (true) { while (true) {
@Pc(41) int local41 = 0; @Pc(41) int local41 = 0;
@Pc(46) int local46 = local33[local39++]; @Pc(46) int local46 = local33[local39++];
@Pc(48) byte local48 = 0; @Pc(48) byte local48 = 0;
if (local46 == 0) { if (local46 == 0) {
return local37; return local37;
} }
if (local46 == 15) { if (local46 == 15) {
local48 = 1; local48 = 1;
} }
if (local46 == 16) { if (local46 == 16) {
local48 = 2; local48 = 2;
} }
if (local46 == 1) { if (local46 == 1) {
local41 = PlayerSkillXpTable.boostedLevels[local33[local39++]]; local41 = PlayerSkillXpTable.boostedLevels[local33[local39++]];
} }
if (local46 == 17) { if (local46 == 17) {
local48 = 3; local48 = 3;
} }
if (local46 == 2) { if (local46 == 2) {
local41 = PlayerSkillXpTable.baseLevels[local33[local39++]]; local41 = PlayerSkillXpTable.baseLevels[local33[local39++]];
} }
if (local46 == 3) { if (local46 == 3) {
local41 = PlayerSkillXpTable.experience[local33[local39++]]; local41 = PlayerSkillXpTable.experience[local33[local39++]];
} }
@Pc(124) int local124; @Pc(124) int local124;
@Pc(135) Component local135; @Pc(135) Component local135;
@Pc(140) int local140; @Pc(140) int local140;
@Pc(152) int local152; @Pc(152) int local152;
if (local46 == 4) { if (local46 == 4) {
local124 = local33[local39++] << 16; local124 = local33[local39++] << 16;
@Pc(131) int local131 = local124 + local33[local39++]; @Pc(131) int local131 = local124 + local33[local39++];
local135 = InterfaceList.getComponent(local131); local135 = InterfaceList.getComponent(local131);
local140 = local33[local39++]; local140 = local33[local39++];
if (local140 != -1 && (!ObjTypeList.get(local140).members || LoginManager.mapMembers)) { if (local140 != -1 && (!ObjTypeList.get(local140).members || LoginManager.mapMembers)) {
for (local152 = 0; local152 < local135.objTypes.length; local152++) { for (local152 = 0; local152 < local135.objTypes.length; local152++) {
if (local140 + 1 == local135.objTypes[local152]) { if (local140 + 1 == local135.objTypes[local152]) {
local41 += local135.objCounts[local152]; local41 += local135.objCounts[local152];
} }
} }
} }
} }
if (local46 == 5) { if (local46 == 5) {
local41 = VarpDomain.activeVarps[local33[local39++]]; local41 = VarpDomain.activeVarps[local33[local39++]];
} }
if (local46 == 6) { if (local46 == 6) {
local41 = PlayerSkillXpTable.xpLevelLookup[PlayerSkillXpTable.baseLevels[local33[local39++]] - 1]; local41 = PlayerSkillXpTable.xpLevelLookup[PlayerSkillXpTable.baseLevels[local33[local39++]] - 1];
} }
if (local46 == 7) { if (local46 == 7) {
local41 = VarpDomain.activeVarps[local33[local39++]] * 100 / 46875; local41 = VarpDomain.activeVarps[local33[local39++]] * 100 / 46875;
} }
if (local46 == 8) { if (local46 == 8) {
local41 = PlayerList.self.combatLevel; local41 = PlayerList.self.combatLevel;
} }
if (local46 == 9) { if (local46 == 9) {
for (local124 = 0; local124 < 25; local124++) { for (local124 = 0; local124 < 25; local124++) {
if (Static182.aBooleanArray97[local124]) { if (Static182.aBooleanArray97[local124]) {
local41 += PlayerSkillXpTable.baseLevels[local124]; local41 += PlayerSkillXpTable.baseLevels[local124];
} }
} }
} }
if (local46 == 10) { if (local46 == 10) {
local124 = local33[local39++] << 16; local124 = local33[local39++] << 16;
local124 += local33[local39++]; local124 += local33[local39++];
local135 = InterfaceList.getComponent(local124); local135 = InterfaceList.getComponent(local124);
local140 = local33[local39++]; local140 = local33[local39++];
if (local140 != -1 && (!ObjTypeList.get(local140).members || LoginManager.mapMembers)) { if (local140 != -1 && (!ObjTypeList.get(local140).members || LoginManager.mapMembers)) {
for (local152 = 0; local152 < local135.objTypes.length; local152++) { for (local152 = 0; local152 < local135.objTypes.length; local152++) {
if (local135.objTypes[local152] == local140 + 1) { if (local135.objTypes[local152] == local140 + 1) {
local41 = 999999999; local41 = 999999999;
break; break;
} }
} }
} }
} }
if (local46 == 11) { if (local46 == 11) {
local41 = Player.runEnergy; local41 = Player.runEnergy;
} }
if (local46 == 12) { if (local46 == 12) {
local41 = Player.weight; local41 = Player.weight;
} }
if (local46 == 13) { if (local46 == 13) {
local124 = VarpDomain.activeVarps[local33[local39++]]; local124 = VarpDomain.activeVarps[local33[local39++]];
@Pc(353) int local353 = local33[local39++]; @Pc(353) int local353 = local33[local39++];
local41 = (0x1 << local353 & local124) == 0 ? 0 : 1; local41 = (0x1 << local353 & local124) == 0 ? 0 : 1;
} }
if (local46 == 14) { if (local46 == 14) {
local124 = local33[local39++]; local124 = local33[local39++];
local41 = VarpDomain.getVarbit(local124); local41 = VarpDomain.getVarbit(local124);
} }
if (local46 == 18) { if (local46 == 18) {
local41 = (PlayerList.self.xFine >> 7) + Camera.originX; local41 = (PlayerList.self.xFine >> 7) + Camera.originX;
} }
if (local46 == 19) { if (local46 == 19) {
local41 = (PlayerList.self.zFine >> 7) + Camera.originZ; local41 = (PlayerList.self.zFine >> 7) + Camera.originZ;
} }
if (local46 == 20) { if (local46 == 20) {
local41 = local33[local39++]; local41 = local33[local39++];
} }
if (local48 == 0) { if (local48 == 0) {
if (local35 == 0) { if (local35 == 0) {
local37 += local41; local37 += local41;
} }
if (local35 == 1) { if (local35 == 1) {
local37 -= local41; local37 -= local41;
} }
if (local35 == 2 && local41 != 0) { if (local35 == 2 && local41 != 0) {
local37 /= local41; local37 /= local41;
} }
if (local35 == 3) { if (local35 == 3) {
local37 *= local41; local37 *= local41;
} }
local35 = 0; local35 = 0;
} else { } else {
local35 = local48; local35 = local48;
} }
} }
} catch (@Pc(464) Exception local464) { } catch (@Pc(464) Exception local464) {
return -1; return -1;
} }
} }
@OriginalMember(owner = "client!nb", name = "a", descriptor = "(II)Lclient!na;") @OriginalMember(owner = "client!nb", name = "a", descriptor = "(II)Lclient!na;")
public static JagString getNbsp() { public static JagString getNbsp() {
@Pc(21) JagString str = new JagString(); @Pc(21) JagString str = new JagString();
str.length = 1; str.length = 1;
str.chars = new byte[1]; str.chars = new byte[1];
str.chars[0] = -96; // 0xA0 - NBSP str.chars[0] = -96; // 0xA0 - NBSP
return str; return str;
} }
@OriginalMember(owner = "client!sj", name = "a", descriptor = "(Ljava/lang/String;I)Lclient!na;") @OriginalMember(owner = "client!sj", name = "a", descriptor = "(Ljava/lang/String;I)Lclient!na;")
public static JagString method3952(@OriginalArg(0) String arg0) { public static JagString method3952(@OriginalArg(0) String arg0) {

View file

@ -1,15 +1,16 @@
package rt4; package rt4;
import java.awt.Component; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioSystem; import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.Mixer.Info; import javax.sound.sampled.Mixer.Info;
import javax.sound.sampled.SourceDataLine; import javax.sound.sampled.SourceDataLine;
import org.openrs2.deob.annotation.OriginalArg; import java.awt.Component;
import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!qa") @OriginalClass("client!qa")
public final class JavaAudioChannel extends AudioChannel { public final class JavaAudioChannel extends AudioChannel {

View file

@ -1,13 +1,14 @@
package rt4; package rt4;
import java.awt.Component;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.awt.Component;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
import static rt4.MathUtils.clamp; import static rt4.MathUtils.clamp;
@OriginalClass("client!o") @OriginalClass("client!o")
@ -38,7 +39,7 @@ public final class JavaMouseWheel extends MouseWheel implements MouseWheelListen
int diff = this.anInt4233 - previous; int diff = this.anInt4233 - previous;
if (((GlobalJsonConfig.instance != null && GlobalJsonConfig.instance.mouseWheelZoom) || (GlobalJsonConfig.instance == null && GlobalConfig.MOUSEWHEEL_ZOOM)) && Keyboard.pressedKeys[Keyboard.KEY_SHIFT]) { if (((GlobalJsonConfig.instance != null && GlobalJsonConfig.instance.mouseWheelZoom) || (GlobalJsonConfig.instance == null && GlobalConfig.MOUSEWHEEL_ZOOM)) && Keyboard.pressedKeys[Keyboard.KEY_SHIFT]) {
Camera.ZOOM = clamp(200, 1200, Camera.ZOOM + (diff >= 0 ? 50: -50)); Camera.ZOOM = clamp(200, 1200, Camera.ZOOM + (diff >= 0 ? 50 : -50));
} }
} }

View file

@ -296,7 +296,7 @@ public final class Js5 {
uncompressed = Js5Compression.uncompress(compressed); uncompressed = Js5Compression.uncompress(compressed);
} catch (@Pc(142) RuntimeException ex) { } catch (@Pc(142) RuntimeException ex) {
System.out.println("T3 - " + (key != null) + "," + group + "," + compressed.length + "," + Buffer.crc32(compressed, compressed.length) + "," + Buffer.crc32(compressed, compressed.length - 2) + "," + this.index.groupChecksums[group] + "," + this.index.checksum); System.out.println("T3 - " + (key != null) + "," + group + "," + compressed.length + "," + Buffer.crc32(compressed, compressed.length) + "," + Buffer.crc32(compressed, compressed.length - 2) + "," + this.index.groupChecksums[group] + "," + this.index.checksum);
uncompressed = new byte[] { 0 }; uncompressed = new byte[]{0};
} }
if (this.discardPacked) { if (this.discardPacked) {
this.packed[group] = null; this.packed[group] = null;

View file

@ -10,10 +10,10 @@ import java.util.zip.CRC32;
@OriginalClass("client!bg") @OriginalClass("client!bg")
public final class Js5CachedResourceProvider extends Js5ResourceProvider { public final class Js5CachedResourceProvider extends Js5ResourceProvider {
@OriginalMember(owner = "client!fn", name = "X", descriptor = "Ljava/util/zip/CRC32;") @OriginalMember(owner = "client!fn", name = "X", descriptor = "Ljava/util/zip/CRC32;")
public static final CRC32 crc32 = new CRC32(); public static final CRC32 crc32 = new CRC32();
@OriginalMember(owner = "client!bg", name = "m", descriptor = "Lclient!ii;") @OriginalMember(owner = "client!bg", name = "m", descriptor = "Lclient!ii;")
private Js5Index index; private Js5Index index;
@OriginalMember(owner = "client!bg", name = "w", descriptor = "[B") @OriginalMember(owner = "client!bg", name = "w", descriptor = "[B")
@ -305,7 +305,7 @@ public final class Js5CachedResourceProvider extends Js5ResourceProvider {
@OriginalMember(owner = "client!bg", name = "b", descriptor = "(II)I") @OriginalMember(owner = "client!bg", name = "b", descriptor = "(II)I")
@Override @Override
public final int getPercentageComplete(@OriginalArg(0) int arg0) { public final int getPercentageComplete(@OriginalArg(0) int arg0) {
@Pc(15) Js5Request request = (Js5Request) this.requests.get((long) arg0); @Pc(15) Js5Request request = (Js5Request) this.requests.get(arg0);
return request == null ? 0 : request.getPercentageComplete(); return request == null ? 0 : request.getPercentageComplete();
} }
@ -316,7 +316,7 @@ public final class Js5CachedResourceProvider extends Js5ResourceProvider {
@OriginalMember(owner = "client!bg", name = "a", descriptor = "(III)Lclient!il;") @OriginalMember(owner = "client!bg", name = "a", descriptor = "(III)Lclient!il;")
private Js5Request fetchGroupInner(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) { private Js5Request fetchGroupInner(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
@Pc(13) Js5Request local13 = (Js5Request) this.requests.get((long) arg1); @Pc(13) Js5Request local13 = (Js5Request) this.requests.get(arg1);
if (local13 != null && arg0 == 0 && !local13.urgent && local13.incomplete) { if (local13 != null && arg0 == 0 && !local13.urgent && local13.incomplete) {
local13.unlink(); local13.unlink();
local13 = null; local13 = null;
@ -350,7 +350,7 @@ public final class Js5CachedResourceProvider extends Js5ResourceProvider {
} else { } else {
throw new RuntimeException(); throw new RuntimeException();
} }
this.requests.put(local13, (long) arg1); this.requests.put(local13, arg1);
} }
if (local13.incomplete) { if (local13.incomplete) {
return null; return null;
@ -376,7 +376,7 @@ public final class Js5CachedResourceProvider extends Js5ResourceProvider {
local13.unlink(); local13.unlink();
if (local13.urgent && !this.netQueue.isUrgentRequestQueueFull()) { if (local13.urgent && !this.netQueue.isUrgentRequestQueueFull()) {
local252 = this.netQueue.read(this.archive, (byte) 2, arg1, true); local252 = this.netQueue.read(this.archive, (byte) 2, arg1, true);
this.requests.put(local252, (long) arg1); this.requests.put(local252, arg1);
} }
return null; return null;
} }
@ -423,7 +423,7 @@ public final class Js5CachedResourceProvider extends Js5ResourceProvider {
local13.unlink(); local13.unlink();
if (local13.urgent && !this.netQueue.isUrgentRequestQueueFull()) { if (local13.urgent && !this.netQueue.isUrgentRequestQueueFull()) {
local252 = this.netQueue.read(this.archive, (byte) 2, arg1, true); local252 = this.netQueue.read(this.archive, (byte) 2, arg1, true);
this.requests.put(local252, (long) arg1); this.requests.put(local252, arg1);
} }
return null; return null;
} }

View file

@ -166,7 +166,7 @@ public final class Js5GlTextureProvider implements TextureProvider {
@OriginalMember(owner = "client!nk", name = "i", descriptor = "(II)Lclient!uh;") @OriginalMember(owner = "client!nk", name = "i", descriptor = "(II)Lclient!uh;")
private GlTexture method3242(@OriginalArg(0) int arg0) { private GlTexture method3242(@OriginalArg(0) int arg0) {
@Pc(14) GlTexture local14 = (GlTexture) this.glTextures.get((long) arg0); @Pc(14) GlTexture local14 = (GlTexture) this.glTextures.get(arg0);
if (local14 != null) { if (local14 != null) {
return local14; return local14;
} }
@ -176,7 +176,7 @@ public final class Js5GlTextureProvider implements TextureProvider {
} else { } else {
@Pc(41) Buffer local41 = new Buffer(local30); @Pc(41) Buffer local41 = new Buffer(local30);
local14 = new GlTexture(local41); local14 = new GlTexture(local41);
this.glTextures.put(local14, (long) arg0); this.glTextures.put(local14, arg0);
return local14; return local14;
} }
} }
@ -207,10 +207,10 @@ public final class Js5GlTextureProvider implements TextureProvider {
@OriginalMember(owner = "client!nk", name = "j", descriptor = "(II)Lclient!sd;") @OriginalMember(owner = "client!nk", name = "j", descriptor = "(II)Lclient!sd;")
private GlSolidColorTexture method3244(@OriginalArg(1) int arg0) { private GlSolidColorTexture method3244(@OriginalArg(1) int arg0) {
@Pc(19) GlSolidColorTexture local19 = (GlSolidColorTexture) this.solidColorSprites.get((long) arg0); @Pc(19) GlSolidColorTexture local19 = (GlSolidColorTexture) this.solidColorSprites.get(arg0);
if (local19 == null) { if (local19 == null) {
local19 = new GlSolidColorTexture(this.aShortArray59[arg0] & 0xFFFF); local19 = new GlSolidColorTexture(this.aShortArray59[arg0] & 0xFFFF);
this.solidColorSprites.put(local19, (long) arg0); this.solidColorSprites.put(local19, arg0);
return local19; return local19;
} else { } else {
return local19; return local19;
@ -221,7 +221,7 @@ public final class Js5GlTextureProvider implements TextureProvider {
@Override @Override
public final boolean method3230(@OriginalArg(1) int arg0) { public final boolean method3230(@OriginalArg(1) int arg0) {
@Pc(15) GlTexture local15 = this.method3242(arg0); @Pc(15) GlTexture local15 = this.method3242(arg0);
return local15 == null ? false : local15.method4299(this, this.aClass153_72); return local15 != null && local15.method4299(this, this.aClass153_72);
} }
@OriginalMember(owner = "client!nk", name = "b", descriptor = "(ZI)V") @OriginalMember(owner = "client!nk", name = "b", descriptor = "(ZI)V")

View file

@ -1,11 +1,12 @@
package rt4; package rt4;
import java.io.IOException;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.io.IOException;
@OriginalClass("client!jb") @OriginalClass("client!jb")
public final class Js5NetQueue { public final class Js5NetQueue {
@ -155,7 +156,7 @@ public final class Js5NetQueue {
@Pc(476) int local476 = this.inBuffer.g4(); @Pc(476) int local476 = this.inBuffer.g4();
@Pc(480) int local480 = local471 & 0x7F; @Pc(480) int local480 = local471 & 0x7F;
@Pc(491) boolean local491 = (local471 & 0x80) != 0; @Pc(491) boolean local491 = (local471 & 0x80) != 0;
@Pc(501) long local501 = (long) ((local235 << 16) + local283); @Pc(501) long local501 = (local235 << 16) + local283;
@Pc(509) Js5NetRequest local509; @Pc(509) Js5NetRequest local509;
if (local491) { if (local491) {
for (local509 = (Js5NetRequest) this.inFlightPrefetchRequests.head(); local509 != null && local509.secondaryKey != local501; local509 = (Js5NetRequest) this.inFlightPrefetchRequests.next()) { for (local509 = (Js5NetRequest) this.inFlightPrefetchRequests.head(); local509 != null && local509.secondaryKey != local501; local509 = (Js5NetRequest) this.inFlightPrefetchRequests.next()) {

View file

@ -1,5 +1,10 @@
package rt4; package rt4;
import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
import java.awt.Component; import java.awt.Component;
import java.awt.event.FocusEvent; import java.awt.event.FocusEvent;
import java.awt.event.FocusListener; import java.awt.event.FocusListener;
@ -8,11 +13,6 @@ import java.awt.event.KeyListener;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.Arrays; import java.util.Arrays;
import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!uf") @OriginalClass("client!uf")
public final class Keyboard implements KeyListener, FocusListener { public final class Keyboard implements KeyListener, FocusListener {
@ -281,22 +281,22 @@ public final class Keyboard implements KeyListener, FocusListener {
component.addFocusListener(instance); component.addFocusListener(instance);
} }
@OriginalMember(owner = "client!ag", name = "h", descriptor = "(I)V") @OriginalMember(owner = "client!ag", name = "h", descriptor = "(I)V")
public static void quit() { public static void quit() {
if (instance != null) { if (instance != null) {
@Pc(4) Keyboard local4 = instance; @Pc(4) Keyboard local4 = instance;
synchronized (instance) { synchronized (instance) {
instance = null; instance = null;
} }
} }
} }
@OriginalMember(owner = "client!pk", name = "f", descriptor = "(B)I") @OriginalMember(owner = "client!pk", name = "f", descriptor = "(B)I")
public static int getIdleLoops() { public static int getIdleLoops() {
return idleLoops; return idleLoops;
} }
@OriginalMember(owner = "client!uf", name = "keyPressed", descriptor = "(Ljava/awt/event/KeyEvent;)V") @OriginalMember(owner = "client!uf", name = "keyPressed", descriptor = "(Ljava/awt/event/KeyEvent;)V")
@Override @Override
public final synchronized void keyPressed(@OriginalArg(0) KeyEvent event) { public final synchronized void keyPressed(@OriginalArg(0) KeyEvent event) {
if (instance == null) { if (instance == null) {

View file

@ -15,7 +15,7 @@ public final class LangUtils {
@OriginalMember(owner = "client!mc", name = "pb", descriptor = "Lclient!na;") @OriginalMember(owner = "client!mc", name = "pb", descriptor = "Lclient!na;")
private static final JagString LANG_FR = JagString.parse("fr"); private static final JagString LANG_FR = JagString.parse("fr");
@OriginalMember(owner = "client!mc", name = "ob", descriptor = "[Lclient!na;") @OriginalMember(owner = "client!mc", name = "ob", descriptor = "[Lclient!na;")
public static final JagString[] LANGUAGES = new JagString[] {LANG_EN, LANG_DE, LANG_FR, LANG_PT}; public static final JagString[] LANGUAGES = new JagString[]{LANG_EN, LANG_DE, LANG_FR, LANG_PT};
@OriginalMember(owner = "client!hm", name = "a", descriptor = "(Lclient!na;B)I") @OriginalMember(owner = "client!hm", name = "a", descriptor = "(Lclient!na;B)I")
public static int method2053(@OriginalArg(0) JagString arg0) { public static int method2053(@OriginalArg(0) JagString arg0) {

View file

@ -8,9 +8,9 @@ import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!gi") @OriginalClass("client!gi")
public final class Light { public final class Light {
@OriginalMember(owner = "client!f", name = "P", descriptor = "[I") @OriginalMember(owner = "client!f", name = "P", descriptor = "[I")
public static int[] NOISE; public static int[] NOISE;
@OriginalMember(owner = "client!gi", name = "a", descriptor = "Z") @OriginalMember(owner = "client!gi", name = "a", descriptor = "Z")
public final boolean aBoolean124; public final boolean aBoolean124;
@OriginalMember(owner = "client!gi", name = "d", descriptor = "I") @OriginalMember(owner = "client!gi", name = "d", descriptor = "I")

View file

@ -5,43 +5,43 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class LightTypeList { public class LightTypeList {
@OriginalMember(owner = "client!rm", name = "d", descriptor = "Lclient!n;") @OriginalMember(owner = "client!rm", name = "d", descriptor = "Lclient!n;")
public static final SoftLruHashTable types = new SoftLruHashTable(64); public static final SoftLruHashTable types = new SoftLruHashTable(64);
@OriginalMember(owner = "client!gl", name = "a", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!gl", name = "a", descriptor = "Lclient!ve;")
public static Js5 archive; public static Js5 archive;
@OriginalMember(owner = "client!id", name = "a", descriptor = "(Lclient!ve;B)V") @OriginalMember(owner = "client!id", name = "a", descriptor = "(Lclient!ve;B)V")
public static void init(@OriginalArg(0) Js5 arg0) { public static void init(@OriginalArg(0) Js5 arg0) {
archive = arg0; archive = arg0;
} }
@OriginalMember(owner = "client!la", name = "a", descriptor = "(II)Lclient!ic;") @OriginalMember(owner = "client!la", name = "a", descriptor = "(II)Lclient!ic;")
public static LightType get(@OriginalArg(1) int arg0) { public static LightType get(@OriginalArg(1) int arg0) {
@Pc(10) LightType local10 = (LightType) types.get((long) arg0); @Pc(10) LightType local10 = (LightType) types.get(arg0);
if (local10 != null) { if (local10 != null) {
return local10; return local10;
} }
@Pc(26) byte[] local26 = archive.fetchFile(31, arg0); @Pc(26) byte[] local26 = archive.fetchFile(31, arg0);
local10 = new LightType(); local10 = new LightType();
if (local26 != null) { if (local26 != null) {
local10.decode(new Buffer(local26), arg0); local10.decode(new Buffer(local26), arg0);
} }
types.put(local10, (long) arg0); types.put(local10, arg0);
return local10; return local10;
} }
@OriginalMember(owner = "client!c", name = "c", descriptor = "(II)V") @OriginalMember(owner = "client!c", name = "c", descriptor = "(II)V")
public static void clean() { public static void clean() {
types.clean(5); types.clean(5);
} }
@OriginalMember(owner = "client!gd", name = "b", descriptor = "(I)V") @OriginalMember(owner = "client!gd", name = "b", descriptor = "(I)V")
public static void method1695() { public static void method1695() {
types.clear(); types.clear();
} }
@OriginalMember(owner = "client!hd", name = "a", descriptor = "(I)V") @OriginalMember(owner = "client!hd", name = "a", descriptor = "(I)V")
public static void method1882() { public static void method1882() {
types.removeSoft(); types.removeSoft();
} }
} }

View file

@ -1,12 +1,13 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
@OriginalClass("client!fj") @OriginalClass("client!fj")
public final class Light_Class45 { public final class Light_Class45 {
@ -72,7 +73,7 @@ public final class Light_Class45 {
@Pc(37) float local37 = (float) (arg0.x - arg1); @Pc(37) float local37 = (float) (arg0.x - arg1);
@Pc(43) float local43 = (float) (arg0.y - arg2); @Pc(43) float local43 = (float) (arg0.y - arg2);
@Pc(49) float local49 = (float) (arg0.z - arg3); @Pc(49) float local49 = (float) (arg0.z - arg3);
@Pc(64) float local64 = (float) Math.sqrt((double) (local37 * local37 + local43 * local43 + local49 * local49)); @Pc(64) float local64 = (float) Math.sqrt(local37 * local37 + local43 * local43 + local49 * local49);
@Pc(68) float local68 = 1.0F / local64; @Pc(68) float local68 = 1.0F / local64;
@Pc(72) float local72 = local37 * local68; @Pc(72) float local72 = local37 * local68;
@Pc(76) float local76 = local43 * local68; @Pc(76) float local76 = local43 * local68;

View file

@ -6,454 +6,460 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class LightingManager { public class LightingManager {
@OriginalMember(owner = "client!jf", name = "b", descriptor = "[F") @OriginalMember(owner = "client!jf", name = "b", descriptor = "[F")
private static final float[] aFloatArray17 = new float[] { 0.0F, 0.0F, 0.0F, 1.0F }; private static final float[] aFloatArray17 = new float[]{0.0F, 0.0F, 0.0F, 1.0F};
@OriginalMember(owner = "client!jf", name = "l", descriptor = "I") @OriginalMember(owner = "client!jf", name = "l", descriptor = "I")
public static int lightCount = 0; public static int lightCount = 0;
@OriginalMember(owner = "client!jf", name = "a", descriptor = "[Lclient!gi;") @OriginalMember(owner = "client!jf", name = "a", descriptor = "[Lclient!gi;")
public static Light[] lights; public static Light[] lights;
@OriginalMember(owner = "client!rh", name = "d", descriptor = "I") @OriginalMember(owner = "client!rh", name = "d", descriptor = "I")
public static int anInt4866; public static int anInt4866;
@OriginalMember(owner = "client!aa", name = "m", descriptor = "I") @OriginalMember(owner = "client!aa", name = "m", descriptor = "I")
public static int anInt15; public static int anInt15;
@OriginalMember(owner = "client!gf", name = "M", descriptor = "I") @OriginalMember(owner = "client!gf", name = "M", descriptor = "I")
public static int anInt4698; public static int anInt4698;
@OriginalMember(owner = "client!ch", name = "w", descriptor = "I") @OriginalMember(owner = "client!ch", name = "w", descriptor = "I")
public static int anInt987; public static int anInt987;
@OriginalMember(owner = "client!id", name = "b", descriptor = "I") @OriginalMember(owner = "client!id", name = "b", descriptor = "I")
public static int anInt2875 = -1; public static int anInt2875 = -1;
@OriginalMember(owner = "client!jf", name = "c", descriptor = "[I") @OriginalMember(owner = "client!jf", name = "c", descriptor = "[I")
private static int[] anIntArray283; private static int[] anIntArray283;
@OriginalMember(owner = "client!jf", name = "d", descriptor = "I") @OriginalMember(owner = "client!jf", name = "d", descriptor = "I")
private static int anInt3029; private static int anInt3029;
@OriginalMember(owner = "client!jf", name = "e", descriptor = "I") @OriginalMember(owner = "client!jf", name = "e", descriptor = "I")
private static int anInt3030; private static int anInt3030;
@OriginalMember(owner = "client!jf", name = "f", descriptor = "[Z") @OriginalMember(owner = "client!jf", name = "f", descriptor = "[Z")
private static boolean[] enabledLights; private static boolean[] enabledLights;
@OriginalMember(owner = "client!jf", name = "g", descriptor = "[[[I") @OriginalMember(owner = "client!jf", name = "g", descriptor = "[[[I")
private static int[][][] anIntArrayArrayArray11; private static int[][][] anIntArrayArrayArray11;
@OriginalMember(owner = "client!jf", name = "h", descriptor = "[I") @OriginalMember(owner = "client!jf", name = "h", descriptor = "[I")
private static int[] anIntArray284; private static int[] anIntArray284;
@OriginalMember(owner = "client!jf", name = "i", descriptor = "I") @OriginalMember(owner = "client!jf", name = "i", descriptor = "I")
private static int anInt3031; private static int anInt3031;
@OriginalMember(owner = "client!jf", name = "j", descriptor = "I") @OriginalMember(owner = "client!jf", name = "j", descriptor = "I")
private static int anInt3032; private static int anInt3032;
@OriginalMember(owner = "client!jf", name = "k", descriptor = "I") @OriginalMember(owner = "client!jf", name = "k", descriptor = "I")
private static int anInt3033; private static int anInt3033;
@OriginalMember(owner = "client!jf", name = "m", descriptor = "[Z") @OriginalMember(owner = "client!jf", name = "m", descriptor = "[Z")
private static boolean[] aBooleanArray66; private static boolean[] aBooleanArray66;
@OriginalMember(owner = "client!jf", name = "n", descriptor = "I") @OriginalMember(owner = "client!jf", name = "n", descriptor = "I")
private static int anInt3035; private static int anInt3035;
@OriginalMember(owner = "client!jf", name = "o", descriptor = "I") @OriginalMember(owner = "client!jf", name = "o", descriptor = "I")
private static int length; private static int length;
@OriginalMember(owner = "client!jf", name = "p", descriptor = "I") @OriginalMember(owner = "client!jf", name = "p", descriptor = "I")
private static int width; private static int width;
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(IIIIIII)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(IIIIIII)V")
public static void method2388(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) int arg6) { public static void method2388(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) int arg6) {
if (!Preferences.highDetailLighting) { if (!Preferences.highDetailLighting) {
return; return;
} }
if (arg0 == 1 && arg5 > 0) { if (arg0 == 1 && arg5 > 0) {
method2393(arg1, arg2, arg3, arg4, arg5 - 1, arg6); method2393(arg1, arg2, arg3, arg4, arg5 - 1, arg6);
} else if (arg0 == 4 && arg5 < width - 1) { } else if (arg0 == 4 && arg5 < width - 1) {
method2393(arg1, arg2, arg3, arg4, arg5 + 1, arg6); method2393(arg1, arg2, arg3, arg4, arg5 + 1, arg6);
} else if (arg0 == 8 && arg6 > 0) { } else if (arg0 == 8 && arg6 > 0) {
method2393(arg1, arg2, arg3, arg4, arg5, arg6 - 1); method2393(arg1, arg2, arg3, arg4, arg5, arg6 - 1);
} else if (arg0 == 2 && arg6 < length - 1) { } else if (arg0 == 2 && arg6 < length - 1) {
method2393(arg1, arg2, arg3, arg4, arg5, arg6 + 1); method2393(arg1, arg2, arg3, arg4, arg5, arg6 + 1);
} else if (arg0 == 16 && arg5 > 0 && arg6 < length - 1) { } else if (arg0 == 16 && arg5 > 0 && arg6 < length - 1) {
method2393(arg1, arg2, arg3, arg4, arg5 - 1, arg6 + 1); method2393(arg1, arg2, arg3, arg4, arg5 - 1, arg6 + 1);
} else if (arg0 == 32 && arg5 < width - 1 && arg6 < length - 1) { } else if (arg0 == 32 && arg5 < width - 1 && arg6 < length - 1) {
method2393(arg1, arg2, arg3, arg4, arg5 + 1, arg6 + 1); method2393(arg1, arg2, arg3, arg4, arg5 + 1, arg6 + 1);
} else if (arg0 == 128 && arg5 > 0 && arg6 > 0) { } else if (arg0 == 128 && arg5 > 0 && arg6 > 0) {
method2393(arg1, arg2, arg3, arg4, arg5 - 1, arg6 - 1); method2393(arg1, arg2, arg3, arg4, arg5 - 1, arg6 - 1);
} else if (arg0 == 64 && arg5 < width - 1 && arg6 > 0) { } else if (arg0 == 64 && arg5 < width - 1 && arg6 > 0) {
method2393(arg1, arg2, arg3, arg4, arg5 + 1, arg6 - 1); method2393(arg1, arg2, arg3, arg4, arg5 + 1, arg6 - 1);
} }
} }
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(Lclient!gi;)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(Lclient!gi;)V")
public static void method2389(@OriginalArg(0) Light arg0) { public static void method2389(@OriginalArg(0) Light arg0) {
if (lightCount >= 255) { if (lightCount >= 255) {
System.out.println("Number of lights added exceeds maximum!"); System.out.println("Number of lights added exceeds maximum!");
} else { } else {
lights[lightCount++] = arg0; lights[lightCount++] = arg0;
} }
} }
@OriginalMember(owner = "client!jf", name = "a", descriptor = "()V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "()V")
public static void method2390() { public static void method2390() {
for (@Pc(1) int local1 = 0; local1 < 4; local1++) { for (@Pc(1) int local1 = 0; local1 < 4; local1++) {
anIntArray284[local1] = -1; anIntArray284[local1] = -1;
disableLight(local1); disableLight(local1);
} }
} }
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(IIIIIIII)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(IIIIIIII)V")
public static void method2391(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) int arg6, @OriginalArg(7) int arg7) { public static void method2391(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) int arg6, @OriginalArg(7) int arg7) {
if (!Preferences.highDetailLighting || anInt3031 == arg3 && anInt3033 == arg4 && anInt3029 == arg5 && anInt3035 == arg6 && anInt3030 == arg7) { if (!Preferences.highDetailLighting || anInt3031 == arg3 && anInt3033 == arg4 && anInt3029 == arg5 && anInt3035 == arg6 && anInt3030 == arg7) {
return; return;
} }
@Pc(20) int local20; @Pc(20) int local20;
for (local20 = 0; local20 < 4; local20++) { for (local20 = 0; local20 < 4; local20++) {
aBooleanArray66[local20] = false; aBooleanArray66[local20] = false;
} }
local20 = 0; local20 = 0;
@Pc(33) int local33 = 0; @Pc(33) int local33 = 0;
@Pc(35) int local35; @Pc(35) int local35;
@Pc(40) int local40; @Pc(40) int local40;
label112: for (local35 = arg4; local35 <= arg6; local35++) { label112:
label110: for (local40 = arg5; local40 <= arg7; local40++) { for (local35 = arg4; local35 <= arg6; local35++) {
@Pc(51) int local51 = anIntArrayArrayArray11[arg3][local35][local40]; label110:
while (true) { for (local40 = arg5; local40 <= arg7; local40++) {
while (true) { @Pc(51) int local51 = anIntArrayArrayArray11[arg3][local35][local40];
label96: while (true) { while (true) {
if (local51 == 0) { while (true) {
continue label110; label96:
} while (true) {
@Pc(59) int local59 = (local51 & 0xFF) - 1; if (local51 == 0) {
local51 >>>= 0x8; continue label110;
@Pc(65) int local65; }
for (local65 = 0; local65 < local33; local65++) { @Pc(59) int local59 = (local51 & 0xFF) - 1;
if (local59 == anIntArray283[local65]) { local51 >>>= 0x8;
continue label96; @Pc(65) int local65;
} for (local65 = 0; local65 < local33; local65++) {
} if (local59 == anIntArray283[local65]) {
for (local65 = 0; local65 < 4; local65++) { continue label96;
if (local59 == anIntArray284[local65]) { }
if (!aBooleanArray66[local65]) { }
aBooleanArray66[local65] = true; for (local65 = 0; local65 < 4; local65++) {
local20++; if (local59 == anIntArray284[local65]) {
if (local20 == 4) { if (!aBooleanArray66[local65]) {
break label112; aBooleanArray66[local65] = true;
} local20++;
} if (local20 == 4) {
continue label96; break label112;
} }
} }
anIntArray283[local33++] = local59; continue label96;
local20++; }
if (local20 == 4) { }
break label112; anIntArray283[local33++] = local59;
} local20++;
} if (local20 == 4) {
} break label112;
} }
} }
} }
for (local35 = 0; local35 < local33; local35++) { }
for (local40 = 0; local40 < 4; local40++) { }
if (!aBooleanArray66[local40]) { }
anIntArray284[local40] = anIntArray283[local35]; for (local35 = 0; local35 < local33; local35++) {
aBooleanArray66[local40] = true; for (local40 = 0; local40 < 4; local40++) {
method2403(local40, lights[anIntArray283[local35]], arg0, arg1, arg2); if (!aBooleanArray66[local40]) {
break; anIntArray284[local40] = anIntArray283[local35];
} aBooleanArray66[local40] = true;
} method2403(local40, lights[anIntArray283[local35]], arg0, arg1, arg2);
} break;
for (local35 = 0; local35 < 4; local35++) { }
if (!aBooleanArray66[local35]) { }
anIntArray284[local35] = -1; }
disableLight(local35); for (local35 = 0; local35 < 4; local35++) {
} if (!aBooleanArray66[local35]) {
} anIntArray284[local35] = -1;
anInt3031 = arg3; disableLight(local35);
anInt3033 = arg4; }
anInt3029 = arg5; }
anInt3035 = arg6; anInt3031 = arg3;
anInt3030 = arg7; anInt3033 = arg4;
} anInt3029 = arg5;
anInt3035 = arg6;
anInt3030 = arg7;
}
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(III)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(III)V")
public static void method2392() { public static void method2392() {
anInt3032 = 4; anInt3032 = 4;
width = 104; width = 104;
length = 104; length = 104;
anIntArrayArrayArray11 = new int[anInt3032][width][length]; anIntArrayArrayArray11 = new int[anInt3032][width][length];
} }
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(IIIIII)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(IIIIII)V")
public static void method2393(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5) { public static void method2393(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5) {
if (!Preferences.highDetailLighting || anInt3031 == arg3 && anInt3033 == arg4 && anInt3029 == arg5 && anInt3035 == arg4 && anInt3030 == arg5) { if (!Preferences.highDetailLighting || anInt3031 == arg3 && anInt3033 == arg4 && anInt3029 == arg5 && anInt3035 == arg4 && anInt3030 == arg5) {
return; return;
} }
@Pc(20) int local20; @Pc(20) int local20;
for (local20 = 0; local20 < 4; local20++) { for (local20 = 0; local20 < 4; local20++) {
aBooleanArray66[local20] = false; aBooleanArray66[local20] = false;
} }
local20 = 0; local20 = 0;
@Pc(39) int local39 = anIntArrayArrayArray11[arg3][arg4][arg5]; @Pc(39) int local39 = anIntArrayArrayArray11[arg3][arg4][arg5];
while (true) { while (true) {
@Pc(47) int local47; @Pc(47) int local47;
@Pc(53) int local53; @Pc(53) int local53;
label72: while (local39 != 0) { label72:
local47 = (local39 & 0xFF) - 1; while (local39 != 0) {
local39 >>>= 0x8; local47 = (local39 & 0xFF) - 1;
for (local53 = 0; local53 < 4; local53++) { local39 >>>= 0x8;
if (local47 == anIntArray284[local53]) { for (local53 = 0; local53 < 4; local53++) {
aBooleanArray66[local53] = true; if (local47 == anIntArray284[local53]) {
continue label72; aBooleanArray66[local53] = true;
} continue label72;
} }
anIntArray283[local20++] = local47; }
} anIntArray283[local20++] = local47;
for (local47 = 0; local47 < local20; local47++) { }
for (local53 = 0; local53 < 4; local53++) { for (local47 = 0; local47 < local20; local47++) {
if (!aBooleanArray66[local53]) { for (local53 = 0; local53 < 4; local53++) {
anIntArray284[local53] = anIntArray283[local47]; if (!aBooleanArray66[local53]) {
aBooleanArray66[local53] = true; anIntArray284[local53] = anIntArray283[local47];
method2403(local53, lights[anIntArray283[local47]], arg0, arg1, arg2); aBooleanArray66[local53] = true;
break; method2403(local53, lights[anIntArray283[local47]], arg0, arg1, arg2);
} break;
} }
} }
for (local47 = 0; local47 < 4; local47++) { }
if (!aBooleanArray66[local47]) { for (local47 = 0; local47 < 4; local47++) {
anIntArray284[local47] = -1; if (!aBooleanArray66[local47]) {
disableLight(local47); anIntArray284[local47] = -1;
} disableLight(local47);
} }
anInt3031 = arg3; }
anInt3033 = arg4; anInt3031 = arg3;
anInt3029 = arg5; anInt3033 = arg4;
anInt3035 = arg4; anInt3029 = arg5;
anInt3030 = arg5; anInt3035 = arg4;
return; anInt3030 = arg5;
} return;
} }
}
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(IZ)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(IZ)V")
public static void method2394(@OriginalArg(0) int arg0, @OriginalArg(1) boolean arg1) { public static void method2394(@OriginalArg(0) int arg0, @OriginalArg(1) boolean arg1) {
for (@Pc(1) int local1 = 0; local1 < lightCount; local1++) { for (@Pc(1) int local1 = 0; local1 < lightCount; local1++) {
lights[local1].method1765(arg1, arg0); lights[local1].method1765(arg1, arg0);
} }
anInt3031 = -1; anInt3031 = -1;
anInt3033 = -1; anInt3033 = -1;
anInt3029 = -1; anInt3029 = -1;
anInt3035 = -1; anInt3035 = -1;
anInt3030 = -1; anInt3030 = -1;
} }
@OriginalMember(owner = "client!jf", name = "b", descriptor = "()V") @OriginalMember(owner = "client!jf", name = "b", descriptor = "()V")
public static void method2395() { public static void method2395() {
for (@Pc(1) int local1 = 0; local1 < lightCount; local1++) { for (@Pc(1) int local1 = 0; local1 < lightCount; local1++) {
@Pc(8) Light local8 = lights[local1]; @Pc(8) Light local8 = lights[local1];
@Pc(11) int local11 = local8.level; @Pc(11) int local11 = local8.level;
if (local8.aBoolean124) { if (local8.aBoolean124) {
local11 = 0; local11 = 0;
} }
@Pc(19) int local19 = local8.level; @Pc(19) int local19 = local8.level;
if (local8.aBoolean126) { if (local8.aBoolean126) {
local19 = 3; local19 = 3;
} }
for (@Pc(26) int local26 = local11; local26 <= local19; local26++) { for (@Pc(26) int local26 = local11; local26 <= local19; local26++) {
@Pc(31) int local31 = 0; @Pc(31) int local31 = 0;
@Pc(39) int local39 = (local8.z >> 7) - local8.radius; @Pc(39) int local39 = (local8.z >> 7) - local8.radius;
if (local39 < 0) { if (local39 < 0) {
local31 = -local39; local31 = -local39;
local39 = 0; local39 = 0;
} }
@Pc(55) int local55 = (local8.z >> 7) + local8.radius; @Pc(55) int local55 = (local8.z >> 7) + local8.radius;
if (local55 > length - 1) { if (local55 > length - 1) {
local55 = length - 1; local55 = length - 1;
} }
for (@Pc(66) int local66 = local39; local66 <= local55; local66++) { for (@Pc(66) int local66 = local39; local66 <= local55; local66++) {
@Pc(75) short local75 = local8.aShortArray30[local31++]; @Pc(75) short local75 = local8.aShortArray30[local31++];
@Pc(87) int local87 = (local8.x >> 7) + (local75 >> 8) - local8.radius; @Pc(87) int local87 = (local8.x >> 7) + (local75 >> 8) - local8.radius;
@Pc(95) int local95 = local87 + (local75 & 0xFF) - 1; @Pc(95) int local95 = local87 + (local75 & 0xFF) - 1;
if (local87 < 0) { if (local87 < 0) {
local87 = 0; local87 = 0;
} }
if (local95 > width - 1) { if (local95 > width - 1) {
local95 = width - 1; local95 = width - 1;
} }
for (@Pc(110) int local110 = local87; local110 <= local95; local110++) { for (@Pc(110) int local110 = local87; local110 <= local95; local110++) {
@Pc(121) int local121 = anIntArrayArrayArray11[local26][local110][local66]; @Pc(121) int local121 = anIntArrayArrayArray11[local26][local110][local66];
if ((local121 & 0xFF) == 0) { if ((local121 & 0xFF) == 0) {
anIntArrayArrayArray11[local26][local110][local66] = local121 | local1 + 1; anIntArrayArrayArray11[local26][local110][local66] = local121 | local1 + 1;
} else if ((local121 & 0xFF00) == 0) { } else if ((local121 & 0xFF00) == 0) {
anIntArrayArrayArray11[local26][local110][local66] = local121 | local1 + 1 << 8; anIntArrayArrayArray11[local26][local110][local66] = local121 | local1 + 1 << 8;
} else if ((local121 & 0xFF0000) == 0) { } else if ((local121 & 0xFF0000) == 0) {
anIntArrayArrayArray11[local26][local110][local66] = local121 | local1 + 1 << 16; anIntArrayArrayArray11[local26][local110][local66] = local121 | local1 + 1 << 16;
} else if ((local121 & 0xFF000000) == 0) { } else if ((local121 & 0xFF000000) == 0) {
anIntArrayArrayArray11[local26][local110][local66] = local121 | local1 + 1 << 24; anIntArrayArrayArray11[local26][local110][local66] = local121 | local1 + 1 << 24;
} }
} }
} }
} }
} }
} }
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(I)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(I)V")
private static void disableLight(@OriginalArg(0) int i) { private static void disableLight(@OriginalArg(0) int i) {
if (enabledLights[i]) { if (enabledLights[i]) {
enabledLights[i] = false; enabledLights[i] = false;
@Pc(14) int light = i + 16384 + 4; @Pc(14) int light = i + 16384 + 4;
@Pc(16) GL2 gl = GlRenderer.gl; @Pc(16) GL2 gl = GlRenderer.gl;
gl.glDisable(light); gl.glDisable(light);
} }
} }
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(IIIII)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(IIIII)V")
public static void method2397(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) { public static void method2397(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
if (!Preferences.highDetailLighting) { if (!Preferences.highDetailLighting) {
return; return;
} }
label43: for (@Pc(4) int local4 = 0; local4 < 4; local4++) { label43:
if (anIntArray284[local4] != -1) { for (@Pc(4) int local4 = 0; local4 < 4; local4++) {
@Pc(20) int local20 = anIntArrayArrayArray11[arg0][arg1][arg2]; if (anIntArray284[local4] != -1) {
@Pc(28) int local28; @Pc(20) int local20 = anIntArrayArrayArray11[arg0][arg1][arg2];
while (local20 != 0) { @Pc(28) int local28;
local28 = (local20 & 0xFF) - 1; while (local20 != 0) {
local20 >>>= 0x8; local28 = (local20 & 0xFF) - 1;
if (local28 == anIntArray284[local4]) { local20 >>>= 0x8;
continue label43; if (local28 == anIntArray284[local4]) {
} continue label43;
} }
local20 = anIntArrayArrayArray11[arg0][arg3][arg4]; }
while (local20 != 0) { local20 = anIntArrayArrayArray11[arg0][arg3][arg4];
local28 = (local20 & 0xFF) - 1; while (local20 != 0) {
local20 >>>= 0x8; local28 = (local20 & 0xFF) - 1;
if (local28 == anIntArray284[local4]) { local20 >>>= 0x8;
continue label43; if (local28 == anIntArray284[local4]) {
} continue label43;
} }
} }
anIntArray284[local4] = -1; }
disableLight(local4); anIntArray284[local4] = -1;
} disableLight(local4);
} }
}
@OriginalMember(owner = "client!jf", name = "c", descriptor = "()V") @OriginalMember(owner = "client!jf", name = "c", descriptor = "()V")
public static void method2398() { public static void method2398() {
lights = null; lights = null;
anIntArray284 = null; anIntArray284 = null;
enabledLights = null; enabledLights = null;
anIntArray283 = null; anIntArray283 = null;
aBooleanArray66 = null; aBooleanArray66 = null;
anIntArrayArrayArray11 = null; anIntArrayArrayArray11 = null;
} }
@OriginalMember(owner = "client!jf", name = "e", descriptor = "()V") @OriginalMember(owner = "client!jf", name = "e", descriptor = "()V")
public static void method2400() { public static void method2400() {
@Pc(1) GL2 local1 = GlRenderer.gl; @Pc(1) GL2 local1 = GlRenderer.gl;
@Pc(3) int local3; @Pc(3) int local3;
for (local3 = 0; local3 < 4; local3++) { for (local3 = 0; local3 < 4; local3++) {
@Pc(10) int local10 = local3 + 16388; @Pc(10) int local10 = local3 + 16388;
local1.glLightfv(local10, GL2.GL_AMBIENT, new float[] { 0.0F, 0.0F, 0.0F, 1.0F }, 0); local1.glLightfv(local10, GL2.GL_AMBIENT, new float[]{0.0F, 0.0F, 0.0F, 1.0F}, 0);
local1.glLightf(local10, GL2.GL_LINEAR_ATTENUATION, 0.0F); local1.glLightf(local10, GL2.GL_LINEAR_ATTENUATION, 0.0F);
local1.glLightf(local10, GL2.GL_CONSTANT_ATTENUATION, 0.0F); local1.glLightf(local10, GL2.GL_CONSTANT_ATTENUATION, 0.0F);
} }
for (local3 = 0; local3 < 4; local3++) { for (local3 = 0; local3 < 4; local3++) {
anIntArray284[local3] = -1; anIntArray284[local3] = -1;
disableLight(local3); disableLight(local3);
} }
} }
@OriginalMember(owner = "client!jf", name = "f", descriptor = "()V") @OriginalMember(owner = "client!jf", name = "f", descriptor = "()V")
public static void method2401() { public static void method2401() {
lights = new Light[255]; lights = new Light[255];
anIntArray284 = new int[4]; anIntArray284 = new int[4];
enabledLights = new boolean[4]; enabledLights = new boolean[4];
anIntArray283 = new int[4]; anIntArray283 = new int[4];
aBooleanArray66 = new boolean[4]; aBooleanArray66 = new boolean[4];
anIntArrayArrayArray11 = new int[anInt3032][width][length]; anIntArrayArrayArray11 = new int[anInt3032][width][length];
} }
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(II[[[Lclient!bj;)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(II[[[Lclient!bj;)V")
public static void method2402(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) Tile[][][] arg2) { public static void method2402(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) Tile[][][] arg2) {
if (!Preferences.highDetailLighting) { if (!Preferences.highDetailLighting) {
return; return;
} }
@Pc(4) GL2 gl = GlRenderer.gl; @Pc(4) GL2 gl = GlRenderer.gl;
MaterialManager.setMaterial(0, 0); MaterialManager.setMaterial(0, 0);
GlRenderer.setTextureCombineRgbMode(0); GlRenderer.setTextureCombineRgbMode(0);
GlRenderer.resetTextureMatrix(); GlRenderer.resetTextureMatrix();
GlRenderer.setTextureId(GlRenderer.anInt5328); GlRenderer.setTextureId(GlRenderer.anInt5328);
gl.glDepthMask(false); gl.glDepthMask(false);
GlRenderer.setLightingEnabled(false); GlRenderer.setLightingEnabled(false);
gl.glBlendFunc(GL2.GL_DST_COLOR, GL2.GL_ONE); gl.glBlendFunc(GL2.GL_DST_COLOR, GL2.GL_ONE);
gl.glFogfv(GL2.GL_FOG_COLOR, new float[] { 0.0F, 0.0F, 0.0F, 0.0F }, 0); gl.glFogfv(GL2.GL_FOG_COLOR, new float[]{0.0F, 0.0F, 0.0F, 0.0F}, 0);
gl.glTexEnvi(GL2.GL_TEXTURE_ENV, GL2.GL_SRC0_RGB, GL2.GL_CONSTANT); gl.glTexEnvi(GL2.GL_TEXTURE_ENV, GL2.GL_SRC0_RGB, GL2.GL_CONSTANT);
gl.glTexEnvi(GL2.GL_TEXTURE_ENV, GL2.GL_OPERAND0_RGB, GL2.GL_SRC_ALPHA); gl.glTexEnvi(GL2.GL_TEXTURE_ENV, GL2.GL_OPERAND0_RGB, GL2.GL_SRC_ALPHA);
label71: for (@Pc(56) int local56 = 0; local56 < lightCount; local56++) { label71:
@Pc(63) Light local63 = lights[local56]; for (@Pc(56) int local56 = 0; local56 < lightCount; local56++) {
@Pc(66) int local66 = local63.level; @Pc(63) Light local63 = lights[local56];
if (local63.aBoolean125) { @Pc(66) int local66 = local63.level;
local66--; if (local63.aBoolean125) {
} local66--;
if (local63.aClass45_1 != null) { }
@Pc(76) int local76 = 0; if (local63.aClass45_1 != null) {
@Pc(84) int local84 = (local63.z >> 7) - local63.radius; @Pc(76) int local76 = 0;
@Pc(92) int local92 = (local63.z >> 7) + local63.radius; @Pc(84) int local84 = (local63.z >> 7) - local63.radius;
if (local92 >= anInt4866) { @Pc(92) int local92 = (local63.z >> 7) + local63.radius;
local92 = anInt4866 - 1; if (local92 >= anInt4866) {
} local92 = anInt4866 - 1;
if (local84 < anInt4698) { }
local76 = anInt4698 - local84; if (local84 < anInt4698) {
local84 = anInt4698; local76 = anInt4698 - local84;
} local84 = anInt4698;
for (@Pc(112) int local112 = local84; local112 <= local92; local112++) { }
@Pc(121) short local121 = local63.aShortArray30[local76++]; for (@Pc(112) int local112 = local84; local112 <= local92; local112++) {
@Pc(133) int local133 = (local63.x >> 7) + (local121 >> 8) - local63.radius; @Pc(121) short local121 = local63.aShortArray30[local76++];
@Pc(141) int local141 = local133 + (local121 & 0xFF) - 1; @Pc(133) int local133 = (local63.x >> 7) + (local121 >> 8) - local63.radius;
if (local133 < anInt987) { @Pc(141) int local141 = local133 + (local121 & 0xFF) - 1;
local133 = anInt987; if (local133 < anInt987) {
} local133 = anInt987;
if (local141 >= anInt15) { }
local141 = anInt15 - 1; if (local141 >= anInt15) {
} local141 = anInt15 - 1;
for (@Pc(155) int local155 = local133; local155 <= local141; local155++) { }
@Pc(160) Tile local160 = null; for (@Pc(155) int local155 = local133; local155 <= local141; local155++) {
if (local66 >= 0) { @Pc(160) Tile local160 = null;
local160 = arg2[local66][local155][local112]; if (local66 >= 0) {
} local160 = arg2[local66][local155][local112];
if (local66 < 0 || local160 != null && local160.aBoolean45) { }
GlRenderer.method4159(201.5F - (float) local63.level * 50.0F - 1.5F); if (local66 < 0 || local160 != null && local160.aBoolean45) {
gl.glTexEnvfv(GL2.GL_TEXTURE_ENV, GL2.GL_TEXTURE_ENV_COLOR, new float[] { 0.0F, 0.0F, 0.0F, local63.alpha}, 0); GlRenderer.method4159(201.5F - (float) local63.level * 50.0F - 1.5F);
local63.aClass45_1.method1556(); gl.glTexEnvfv(GL2.GL_TEXTURE_ENV, GL2.GL_TEXTURE_ENV_COLOR, new float[]{0.0F, 0.0F, 0.0F, local63.alpha}, 0);
continue label71; local63.aClass45_1.method1556();
} continue label71;
} }
} }
} }
} }
gl.glTexEnvi(GL2.GL_TEXTURE_ENV, GL2.GL_SRC0_RGB, GL2.GL_TEXTURE); }
gl.glTexEnvi(GL2.GL_TEXTURE_ENV, GL2.GL_OPERAND0_RGB, GL2.GL_SRC_COLOR); gl.glTexEnvi(GL2.GL_TEXTURE_ENV, GL2.GL_SRC0_RGB, GL2.GL_TEXTURE);
gl.glBlendFunc(GL2.GL_SRC_ALPHA, GL2.GL_ONE_MINUS_SRC_ALPHA); gl.glTexEnvi(GL2.GL_TEXTURE_ENV, GL2.GL_OPERAND0_RGB, GL2.GL_SRC_COLOR);
gl.glDepthMask(true); gl.glBlendFunc(GL2.GL_SRC_ALPHA, GL2.GL_ONE_MINUS_SRC_ALPHA);
gl.glFogfv(GL2.GL_FOG_COLOR, FogManager.fogColor, 0); gl.glDepthMask(true);
gl.glEnableClientState(GL2.GL_TEXTURE_COORD_ARRAY); gl.glFogfv(GL2.GL_FOG_COLOR, FogManager.fogColor, 0);
GlRenderer.restoreLighting(); gl.glEnableClientState(GL2.GL_TEXTURE_COORD_ARRAY);
} GlRenderer.restoreLighting();
}
@OriginalMember(owner = "client!jf", name = "a", descriptor = "(ILclient!gi;III)V") @OriginalMember(owner = "client!jf", name = "a", descriptor = "(ILclient!gi;III)V")
private static void method2403(@OriginalArg(0) int arg0, @OriginalArg(1) Light arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) { private static void method2403(@OriginalArg(0) int arg0, @OriginalArg(1) Light arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
@Pc(5) int local5 = arg0 + 16384 + 4; @Pc(5) int local5 = arg0 + 16384 + 4;
@Pc(7) GL2 gl = GlRenderer.gl; @Pc(7) GL2 gl = GlRenderer.gl;
if (!enabledLights[arg0]) { if (!enabledLights[arg0]) {
gl.glEnable(local5); gl.glEnable(local5);
enabledLights[arg0] = true; enabledLights[arg0] = true;
} }
gl.glLightf(local5, GL2.GL_QUADRATIC_ATTENUATION, arg1.aFloat9); gl.glLightf(local5, GL2.GL_QUADRATIC_ATTENUATION, arg1.aFloat9);
gl.glLightfv(local5, GL2.GL_DIFFUSE, arg1.diffuse, 0); gl.glLightfv(local5, GL2.GL_DIFFUSE, arg1.diffuse, 0);
aFloatArray17[0] = arg1.x - arg2; aFloatArray17[0] = arg1.x - arg2;
aFloatArray17[1] = arg1.y - arg3; aFloatArray17[1] = arg1.y - arg3;
aFloatArray17[2] = arg1.z - arg4; aFloatArray17[2] = arg1.z - arg4;
gl.glLightfv(local5, GL2.GL_POSITION, aFloatArray17, 0); gl.glLightfv(local5, GL2.GL_POSITION, aFloatArray17, 0);
} }
@OriginalMember(owner = "client!jf", name = "g", descriptor = "()V") @OriginalMember(owner = "client!jf", name = "g", descriptor = "()V")
public static void method2404() { public static void method2404() {
lightCount = 0; lightCount = 0;
for (@Pc(3) int local3 = 0; local3 < anInt3032; local3++) { for (@Pc(3) int local3 = 0; local3 < anInt3032; local3++) {
for (@Pc(8) int local8 = 0; local8 < width; local8++) { for (@Pc(8) int local8 = 0; local8 < width; local8++) {
for (@Pc(13) int local13 = 0; local13 < length; local13++) { for (@Pc(13) int local13 = 0; local13 < length; local13++) {
anIntArrayArrayArray11[local3][local8][local13] = 0; anIntArrayArrayArray11[local3][local8][local13] = 0;
} }
} }
} }
} }
} }

View file

@ -1,20 +1,21 @@
package rt4; package rt4;
import java.nio.ByteBuffer; import com.jogamp.opengl.GL2;
import java.nio.ByteOrder;
import java.nio.FloatBuffer;
import com.jogamp.opengl.*;
import org.openrs2.deob.annotation.OriginalArg; import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass; import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.nio.FloatBuffer;
@OriginalClass("client!rd") @OriginalClass("client!rd")
public final class LiquidMaterialRenderer implements MaterialRenderer { public final class LiquidMaterialRenderer implements MaterialRenderer {
@OriginalMember(owner = "client!rd", name = "d", descriptor = "[F") @OriginalMember(owner = "client!rd", name = "d", descriptor = "[F")
public static final float[] aFloatArray24 = new float[4]; public static final float[] aFloatArray24 = new float[4];
@OriginalMember(owner = "client!rd", name = "a", descriptor = "I") @OriginalMember(owner = "client!rd", name = "a", descriptor = "I")
private int anInt4829 = -1; private int anInt4829 = -1;
@OriginalMember(owner = "client!rd", name = "e", descriptor = "I") @OriginalMember(owner = "client!rd", name = "e", descriptor = "I")

View file

@ -5,28 +5,28 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class LoadingBar { public class LoadingBar {
@OriginalMember(owner = "client!oj", name = "a", descriptor = "(BZLclient!rk;)V") @OriginalMember(owner = "client!oj", name = "a", descriptor = "(BZLclient!rk;)V")
public static void render(@OriginalArg(1) boolean arg0, @OriginalArg(2) Font arg1) { public static void render(@OriginalArg(1) boolean arg0, @OriginalArg(2) Font arg1) {
@Pc(9) int local9; @Pc(9) int local9;
if (GlRenderer.enabled || arg0) { if (GlRenderer.enabled || arg0) {
local9 = GameShell.canvasHeight; local9 = GameShell.canvasHeight;
@Pc(15) int local15 = local9 * 956 / 503; @Pc(15) int local15 = local9 * 956 / 503;
TitleScreen.titleBg.renderResized((GameShell.canvasWidth - local15) / 2, 0, local15, local9); TitleScreen.titleBg.renderResized((GameShell.canvasWidth - local15) / 2, 0, local15, local9);
TitleScreen.logo.renderTransparent(GameShell.canvasWidth / 2 - TitleScreen.logo.width / 2, 18); TitleScreen.logo.renderTransparent(GameShell.canvasWidth / 2 - TitleScreen.logo.width / 2, 18);
} }
arg1.renderCenter(LocalizedText.GAME0_LOADING, GameShell.canvasWidth / 2, GameShell.canvasHeight / 2 - 26, 16777215, -1); arg1.renderCenter(LocalizedText.GAME0_LOADING, GameShell.canvasWidth / 2, GameShell.canvasHeight / 2 - 26, 16777215, -1);
local9 = GameShell.canvasHeight / 2 - 18; local9 = GameShell.canvasHeight / 2 - 18;
if (GlRenderer.enabled) { if (GlRenderer.enabled) {
GlRaster.method1179(GameShell.canvasWidth / 2 - 152, local9, 304, 34, 9179409); GlRaster.method1179(GameShell.canvasWidth / 2 - 152, local9, 304, 34, 9179409);
GlRaster.method1179(GameShell.canvasWidth / 2 - 151, local9 - -1, 302, 32, 0); GlRaster.method1179(GameShell.canvasWidth / 2 - 151, local9 - -1, 302, 32, 0);
GlRaster.method1186(GameShell.canvasWidth / 2 - 150, local9 + 2, client.mainLoadPercentage * 3, 30, 9179409); GlRaster.method1186(GameShell.canvasWidth / 2 - 150, local9 + 2, client.mainLoadPercentage * 3, 30, 9179409);
GlRaster.method1186(GameShell.canvasWidth / 2 + client.mainLoadPercentage * 3 - 150, local9 + 2, 300 - client.mainLoadPercentage * 3, 30, 0); GlRaster.method1186(GameShell.canvasWidth / 2 + client.mainLoadPercentage * 3 - 150, local9 + 2, 300 - client.mainLoadPercentage * 3, 30, 0);
} else { } else {
SoftwareRaster.drawRect(GameShell.canvasWidth / 2 - 152, local9, 304, 34, 9179409); SoftwareRaster.drawRect(GameShell.canvasWidth / 2 - 152, local9, 304, 34, 9179409);
SoftwareRaster.drawRect(GameShell.canvasWidth / 2 - 151, local9 + 1, 302, 32, 0); SoftwareRaster.drawRect(GameShell.canvasWidth / 2 - 151, local9 + 1, 302, 32, 0);
SoftwareRaster.fillRect(GameShell.canvasWidth / 2 - 150, local9 + 2, client.mainLoadPercentage * 3, 30, 9179409); SoftwareRaster.fillRect(GameShell.canvasWidth / 2 - 150, local9 + 2, client.mainLoadPercentage * 3, 30, 9179409);
SoftwareRaster.fillRect(client.mainLoadPercentage * 3 + GameShell.canvasWidth / 2 - 150, local9 + 2, 300 - client.mainLoadPercentage * 3, 30, 0); SoftwareRaster.fillRect(client.mainLoadPercentage * 3 + GameShell.canvasWidth / 2 - 150, local9 + 2, 300 - client.mainLoadPercentage * 3, 30, 0);
} }
arg1.renderCenter(client.mainLoadSecondaryText, GameShell.canvasWidth / 2, GameShell.canvasHeight / 2 + 4, 16777215, -1); arg1.renderCenter(client.mainLoadSecondaryText, GameShell.canvasWidth / 2, GameShell.canvasHeight / 2 + 4, 16777215, -1);
} }
} }

View file

@ -4,74 +4,74 @@ import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalMember; import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
import java.awt.*;
import java.awt.Font; import java.awt.Font;
import java.awt.*;
public class LoadingBarAwt { public class LoadingBarAwt {
@OriginalMember(owner = "client!tg", name = "a", descriptor = "Ljava/awt/FontMetrics;") @OriginalMember(owner = "client!tg", name = "a", descriptor = "Ljava/awt/FontMetrics;")
public static FontMetrics aFontMetrics1; public static FontMetrics aFontMetrics1;
@OriginalMember(owner = "client!lj", name = "y", descriptor = "Ljava/awt/Image;") @OriginalMember(owner = "client!lj", name = "y", descriptor = "Ljava/awt/Image;")
public static Image anImage3; public static Image anImage3;
@OriginalMember(owner = "client!sa", name = "R", descriptor = "Ljava/awt/Font;") @OriginalMember(owner = "client!sa", name = "R", descriptor = "Ljava/awt/Font;")
public static Font aFont1; public static Font aFont1;
@OriginalMember(owner = "client!bc", name = "a", descriptor = "(Ljava/awt/Color;ZZLclient!na;I)V") @OriginalMember(owner = "client!bc", name = "a", descriptor = "(Ljava/awt/Color;ZZLclient!na;I)V")
public static void render(@OriginalArg(0) Color arg0, @OriginalArg(2) boolean arg1, @OriginalArg(3) JagString arg2, @OriginalArg(4) int arg3) { public static void render(@OriginalArg(0) Color arg0, @OriginalArg(2) boolean arg1, @OriginalArg(3) JagString arg2, @OriginalArg(4) int arg3) {
try { try {
@Pc(6) Graphics local6 = GameShell.canvas.getGraphics(); @Pc(6) Graphics local6 = GameShell.canvas.getGraphics();
if (aFont1 == null) { if (aFont1 == null) {
aFont1 = new Font("Helvetica", 1, 13); aFont1 = new Font("Helvetica", 1, 13);
aFontMetrics1 = GameShell.canvas.getFontMetrics(aFont1); aFontMetrics1 = GameShell.canvas.getFontMetrics(aFont1);
} }
if (arg1) { if (arg1) {
local6.setColor(Color.black); local6.setColor(Color.black);
local6.fillRect(0, 0, GameShell.canvasWidth, GameShell.canvasHeight); local6.fillRect(0, 0, GameShell.canvasWidth, GameShell.canvasHeight);
} }
if (arg0 == null) { if (arg0 == null) {
arg0 = new Color(140, 17, 17); arg0 = new Color(140, 17, 17);
} }
try { try {
if (anImage3 == null) { if (anImage3 == null) {
anImage3 = GameShell.canvas.createImage(304, 34); anImage3 = GameShell.canvas.createImage(304, 34);
} }
@Pc(56) Graphics local56 = anImage3.getGraphics(); @Pc(56) Graphics local56 = anImage3.getGraphics();
local56.setColor(arg0); local56.setColor(arg0);
local56.drawRect(0, 0, 303, 33); local56.drawRect(0, 0, 303, 33);
local56.fillRect(2, 2, arg3 * 3, 30); local56.fillRect(2, 2, arg3 * 3, 30);
local56.setColor(Color.black); local56.setColor(Color.black);
local56.drawRect(1, 1, 301, 31); local56.drawRect(1, 1, 301, 31);
local56.fillRect(arg3 * 3 + 2, 2, 300 - arg3 * 3, 30); local56.fillRect(arg3 * 3 + 2, 2, 300 - arg3 * 3, 30);
local56.setFont(aFont1); local56.setFont(aFont1);
local56.setColor(Color.white); local56.setColor(Color.white);
arg2.method3112(22, (304 - arg2.method3155(aFontMetrics1)) / 2, local56); arg2.method3112(22, (304 - arg2.method3155(aFontMetrics1)) / 2, local56);
local6.drawImage(anImage3, GameShell.canvasWidth / 2 - 152, GameShell.canvasHeight / 2 + -18, null); local6.drawImage(anImage3, GameShell.canvasWidth / 2 - 152, GameShell.canvasHeight / 2 + -18, null);
} catch (@Pc(134) Exception local134) { } catch (@Pc(134) Exception local134) {
@Pc(140) int local140 = GameShell.canvasWidth / 2 - 152; @Pc(140) int local140 = GameShell.canvasWidth / 2 - 152;
@Pc(146) int local146 = GameShell.canvasHeight / 2 - 18; @Pc(146) int local146 = GameShell.canvasHeight / 2 - 18;
local6.setColor(arg0); local6.setColor(arg0);
local6.drawRect(local140, local146, 303, 33); local6.drawRect(local140, local146, 303, 33);
local6.fillRect(local140 + 2, local146 + 2, arg3 * 3, 30); local6.fillRect(local140 + 2, local146 + 2, arg3 * 3, 30);
local6.setColor(Color.black); local6.setColor(Color.black);
local6.drawRect(local140 + 1, local146 - -1, 301, 31); local6.drawRect(local140 + 1, local146 - -1, 301, 31);
local6.fillRect(arg3 * 3 + local140 + 2, local146 + 2, 300 - arg3 * 3, 30); local6.fillRect(arg3 * 3 + local140 + 2, local146 + 2, 300 - arg3 * 3, 30);
local6.setFont(aFont1); local6.setFont(aFont1);
local6.setColor(Color.white); local6.setColor(Color.white);
arg2.method3112(local146 + 22, local140 + (-arg2.method3155(aFontMetrics1) + 304) / 2, local6); arg2.method3112(local146 + 22, local140 + (-arg2.method3155(aFontMetrics1) + 304) / 2, local6);
} }
if (client.mainLoadPrimaryText != null) { if (client.mainLoadPrimaryText != null) {
local6.setFont(aFont1); local6.setFont(aFont1);
local6.setColor(Color.white); local6.setColor(Color.white);
client.mainLoadPrimaryText.method3112(GameShell.canvasHeight / 2 - 26, GameShell.canvasWidth / 2 - client.mainLoadPrimaryText.method3155(aFontMetrics1) / 2, local6); client.mainLoadPrimaryText.method3112(GameShell.canvasHeight / 2 - 26, GameShell.canvasWidth / 2 - client.mainLoadPrimaryText.method3155(aFontMetrics1) / 2, local6);
} }
} catch (@Pc(252) Exception local252) { } catch (@Pc(252) Exception local252) {
GameShell.canvas.repaint(); GameShell.canvas.repaint();
} }
} }
@OriginalMember(owner = "client!n", name = "a", descriptor = "(B)V") @OriginalMember(owner = "client!n", name = "a", descriptor = "(B)V")
public static void clear() { public static void clear() {
aFontMetrics1 = null; aFontMetrics1 = null;
aFont1 = null; aFont1 = null;
anImage3 = null; anImage3 = null;
} }
} }

View file

@ -9,10 +9,10 @@ import org.openrs2.deob.annotation.Pc;
public final class Loc extends Entity { public final class Loc extends Entity {
@OriginalMember(owner = "client!kf", name = "h", descriptor = "[I") @OriginalMember(owner = "client!kf", name = "h", descriptor = "[I")
public static final int[] LAYERS = new int[] { 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3 }; public static final int[] LAYERS = new int[]{0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3};
@OriginalMember(owner = "client!ci", name = "q", descriptor = "Lclient!ek;") @OriginalMember(owner = "client!ci", name = "q", descriptor = "Lclient!ek;")
public static SoftwareIndexedSprite aClass36_Sub1_1 = null; public static SoftwareIndexedSprite aClass36_Sub1_1 = null;
@OriginalMember(owner = "client!dc", name = "U", descriptor = "Lclient!ga;") @OriginalMember(owner = "client!dc", name = "U", descriptor = "Lclient!ga;")
private ParticleSystem aClass47_Sub1_2; private ParticleSystem aClass47_Sub1_2;
@OriginalMember(owner = "client!dc", name = "x", descriptor = "I") @OriginalMember(owner = "client!dc", name = "x", descriptor = "I")
@ -141,55 +141,55 @@ public final class Loc extends Entity {
} }
} }
@OriginalMember(owner = "client!al", name = "a", descriptor = "(Lclient!pb;BIIIIIII)V") @OriginalMember(owner = "client!al", name = "a", descriptor = "(Lclient!pb;BIIIIIII)V")
public static void method181(@OriginalArg(0) LocType arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7) { public static void method181(@OriginalArg(0) LocType arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7) {
@Pc(5) int local5 = arg2 & 0x3; @Pc(5) int local5 = arg2 & 0x3;
@Pc(28) int local28; @Pc(28) int local28;
@Pc(31) int local31; @Pc(31) int local31;
if (local5 == 1 || local5 == 3) { if (local5 == 1 || local5 == 3) {
local28 = arg0.length; local28 = arg0.length;
local31 = arg0.width; local31 = arg0.width;
} else { } else {
local31 = arg0.length; local31 = arg0.length;
local28 = arg0.width; local28 = arg0.width;
} }
@Pc(53) int local53; @Pc(53) int local53;
@Pc(51) int local51; @Pc(51) int local51;
if (arg6 + local31 > 104) { if (arg6 + local31 > 104) {
local51 = arg6 + 1; local51 = arg6 + 1;
local53 = arg6; local53 = arg6;
} else { } else {
local53 = arg6 + (local31 >> 1); local53 = arg6 + (local31 >> 1);
local51 = arg6 + (local31 + 1 >> 1); local51 = arg6 + (local31 + 1 >> 1);
} }
@Pc(80) int local80 = (arg5 << 7) + (local28 << 6); @Pc(80) int local80 = (arg5 << 7) + (local28 << 6);
@Pc(88) int local88 = (arg6 << 7) + (local31 << 6); @Pc(88) int local88 = (arg6 << 7) + (local31 << 6);
@Pc(96) int local96; @Pc(96) int local96;
@Pc(100) int local100; @Pc(100) int local100;
if (arg5 + local28 > 104) { if (arg5 + local28 > 104) {
local96 = arg5; local96 = arg5;
local100 = arg5 + 1; local100 = arg5 + 1;
} else { } else {
local96 = arg5 + (local28 >> 1); local96 = arg5 + (local28 >> 1);
local100 = (local28 + 1 >> 1) + arg5; local100 = (local28 + 1 >> 1) + arg5;
} }
@Pc(120) int[][] local120 = SceneGraph.tileHeights[arg7]; @Pc(120) int[][] local120 = SceneGraph.tileHeights[arg7];
@Pc(122) int local122 = 0; @Pc(122) int local122 = 0;
@Pc(148) int local148 = local120[local96][local51] + local120[local96][local53] + local120[local100][local53] + local120[local100][local51] >> 2; @Pc(148) int local148 = local120[local96][local51] + local120[local96][local53] + local120[local100][local53] + local120[local100][local51] >> 2;
@Pc(158) int[][] local158; @Pc(158) int[][] local158;
if (arg7 != 0) { if (arg7 != 0) {
local158 = SceneGraph.tileHeights[0]; local158 = SceneGraph.tileHeights[0];
local122 = local148 - (local158[local96][local51] + local158[local100][local53] + local158[local96][local53] + local158[local100][local51] >> 2); local122 = local148 - (local158[local96][local51] + local158[local100][local53] + local158[local96][local53] + local158[local100][local51] >> 2);
} }
local158 = null; local158 = null;
if (arg7 < 3) { if (arg7 < 3) {
local158 = SceneGraph.tileHeights[arg7 + 1]; local158 = SceneGraph.tileHeights[arg7 + 1];
} }
@Pc(215) Loc_Class139 local215 = arg0.method3428(arg2, local80, local120, arg4, local148, local158, false, null, true, local88); @Pc(215) Loc_Class139 local215 = arg0.method3428(arg2, local80, local120, arg4, local148, local158, false, null, true, local88);
ShadowManager.method4207(local215.aClass36_Sub1_3, local80 - arg3, local122, local88 - arg1); ShadowManager.method4207(local215.aClass36_Sub1_3, local80 - arg3, local122, local88 - arg1);
} }
@OriginalMember(owner = "client!dc", name = "a", descriptor = "(IIIII)V") @OriginalMember(owner = "client!dc", name = "a", descriptor = "(IIIII)V")
@Override @Override
public final void method4545(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) { public final void method4545(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
if (GlRenderer.enabled) { if (GlRenderer.enabled) {

View file

@ -8,11 +8,11 @@ import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!pb") @OriginalClass("client!pb")
public final class LocType { public final class LocType {
@OriginalMember(owner = "client!wf", name = "o", descriptor = "[Lclient!gb;") @OriginalMember(owner = "client!wf", name = "o", descriptor = "[Lclient!gb;")
public static final RawModel[] tempModels = new RawModel[4]; public static final RawModel[] tempModels = new RawModel[4];
@OriginalMember(owner = "client!ni", name = "n", descriptor = "Lclient!sm;") @OriginalMember(owner = "client!ni", name = "n", descriptor = "Lclient!sm;")
public static Loc_Class139 aClass139_1 = new Loc_Class139(); public static Loc_Class139 aClass139_1 = new Loc_Class139();
@OriginalMember(owner = "client!pb", name = "a", descriptor = "[S") @OriginalMember(owner = "client!pb", name = "a", descriptor = "[S")
private short[] retextureSource; private short[] retextureSource;
@OriginalMember(owner = "client!pb", name = "b", descriptor = "[S") @OriginalMember(owner = "client!pb", name = "b", descriptor = "[S")
@ -251,7 +251,7 @@ public final class LocType {
if (local10) { if (local10) {
local60 += 65536; local60 += 65536;
} }
local7 = (RawModel) LocTypeList.aClass99_24.get((long) local60); local7 = (RawModel) LocTypeList.aClass99_24.get(local60);
if (local7 == null) { if (local7 == null) {
local7 = RawModel.create(LocTypeList.modelsArchive, local60 & 0xFFFF); local7 = RawModel.create(LocTypeList.modelsArchive, local60 & 0xFFFF);
if (local7 == null) { if (local7 == null) {
@ -260,7 +260,7 @@ public final class LocType {
if (local10) { if (local10) {
local7.method1673(); local7.method1673();
} }
LocTypeList.aClass99_24.put(local7, (long) local60); LocTypeList.aClass99_24.put(local7, local60);
} }
if (local46 > 1) { if (local46 > 1) {
tempModels[local48] = local7; tempModels[local48] = local7;
@ -284,7 +284,7 @@ public final class LocType {
if (local10) { if (local10) {
local48 += 65536; local48 += 65536;
} }
local7 = (RawModel) LocTypeList.aClass99_24.get((long) local48); local7 = (RawModel) LocTypeList.aClass99_24.get(local48);
if (local7 == null) { if (local7 == null) {
local7 = RawModel.create(LocTypeList.modelsArchive, local48 & 0xFFFF); local7 = RawModel.create(LocTypeList.modelsArchive, local48 & 0xFFFF);
if (local7 == null) { if (local7 == null) {
@ -293,21 +293,13 @@ public final class LocType {
if (local10) { if (local10) {
local7.method1673(); local7.method1673();
} }
LocTypeList.aClass99_24.put(local7, (long) local48); LocTypeList.aClass99_24.put(local7, local48);
} }
} }
@Pc(211) boolean local211; @Pc(211) boolean local211;
if (this.resizeX == 128 && this.resizeY == 128 && this.resizeZ == 128) { local211 = this.resizeX != 128 || this.resizeY != 128 || this.resizeZ != 128;
local211 = false;
} else {
local211 = true;
}
@Pc(230) boolean local230; @Pc(230) boolean local230;
if (this.translateX == 0 && this.translateY == 0 && this.translateZ == 0) { local230 = this.translateX != 0 || this.translateY != 0 || this.translateZ != 0;
local230 = false;
} else {
local230 = true;
}
@Pc(265) RawModel local265 = new RawModel(local7, arg0 == 0 && !local211 && !local230, this.recolorSource == null, this.retextureSource == null, true); @Pc(265) RawModel local265 = new RawModel(local7, arg0 == 0 && !local211 && !local230, this.recolorSource == null, this.retextureSource == null, true);
if (arg1 == 4 && arg0 > 3) { if (arg1 == 4 && arg0 > 3) {
local265.method1682(); local265.method1682();
@ -385,7 +377,7 @@ public final class LocType {
if (this.params == null) { if (this.params == null) {
return arg0; return arg0;
} else { } else {
@Pc(21) IntNode local21 = (IntNode) this.params.get((long) arg1); @Pc(21) IntNode local21 = (IntNode) this.params.get(arg1);
return local21 == null ? arg0 : local21.value; return local21 == null ? arg0 : local21.value;
} }
} }
@ -605,7 +597,7 @@ public final class LocType {
} else { } else {
local589 = new IntNode(arg0.g4()); local589 = new IntNode(arg0.g4());
} }
this.params.put(local589, (long) local580); this.params.put(local589, local580);
} }
} }
} }
@ -681,14 +673,14 @@ public final class LocType {
if (arg1) { if (arg1) {
local26 += 65536; local26 += 65536;
} }
local79 = (GlModel) LocTypeList.aClass99_24.get((long) local26); local79 = (GlModel) LocTypeList.aClass99_24.get(local26);
if (local79 == null) { if (local79 == null) {
@Pc(90) RawModel local90 = RawModel.create(LocTypeList.modelsArchive, local26 & 0xFFFF); @Pc(90) RawModel local90 = RawModel.create(LocTypeList.modelsArchive, local26 & 0xFFFF);
if (local90 == null) { if (local90 == null) {
return null; return null;
} }
local79 = new GlModel(local90, local10, local17, arg1); local79 = new GlModel(local90, local10, local17, arg1);
LocTypeList.aClass99_24.put(local79, (long) local26); LocTypeList.aClass99_24.put(local79, local26);
} }
} }
@Pc(236) boolean local236 = this.aBoolean217; @Pc(236) boolean local236 = this.aBoolean217;
@ -918,7 +910,7 @@ public final class LocType {
if (this.params == null) { if (this.params == null) {
return arg0; return arg0;
} else { } else {
@Pc(26) StringNode local26 = (StringNode) this.params.get((long) arg1); @Pc(26) StringNode local26 = (StringNode) this.params.get(arg1);
return local26 == null ? arg0 : local26.value; return local26 == null ? arg0 : local26.value;
} }
} }

View file

@ -5,91 +5,91 @@ import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc; import org.openrs2.deob.annotation.Pc;
public class LocTypeList { public class LocTypeList {
@OriginalMember(owner = "client!oe", name = "j", descriptor = "Lclient!n;") @OriginalMember(owner = "client!oe", name = "j", descriptor = "Lclient!n;")
public static final SoftLruHashTable types = new SoftLruHashTable(64); public static final SoftLruHashTable types = new SoftLruHashTable(64);
@OriginalMember(owner = "client!nf", name = "f", descriptor = "Lclient!n;") @OriginalMember(owner = "client!nf", name = "f", descriptor = "Lclient!n;")
public static final SoftLruHashTable aClass99_24 = new SoftLruHashTable(500); public static final SoftLruHashTable aClass99_24 = new SoftLruHashTable(500);
@OriginalMember(owner = "client!he", name = "fb", descriptor = "Lclient!n;") @OriginalMember(owner = "client!he", name = "fb", descriptor = "Lclient!n;")
public static final SoftLruHashTable aClass99_14 = new SoftLruHashTable(30); public static final SoftLruHashTable aClass99_14 = new SoftLruHashTable(30);
@OriginalMember(owner = "client!vf", name = "l", descriptor = "Lclient!n;") @OriginalMember(owner = "client!vf", name = "l", descriptor = "Lclient!n;")
public static final SoftLruHashTable aClass99_36 = new SoftLruHashTable(50); public static final SoftLruHashTable aClass99_36 = new SoftLruHashTable(50);
@OriginalMember(owner = "client!cg", name = "c", descriptor = "Z") @OriginalMember(owner = "client!cg", name = "c", descriptor = "Z")
public static boolean allowMembers; public static boolean allowMembers;
@OriginalMember(owner = "client!lg", name = "g", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!lg", name = "g", descriptor = "Lclient!ve;")
public static Js5 locsArchive; public static Js5 locsArchive;
@OriginalMember(owner = "client!jg", name = "j", descriptor = "Lclient!ve;") @OriginalMember(owner = "client!jg", name = "j", descriptor = "Lclient!ve;")
public static Js5 modelsArchive; public static Js5 modelsArchive;
@OriginalMember(owner = "client!wc", name = "a", descriptor = "(II)Lclient!pb;") @OriginalMember(owner = "client!wc", name = "a", descriptor = "(II)Lclient!pb;")
public static LocType get(@OriginalArg(1) int id) { public static LocType get(@OriginalArg(1) int id) {
@Pc(15) LocType local15 = (LocType) types.get((long) id); @Pc(15) LocType local15 = (LocType) types.get(id);
if (local15 != null) { if (local15 != null) {
return local15; return local15;
} }
@Pc(30) byte[] local30 = locsArchive.fetchFile(getGroupId(id), getFileId(id)); @Pc(30) byte[] local30 = locsArchive.fetchFile(getGroupId(id), getFileId(id));
local15 = new LocType(); local15 = new LocType();
local15.id = id; local15.id = id;
if (local30 != null) { if (local30 != null) {
local15.decode(new Buffer(local30)); local15.decode(new Buffer(local30));
} }
local15.postDecode(); local15.postDecode();
if (!allowMembers && local15.members) { if (!allowMembers && local15.members) {
local15.ops = null; local15.ops = null;
} }
if (local15.breakroutefinding) { if (local15.breakroutefinding) {
local15.anInt4435 = 0; local15.anInt4435 = 0;
local15.aBoolean207 = false; local15.aBoolean207 = false;
} }
types.put(local15, (long) id); types.put(local15, id);
return local15; return local15;
} }
@OriginalMember(owner = "client!ui", name = "c", descriptor = "(II)I") @OriginalMember(owner = "client!ui", name = "c", descriptor = "(II)I")
public static int getGroupId(@OriginalArg(0) int arg0) { public static int getGroupId(@OriginalArg(0) int arg0) {
return arg0 >>> 8; return arg0 >>> 8;
} }
@OriginalMember(owner = "client!cj", name = "a", descriptor = "(IB)I") @OriginalMember(owner = "client!cj", name = "a", descriptor = "(IB)I")
public static int getFileId(@OriginalArg(0) int arg0) { public static int getFileId(@OriginalArg(0) int arg0) {
return arg0 & 0xFF; return arg0 & 0xFF;
} }
@OriginalMember(owner = "client!oi", name = "a", descriptor = "(ILclient!ve;Lclient!ve;Z)V") @OriginalMember(owner = "client!oi", name = "a", descriptor = "(ILclient!ve;Lclient!ve;Z)V")
public static void init(@OriginalArg(1) Js5 arg0, @OriginalArg(2) Js5 arg1) { public static void init(@OriginalArg(1) Js5 arg0, @OriginalArg(2) Js5 arg1) {
allowMembers = true; allowMembers = true;
modelsArchive = arg1; modelsArchive = arg1;
locsArchive = arg0; locsArchive = arg0;
} }
@OriginalMember(owner = "client!oe", name = "b", descriptor = "(I)V") @OriginalMember(owner = "client!oe", name = "b", descriptor = "(I)V")
public static void method3323() { public static void method3323() {
types.removeSoft(); types.removeSoft();
aClass99_24.removeSoft(); aClass99_24.removeSoft();
aClass99_14.removeSoft(); aClass99_14.removeSoft();
aClass99_36.removeSoft(); aClass99_36.removeSoft();
} }
@OriginalMember(owner = "client!va", name = "b", descriptor = "(II)V") @OriginalMember(owner = "client!va", name = "b", descriptor = "(II)V")
public static void clean() { public static void clean() {
types.clean(5); types.clean(5);
aClass99_24.clean(5); aClass99_24.clean(5);
aClass99_14.clean(5); aClass99_14.clean(5);
aClass99_36.clean(5); aClass99_36.clean(5);
} }
@OriginalMember(owner = "client!hb", name = "c", descriptor = "(I)V") @OriginalMember(owner = "client!hb", name = "c", descriptor = "(I)V")
public static void clear() { public static void clear() {
types.clear(); types.clear();
aClass99_24.clear(); aClass99_24.clear();
aClass99_14.clear(); aClass99_14.clear();
aClass99_36.clear(); aClass99_36.clear();
} }
@OriginalMember(owner = "client!pe", name = "a", descriptor = "(BZ)V") @OriginalMember(owner = "client!pe", name = "a", descriptor = "(BZ)V")
public static void setAllowMembers(@OriginalArg(1) boolean arg0) { public static void setAllowMembers(@OriginalArg(1) boolean arg0) {
if (arg0 != allowMembers) { if (arg0 != allowMembers) {
allowMembers = arg0; allowMembers = arg0;
clear(); clear();
} }
} }
} }

File diff suppressed because it is too large Load diff

Some files were not shown because too many files have changed in this diff Show more