Refactored SignLink classes

This commit is contained in:
Pazaz 2022-04-22 15:43:26 -04:00
parent 8a35c73f76
commit 38800991cb
49 changed files with 741 additions and 748 deletions

View file

@ -7,6 +7,9 @@ import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!vh") @OriginalClass("client!vh")
public class AudioChannel { public class AudioChannel {
@OriginalMember(owner = "client!na", name = "w", descriptor = "Z")
public static boolean stereo;
@OriginalMember(owner = "client!vh", name = "h", descriptor = "Lclient!qb;") @OriginalMember(owner = "client!vh", name = "h", descriptor = "Lclient!qb;")
private PcmStream aClass3_Sub3_6; private PcmStream aClass3_Sub3_6;
@ -56,27 +59,27 @@ public class AudioChannel {
private int anInt4636 = 0; private int anInt4636 = 0;
@OriginalMember(owner = "client!vh", name = "a", descriptor = "()V") @OriginalMember(owner = "client!vh", name = "a", descriptor = "()V")
protected void method3561() throws Exception { protected void write() throws Exception {
} }
@OriginalMember(owner = "client!vh", name = "a", descriptor = "(I)V") @OriginalMember(owner = "client!vh", name = "a", descriptor = "(I)V")
public void method3562(@OriginalArg(0) int arg0) throws Exception { public void open(@OriginalArg(0) int arg0) throws Exception {
} }
@OriginalMember(owner = "client!vh", name = "b", descriptor = "()V") @OriginalMember(owner = "client!vh", name = "b", descriptor = "()V")
protected void method3563() throws Exception { protected void close() throws Exception {
} }
@OriginalMember(owner = "client!vh", name = "a", descriptor = "([II)V") @OriginalMember(owner = "client!vh", name = "a", descriptor = "([II)V")
private void method3564(@OriginalArg(0) int[] arg0) { private void method3564(@OriginalArg(0) int[] arg0) {
@Pc(1) short local1 = 256; @Pc(1) short local1 = 256;
if (Static164.aBoolean192) { if (stereo) {
local1 = 512; local1 = 512;
} }
Static289.method2618(arg0, 0, local1); Static289.method2618(arg0, 0, local1);
this.anInt4638 -= 256; this.anInt4638 -= 256;
if (this.aClass3_Sub3_6 != null && this.anInt4638 <= 0) { if (this.aClass3_Sub3_6 != null && this.anInt4638 <= 0) {
this.anInt4638 += Static44.anInt1404 >> 4; this.anInt4638 += Static44.sampleRate >> 4;
Static167.method3170(this.aClass3_Sub3_6); Static167.method3170(this.aClass3_Sub3_6);
this.method3567(this.aClass3_Sub3_6, this.aClass3_Sub3_6.method4407()); this.method3567(this.aClass3_Sub3_6, this.aClass3_Sub3_6.method4407());
@Pc(45) int local45 = 0; @Pc(45) int local45 = 0;
@ -175,11 +178,11 @@ public class AudioChannel {
if (local14 < this.aLong153) { if (local14 < this.aLong153) {
return; return;
} }
this.method3562(this.anInt4644); this.open(this.anInt4644);
this.aBoolean229 = true; this.aBoolean229 = true;
this.aLong153 = 0L; this.aLong153 = 0L;
} }
@Pc(38) int local38 = this.method3569(); @Pc(38) int local38 = this.getBufferSize();
if (this.anInt4634 < this.anInt4636 - local38) { if (this.anInt4634 < this.anInt4636 - local38) {
this.anInt4634 = this.anInt4636 - local38; this.anInt4634 = this.anInt4636 - local38;
} }
@ -192,9 +195,9 @@ public class AudioChannel {
if (this.anInt4644 > 16384) { if (this.anInt4644 > 16384) {
this.anInt4644 = 16384; this.anInt4644 = 16384;
} }
this.method3572(); this.flush();
local38 = 0; local38 = 0;
this.method3562(this.anInt4644); this.open(this.anInt4644);
if (this.anInt4644 < local65 + 256) { if (this.anInt4644 < local65 + 256) {
local65 = this.anInt4644 - 256; local65 = this.anInt4644 - 256;
this.anInt4637 = local65 - this.anInt4641; this.anInt4637 = local65 - this.anInt4641;
@ -204,13 +207,13 @@ public class AudioChannel {
while (local65 > local38) { while (local65 > local38) {
local38 += 256; local38 += 256;
this.method3564(this.anIntArray411); this.method3564(this.anIntArray411);
this.method3561(); this.write();
} }
if (local14 > this.aLong152) { if (local14 > this.aLong152) {
if (this.aBoolean229) { if (this.aBoolean229) {
this.aBoolean229 = false; this.aBoolean229 = false;
} else if (this.anInt4634 == 0 && this.anInt4640 == 0) { } else if (this.anInt4634 == 0 && this.anInt4640 == 0) {
this.method3572(); this.flush();
this.aLong153 = local14 + 2000L; this.aLong153 = local14 + 2000L;
return; return;
} else { } else {
@ -222,7 +225,7 @@ public class AudioChannel {
} }
this.anInt4636 = local38; this.anInt4636 = local38;
} catch (@Pc(202) Exception local202) { } catch (@Pc(202) Exception local202) {
this.method3572(); this.flush();
this.aLong153 = local14 + 2000L; this.aLong153 = local14 + 2000L;
} }
try { try {
@ -231,7 +234,7 @@ public class AudioChannel {
} }
while (local14 > this.aLong151 + 5000L) { while (local14 > this.aLong151 + 5000L) {
this.method3573(); this.method3573();
this.aLong151 += 256000 / Static44.anInt1404; this.aLong151 += 256000 / Static44.sampleRate;
} }
} catch (@Pc(247) Exception local247) { } catch (@Pc(247) Exception local247) {
this.aLong151 = local14; this.aLong151 = local14;
@ -257,7 +260,7 @@ public class AudioChannel {
} }
@OriginalMember(owner = "client!vh", name = "c", descriptor = "()I") @OriginalMember(owner = "client!vh", name = "c", descriptor = "()I")
protected int method3569() throws Exception { protected int getBufferSize() throws Exception {
return this.anInt4644; return this.anInt4644;
} }
@ -265,9 +268,9 @@ public class AudioChannel {
public final synchronized void method3570() { public final synchronized void method3570() {
this.aBoolean229 = true; this.aBoolean229 = true;
try { try {
this.method3563(); this.close();
} catch (@Pc(10) Exception local10) { } catch (@Pc(10) Exception local10) {
this.method3572(); this.flush();
this.aLong153 = MonotonicClock.currentTimeMillis() + 2000L; this.aLong153 = MonotonicClock.currentTimeMillis() + 2000L;
} }
} }
@ -278,7 +281,7 @@ public class AudioChannel {
} }
@OriginalMember(owner = "client!vh", name = "d", descriptor = "()V") @OriginalMember(owner = "client!vh", name = "d", descriptor = "()V")
protected void method3572() { protected void flush() {
} }
@OriginalMember(owner = "client!vh", name = "a", descriptor = "(II)V") @OriginalMember(owner = "client!vh", name = "a", descriptor = "(II)V")
@ -312,11 +315,11 @@ public class AudioChannel {
Static60.aClass19_1 = null; Static60.aClass19_1 = null;
} }
} }
this.method3572(); this.flush();
this.anIntArray411 = null; this.anIntArray411 = null;
} }
@OriginalMember(owner = "client!vh", name = "a", descriptor = "(Ljava/awt/Component;)V") @OriginalMember(owner = "client!vh", name = "a", descriptor = "(Ljava/awt/Component;)V")
public void method3576(@OriginalArg(0) Component arg0) throws Exception { public void init(@OriginalArg(0) Component arg0) throws Exception {
} }
} }

View file

@ -45,7 +45,7 @@ public final class BufferedFile {
@OriginalMember(owner = "client!en", name = "<init>", descriptor = "(Lsignlink!qm;II)V") @OriginalMember(owner = "client!en", name = "<init>", descriptor = "(Lsignlink!qm;II)V")
public BufferedFile(@OriginalArg(0) FileOnDisk arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2) throws IOException { public BufferedFile(@OriginalArg(0) FileOnDisk arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2) throws IOException {
this.aClass214_1 = arg0; this.aClass214_1 = arg0;
this.aLong65 = this.aLong64 = arg0.method5137(); this.aLong65 = this.aLong64 = arg0.length();
this.aByteArray20 = new byte[arg2]; this.aByteArray20 = new byte[arg2];
this.aByteArray19 = new byte[arg1]; this.aByteArray19 = new byte[arg1];
this.aLong66 = 0L; this.aLong66 = 0L;
@ -57,10 +57,10 @@ public final class BufferedFile {
return; return;
} }
if (this.aLong68 != this.aLong67) { if (this.aLong68 != this.aLong67) {
this.aClass214_1.method5133(this.aLong68); this.aClass214_1.seek(this.aLong68);
this.aLong67 = this.aLong68; this.aLong67 = this.aLong68;
} }
this.aClass214_1.method5134(this.aByteArray20, this.anInt1899, 0); this.aClass214_1.write(this.aByteArray20, this.anInt1899, 0);
@Pc(45) long local45 = -1L; @Pc(45) long local45 = -1L;
if (this.aLong69 <= this.aLong68 && this.aLong69 + (long) this.anInt1906 > this.aLong68) { if (this.aLong69 <= this.aLong68 && this.aLong69 + (long) this.anInt1906 > this.aLong68) {
local45 = this.aLong68; local45 = this.aLong68;
@ -92,7 +92,7 @@ public final class BufferedFile {
@OriginalMember(owner = "client!en", name = "b", descriptor = "(I)Ljava/io/File;") @OriginalMember(owner = "client!en", name = "b", descriptor = "(I)Ljava/io/File;")
private File method1452() { private File method1452() {
return this.aClass214_1.method5138(); return this.aClass214_1.getFile();
} }
@OriginalMember(owner = "client!en", name = "a", descriptor = "(I[BII)V") @OriginalMember(owner = "client!en", name = "a", descriptor = "(I[BII)V")
@ -120,10 +120,10 @@ public final class BufferedFile {
this.aLong66 += local102; this.aLong66 += local102;
} }
if (this.aByteArray19.length < arg2) { if (this.aByteArray19.length < arg2) {
this.aClass214_1.method5133(this.aLong66); this.aClass214_1.seek(this.aLong66);
this.aLong67 = this.aLong66; this.aLong67 = this.aLong66;
while (arg2 > 0) { while (arg2 > 0) {
local102 = this.aClass214_1.method5135(arg0, arg2, arg1); local102 = this.aClass214_1.read(arg0, arg2, arg1);
if (local102 == -1) { if (local102 == -1) {
break; break;
} }
@ -188,14 +188,14 @@ public final class BufferedFile {
@OriginalMember(owner = "client!en", name = "b", descriptor = "(Z)V") @OriginalMember(owner = "client!en", name = "b", descriptor = "(Z)V")
public final void method1455() throws IOException { public final void method1455() throws IOException {
this.method1450(); this.method1450();
this.aClass214_1.method5136(); this.aClass214_1.close();
} }
@OriginalMember(owner = "client!en", name = "c", descriptor = "(I)V") @OriginalMember(owner = "client!en", name = "c", descriptor = "(I)V")
private void method1456() throws IOException { private void method1456() throws IOException {
this.anInt1906 = 0; this.anInt1906 = 0;
if (this.aLong67 != this.aLong66) { if (this.aLong67 != this.aLong66) {
this.aClass214_1.method5133(this.aLong66); this.aClass214_1.seek(this.aLong66);
this.aLong67 = this.aLong66; this.aLong67 = this.aLong66;
} }
this.aLong69 = this.aLong66; this.aLong69 = this.aLong66;
@ -204,7 +204,7 @@ public final class BufferedFile {
if (local49 > 200000000) { if (local49 > 200000000) {
local49 = 200000000; local49 = 200000000;
} }
@Pc(66) int local66 = this.aClass214_1.method5135(this.anInt1906, local49, this.aByteArray19); @Pc(66) int local66 = this.aClass214_1.read(this.anInt1906, local49, this.aByteArray19);
if (local66 == -1) { if (local66 == -1) {
break; break;
} }
@ -238,10 +238,10 @@ public final class BufferedFile {
} }
if (this.aByteArray20.length < arg2) { if (this.aByteArray20.length < arg2) {
if (this.aLong66 != this.aLong67) { if (this.aLong66 != this.aLong67) {
this.aClass214_1.method5133(this.aLong66); this.aClass214_1.seek(this.aLong66);
this.aLong67 = this.aLong66; this.aLong67 = this.aLong66;
} }
this.aClass214_1.method5134(arg0, arg2, arg1); this.aClass214_1.write(arg0, arg2, arg1);
@Pc(165) long local165 = -1L; @Pc(165) long local165 = -1L;
if (this.aLong69 <= this.aLong66 && (long) this.anInt1906 + this.aLong69 > this.aLong66) { if (this.aLong69 <= this.aLong66 && (long) this.anInt1906 + this.aLong69 > this.aLong66) {
local165 = this.aLong66; local165 = this.aLong66;

View file

@ -15,7 +15,7 @@ public final class BufferedSocket implements Runnable {
private byte[] aByteArray49; private byte[] aByteArray49;
@OriginalMember(owner = "client!ma", name = "n", descriptor = "Lsignlink!im;") @OriginalMember(owner = "client!ma", name = "n", descriptor = "Lsignlink!im;")
private PrivilegedRequest aClass212_4; private PrivilegedRequest thread;
@OriginalMember(owner = "client!ma", name = "l", descriptor = "I") @OriginalMember(owner = "client!ma", name = "l", descriptor = "I")
private int anInt3596 = 0; private int anInt3596 = 0;
@ -155,8 +155,8 @@ public final class BufferedSocket implements Runnable {
throw new IOException(); throw new IOException();
} }
} }
if (this.aClass212_4 == null) { if (this.thread == null) {
this.aClass212_4 = this.aClass213_5.startThread(3, this); this.thread = this.aClass213_5.startThread(3, this);
} }
this.notifyAll(); this.notifyAll();
} }
@ -198,17 +198,17 @@ public final class BufferedSocket implements Runnable {
this.aBoolean177 = true; this.aBoolean177 = true;
this.notifyAll(); this.notifyAll();
} }
if (this.aClass212_4 != null) { if (this.thread != null) {
while (this.aClass212_4.status == 0) { while (this.thread.status == 0) {
Static231.sleep(1L); Static231.sleep(1L);
} }
if (this.aClass212_4.status == 1) { if (this.thread.status == 1) {
try { try {
((Thread) this.aClass212_4.result).join(); ((Thread) this.thread.result).join();
} catch (@Pc(59) InterruptedException local59) { } catch (@Pc(59) InterruptedException local59) {
} }
} }
} }
this.aClass212_4 = null; this.thread = null;
} }
} }

View file

@ -78,7 +78,7 @@ public final class Class3_Sub2_Sub6 extends SecondaryNode {
@OriginalMember(owner = "client!cb", name = "a", descriptor = "(Lclient!wa;II)V") @OriginalMember(owner = "client!cb", name = "a", descriptor = "(Lclient!wa;II)V")
private void method768(@OriginalArg(0) Buffer arg0, @OriginalArg(1) int arg1) { private void method768(@OriginalArg(0) Buffer arg0, @OriginalArg(1) int arg1) {
if (arg1 == 1) { if (arg1 == 1) {
this.aClass100Array35 = arg0.gjstr().method3147(60); this.aClass100Array35 = arg0.gjstr().split(60);
return; return;
} }
@Pc(32) int local32; @Pc(32) int local32;

View file

@ -104,7 +104,7 @@ public abstract class Font extends SecondaryNode {
if (!local42.method3108(Static218.aClass100_718)) { if (!local42.method3108(Static218.aClass100_718)) {
if (local42.method3138(Static218.aClass100_715)) { if (local42.method3138(Static218.aClass100_715)) {
try { try {
local120 = local42.method3136(4).method3132(); local120 = local42.method3136(4).parseInt();
@Pc(125) IndexedSprite local125 = this.aClass36Array11[local120]; @Pc(125) IndexedSprite local125 = this.aClass36Array11[local120];
@Pc(136) int local136 = this.anIntArray346 == null ? local125.anInt4276 : this.anIntArray346[local120]; @Pc(136) int local136 = this.anIntArray346 == null ? local125.anInt4276 : this.anIntArray346[local120];
if (Static218.anInt3631 == 256) { if (Static218.anInt3631 == 256) {
@ -231,7 +231,7 @@ public abstract class Font extends SecondaryNode {
if (!local43.method3108(Static218.aClass100_718)) { if (!local43.method3108(Static218.aClass100_718)) {
if (local43.method3138(Static218.aClass100_715)) { if (local43.method3138(Static218.aClass100_715)) {
try { try {
@Pc(121) int local121 = local43.method3136(4).method3132(); @Pc(121) int local121 = local43.method3136(4).parseInt();
local9 += this.aClass36Array11[local121].anInt4279; local9 += this.aClass36Array11[local121].anInt4279;
local7 = 0; local7 = 0;
} catch (@Pc(133) Exception local133) { } catch (@Pc(133) Exception local133) {
@ -287,7 +287,7 @@ public abstract class Font extends SecondaryNode {
} else if (arg0.method3108(Static218.aClass100_703)) { } else if (arg0.method3108(Static218.aClass100_703)) {
Static218.anInt3635 = Static218.anInt3630; Static218.anInt3635 = Static218.anInt3630;
} else if (arg0.method3138(Static218.aClass100_699)) { } else if (arg0.method3138(Static218.aClass100_699)) {
Static218.anInt3631 = arg0.method3136(6).method3132(); Static218.anInt3631 = arg0.method3136(6).parseInt();
} else if (arg0.method3108(Static218.aClass100_709)) { } else if (arg0.method3108(Static218.aClass100_709)) {
Static218.anInt3631 = Static218.anInt3632; Static218.anInt3631 = Static218.anInt3632;
} else if (arg0.method3138(Static218.aClass100_701)) { } else if (arg0.method3138(Static218.aClass100_701)) {
@ -436,7 +436,7 @@ public abstract class Font extends SecondaryNode {
local21 = 174; local21 = 174;
} else if (local57.method3138(Static218.aClass100_715)) { } else if (local57.method3138(Static218.aClass100_715)) {
try { try {
@Pc(377) int local377 = local57.method3136(4).method3132(); @Pc(377) int local377 = local57.method3136(4).parseInt();
local9 += this.aClass36Array11[local377].anInt4279; local9 += this.aClass36Array11[local377].anInt4279;
local21 = 0; local21 = 0;
} catch (@Pc(389) Exception local389) { } catch (@Pc(389) Exception local389) {
@ -785,7 +785,7 @@ public abstract class Font extends SecondaryNode {
local130 = arg4[local10]; local130 = arg4[local10];
} }
local10++; local10++;
local141 = local44.method3136(4).method3132(); local141 = local44.method3136(4).parseInt();
@Pc(146) IndexedSprite local146 = this.aClass36Array11[local141]; @Pc(146) IndexedSprite local146 = this.aClass36Array11[local141];
@Pc(157) int local157 = this.anIntArray346 == null ? local146.anInt4276 : this.anIntArray346[local141]; @Pc(157) int local157 = this.anIntArray346 == null ? local146.anInt4276 : this.anIntArray346[local141];
if (Static218.anInt3631 == 256) { if (Static218.anInt3631 == 256) {

View file

@ -8,6 +8,9 @@ import org.openrs2.deob.annotation.Pc;
@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")
public static boolean arbVboSupported;
@OriginalMember(owner = "client!td", name = "t", descriptor = "[S") @OriginalMember(owner = "client!td", name = "t", descriptor = "[S")
private short[] aShortArray75; private short[] aShortArray75;
@ -2218,7 +2221,7 @@ public final class GlModel extends Model {
Static237.aClass3_Sub15_8.offset = local1 * this.anInt5296; Static237.aClass3_Sub15_8.offset = local1 * this.anInt5296;
@Pc(1007) ByteBuffer local1007; @Pc(1007) ByteBuffer local1007;
if (arg0) { if (arg0) {
if (GlRenderer.aBoolean273) { if (arbVboSupported) {
local1007 = ByteBuffer.wrap(Static237.aClass3_Sub15_8.data, 0, Static237.aClass3_Sub15_8.offset); local1007 = ByteBuffer.wrap(Static237.aClass3_Sub15_8.data, 0, Static237.aClass3_Sub15_8.offset);
if (this.aClass155_5 == null) { if (this.aClass155_5 == null) {
this.aClass155_5 = new GlVertexBufferObject(true); this.aClass155_5 = new GlVertexBufferObject(true);

View file

@ -65,9 +65,6 @@ public final class GlRenderer {
@OriginalMember(owner = "client!tf", name = "E", descriptor = "Lgl!javax/media/opengl/GLDrawable;") @OriginalMember(owner = "client!tf", name = "E", descriptor = "Lgl!javax/media/opengl/GLDrawable;")
private static GLDrawable drawable; private static GLDrawable drawable;
@OriginalMember(owner = "client!tf", name = "G", descriptor = "Z")
public static boolean aBoolean273;
@OriginalMember(owner = "client!tf", name = "H", descriptor = "Z") @OriginalMember(owner = "client!tf", name = "H", descriptor = "Z")
public static boolean arbVertexProgramSupported; public static boolean arbVertexProgramSupported;
@ -442,11 +439,11 @@ public final class GlRenderer {
@Pc(176) JagString renderer = method4147(GlRenderer.renderer).toLowerCase(); @Pc(176) JagString renderer = method4147(GlRenderer.renderer).toLowerCase();
if (renderer.indexOf(RADEON) != -1) { if (renderer.indexOf(RADEON) != -1) {
@Pc(184) int v = 0; @Pc(184) int v = 0;
@Pc(193) JagString[] rendererParts = renderer.method3145().method3147(32); @Pc(193) JagString[] rendererParts = renderer.replaceSlashWithSpace().split(32);
for (@Pc(195) int i = 0; i < rendererParts.length; i++) { for (@Pc(195) int i = 0; i < rendererParts.length; i++) {
@Pc(203) JagString part = rendererParts[i]; @Pc(203) JagString part = rendererParts[i];
if (part.length() >= 4 && part.substring(4, 0).method3123()) { if (part.length() >= 4 && part.substring(4, 0).isInt()) {
v = part.substring(4, 0).method3132(); v = part.substring(4, 0).parseInt();
break; break;
} }
} }
@ -456,7 +453,7 @@ public final class GlRenderer {
if (v >= 7000 && v <= 9250) { if (v >= 7000 && v <= 9250) {
extTexture3dSupported = false; extTexture3dSupported = false;
} }
aBoolean273 = arbVboSupported; GlModel.arbVboSupported = arbVboSupported;
} }
if (arbVboSupported) { if (arbVboSupported) {
try { try {

View file

@ -13,17 +13,17 @@ import org.openrs2.deob.annotation.Pc;
public final class JagString implements StringInterface { public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "T", descriptor = "[B") @OriginalMember(owner = "client!na", name = "T", descriptor = "[B")
public byte[] aByteArray52; public byte[] chars;
@OriginalMember(owner = "client!na", name = "lb", descriptor = "I") @OriginalMember(owner = "client!na", name = "lb", descriptor = "I")
public int anInt4030; public int length;
@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!na", name = "a", descriptor = "(Z)Ljava/net/URL;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(Z)Ljava/net/URL;")
public final URL method3107() throws MalformedURLException { public final URL method3107() throws MalformedURLException {
return new URL(new String(this.aByteArray52, 0, this.anInt4030)); return new URL(new String(this.chars, 0, this.length));
} }
@OriginalMember(owner = "client!na", name = "a", descriptor = "(BLclient!na;)Z") @OriginalMember(owner = "client!na", name = "a", descriptor = "(BLclient!na;)Z")
@ -32,10 +32,10 @@ public final class JagString implements StringInterface {
return false; return false;
} else if (arg0 == this) { } else if (arg0 == this) {
return true; return true;
} else if (this.anInt4030 == arg0.anInt4030) { } else if (this.length == arg0.length) {
@Pc(29) byte[] local29 = arg0.aByteArray52; @Pc(29) byte[] local29 = arg0.chars;
@Pc(32) byte[] local32 = this.aByteArray52; @Pc(32) byte[] local32 = this.chars;
for (@Pc(34) int local34 = 0; local34 < this.anInt4030; local34++) { for (@Pc(34) int local34 = 0; local34 < this.length; local34++) {
if (local32[local34] != local29[local34]) { if (local32[local34] != local29[local34]) {
return false; return false;
} }
@ -51,8 +51,8 @@ public final class JagString implements StringInterface {
@Pc(14) boolean local14 = false; @Pc(14) boolean local14 = false;
@Pc(20) boolean local20 = false; @Pc(20) boolean local20 = false;
@Pc(22) int local22 = 0; @Pc(22) int local22 = 0;
for (@Pc(24) int local24 = 0; local24 < this.anInt4030; local24++) { for (@Pc(24) int local24 = 0; local24 < this.length; local24++) {
@Pc(43) int local43 = this.aByteArray52[local24] & 0xFF; @Pc(43) int local43 = this.chars[local24] & 0xFF;
if (local24 == 0) { if (local24 == 0) {
if (local43 == 45) { if (local43 == 45) {
local14 = true; local14 = true;
@ -94,13 +94,13 @@ public final class JagString implements StringInterface {
public final boolean method3111(@OriginalArg(1) JagString arg0) { public final boolean method3111(@OriginalArg(1) JagString arg0) {
if (arg0 == null) { if (arg0 == null) {
return false; return false;
} else if (this.anInt4030 == arg0.anInt4030) { } else if (this.length == arg0.length) {
for (@Pc(28) int local28 = 0; local28 < this.anInt4030; local28++) { for (@Pc(28) int local28 = 0; local28 < this.length; local28++) {
@Pc(41) byte local41 = this.aByteArray52[local28]; @Pc(41) byte local41 = this.chars[local28];
if (local41 >= 65 && local41 <= 90 || local41 >= -64 && local41 <= -34 && local41 != -41) { if (local41 >= 65 && local41 <= 90 || local41 >= -64 && local41 <= -34 && local41 != -41) {
local41 = (byte) (local41 + 32); local41 = (byte) (local41 + 32);
} }
@Pc(75) byte local75 = arg0.aByteArray52[local28]; @Pc(75) byte local75 = arg0.chars[local28];
if (local75 >= 65 && local75 <= 90 || local75 >= -64 && local75 <= -34 && local75 != -41) { if (local75 >= 65 && local75 <= 90 || local75 >= -64 && local75 <= -34 && local75 != -41) {
local75 = (byte) (local75 + 32); local75 = (byte) (local75 + 32);
} }
@ -118,9 +118,9 @@ public final class JagString implements StringInterface {
public final void method3112(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) Graphics arg2) { public final void method3112(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) Graphics arg2) {
@Pc(17) String local17; @Pc(17) String local17;
try { try {
local17 = new String(this.aByteArray52, 0, this.anInt4030, "ISO-8859-1"); local17 = new String(this.chars, 0, this.length, "ISO-8859-1");
} catch (@Pc(19) UnsupportedEncodingException local19) { } catch (@Pc(19) UnsupportedEncodingException local19) {
local17 = new String(this.aByteArray52, 0, this.anInt4030); local17 = new String(this.chars, 0, this.length);
} }
arg2.drawString(local17, arg1, arg0); arg2.drawString(local17, arg1, arg0);
} }
@ -130,30 +130,30 @@ public final class JagString implements StringInterface {
if (!this.aBoolean193) { if (!this.aBoolean193) {
throw new IllegalArgumentException(); throw new IllegalArgumentException();
} }
if (arg0.anInt4030 + this.anInt4030 > this.aByteArray52.length) { if (arg0.length + this.length > this.chars.length) {
@Pc(31) int local31; @Pc(31) int local31;
for (local31 = 1; local31 < arg0.anInt4030 + this.anInt4030; local31 += local31) { for (local31 = 1; local31 < arg0.length + this.length; local31 += local31) {
} }
@Pc(51) byte[] local51 = new byte[local31]; @Pc(51) byte[] local51 = new byte[local31];
Static289.method2612(this.aByteArray52, 0, local51, 0, this.anInt4030); Static289.method2612(this.chars, 0, local51, 0, this.length);
this.aByteArray52 = local51; this.chars = local51;
} }
Static289.method2612(arg0.aByteArray52, 0, this.aByteArray52, this.anInt4030, arg0.anInt4030); Static289.method2612(arg0.chars, 0, this.chars, this.length, arg0.length);
this.anInt4030 += arg0.anInt4030; this.length += arg0.length;
return this; return this;
} }
@OriginalMember(owner = "client!na", name = "a", descriptor = "(I)Lclient!na;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(I)Lclient!na;")
public final JagString toLowerCase() { public final JagString toLowerCase() {
@Pc(14) JagString local14 = new JagString(); @Pc(14) JagString local14 = new JagString();
local14.anInt4030 = this.anInt4030; local14.length = this.length;
local14.aByteArray52 = new byte[this.anInt4030]; local14.chars = new byte[this.length];
for (@Pc(29) int local29 = 0; local29 < this.anInt4030; local29++) { for (@Pc(29) int local29 = 0; local29 < this.length; local29++) {
@Pc(42) byte local42 = this.aByteArray52[local29]; @Pc(42) byte local42 = this.chars[local29];
if (local42 >= 65 && local42 <= 90 || local42 >= -64 && local42 <= -34 && local42 != -41) { if (local42 >= 65 && local42 <= 90 || local42 >= -64 && local42 <= -34 && local42 != -41) {
local42 = (byte) (local42 + 32); local42 = (byte) (local42 + 32);
} }
local14.aByteArray52[local29] = local42; local14.chars[local29] = local42;
} }
return local14; return local14;
} }
@ -162,10 +162,10 @@ public final class JagString implements StringInterface {
public final JagString method3116() { public final JagString method3116() {
@Pc(7) byte local7 = 2; @Pc(7) byte local7 = 2;
@Pc(11) JagString local11 = new JagString(); @Pc(11) JagString local11 = new JagString();
local11.anInt4030 = this.anInt4030; local11.length = this.length;
local11.aByteArray52 = new byte[this.anInt4030]; local11.chars = new byte[this.length];
for (@Pc(28) int local28 = 0; local28 < this.anInt4030; local28++) { for (@Pc(28) int local28 = 0; local28 < this.length; local28++) {
@Pc(41) byte local41 = this.aByteArray52[local28]; @Pc(41) byte local41 = this.chars[local28];
if (local41 >= 97 && local41 <= 122 || !(local41 < -32 || local41 > -2 || local41 == -9)) { if (local41 >= 97 && local41 <= 122 || !(local41 < -32 || local41 > -2 || local41 == -9)) {
if (local7 == 2) { if (local7 == 2) {
local41 = (byte) (local41 - 32); local41 = (byte) (local41 - 32);
@ -183,7 +183,7 @@ public final class JagString implements StringInterface {
} else if (local7 != 2) { } else if (local7 != 2) {
local7 = 1; local7 = 1;
} }
local11.aByteArray52[local28] = local41; local11.chars[local28] = local41;
} }
return local11; return local11;
} }
@ -191,32 +191,32 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "c", descriptor = "(I)J") @OriginalMember(owner = "client!na", name = "c", descriptor = "(I)J")
public final long method3118() { public final long method3118() {
@Pc(1) long local1 = 0L; @Pc(1) long local1 = 0L;
for (@Pc(9) int local9 = 0; local9 < this.anInt4030; local9++) { for (@Pc(9) int local9 = 0; local9 < this.length; local9++) {
local1 = (long) (this.aByteArray52[local9] & 0xFF) + (local1 << 5) - local1; local1 = (long) (this.chars[local9] & 0xFF) + (local1 << 5) - local1;
} }
return local1; return local1;
} }
@OriginalMember(owner = "client!na", name = "d", descriptor = "(I)I") @OriginalMember(owner = "client!na", name = "d", descriptor = "(I)I")
public final int length() { public final int length() {
return this.anInt4030; return this.length;
} }
@OriginalMember(owner = "client!na", name = "a", descriptor = "(ILclient!na;II)Lclient!na;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(ILclient!na;II)Lclient!na;")
public final JagString method3122(@OriginalArg(1) JagString arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) { public final JagString method3122(@OriginalArg(1) JagString arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
if (!this.aBoolean193) { if (!this.aBoolean193) {
throw new IllegalArgumentException(); throw new IllegalArgumentException();
} else if (arg1 >= 0 && arg1 <= arg2 && arg2 <= arg0.anInt4030) { } else if (arg1 >= 0 && arg1 <= arg2 && arg2 <= arg0.length) {
if (this.anInt4030 + arg2 - arg1 > this.aByteArray52.length) { if (this.length + arg2 - arg1 > this.chars.length) {
@Pc(43) int local43; @Pc(43) int local43;
for (local43 = 1; local43 < this.anInt4030 + arg0.anInt4030; local43 += local43) { for (local43 = 1; local43 < this.length + arg0.length; local43 += local43) {
} }
@Pc(63) byte[] local63 = new byte[local43]; @Pc(63) byte[] local63 = new byte[local43];
Static289.method2612(this.aByteArray52, 0, local63, 0, this.anInt4030); Static289.method2612(this.chars, 0, local63, 0, this.length);
this.aByteArray52 = local63; this.chars = local63;
} }
Static289.method2612(arg0.aByteArray52, arg1, this.aByteArray52, this.anInt4030, arg2 - arg1); Static289.method2612(arg0.chars, arg1, this.chars, this.length, arg2 - arg1);
this.anInt4030 += arg2 - arg1; this.length += arg2 - arg1;
return this; return this;
} else { } else {
throw new IllegalArgumentException(); throw new IllegalArgumentException();
@ -224,17 +224,17 @@ public final class JagString implements StringInterface {
} }
@OriginalMember(owner = "client!na", name = "f", descriptor = "(I)Z") @OriginalMember(owner = "client!na", name = "f", descriptor = "(I)Z")
public final boolean method3123() { public final boolean isInt() {
return this.method3141(); return this.method3141();
} }
@OriginalMember(owner = "client!na", name = "b", descriptor = "(Z)Lclient!na;") @OriginalMember(owner = "client!na", name = "b", descriptor = "(Z)Lclient!na;")
public final JagString method3124() { public final JagString method3124() {
@Pc(7) JagString local7 = new JagString(); @Pc(7) JagString local7 = new JagString();
local7.anInt4030 = this.anInt4030; local7.length = this.length;
local7.aByteArray52 = new byte[local7.anInt4030]; local7.chars = new byte[local7.length];
for (@Pc(24) int local24 = 0; local24 < this.anInt4030; local24++) { for (@Pc(24) int local24 = 0; local24 < this.length; local24++) {
local7.aByteArray52[this.anInt4030 - local24 - 1] = this.aByteArray52[local24]; local7.chars[this.length - local24 - 1] = this.chars[local24];
} }
return local7; return local7;
} }
@ -242,19 +242,19 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "a", descriptor = "(B)Lclient!na;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(B)Lclient!na;")
public final JagString method3125() { public final JagString method3125() {
@Pc(9) JagString local9 = new JagString(); @Pc(9) JagString local9 = new JagString();
local9.anInt4030 = this.anInt4030; local9.length = this.length;
local9.aByteArray52 = new byte[this.anInt4030]; local9.chars = new byte[this.length];
@Pc(20) boolean local20 = true; @Pc(20) boolean local20 = true;
for (@Pc(22) int local22 = 0; local22 < this.anInt4030; local22++) { for (@Pc(22) int local22 = 0; local22 < this.length; local22++) {
@Pc(41) byte local41 = this.aByteArray52[local22]; @Pc(41) byte local41 = this.chars[local22];
if (local41 == 95) { if (local41 == 95) {
local20 = true; local20 = true;
local9.aByteArray52[local22] = 32; local9.chars[local22] = 32;
} else if (local41 >= 97 && local41 <= 122 && local20) { } else if (local41 >= 97 && local41 <= 122 && local20) {
local20 = false; local20 = false;
local9.aByteArray52[local22] = (byte) (local41 - 32); local9.chars[local22] = (byte) (local41 - 32);
} else { } else {
local9.aByteArray52[local22] = local41; local9.chars[local22] = local41;
local20 = false; local20 = false;
} }
} }
@ -265,10 +265,10 @@ public final class JagString implements StringInterface {
public final int method3126(@OriginalArg(1) JagString arg0) { public final int method3126(@OriginalArg(1) JagString arg0) {
@Pc(12) int local12 = 0; @Pc(12) int local12 = 0;
@Pc(14) int local14 = 0; @Pc(14) int local14 = 0;
@Pc(17) int local17 = arg0.anInt4030; @Pc(17) int local17 = arg0.length;
@Pc(20) int local20 = this.anInt4030; @Pc(20) int local20 = this.length;
@Pc(23) int local23 = this.anInt4030; @Pc(23) int local23 = this.length;
@Pc(26) int local26 = arg0.anInt4030; @Pc(26) int local26 = arg0.length;
@Pc(28) int local28 = 0; @Pc(28) int local28 = 0;
@Pc(30) int local30 = 0; @Pc(30) int local30 = 0;
while (local20 != 0 && local17 != 0) { while (local20 != 0 && local17 != 0) {
@ -279,7 +279,7 @@ public final class JagString implements StringInterface {
} else if (local12 == 223) { } else if (local12 == 223) {
local12 = 115; local12 = 115;
} else { } else {
local12 = this.aByteArray52[local28] & 0xFF; local12 = this.chars[local28] & 0xFF;
local28++; local28++;
} }
if (Static17.method530(local12)) { if (Static17.method530(local12)) {
@ -294,7 +294,7 @@ public final class JagString implements StringInterface {
} else if (local14 == 223) { } else if (local14 == 223) {
local14 = 115; local14 = 115;
} else { } else {
local14 = arg0.aByteArray52[local30] & 0xFF; local14 = arg0.chars[local30] & 0xFF;
local30++; local30++;
} }
if (Static17.method530(local14)) { if (Static17.method530(local14)) {
@ -318,7 +318,7 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "a", descriptor = "(Ljava/net/URL;Z)Ljava/net/URL;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(Ljava/net/URL;Z)Ljava/net/URL;")
public final URL method3127(@OriginalArg(0) URL arg0) throws MalformedURLException { public final URL method3127(@OriginalArg(0) URL arg0) throws MalformedURLException {
return new URL(arg0, new String(this.aByteArray52, 0, this.anInt4030)); return new URL(arg0, new String(this.chars, 0, this.length));
} }
@OriginalMember(owner = "client!na", name = "a", descriptor = "(ZI)Lclient!na;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(ZI)Lclient!na;")
@ -327,10 +327,10 @@ public final class JagString implements StringInterface {
throw new IllegalArgumentException("invalid char"); throw new IllegalArgumentException("invalid char");
} }
@Pc(23) JagString local23 = new JagString(); @Pc(23) JagString local23 = new JagString();
local23.aByteArray52 = new byte[this.anInt4030 + 1]; local23.chars = new byte[this.length + 1];
local23.anInt4030 = this.anInt4030 + 1; local23.length = this.length + 1;
Static289.method2612(this.aByteArray52, 0, local23.aByteArray52, 0, this.anInt4030); Static289.method2612(this.chars, 0, local23.chars, 0, this.length);
local23.aByteArray52[this.anInt4030] = (byte) arg0; local23.chars[this.length] = (byte) arg0;
return local23; return local23;
} }
@ -338,21 +338,21 @@ public final class JagString implements StringInterface {
public final void method3129() { public final void method3129() {
@Pc(16) String local16; @Pc(16) String local16;
try { try {
local16 = new String(this.aByteArray52, 0, this.anInt4030, "ISO-8859-1"); local16 = new String(this.chars, 0, this.length, "ISO-8859-1");
} catch (@Pc(18) UnsupportedEncodingException local18) { } catch (@Pc(18) UnsupportedEncodingException local18) {
local16 = new String(this.aByteArray52, 0, this.anInt4030); local16 = new String(this.chars, 0, this.length);
} }
System.out.println(local16); System.out.println(local16);
} }
@OriginalMember(owner = "client!na", name = "c", descriptor = "(BLclient!na;)Z") @OriginalMember(owner = "client!na", name = "c", descriptor = "(BLclient!na;)Z")
public final boolean method3130(@OriginalArg(1) JagString arg0) { public final boolean method3130(@OriginalArg(1) JagString arg0) {
if (arg0.anInt4030 > this.anInt4030) { if (arg0.length > this.length) {
return false; return false;
} }
@Pc(19) int local19 = this.anInt4030 - arg0.anInt4030; @Pc(19) int local19 = this.length - arg0.length;
for (@Pc(27) int local27 = 0; local27 < arg0.anInt4030; local27++) { for (@Pc(27) int local27 = 0; local27 < arg0.length; local27++) {
if (this.aByteArray52[local19 + local27] != arg0.aByteArray52[local27]) { if (this.chars[local19 + local27] != arg0.chars[local27]) {
return false; return false;
} }
} }
@ -365,7 +365,7 @@ public final class JagString implements StringInterface {
} }
@OriginalMember(owner = "client!na", name = "b", descriptor = "(B)I") @OriginalMember(owner = "client!na", name = "b", descriptor = "(B)I")
public final int method3132() { public final int parseInt() {
return this.method3110(10); return this.method3110(10);
} }
@ -377,17 +377,17 @@ public final class JagString implements StringInterface {
throw new IllegalArgumentException(); throw new IllegalArgumentException();
} else { } else {
@Pc(30) int local30; @Pc(30) int local30;
if (arg0 > this.aByteArray52.length) { if (arg0 > this.chars.length) {
for (local30 = 1; local30 < arg0; local30 += local30) { for (local30 = 1; local30 < arg0; local30 += local30) {
} }
@Pc(45) byte[] local45 = new byte[local30]; @Pc(45) byte[] local45 = new byte[local30];
Static289.method2612(this.aByteArray52, 0, local45, 0, this.anInt4030); Static289.method2612(this.chars, 0, local45, 0, this.length);
this.aByteArray52 = local45; this.chars = local45;
} }
for (local30 = this.anInt4030; local30 < arg0; local30++) { for (local30 = this.length; local30 < arg0; local30++) {
this.aByteArray52[local30] = 32; this.chars[local30] = 32;
} }
this.anInt4030 = arg0; this.length = arg0;
} }
} }
@ -399,15 +399,15 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "a", descriptor = "(ZLjava/applet/Applet;)V") @OriginalMember(owner = "client!na", name = "a", descriptor = "(ZLjava/applet/Applet;)V")
public final void method3134(@OriginalArg(1) Applet arg0) throws Throwable { public final void method3134(@OriginalArg(1) Applet arg0) throws Throwable {
@Pc(16) String local16 = new String(this.aByteArray52, 0, this.anInt4030); @Pc(16) String local16 = new String(this.chars, 0, this.length);
Static287.method1759(arg0, local16); Static287.method1759(arg0, local16);
} }
@OriginalMember(owner = "client!na", name = "a", descriptor = "(III)I") @OriginalMember(owner = "client!na", name = "a", descriptor = "(III)I")
public final int method3135(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) { public final int method3135(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
@Pc(4) byte local4 = (byte) arg0; @Pc(4) byte local4 = (byte) arg0;
for (@Pc(15) int local15 = arg1; local15 < this.anInt4030; local15++) { for (@Pc(15) int local15 = arg1; local15 < this.length; local15++) {
if (this.aByteArray52[local15] == local4) { if (this.chars[local15] == local4) {
return local15; return local15;
} }
} }
@ -416,25 +416,25 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "a", descriptor = "(IB)Lclient!na;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(IB)Lclient!na;")
public final JagString method3136(@OriginalArg(0) int arg0) { public final JagString method3136(@OriginalArg(0) int arg0) {
return this.substring(this.anInt4030, arg0); return this.substring(this.length, arg0);
} }
@OriginalMember(owner = "client!na", name = "b", descriptor = "(III)Lclient!na;") @OriginalMember(owner = "client!na", name = "b", descriptor = "(III)Lclient!na;")
public final JagString substring(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) { public final JagString substring(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) {
@Pc(7) JagString local7 = new JagString(); @Pc(7) JagString local7 = new JagString();
local7.anInt4030 = arg0 - arg1; local7.length = arg0 - arg1;
local7.aByteArray52 = new byte[arg0 - arg1]; local7.chars = new byte[arg0 - arg1];
Static289.method2612(this.aByteArray52, arg1, local7.aByteArray52, 0, local7.anInt4030); Static289.method2612(this.chars, arg1, local7.chars, 0, local7.length);
return local7; return local7;
} }
@OriginalMember(owner = "client!na", name = "b", descriptor = "(Lclient!na;I)Z") @OriginalMember(owner = "client!na", name = "b", descriptor = "(Lclient!na;I)Z")
public final boolean method3138(@OriginalArg(0) JagString arg0) { public final boolean method3138(@OriginalArg(0) JagString arg0) {
if (this.anInt4030 < arg0.anInt4030) { if (this.length < arg0.length) {
return false; return false;
} }
for (@Pc(19) int local19 = 0; local19 < arg0.anInt4030; local19++) { for (@Pc(19) int local19 = 0; local19 < arg0.length; local19++) {
if (this.aByteArray52[local19] != arg0.aByteArray52[local19]) { if (this.chars[local19] != arg0.chars[local19]) {
return false; return false;
} }
} }
@ -453,22 +453,22 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "c", descriptor = "(Lclient!na;I)I") @OriginalMember(owner = "client!na", name = "c", descriptor = "(Lclient!na;I)I")
public final int method3139(@OriginalArg(0) JagString arg0) { public final int method3139(@OriginalArg(0) JagString arg0) {
@Pc(20) int local20; @Pc(20) int local20;
if (arg0.anInt4030 < this.anInt4030) { if (arg0.length < this.length) {
local20 = arg0.anInt4030; local20 = arg0.length;
} else { } else {
local20 = this.anInt4030; local20 = this.length;
} }
for (@Pc(27) int local27 = 0; local27 < local20; local27++) { for (@Pc(27) int local27 = 0; local27 < local20; local27++) {
if ((this.aByteArray52[local27] & 0xFF) < (arg0.aByteArray52[local27] & 0xFF)) { if ((this.chars[local27] & 0xFF) < (arg0.chars[local27] & 0xFF)) {
return -1; return -1;
} }
if ((arg0.aByteArray52[local27] & 0xFF) < (this.aByteArray52[local27] & 0xFF)) { if ((arg0.chars[local27] & 0xFF) < (this.chars[local27] & 0xFF)) {
return 1; return 1;
} }
} }
if (arg0.anInt4030 > this.anInt4030) { if (arg0.length > this.length) {
return -1; return -1;
} else if (arg0.anInt4030 >= this.anInt4030) { } else if (arg0.length >= this.length) {
return 0; return 0;
} else { } else {
return 1; return 1;
@ -477,8 +477,8 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "a", descriptor = "(Lclient!na;ZLclient!na;)Lclient!na;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(Lclient!na;ZLclient!na;)Lclient!na;")
public final JagString method3140(@OriginalArg(0) JagString arg0, @OriginalArg(2) JagString arg1) { public final JagString method3140(@OriginalArg(0) JagString arg0, @OriginalArg(2) JagString arg1) {
@Pc(8) int local8 = this.anInt4030; @Pc(8) int local8 = this.length;
@Pc(14) int local14 = arg0.anInt4030 - arg1.anInt4030; @Pc(14) int local14 = arg0.length - arg1.length;
@Pc(16) int local16 = 0; @Pc(16) int local16 = 0;
while (true) { while (true) {
@Pc(22) int local22 = this.method3146(arg1, local16); @Pc(22) int local22 = this.method3146(arg1, local16);
@ -488,19 +488,19 @@ public final class JagString implements StringInterface {
while (true) { while (true) {
@Pc(51) int local51 = this.method3146(arg1, local16); @Pc(51) int local51 = this.method3146(arg1, local16);
if (local51 < 0) { if (local51 < 0) {
while (local16 < this.anInt4030) { while (local16 < this.length) {
local45.method3152(this.aByteArray52[local16++] & 0xFF); local45.method3152(this.chars[local16++] & 0xFF);
} }
return local45; return local45;
} }
while (local16 < local51) { while (local16 < local51) {
local45.method3152(this.aByteArray52[local16++] & 0xFF); local45.method3152(this.chars[local16++] & 0xFF);
} }
local45.method3113(arg0); local45.method3113(arg0);
local16 += arg1.anInt4030; local16 += arg1.length;
} }
} }
local16 = local22 + arg1.anInt4030; local16 = local22 + arg1.length;
local8 += local14; local8 += local14;
} }
} }
@ -516,8 +516,8 @@ public final class JagString implements StringInterface {
@Pc(18) boolean local18 = false; @Pc(18) boolean local18 = false;
@Pc(24) boolean local24 = false; @Pc(24) boolean local24 = false;
@Pc(26) int local26 = 0; @Pc(26) int local26 = 0;
for (@Pc(28) int local28 = 0; local28 < this.anInt4030; local28++) { for (@Pc(28) int local28 = 0; local28 < this.length; local28++) {
@Pc(39) int local39 = this.aByteArray52[local28] & 0xFF; @Pc(39) int local39 = this.chars[local28] & 0xFF;
if (local28 == 0) { if (local28 == 0) {
if (local39 == 45) { if (local39 == 45) {
local24 = true; local24 = true;
@ -554,12 +554,12 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "d", descriptor = "(BLclient!na;)Z") @OriginalMember(owner = "client!na", name = "d", descriptor = "(BLclient!na;)Z")
public final boolean method3142(@OriginalArg(1) JagString arg0) { public final boolean method3142(@OriginalArg(1) JagString arg0) {
if (this.anInt4030 < arg0.anInt4030) { if (this.length < arg0.length) {
return false; return false;
} }
for (@Pc(21) int local21 = 0; local21 < arg0.anInt4030; local21++) { for (@Pc(21) int local21 = 0; local21 < arg0.length; local21++) {
@Pc(30) byte local30 = this.aByteArray52[local21]; @Pc(30) byte local30 = this.chars[local21];
@Pc(35) byte local35 = arg0.aByteArray52[local21]; @Pc(35) byte local35 = arg0.chars[local21];
if (local35 >= 65 && local35 <= 90 || local35 >= -64 && local35 <= -34 && local35 != -41) { if (local35 >= 65 && local35 <= 90 || local35 >= -64 && local35 <= -34 && local35 != -41) {
local35 = (byte) (local35 + 32); local35 = (byte) (local35 + 32);
} }
@ -581,44 +581,44 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "h", descriptor = "(I)Lclient!na;") @OriginalMember(owner = "client!na", name = "h", descriptor = "(I)Lclient!na;")
public final JagString method3144() { public final JagString method3144() {
@Pc(17) int local17; @Pc(17) int local17;
for (local17 = 0; local17 < this.anInt4030 && (this.aByteArray52[local17] >= 0 && this.aByteArray52[local17] <= 32 || (this.aByteArray52[local17] & 0xFF) == 160); local17++) { for (local17 = 0; local17 < this.length && (this.chars[local17] >= 0 && this.chars[local17] <= 32 || (this.chars[local17] & 0xFF) == 160); local17++) {
} }
@Pc(53) int local53; @Pc(53) int local53;
for (local53 = this.anInt4030; local53 > local17 && (this.aByteArray52[local53 - 1] >= 0 && this.aByteArray52[local53 - 1] <= 32 || (this.aByteArray52[local53 - 1] & 0xFF) == 160); local53--) { for (local53 = this.length; local53 > local17 && (this.chars[local53 - 1] >= 0 && this.chars[local53 - 1] <= 32 || (this.chars[local53 - 1] & 0xFF) == 160); local53--) {
} }
if (local17 == 0 && this.anInt4030 == local53) { if (local17 == 0 && this.length == local53) {
return this; return this;
} }
@Pc(111) JagString local111 = new JagString(); @Pc(111) JagString local111 = new JagString();
local111.anInt4030 = local53 - local17; local111.length = local53 - local17;
local111.aByteArray52 = new byte[local111.anInt4030]; local111.chars = new byte[local111.length];
for (@Pc(124) int local124 = 0; local124 < local111.anInt4030; local124++) { for (@Pc(124) int local124 = 0; local124 < local111.length; local124++) {
local111.aByteArray52[local124] = this.aByteArray52[local17 + local124]; local111.chars[local124] = this.chars[local17 + local124];
} }
return local111; return local111;
} }
@OriginalMember(owner = "client!na", name = "c", descriptor = "(III)Lclient!na;") @OriginalMember(owner = "client!na", name = "c", descriptor = "(III)Lclient!na;")
public final JagString method3145() { public final JagString replaceSlashWithSpace() {
@Pc(8) JagString local8 = new JagString(); @Pc(8) JagString str = new JagString();
local8.anInt4030 = this.anInt4030; str.length = this.length;
local8.aByteArray52 = new byte[this.anInt4030]; str.chars = new byte[this.length];
for (@Pc(31) int local31 = 0; local31 < this.anInt4030; local31++) { for (@Pc(31) int i = 0; i < this.length; i++) {
@Pc(44) byte local44 = this.aByteArray52[local31]; @Pc(44) byte c = this.chars[i];
if (local44 == 47) { if (c == 47) {
local8.aByteArray52[local31] = 32; str.chars[i] = 32;
} else { } else {
local8.aByteArray52[local31] = local44; str.chars[i] = c;
} }
} }
return local8; return str;
} }
@OriginalMember(owner = "client!na", name = "a", descriptor = "(Lclient!na;II)I") @OriginalMember(owner = "client!na", name = "a", descriptor = "(Lclient!na;II)I")
public final int method3146(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1) { public final int method3146(@OriginalArg(0) JagString arg0, @OriginalArg(1) int arg1) {
@Pc(8) int local8 = arg0.anInt4030; @Pc(8) int local8 = arg0.length;
if (arg1 >= this.anInt4030) { if (arg1 >= this.length) {
return local8 == 0 ? this.anInt4030 : -1; return local8 == 0 ? this.length : -1;
} }
if (arg1 < 0) { if (arg1 < 0) {
arg1 = 0; arg1 = 0;
@ -626,22 +626,22 @@ public final class JagString implements StringInterface {
if (local8 == 0) { if (local8 == 0) {
return arg1; return arg1;
} }
@Pc(41) int local41 = this.anInt4030 - local8; @Pc(41) int local41 = this.length - local8;
@Pc(44) byte[] local44 = arg0.aByteArray52; @Pc(44) byte[] local44 = arg0.chars;
@Pc(48) byte local48 = local44[0]; @Pc(48) byte local48 = local44[0];
for (@Pc(50) int local50 = arg1; local50 <= local41; local50++) { for (@Pc(50) int local50 = arg1; local50 <= local41; local50++) {
if (local48 != this.aByteArray52[local50]) { if (local48 != this.chars[local50]) {
do { do {
local50++; local50++;
if (local50 > local41) { if (local50 > local41) {
return -1; return -1;
} }
} while (local48 != this.aByteArray52[local50]); } while (local48 != this.chars[local50]);
} }
@Pc(88) boolean local88 = true; @Pc(88) boolean local88 = true;
@Pc(92) int local92 = local50 + 1; @Pc(92) int local92 = local50 + 1;
for (@Pc(94) int local94 = 1; local94 < local8; local94++) { for (@Pc(94) int local94 = 1; local94 < local8; local94++) {
if (local44[local94] != this.aByteArray52[local92]) { if (local44[local94] != this.chars[local92]) {
local88 = false; local88 = false;
break; break;
} }
@ -655,41 +655,41 @@ public final class JagString implements StringInterface {
} }
@OriginalMember(owner = "client!na", name = "b", descriptor = "(IB)[Lclient!na;") @OriginalMember(owner = "client!na", name = "b", descriptor = "(IB)[Lclient!na;")
public final JagString[] method3147(@OriginalArg(0) int arg0) { public final JagString[] split(@OriginalArg(0) int delim) {
@Pc(7) int local7 = 0; @Pc(7) int matches = 0;
for (@Pc(9) int local9 = 0; local9 < this.anInt4030; local9++) { for (@Pc(9) int i = 0; i < this.length; i++) {
if (arg0 == this.aByteArray52[local9]) { if (delim == this.chars[i]) {
local7++; matches++;
} }
} }
@Pc(37) JagString[] local37 = new JagString[local7 + 1]; @Pc(37) JagString[] parts = new JagString[matches + 1];
if (local7 == 0) { if (matches == 0) {
local37[0] = this; parts[0] = this;
return local37; return parts;
} }
@Pc(47) int local47 = 0; @Pc(47) int part = 0;
@Pc(49) int local49 = 0; @Pc(49) int start = 0;
for (@Pc(51) int local51 = 0; local51 < local7; local51++) { for (@Pc(51) int i = 0; i < matches; i++) {
@Pc(68) int local68; @Pc(68) int end;
for (local68 = 0; arg0 != this.aByteArray52[local68 + local49]; local68++) { for (end = 0; delim != this.chars[end + start]; end++) {
} }
local37[local47++] = this.substring(local49 + local68, local49); parts[part++] = this.substring(start + end, start);
local49 += local68 + 1; start += end + 1;
} }
local37[local7] = this.substring(this.anInt4030, local49); parts[matches] = this.substring(this.length, start);
return local37; return parts;
} }
@OriginalMember(owner = "client!na", name = "i", descriptor = "(I)[B") @OriginalMember(owner = "client!na", name = "i", descriptor = "(I)[B")
public final byte[] method3148() { public final byte[] method3148() {
@Pc(7) byte[] local7 = new byte[this.anInt4030]; @Pc(7) byte[] local7 = new byte[this.length];
Static289.method2612(this.aByteArray52, 0, local7, 0, this.anInt4030); Static289.method2612(this.chars, 0, local7, 0, this.length);
return local7; return local7;
} }
@OriginalMember(owner = "client!na", name = "c", descriptor = "(IB)I") @OriginalMember(owner = "client!na", name = "c", descriptor = "(IB)I")
public final int method3149(@OriginalArg(0) int arg0) { public final int method3149(@OriginalArg(0) int arg0) {
return this.aByteArray52[arg0] & 0xFF; return this.chars[arg0] & 0xFF;
} }
@OriginalMember(owner = "client!na", name = "c", descriptor = "(B)Lclient!na;") @OriginalMember(owner = "client!na", name = "c", descriptor = "(B)Lclient!na;")
@ -720,15 +720,15 @@ public final class JagString implements StringInterface {
if (arg0 <= 0 || arg0 > 255) { if (arg0 <= 0 || arg0 > 255) {
throw new IllegalArgumentException("invalid char:" + arg0); throw new IllegalArgumentException("invalid char:" + arg0);
} else if (this.aBoolean193) { } else if (this.aBoolean193) {
if (this.anInt4030 == this.aByteArray52.length) { if (this.length == this.chars.length) {
@Pc(44) int local44; @Pc(44) int local44;
for (local44 = 1; local44 <= this.anInt4030; local44 += local44) { for (local44 = 1; local44 <= this.length; local44 += local44) {
} }
@Pc(61) byte[] local61 = new byte[local44]; @Pc(61) byte[] local61 = new byte[local44];
Static289.method2612(this.aByteArray52, 0, local61, 0, this.anInt4030); Static289.method2612(this.chars, 0, local61, 0, this.length);
this.aByteArray52 = local61; this.chars = local61;
} }
this.aByteArray52[this.anInt4030++] = (byte) arg0; this.chars[this.length++] = (byte) arg0;
return this; return this;
} else { } else {
throw new IllegalArgumentException(); throw new IllegalArgumentException();
@ -737,7 +737,7 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "a", descriptor = "(BLjava/applet/Applet;)Lclient!na;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(BLjava/applet/Applet;)Lclient!na;")
public final JagString method3153(@OriginalArg(1) Applet arg0) { public final JagString method3153(@OriginalArg(1) Applet arg0) {
@Pc(19) String local19 = new String(this.aByteArray52, 0, this.anInt4030); @Pc(19) String local19 = new String(this.chars, 0, this.length);
@Pc(23) String local23 = arg0.getParameter(local19); @Pc(23) String local23 = arg0.getParameter(local19);
return local23 == null ? null : Static230.method3952(local23); return local23 == null ? null : Static230.method3952(local23);
} }
@ -745,8 +745,8 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "d", descriptor = "(Z)I") @OriginalMember(owner = "client!na", name = "d", descriptor = "(Z)I")
public final int method3154() { public final int method3154() {
@Pc(7) int local7 = 0; @Pc(7) int local7 = 0;
for (@Pc(14) int local14 = 0; local14 < this.anInt4030; local14++) { for (@Pc(14) int local14 = 0; local14 < this.length; local14++) {
local7 = (this.aByteArray52[local14] & 0xFF) + (local7 << 5) - local7; local7 = (this.chars[local14] & 0xFF) + (local7 << 5) - local7;
} }
return local7; return local7;
} }
@ -755,9 +755,9 @@ public final class JagString implements StringInterface {
public final int method3155(@OriginalArg(1) FontMetrics arg0) { public final int method3155(@OriginalArg(1) FontMetrics arg0) {
@Pc(14) String local14; @Pc(14) String local14;
try { try {
local14 = new String(this.aByteArray52, 0, this.anInt4030, "ISO-8859-1"); local14 = new String(this.chars, 0, this.length, "ISO-8859-1");
} catch (@Pc(16) UnsupportedEncodingException local16) { } catch (@Pc(16) UnsupportedEncodingException local16) {
local14 = new String(this.aByteArray52, 0, this.anInt4030); local14 = new String(this.chars, 0, this.length);
} }
return arg0.stringWidth(local14); return arg0.stringWidth(local14);
} }
@ -767,17 +767,17 @@ public final class JagString implements StringInterface {
if (!this.aBoolean193) { if (!this.aBoolean193) {
throw new IllegalArgumentException(); throw new IllegalArgumentException();
} }
if (this.aByteArray52.length != this.anInt4030) { if (this.chars.length != this.length) {
@Pc(26) byte[] local26 = new byte[this.anInt4030]; @Pc(26) byte[] local26 = new byte[this.length];
Static289.method2612(this.aByteArray52, 0, local26, 0, this.anInt4030); Static289.method2612(this.chars, 0, local26, 0, this.length);
this.aByteArray52 = local26; this.chars = local26;
} }
return this; return this;
} }
@OriginalMember(owner = "client!na", name = "a", descriptor = "(ILjava/applet/Applet;)Ljava/lang/Object;") @OriginalMember(owner = "client!na", name = "a", descriptor = "(ILjava/applet/Applet;)Ljava/lang/Object;")
public final Object method3157(@OriginalArg(1) Applet arg0) throws Throwable { public final Object method3157(@OriginalArg(1) Applet arg0) throws Throwable {
@Pc(12) String local12 = new String(this.aByteArray52, 0, this.anInt4030); @Pc(12) String local12 = new String(this.chars, 0, this.length);
@Pc(17) Object local17 = Static287.method1757(local12, arg0); @Pc(17) Object local17 = Static287.method1757(local12, arg0);
if (local17 instanceof String) { if (local17 instanceof String) {
@Pc(24) byte[] local24 = ((String) local17).getBytes(); @Pc(24) byte[] local24 = ((String) local17).getBytes();
@ -789,8 +789,8 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "j", descriptor = "(I)J") @OriginalMember(owner = "client!na", name = "j", descriptor = "(I)J")
public final long encode37() { public final long encode37() {
@Pc(7) long local7 = 0L; @Pc(7) long local7 = 0L;
for (@Pc(14) int local14 = 0; this.anInt4030 > local14 && local14 < 12; local14++) { for (@Pc(14) int local14 = 0; this.length > local14 && local14 < 12; local14++) {
@Pc(32) byte local32 = this.aByteArray52[local14]; @Pc(32) byte local32 = this.chars[local14];
local7 *= 37L; local7 *= 37L;
if (local32 >= 65 && local32 <= 90) { if (local32 >= 65 && local32 <= 90) {
local7 += local32 + 1 - 65; local7 += local32 + 1 - 65;
@ -814,7 +814,7 @@ public final class JagString implements StringInterface {
@OriginalMember(owner = "client!na", name = "a", descriptor = "(Z[BIII)I") @OriginalMember(owner = "client!na", name = "a", descriptor = "(Z[BIII)I")
public final int encodeString(@OriginalArg(1) byte[] arg0, @OriginalArg(2) int arg1, @OriginalArg(4) int arg2) { public final int encodeString(@OriginalArg(1) byte[] arg0, @OriginalArg(2) int arg1, @OriginalArg(4) int arg2) {
Static289.method2612(this.aByteArray52, 0, arg0, arg1, arg2); Static289.method2612(this.chars, 0, arg0, arg1, arg2);
return arg2; return arg2;
} }
} }

View file

@ -29,7 +29,7 @@ public final class JavaAudioChannel extends AudioChannel {
@OriginalMember(owner = "client!qa", name = "d", descriptor = "()V") @OriginalMember(owner = "client!qa", name = "d", descriptor = "()V")
@Override @Override
protected final void method3572() { protected final void flush() {
if (this.aSourceDataLine1 != null) { if (this.aSourceDataLine1 != null) {
this.aSourceDataLine1.close(); this.aSourceDataLine1.close();
this.aSourceDataLine1 = null; this.aSourceDataLine1 = null;
@ -38,7 +38,7 @@ public final class JavaAudioChannel extends AudioChannel {
@OriginalMember(owner = "client!qa", name = "a", descriptor = "(Ljava/awt/Component;)V") @OriginalMember(owner = "client!qa", name = "a", descriptor = "(Ljava/awt/Component;)V")
@Override @Override
public final void method3576(@OriginalArg(0) Component arg0) { public final void init(@OriginalArg(0) Component arg0) {
@Pc(1) Info[] local1 = AudioSystem.getMixerInfo(); @Pc(1) Info[] local1 = AudioSystem.getMixerInfo();
if (local1 != null) { if (local1 != null) {
for (@Pc(9) int local9 = 0; local9 < local1.length; local9++) { for (@Pc(9) int local9 = 0; local9 < local1.length; local9++) {
@ -51,15 +51,15 @@ public final class JavaAudioChannel extends AudioChannel {
} }
} }
} }
this.anAudioFormat1 = new AudioFormat((float) Static44.anInt1404, 16, Static164.aBoolean192 ? 2 : 1, true, false); this.anAudioFormat1 = new AudioFormat((float) Static44.sampleRate, 16, AudioChannel.stereo ? 2 : 1, true, false);
this.aByteArray64 = new byte[0x100 << (Static164.aBoolean192 ? 2 : 1)]; this.aByteArray64 = new byte[0x100 << (AudioChannel.stereo ? 2 : 1)];
} }
@OriginalMember(owner = "client!qa", name = "a", descriptor = "(I)V") @OriginalMember(owner = "client!qa", name = "a", descriptor = "(I)V")
@Override @Override
public final void method3562(@OriginalArg(0) int arg0) throws LineUnavailableException { public final void open(@OriginalArg(0) int arg0) throws LineUnavailableException {
try { try {
@Pc(20) javax.sound.sampled.DataLine.Info local20 = new javax.sound.sampled.DataLine.Info(SourceDataLine.class, this.anAudioFormat1, arg0 << (Static164.aBoolean192 ? 2 : 1)); @Pc(20) javax.sound.sampled.DataLine.Info local20 = new javax.sound.sampled.DataLine.Info(SourceDataLine.class, this.anAudioFormat1, arg0 << (AudioChannel.stereo ? 2 : 1));
this.aSourceDataLine1 = (SourceDataLine) AudioSystem.getLine(local20); this.aSourceDataLine1 = (SourceDataLine) AudioSystem.getLine(local20);
this.aSourceDataLine1.open(); this.aSourceDataLine1.open();
this.aSourceDataLine1.start(); this.aSourceDataLine1.start();
@ -69,21 +69,21 @@ public final class JavaAudioChannel extends AudioChannel {
this.aSourceDataLine1 = null; this.aSourceDataLine1 = null;
throw local36; throw local36;
} else { } else {
this.method3562(Static165.clp2(arg0)); this.open(Static165.clp2(arg0));
} }
} }
} }
@OriginalMember(owner = "client!qa", name = "b", descriptor = "()V") @OriginalMember(owner = "client!qa", name = "b", descriptor = "()V")
@Override @Override
protected final void method3563() throws LineUnavailableException { protected final void close() throws LineUnavailableException {
this.aSourceDataLine1.flush(); this.aSourceDataLine1.flush();
if (!this.aBoolean230) { if (!this.aBoolean230) {
return; return;
} }
this.aSourceDataLine1.close(); this.aSourceDataLine1.close();
this.aSourceDataLine1 = null; this.aSourceDataLine1 = null;
@Pc(34) javax.sound.sampled.DataLine.Info local34 = new javax.sound.sampled.DataLine.Info(SourceDataLine.class, this.anAudioFormat1, this.anInt4645 << (Static164.aBoolean192 ? 2 : 1)); @Pc(34) javax.sound.sampled.DataLine.Info local34 = new javax.sound.sampled.DataLine.Info(SourceDataLine.class, this.anAudioFormat1, this.anInt4645 << (AudioChannel.stereo ? 2 : 1));
this.aSourceDataLine1 = (SourceDataLine) AudioSystem.getLine(local34); this.aSourceDataLine1 = (SourceDataLine) AudioSystem.getLine(local34);
this.aSourceDataLine1.open(); this.aSourceDataLine1.open();
this.aSourceDataLine1.start(); this.aSourceDataLine1.start();
@ -91,15 +91,15 @@ public final class JavaAudioChannel extends AudioChannel {
@OriginalMember(owner = "client!qa", name = "c", descriptor = "()I") @OriginalMember(owner = "client!qa", name = "c", descriptor = "()I")
@Override @Override
protected final int method3569() { protected final int getBufferSize() {
return this.anInt4645 - (this.aSourceDataLine1.available() >> (Static164.aBoolean192 ? 2 : 1)); return this.anInt4645 - (this.aSourceDataLine1.available() >> (AudioChannel.stereo ? 2 : 1));
} }
@OriginalMember(owner = "client!qa", name = "a", descriptor = "()V") @OriginalMember(owner = "client!qa", name = "a", descriptor = "()V")
@Override @Override
protected final void method3561() { protected final void write() {
@Pc(1) short local1 = 256; @Pc(1) short local1 = 256;
if (Static164.aBoolean192) { if (AudioChannel.stereo) {
local1 = 512; local1 = 512;
} }
for (@Pc(9) int local9 = 0; local9 < local1; local9++) { for (@Pc(9) int local9 = 0; local9 < local1; local9++) {

View file

@ -49,7 +49,7 @@ public final class MidiNoteStream extends PcmStream {
@OriginalMember(owner = "client!te", name = "a", descriptor = "(Lclient!mf;II)V") @OriginalMember(owner = "client!te", name = "a", descriptor = "(Lclient!mf;II)V")
private void method4141(@OriginalArg(0) MidiNote arg0, @OriginalArg(2) int arg1) { private void method4141(@OriginalArg(0) MidiNote arg0, @OriginalArg(2) int arg1) {
if ((this.aClass3_Sub3_Sub4_3.anIntArray508[arg0.anInt3773] & 0x4) != 0 && arg0.anInt3767 < 0) { if ((this.aClass3_Sub3_Sub4_3.anIntArray508[arg0.anInt3773] & 0x4) != 0 && arg0.anInt3767 < 0) {
@Pc(27) int local27 = this.aClass3_Sub3_Sub4_3.anIntArray503[arg0.anInt3773] / Static44.anInt1404; @Pc(27) int local27 = this.aClass3_Sub3_Sub4_3.anIntArray503[arg0.anInt3773] / Static44.sampleRate;
@Pc(37) int local37 = (local27 + 1048575 - arg0.anInt3775) / local27; @Pc(37) int local37 = (local27 + 1048575 - arg0.anInt3775) / local27;
arg0.anInt3775 = local27 * arg1 + arg0.anInt3775 & 0xFFFFF; arg0.anInt3775 = local27 * arg1 + arg0.anInt3775 & 0xFFFFF;
if (arg1 >= local37) { if (arg1 >= local37) {
@ -119,7 +119,7 @@ public final class MidiNoteStream extends PcmStream {
@OriginalMember(owner = "client!te", name = "a", descriptor = "([ILclient!mf;IIIB)V") @OriginalMember(owner = "client!te", name = "a", descriptor = "([ILclient!mf;IIIB)V")
private void method4146(@OriginalArg(0) int[] arg0, @OriginalArg(1) MidiNote arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) { private void method4146(@OriginalArg(0) int[] arg0, @OriginalArg(1) MidiNote arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
if ((this.aClass3_Sub3_Sub4_3.anIntArray508[arg1.anInt3773] & 0x4) != 0 && arg1.anInt3767 < 0) { if ((this.aClass3_Sub3_Sub4_3.anIntArray508[arg1.anInt3773] & 0x4) != 0 && arg1.anInt3767 < 0) {
@Pc(26) int local26 = this.aClass3_Sub3_Sub4_3.anIntArray503[arg1.anInt3773] / Static44.anInt1404; @Pc(26) int local26 = this.aClass3_Sub3_Sub4_3.anIntArray503[arg1.anInt3773] / Static44.sampleRate;
while (true) { while (true) {
@Pc(36) int local36 = (local26 + 1048575 - arg1.anInt3775) / local26; @Pc(36) int local36 = (local26 + 1048575 - arg1.anInt3775) / local26;
if (arg3 < local36) { if (arg3 < local36) {
@ -128,7 +128,7 @@ public final class MidiNoteStream extends PcmStream {
} }
arg3 -= local36; arg3 -= local36;
arg1.aClass3_Sub3_Sub1_3.method4408(arg0, arg2, local36); arg1.aClass3_Sub3_Sub1_3.method4408(arg0, arg2, local36);
@Pc(55) int local55 = Static44.anInt1404 / 100; @Pc(55) int local55 = Static44.sampleRate / 100;
@Pc(58) SoundPcmStream local58 = arg1.aClass3_Sub3_Sub1_3; @Pc(58) SoundPcmStream local58 = arg1.aClass3_Sub3_Sub1_3;
@Pc(62) int local62 = 262144 / local26; @Pc(62) int local62 = 262144 / local26;
if (local62 < local55) { if (local62 < local55) {

View file

@ -215,7 +215,7 @@ public final class MidiPcmStream extends PcmStream {
for (@Pc(20) MidiNote local20 = (MidiNote) this.aClass3_Sub3_Sub3_1.aClass69_126.method2289(); local20 != null; local20 = (MidiNote) this.aClass3_Sub3_Sub3_1.aClass69_126.method2288()) { for (@Pc(20) MidiNote local20 = (MidiNote) this.aClass3_Sub3_Sub3_1.aClass69_126.method2289(); local20 != null; local20 = (MidiNote) this.aClass3_Sub3_Sub3_1.aClass69_126.method2288()) {
if (arg0 < 0 || local20.anInt3773 == arg0) { if (arg0 < 0 || local20.anInt3773 == arg0) {
if (local20.aClass3_Sub3_Sub1_3 != null) { if (local20.aClass3_Sub3_Sub1_3 != null) {
local20.aClass3_Sub3_Sub1_3.method384(Static44.anInt1404 / 100); local20.aClass3_Sub3_Sub1_3.method384(Static44.sampleRate / 100);
if (local20.aClass3_Sub3_Sub1_3.method412()) { if (local20.aClass3_Sub3_Sub1_3.method412()) {
this.aClass3_Sub3_Sub3_1.aClass3_Sub3_Sub2_2.method1343(local20.aClass3_Sub3_Sub1_3); this.aClass3_Sub3_Sub3_1.aClass3_Sub3_Sub2_2.method1343(local20.aClass3_Sub3_Sub1_3);
} }
@ -493,7 +493,7 @@ public final class MidiPcmStream extends PcmStream {
@Override @Override
public final synchronized void method4408(@OriginalArg(0) int[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2) { public final synchronized void method4408(@OriginalArg(0) int[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2) {
if (this.aClass84_1.method2628()) { if (this.aClass84_1.method2628()) {
@Pc(18) int local18 = this.aClass84_1.anInt3303 * this.anInt5646 / Static44.anInt1404; @Pc(18) int local18 = this.aClass84_1.anInt3303 * this.anInt5646 / Static44.sampleRate;
do { do {
@Pc(28) long local28 = this.aLong189 + (long) arg2 * (long) local18; @Pc(28) long local28 = this.aLong189 + (long) arg2 * (long) local18;
if (this.aLong188 - local28 >= 0L) { if (this.aLong188 - local28 >= 0L) {
@ -513,7 +513,7 @@ public final class MidiPcmStream extends PcmStream {
@OriginalMember(owner = "client!va", name = "a", descriptor = "(IILclient!mf;B[I)Z") @OriginalMember(owner = "client!va", name = "a", descriptor = "(IILclient!mf;B[I)Z")
public final boolean method4433(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) MidiNote arg2, @OriginalArg(4) int[] arg3) { public final boolean method4433(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) MidiNote arg2, @OriginalArg(4) int[] arg3) {
arg2.anInt3771 = Static44.anInt1404 / 100; arg2.anInt3771 = Static44.sampleRate / 100;
if (arg2.anInt3767 >= 0 && (arg2.aClass3_Sub3_Sub1_3 == null || arg2.aClass3_Sub3_Sub1_3.method411())) { if (arg2.anInt3767 >= 0 && (arg2.aClass3_Sub3_Sub1_3 == null || arg2.aClass3_Sub3_Sub1_3.method411())) {
arg2.method2957(); arg2.method2957();
arg2.method4658(); arg2.method4658();
@ -686,7 +686,7 @@ public final class MidiPcmStream extends PcmStream {
@Override @Override
public final synchronized void method4410(@OriginalArg(0) int arg0) { public final synchronized void method4410(@OriginalArg(0) int arg0) {
if (this.aClass84_1.method2628()) { if (this.aClass84_1.method2628()) {
@Pc(15) int local15 = this.aClass84_1.anInt3303 * this.anInt5646 / Static44.anInt1404; @Pc(15) int local15 = this.aClass84_1.anInt3303 * this.anInt5646 / Static44.sampleRate;
do { do {
@Pc(25) long local25 = this.aLong189 + (long) arg0 * (long) local15; @Pc(25) long local25 = this.aLong189 + (long) arg0 * (long) local15;
if (this.aLong188 - local25 >= 0L) { if (this.aLong188 - local25 >= 0L) {
@ -731,7 +731,7 @@ public final class MidiPcmStream extends PcmStream {
@Pc(102) double local102 = Math.sin((double) (arg0.anInt3768 & 0x1FF) * 0.01227184630308513D); @Pc(102) double local102 = Math.sin((double) (arg0.anInt3768 & 0x1FF) * 0.01227184630308513D);
local17 += (int) ((double) local62 * local102); local17 += (int) ((double) local62 * local102);
} }
local62 = (int) ((double) (arg0.aClass3_Sub16_Sub1_1.anInt3316 * 256) * Math.pow(2.0D, (double) local17 * 3.255208333333333E-4D) / (double) Static44.anInt1404 + 0.5D); local62 = (int) ((double) (arg0.aClass3_Sub16_Sub1_1.anInt3316 * 256) * Math.pow(2.0D, (double) local17 * 3.255208333333333E-4D) / (double) Static44.sampleRate + 0.5D);
return local62 >= 1 ? local62 : 1; return local62 >= 1 ? local62 : 1;
} }

View file

@ -6,51 +6,54 @@ import org.openrs2.deob.annotation.OriginalMember;
@OriginalClass("client!hl") @OriginalClass("client!hl")
public final class SignLinkAudioChannel extends AudioChannel { public final class SignLinkAudioChannel extends AudioChannel {
@OriginalMember(owner = "client!hl", name = "M", descriptor = "Lsignlink!ai;")
public static AudioSource audioSource;
@OriginalMember(owner = "client!hl", name = "L", descriptor = "I") @OriginalMember(owner = "client!hl", name = "L", descriptor = "I")
private final int anInt2606; private final int channel;
@OriginalMember(owner = "client!hl", name = "<init>", descriptor = "(Lsignlink!ll;I)V") @OriginalMember(owner = "client!hl", name = "<init>", descriptor = "(Lsignlink!ll;I)V")
public SignLinkAudioChannel(@OriginalArg(0) SignLink arg0, @OriginalArg(1) int arg1) { public SignLinkAudioChannel(@OriginalArg(0) SignLink signLink, @OriginalArg(1) int channel) {
Static100.anInterface10_1 = arg0.method5125(); audioSource = signLink.getAudioSource();
this.anInt2606 = arg1; this.channel = channel;
} }
@OriginalMember(owner = "client!hl", name = "c", descriptor = "()I") @OriginalMember(owner = "client!hl", name = "c", descriptor = "()I")
@Override @Override
protected final int method3569() { protected final int getBufferSize() {
return Static100.anInterface10_1.method5098(this.anInt2606); return audioSource.getBufferSize(this.channel);
} }
@OriginalMember(owner = "client!hl", name = "a", descriptor = "()V") @OriginalMember(owner = "client!hl", name = "a", descriptor = "()V")
@Override @Override
protected final void method3561() { protected final void write() {
Static100.anInterface10_1.method5102(this.anInt2606, this.anIntArray411); audioSource.write(this.channel, this.anIntArray411);
} }
@OriginalMember(owner = "client!hl", name = "a", descriptor = "(Ljava/awt/Component;)V") @OriginalMember(owner = "client!hl", name = "a", descriptor = "(Ljava/awt/Component;)V")
@Override @Override
public final void method3576(@OriginalArg(0) Component arg0) throws Exception { public final void init(@OriginalArg(0) Component component) throws Exception {
Static100.anInterface10_1.method5101(Static44.anInt1404, arg0, Static164.aBoolean192); audioSource.init(Static44.sampleRate, component, AudioChannel.stereo);
} }
@OriginalMember(owner = "client!hl", name = "b", descriptor = "()V") @OriginalMember(owner = "client!hl", name = "b", descriptor = "()V")
@Override @Override
protected final void method3563() { protected final void close() {
Static100.anInterface10_1.method5097(this.anInt2606); audioSource.close(this.channel);
} }
@OriginalMember(owner = "client!hl", name = "a", descriptor = "(I)V") @OriginalMember(owner = "client!hl", name = "a", descriptor = "(I)V")
@Override @Override
public final void method3562(@OriginalArg(0) int arg0) throws Exception { public final void open(@OriginalArg(0) int bufferCapacity) throws Exception {
if (arg0 > 32768) { if (bufferCapacity > 32768) {
throw new IllegalArgumentException(); throw new IllegalArgumentException();
} }
Static100.anInterface10_1.method5099(this.anInt2606, arg0); audioSource.open(this.channel, bufferCapacity);
} }
@OriginalMember(owner = "client!hl", name = "d", descriptor = "()V") @OriginalMember(owner = "client!hl", name = "d", descriptor = "()V")
@Override @Override
protected final void method3572() { protected final void flush() {
Static100.anInterface10_1.method5100(this.anInt2606); audioSource.flush(this.channel);
} }
} }

View file

@ -344,12 +344,12 @@ public final class SoundPcmStream extends PcmStream {
} }
this.anInt351 += arg1; this.anInt351 += arg1;
if (this.anInt342 == 256 && (this.anInt346 & 0xFF) == 0) { if (this.anInt342 == 256 && (this.anInt346 & 0xFF) == 0) {
if (Static164.aBoolean192) { if (AudioChannel.stereo) {
arg1 = Static284.method393(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, this.anInt347, this.anInt354, local7, arg2, this); arg1 = Static284.method393(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, this.anInt347, this.anInt354, local7, arg2, this);
} else { } else {
arg1 = Static284.method395(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, this.anInt344, local7, arg2, this); arg1 = Static284.method395(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, this.anInt344, local7, arg2, this);
} }
} else if (Static164.aBoolean192) { } else if (AudioChannel.stereo) {
arg1 = Static284.method388(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, this.anInt347, this.anInt354, local7, arg2, this, this.anInt342, arg4); arg1 = Static284.method388(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, this.anInt347, this.anInt354, local7, arg2, this, this.anInt342, arg4);
} else { } else {
arg1 = Static284.method389(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, this.anInt344, local7, arg2, this, this.anInt342, arg4); arg1 = Static284.method389(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, this.anInt344, local7, arg2, this, this.anInt342, arg4);
@ -364,12 +364,12 @@ public final class SoundPcmStream extends PcmStream {
return arg3; return arg3;
} }
if (this.anInt342 == 256 && (this.anInt346 & 0xFF) == 0) { if (this.anInt342 == 256 && (this.anInt346 & 0xFF) == 0) {
if (Static164.aBoolean192) { if (AudioChannel.stereo) {
return Static284.method387(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, arg3, arg2, this); return Static284.method387(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, arg3, arg2, this);
} }
return Static284.method391(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, arg3, arg2, this); return Static284.method391(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, arg3, arg2, this);
} }
if (Static164.aBoolean192) { if (AudioChannel.stereo) {
return Static284.method400(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, arg3, arg2, this, this.anInt342, arg4); return Static284.method400(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, arg3, arg2, this, this.anInt342, arg4);
} }
return Static284.method422(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, arg3, arg2, this, this.anInt342, arg4); return Static284.method422(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, arg3, arg2, this, this.anInt342, arg4);
@ -594,12 +594,12 @@ public final class SoundPcmStream extends PcmStream {
} }
this.anInt351 += arg1; this.anInt351 += arg1;
if (this.anInt342 == -256 && (this.anInt346 & 0xFF) == 0) { if (this.anInt342 == -256 && (this.anInt346 & 0xFF) == 0) {
if (Static164.aBoolean192) { if (AudioChannel.stereo) {
arg1 = Static284.method402(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, this.anInt347, this.anInt354, local7, arg2, this); arg1 = Static284.method402(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, this.anInt347, this.anInt354, local7, arg2, this);
} else { } else {
arg1 = Static284.method394(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, this.anInt344, local7, arg2, this); arg1 = Static284.method394(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, this.anInt344, local7, arg2, this);
} }
} else if (Static164.aBoolean192) { } else if (AudioChannel.stereo) {
arg1 = Static284.method407(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, this.anInt347, this.anInt354, local7, arg2, this, this.anInt342, arg4); arg1 = Static284.method407(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, this.anInt347, this.anInt354, local7, arg2, this, this.anInt342, arg4);
} else { } else {
arg1 = Static284.method415(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, this.anInt344, local7, arg2, this, this.anInt342, arg4); arg1 = Static284.method415(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, this.anInt344, local7, arg2, this, this.anInt342, arg4);
@ -614,12 +614,12 @@ public final class SoundPcmStream extends PcmStream {
return arg3; return arg3;
} }
if (this.anInt342 == -256 && (this.anInt346 & 0xFF) == 0) { if (this.anInt342 == -256 && (this.anInt346 & 0xFF) == 0) {
if (Static164.aBoolean192) { if (AudioChannel.stereo) {
return Static284.method414(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, arg3, arg2, this); return Static284.method414(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, arg3, arg2, this);
} }
return Static284.method413(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, arg3, arg2, this); return Static284.method413(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, arg3, arg2, this);
} }
if (Static164.aBoolean192) { if (AudioChannel.stereo) {
return Static284.method420(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, arg3, arg2, this, this.anInt342, arg4); return Static284.method420(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt355, this.anInt352, arg3, arg2, this, this.anInt342, arg4);
} }
return Static284.method390(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, arg3, arg2, this, this.anInt342, arg4); return Static284.method390(((PcmSound) this.aClass3_Sub16_5).aByteArray47, arg0, this.anInt346, arg1, this.anInt348, arg3, arg2, this, this.anInt342, arg4);

View file

@ -14,11 +14,11 @@ public final class Static10 {
@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.aByteArray52 = new byte[arg1]; local7.chars = new byte[arg1];
local7.anInt4030 = 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.aByteArray52[local7.anInt4030++] = arg0[local22]; local7.chars[local7.length++] = arg0[local22];
} }
} }
return local7; return local7;

View file

@ -2,6 +2,4 @@ import org.openrs2.deob.annotation.OriginalMember;
public final class Static100 { public final class Static100 {
@OriginalMember(owner = "client!hl", name = "M", descriptor = "Lsignlink!ai;")
public static AudioSource anInterface10_1;
} }

View file

@ -44,19 +44,19 @@ public final class Static107 {
@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 method2262(@OriginalArg(0) int arg0, @OriginalArg(1) SignLink arg1, @OriginalArg(2) Component arg2, @OriginalArg(3) int arg3) { public static AudioChannel method2262(@OriginalArg(0) int arg0, @OriginalArg(1) SignLink arg1, @OriginalArg(2) Component arg2, @OriginalArg(3) int arg3) {
if (Static44.anInt1404 == 0) { if (Static44.sampleRate == 0) {
throw new IllegalStateException(); throw new IllegalStateException();
} }
try { try {
@Pc(33) AudioChannel local33 = (AudioChannel) Class.forName("JavaAudioChannel").getDeclaredConstructor().newInstance(); @Pc(33) AudioChannel local33 = (AudioChannel) Class.forName("JavaAudioChannel").getDeclaredConstructor().newInstance();
local33.anInt4641 = arg0; local33.anInt4641 = arg0;
local33.anIntArray411 = new int[(Static164.aBoolean192 ? 2 : 1) * 256]; local33.anIntArray411 = new int[(AudioChannel.stereo ? 2 : 1) * 256];
local33.method3576(arg2); local33.init(arg2);
local33.anInt4644 = (arg0 & -1024) + 1024; local33.anInt4644 = (arg0 & -1024) + 1024;
if (local33.anInt4644 > 16384) { if (local33.anInt4644 > 16384) {
local33.anInt4644 = 16384; local33.anInt4644 = 16384;
} }
local33.method3562(local33.anInt4644); local33.open(local33.anInt4644);
if (Static258.anInt5637 > 0 && Static60.aClass19_1 == null) { if (Static258.anInt5637 > 0 && Static60.aClass19_1 == null) {
Static60.aClass19_1 = new AudioThread(); Static60.aClass19_1 = new AudioThread();
Static60.aClass19_1.aClass213_1 = arg1; Static60.aClass19_1.aClass213_1 = arg1;
@ -72,11 +72,11 @@ public final class Static107 {
} catch (@Pc(109) Throwable local109) { } catch (@Pc(109) Throwable local109) {
try { try {
@Pc(120) SignLinkAudioChannel local120 = new SignLinkAudioChannel(arg1, arg3); @Pc(120) SignLinkAudioChannel local120 = new SignLinkAudioChannel(arg1, arg3);
local120.anIntArray411 = new int[(Static164.aBoolean192 ? 2 : 1) * 256]; local120.anIntArray411 = new int[(AudioChannel.stereo ? 2 : 1) * 256];
local120.anInt4641 = arg0; local120.anInt4641 = arg0;
local120.method3576(arg2); local120.init(arg2);
local120.anInt4644 = 16384; local120.anInt4644 = 16384;
local120.method3562(local120.anInt4644); local120.open(local120.anInt4644);
if (Static258.anInt5637 > 0 && Static60.aClass19_1 == null) { if (Static258.anInt5637 > 0 && Static60.aClass19_1 == null) {
Static60.aClass19_1 = new AudioThread(); Static60.aClass19_1 = new AudioThread();
Static60.aClass19_1.aClass213_1 = arg1; Static60.aClass19_1.aClass213_1 = arg1;

View file

@ -98,18 +98,18 @@ public final class Static118 {
if (arg2[arg0 + local7] == null) { if (arg2[arg0 + local7] == null) {
arg2[local7 + arg0] = Static193.aClass100_853; arg2[local7 + arg0] = Static193.aClass100_853;
} }
local5 += arg2[local7 + arg0].anInt4030; local5 += arg2[local7 + arg0].length;
} }
@Pc(39) byte[] local39 = new byte[local5]; @Pc(39) byte[] local39 = new byte[local5];
@Pc(41) int local41 = 0; @Pc(41) int local41 = 0;
for (@Pc(43) int local43 = 0; local43 < arg1; local43++) { for (@Pc(43) int local43 = 0; local43 < arg1; local43++) {
@Pc(52) JagString local52 = arg2[local43 + arg0]; @Pc(52) JagString local52 = arg2[local43 + arg0];
Static289.method2612(local52.aByteArray52, 0, local39, local41, local52.anInt4030); Static289.method2612(local52.chars, 0, local39, local41, local52.length);
local41 += local52.anInt4030; local41 += local52.length;
} }
@Pc(71) JagString local71 = new JagString(); @Pc(71) JagString local71 = new JagString();
local71.anInt4030 = local5; local71.length = local5;
local71.aByteArray52 = local39; local71.chars = local39;
return local71; return local71;
} }

View file

@ -209,7 +209,7 @@ public final class Static127 {
} }
@Pc(246) JagString local246 = Static186.aClass100_827; @Pc(246) JagString local246 = Static186.aClass100_827;
if (Static232.aClass212_5 != null) { if (Static232.aClass212_5 != null) {
local246 = Static181.method3341(Static232.aClass212_5.anInt5926); local246 = Static181.method3341(Static232.aClass212_5.intArg2);
try { try {
if (Static232.aClass212_5.result != null) { if (Static232.aClass212_5.result != null) {
@Pc(265) byte[] local265 = ((String) Static232.aClass212_5.result).getBytes("ISO-8859-1"); @Pc(265) byte[] local265 = ((String) Static232.aClass212_5.result).getBytes("ISO-8859-1");
@ -287,7 +287,7 @@ public final class Static127 {
Static107.js5NetQueue.method2319(); Static107.js5NetQueue.method2319();
} }
if (arg0.method3111(Static165.aClass100_775)) { if (arg0.method3111(Static165.aClass100_775)) {
GameShell.signLink.method5110(); GameShell.signLink.breakConnection();
Static124.socket.method2833(); Static124.socket.method2833();
Static107.js5NetQueue.method2323(); Static107.js5NetQueue.method2323();
} }
@ -325,18 +325,18 @@ public final class Static127 {
} }
} }
if (arg0.method3138(Static241.aClass100_1088)) { if (arg0.method3138(Static241.aClass100_1088)) {
Static76.method1645(arg0.method3136(15).method3132()); Static76.method1645(arg0.method3136(15).parseInt());
Static203.method3663(GameShell.signLink); Static203.method3663(GameShell.signLink);
Static18.sentToServer = false; Static18.sentToServer = false;
} }
if (arg0.method3138(Static170.aClass100_623) && Static83.modeWhere != 0) { if (arg0.method3138(Static170.aClass100_623) && Static83.modeWhere != 0) {
Static115.method2312(arg0.method3136(6).method3132()); Static115.method2312(arg0.method3136(6).parseInt());
} }
if (arg0.method3111(Static272.aClass100_990)) { if (arg0.method3111(Static272.aClass100_990)) {
throw new RuntimeException(); throw new RuntimeException();
} }
if (arg0.method3138(Static211.aClass100_232)) { if (arg0.method3138(Static211.aClass100_232)) {
Static199.anInt4672 = arg0.method3136(12).method3144().method3132(); Static199.anInt4672 = arg0.method3136(12).method3144().parseInt();
Static103.method2231(null, 0, Static34.method882(new JagString[] { Static276.aClass100_1096, Static123.method2423(Static199.anInt4672) })); Static103.method2231(null, 0, Static34.method882(new JagString[] { Static276.aClass100_1096, Static123.method2423(Static199.anInt4672) }));
} }
if (arg0.method3111(Static181.aClass100_810)) { if (arg0.method3111(Static181.aClass100_810)) {

View file

@ -132,7 +132,7 @@ public final class Static156 {
Static196.anIntArray407[189] = 26; Static196.anIntArray407[189] = 26;
return; return;
} }
if (SignLink.aMethod6 == null) { if (SignLink.setFocusTraversalKeysEnabled == null) {
Static196.anIntArray407[192] = 58; Static196.anIntArray407[192] = 58;
Static196.anIntArray407[222] = 59; Static196.anIntArray407[222] = 59;
} else { } else {

View file

@ -4,9 +4,6 @@ import org.openrs2.deob.annotation.Pc;
public final class Static164 { public final class Static164 {
@OriginalMember(owner = "client!na", name = "w", descriptor = "Z")
public static boolean aBoolean192;
@OriginalMember(owner = "client!na", name = "W", descriptor = "Z") @OriginalMember(owner = "client!na", name = "W", descriptor = "Z")
public static boolean newTab; public static boolean newTab;

View file

@ -96,9 +96,9 @@ public final class Static165 {
@OriginalMember(owner = "client!nb", name = "a", descriptor = "(II)Lclient!na;") @OriginalMember(owner = "client!nb", name = "a", descriptor = "(II)Lclient!na;")
public static JagString method3165() { public static JagString method3165() {
@Pc(21) JagString local21 = new JagString(); @Pc(21) JagString local21 = new JagString();
local21.anInt4030 = 1; local21.length = 1;
local21.aByteArray52 = new byte[1]; local21.chars = new byte[1];
local21.aByteArray52[0] = -96; local21.chars[0] = -96;
return local21; return local21;
} }
} }

View file

@ -47,7 +47,7 @@ public final class Static169 {
@OriginalMember(owner = "client!nf", name = "a", descriptor = "(IIIIILsignlink!ll;)Ljava/awt/Frame;") @OriginalMember(owner = "client!nf", name = "a", descriptor = "(IIIIILsignlink!ll;)Ljava/awt/Frame;")
public static Frame method3176(@OriginalArg(2) int arg0, @OriginalArg(3) int arg1, @OriginalArg(4) int arg2, @OriginalArg(5) SignLink arg3) { public static Frame method3176(@OriginalArg(2) int arg0, @OriginalArg(3) int arg1, @OriginalArg(4) int arg2, @OriginalArg(5) SignLink arg3) {
if (!arg3.method5111()) { if (!arg3.isFullScreenSupported()) {
return null; return null;
} }
@Pc(20) Class114[] local20 = Static197.method3558(arg3); @Pc(20) Class114[] local20 = Static197.method3558(arg3);
@ -64,7 +64,7 @@ public final class Static169 {
if (!local27) { if (!local27) {
return null; return null;
} }
@Pc(90) PrivilegedRequest local90 = arg3.method5129(arg0, arg1, arg2); @Pc(90) PrivilegedRequest local90 = arg3.enterFullScreen(arg0, arg1, arg2);
while (local90.status == 0) { while (local90.status == 0) {
Static231.sleep(10L); Static231.sleep(10L);
} }

View file

@ -119,7 +119,7 @@ public final class Static19 {
@OriginalMember(owner = "client!bi", name = "a", descriptor = "(BLjava/awt/Component;)V") @OriginalMember(owner = "client!bi", name = "a", descriptor = "(BLjava/awt/Component;)V")
public static void start(@OriginalArg(1) Component arg0) { public static void start(@OriginalArg(1) Component arg0) {
@Pc(10) Method local10 = SignLink.aMethod6; @Pc(10) Method local10 = SignLink.setFocusTraversalKeysEnabled;
if (local10 != null) { if (local10 != null) {
try { try {
local10.invoke(arg0, Boolean.FALSE); local10.invoke(arg0, Boolean.FALSE);

View file

@ -21,10 +21,10 @@ public final class Static197 {
@OriginalMember(owner = "client!pm", name = "a", descriptor = "(ILsignlink!ll;)[Lclient!od;") @OriginalMember(owner = "client!pm", name = "a", descriptor = "(ILsignlink!ll;)[Lclient!od;")
public static Class114[] method3558(@OriginalArg(1) SignLink arg0) { public static Class114[] method3558(@OriginalArg(1) SignLink arg0) {
if (!arg0.method5111()) { if (!arg0.isFullScreenSupported()) {
return new Class114[0]; return new Class114[0];
} }
@Pc(17) PrivilegedRequest local17 = arg0.method5132(); @Pc(17) PrivilegedRequest local17 = arg0.getDisplayModes();
while (local17.status == 0) { while (local17.status == 0) {
Static231.sleep(10L); Static231.sleep(10L);
} }
@ -142,7 +142,7 @@ public final class Static197 {
} else { } else {
Static260.frameBuffer = null; Static260.frameBuffer = null;
} }
@Pc(300) PrivilegedRequest local300 = GameShell.signLink.method5123(Static215.aClient1.getClass()); @Pc(300) PrivilegedRequest local300 = GameShell.signLink.loadGlNatives(Static215.aClient1.getClass());
while (local300.status == 0) { while (local300.status == 0) {
Static231.sleep(100L); Static231.sleep(100L);
} }

View file

@ -43,8 +43,8 @@ public final class Static198 {
arg1 /= 10; arg1 /= 10;
} }
@Pc(112) JagString local112 = new JagString(); @Pc(112) JagString local112 = new JagString();
local112.aByteArray52 = local46; local112.chars = local46;
local112.anInt4030 = local38; local112.length = local38;
return local112; return local112;
} }

View file

@ -54,7 +54,7 @@ public final class Static202 {
} }
local17.anIntArray139[local59] = local71; local17.anIntArray139[local59] = local71;
local17.anIntArray137[local59] = local95; local17.anIntArray137[local59] = local95;
local17.aClass212Array2[local59] = arg0.method5126(local104, Static6.method85(local93)); local17.aClass212Array2[local59] = arg0.getDeclaredField(local104, Static6.method85(local93));
} else if (local71 == 3 || local71 == 4) { } else if (local71 == 3 || local71 == 4) {
local93 = new String(arg1.gjstr().method3148()); local93 = new String(arg1.gjstr().method3148());
local104 = new String(arg1.gjstr().method3148()); local104 = new String(arg1.gjstr().method3148());
@ -77,7 +77,7 @@ public final class Static202 {
for (local210 = 0; local210 < local95; local210++) { for (local210 = 0; local210 < local95; local210++) {
local234[local210] = Static6.method85(local171[local210]); local234[local210] = Static6.method85(local171[local210]);
} }
local17.aClass212Array1[local59] = arg0.method5122(Static6.method85(local93), local234, local104); local17.aClass212Array1[local59] = arg0.getDeclaredMethod(Static6.method85(local93), local234, local104);
local17.aByteArrayArrayArray6[local59] = local193; local17.aByteArrayArrayArray6[local59] = local193;
} }
} catch (@Pc(269) ClassNotFoundException local269) { } catch (@Pc(269) ClassNotFoundException local269) {

View file

@ -73,20 +73,20 @@ public final class Static203 {
public static void method3663(@OriginalArg(0) SignLink arg0) { public static void method3663(@OriginalArg(0) SignLink arg0) {
@Pc(11) FileOnDisk local11 = null; @Pc(11) FileOnDisk local11 = null;
try { try {
@Pc(16) PrivilegedRequest local16 = arg0.method5112("runescape"); @Pc(16) PrivilegedRequest local16 = arg0.openPreferences("runescape");
while (local16.status == 0) { while (local16.status == 0) {
Static231.sleep(1L); Static231.sleep(1L);
} }
if (local16.status == 1) { if (local16.status == 1) {
local11 = (FileOnDisk) local16.result; local11 = (FileOnDisk) local16.result;
@Pc(39) Buffer local39 = Static48.method1196(); @Pc(39) Buffer local39 = Static48.method1196();
local11.method5134(local39.data, local39.offset, 0); local11.write(local39.data, local39.offset, 0);
} }
} catch (@Pc(49) Exception local49) { } catch (@Pc(49) Exception local49) {
} }
try { try {
if (local11 != null) { if (local11 != null) {
local11.method5136(); local11.close();
} }
} catch (@Pc(56) Exception local56) { } catch (@Pc(56) Exception local56) {
} }

View file

@ -114,11 +114,11 @@ public final class Static230 {
local14 = arg0.getBytes(); local14 = arg0.getBytes();
} }
@Pc(23) JagString local23 = new JagString(); @Pc(23) JagString local23 = new JagString();
local23.aByteArray52 = local14; local23.chars = local14;
local23.anInt4030 = 0; local23.length = 0;
for (@Pc(31) int local31 = 0; local31 < local14.length; local31++) { for (@Pc(31) int local31 = 0; local31 < local14.length; local31++) {
if (local14[local31] != 0) { if (local14[local31] != 0) {
local14[local23.anInt4030++] = local14[local31]; local14[local23.length++] = local14[local31];
} }
} }
return local23; return local23;

View file

@ -35,7 +35,7 @@ public final class Static25 {
@OriginalMember(owner = "client!c", name = "a", descriptor = "(Ljava/awt/Frame;ZLsignlink!ll;)V") @OriginalMember(owner = "client!c", name = "a", descriptor = "(Ljava/awt/Frame;ZLsignlink!ll;)V")
public static void method714(@OriginalArg(0) Frame arg0, @OriginalArg(2) SignLink arg1) { public static void method714(@OriginalArg(0) Frame arg0, @OriginalArg(2) SignLink arg1) {
while (true) { while (true) {
@Pc(16) PrivilegedRequest local16 = arg1.method5115(arg0); @Pc(16) PrivilegedRequest local16 = arg1.exitFullScreen(arg0);
while (local16.status == 0) { while (local16.status == 0) {
Static231.sleep(10L); Static231.sleep(10L);
} }

View file

@ -70,7 +70,7 @@ public final class Static28 {
@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.aByteArray52 = 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) {
@ -78,9 +78,9 @@ public final class Static28 {
break; break;
} }
@Pc(51) int local51 = local6[local15++] & 0xFF; @Pc(51) int local51 = local6[local15++] & 0xFF;
local13.aByteArray52[local13.anInt4030++] = (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.aByteArray52[local13.anInt4030++] = (byte) local29; local13.chars[local13.length++] = (byte) local29;
} }
} }
local13.method3156(); local13.method3156();

View file

@ -488,7 +488,7 @@ public final class Static284 {
@OriginalMember(owner = "client!b", name = "a", descriptor = "(Lclient!kj;II)Lclient!b;") @OriginalMember(owner = "client!b", name = "a", descriptor = "(Lclient!kj;II)Lclient!b;")
public static SoundPcmStream method404(@OriginalArg(0) PcmSound arg0, @OriginalArg(2) int arg1) { public static SoundPcmStream method404(@OriginalArg(0) PcmSound arg0, @OriginalArg(2) int arg1) {
return arg0.aByteArray47 == null || arg0.aByteArray47.length == 0 ? null : new SoundPcmStream(arg0, (int) ((long) arg0.anInt3316 * 256L * (long) 100 / (long) (Static44.anInt1404 * 100)), arg1 << 6); return arg0.aByteArray47 == null || arg0.aByteArray47.length == 0 ? null : new SoundPcmStream(arg0, (int) ((long) arg0.anInt3316 * 256L * (long) 100 / (long) (Static44.sampleRate * 100)), arg1 << 6);
} }
@OriginalMember(owner = "client!b", name = "b", descriptor = "(II[B[IIIIIIIIIILclient!b;II)I") @OriginalMember(owner = "client!b", name = "b", descriptor = "(II[B[IIIIIIIIIILclient!b;II)I")

View file

@ -398,7 +398,7 @@ public final class Static4 {
return true; return true;
} else if (Static164.anInt3985 == 164) { } else if (Static164.anInt3985 == 164) {
local133 = Static57.aClass3_Sub15_Sub1_3.g4rme(); local133 = Static57.aClass3_Sub15_Sub1_3.g4rme();
Static232.aClass212_5 = GameShell.signLink.method5128(local133); Static232.aClass212_5 = GameShell.signLink.getReverseDns(local133);
Static164.anInt3985 = -1; Static164.anInt3985 = -1;
return true; return true;
} else if (Static164.anInt3985 == 225) { } else if (Static164.anInt3985 == 225) {
@ -1042,12 +1042,12 @@ public final class Static4 {
@Pc(3848) byte[] local3848 = new byte[Static223.anInt5028]; @Pc(3848) byte[] local3848 = new byte[Static223.anInt5028];
Static57.aClass3_Sub15_Sub1_3.method2237(local3848, Static223.anInt5028); Static57.aClass3_Sub15_Sub1_3.method2237(local3848, Static223.anInt5028);
local156 = Static10.decodeString(local3848, Static223.anInt5028, 0); local156 = Static10.decodeString(local3848, Static223.anInt5028, 0);
if (GameShell.frame == null && (SignLink.anInt5928 == 3 || !SignLink.aString15.startsWith("win") || Static178.aBoolean203)) { if (GameShell.frame == null && (SignLink.anInt5928 == 3 || !SignLink.osName.startsWith("win") || Static178.aBoolean203)) {
Static169.openUrl(local156, true); Static169.openUrl(local156, true);
} else { } else {
Static175.url = local156; Static175.url = local156;
Static164.newTab = true; Static164.newTab = true;
Static33.openUrlRequest = GameShell.signLink.method5131(new String(local156.method3148(), "ISO-8859-1")); Static33.openUrlRequest = GameShell.signLink.openUrl(new String(local156.method3148(), "ISO-8859-1"));
} }
Static164.anInt3985 = -1; Static164.anInt3985 = -1;
return true; return true;

View file

@ -162,8 +162,8 @@ public final class Static41 {
@OriginalMember(owner = "client!dc", name = "a", descriptor = "(IIIZ)V") @OriginalMember(owner = "client!dc", name = "a", descriptor = "(IIIZ)V")
public static void method1045(@OriginalArg(3) boolean arg0) { public static void method1045(@OriginalArg(3) boolean arg0) {
Static258.anInt5637 = 2; Static258.anInt5637 = 2;
Static164.aBoolean192 = arg0; AudioChannel.stereo = arg0;
Static44.anInt1404 = 22050; Static44.sampleRate = 22050;
} }
@OriginalMember(owner = "client!dc", name = "b", descriptor = "(Z)V") @OriginalMember(owner = "client!dc", name = "b", descriptor = "(Z)V")

View file

@ -5,7 +5,7 @@ import org.openrs2.deob.annotation.Pc;
public final class Static44 { public final class Static44 {
@OriginalMember(owner = "client!dh", name = "h", descriptor = "I") @OriginalMember(owner = "client!dh", name = "h", descriptor = "I")
public static int anInt1404; public static int sampleRate;
@OriginalMember(owner = "client!dh", name = "a", descriptor = "Z") @OriginalMember(owner = "client!dh", name = "a", descriptor = "Z")
public static boolean aBoolean83 = false; public static boolean aBoolean83 = false;

View file

@ -91,8 +91,8 @@ public final class Static59 {
local61[local51 - local79 - 1] = (byte) (local92 + 48); local61[local51 - local79 - 1] = (byte) (local92 + 48);
} }
@Pc(126) JagString local126 = new JagString(); @Pc(126) JagString local126 = new JagString();
local126.aByteArray52 = local61; local126.chars = local61;
local126.anInt4030 = local51; local126.length = local51;
return local126; return local126;
} }
} }

View file

@ -88,8 +88,8 @@ public final class Static79 {
local48[local32] = Static31.aByteArray12[(int) (local65 - arg0 * 37L)]; local48[local32] = Static31.aByteArray12[(int) (local65 - arg0 * 37L)];
} }
@Pc(88) JagString local88 = new JagString(); @Pc(88) JagString local88 = new JagString();
local88.aByteArray52 = local48; local88.chars = local48;
local88.anInt4030 = local48.length; local88.length = local48.length;
return local88; return local88;
} }
} }

View file

@ -71,16 +71,16 @@ public final class Static80 {
Static127.aBoolean159 = false; Static127.aBoolean159 = false;
Static214.anInt5581 = 0; Static214.anInt5581 = 0;
try { try {
@Pc(78) PrivilegedRequest local78 = arg0.method5112("runescape"); @Pc(78) PrivilegedRequest local78 = arg0.openPreferences("runescape");
while (local78.status == 0) { while (local78.status == 0) {
Static231.sleep(1L); Static231.sleep(1L);
} }
if (local78.status == 1) { if (local78.status == 1) {
local48 = (FileOnDisk) local78.result; local48 = (FileOnDisk) local78.result;
@Pc(106) byte[] local106 = new byte[(int) local48.method5137()]; @Pc(106) byte[] local106 = new byte[(int) local48.length()];
@Pc(128) int local128; @Pc(128) int local128;
for (@Pc(108) int local108 = 0; local108 < local106.length; local108 += local128) { for (@Pc(108) int local108 = 0; local108 < local106.length; local108 += local128) {
local128 = local48.method5135(local108, local106.length - local108, local106); local128 = local48.read(local108, local106.length - local108, local106);
if (local128 == -1) { if (local128 == -1) {
throw new IOException("EOF"); throw new IOException("EOF");
} }
@ -91,7 +91,7 @@ public final class Static80 {
} }
try { try {
if (local48 != null) { if (local48 != null) {
local48.method5136(); local48.close();
} }
} catch (@Pc(158) Exception local158) { } catch (@Pc(158) Exception local158) {
} }

View file

@ -41,12 +41,12 @@ public final class Static81 {
if (local28 == null) { if (local28 == null) {
arg0 = -1; arg0 = -1;
} else { } else {
GameShell.signLink.method5113(local28.method301(), local28.anInt1860, GameShell.canvas, new Point(local24.anInt2852, local24.anInt2850), local28.anInt1866); GameShell.signLink.setCursor(local28.method301(), local28.anInt1860, GameShell.canvas, new Point(local24.anInt2852, local24.anInt2850), local28.anInt1866);
Static115.anInt2941 = arg0; Static115.anInt2941 = arg0;
} }
} }
if (arg0 == -1 && Static115.anInt2941 != -1) { if (arg0 == -1 && Static115.anInt2941 != -1) {
GameShell.signLink.method5113(null, -1, GameShell.canvas, new Point(), -1); GameShell.signLink.setCursor(null, -1, GameShell.canvas, new Point(), -1);
Static115.anInt2941 = -1; Static115.anInt2941 = -1;
} }
} }

View file

@ -57,8 +57,8 @@ public final class Static87 {
@OriginalMember(owner = "client!gn", name = "a", descriptor = "(BI)Lclient!na;") @OriginalMember(owner = "client!gn", name = "a", descriptor = "(BI)Lclient!na;")
public static JagString method1804(@OriginalArg(1) int arg0) { public static JagString method1804(@OriginalArg(1) int arg0) {
@Pc(13) JagString local13 = new JagString(); @Pc(13) JagString local13 = new JagString();
local13.anInt4030 = 0; local13.length = 0;
local13.aByteArray52 = new byte[arg0]; local13.chars = new byte[arg0];
return local13; return local13;
} }

View file

@ -1242,8 +1242,8 @@ public final class Static88 {
local26--; local26--;
local609 = Static3.aClass100Array176[local26]; local609 = Static3.aClass100Array176[local26];
local803 = 0; local803 = 0;
if (local609.method3123()) { if (local609.isInt()) {
local803 = local609.method3132(); local803 = local609.parseInt();
} }
Static6.outboundBuffer.p1isaac(23); Static6.outboundBuffer.p1isaac(23);
Static6.outboundBuffer.p4(local803); Static6.outboundBuffer.p4(local803);
@ -2953,7 +2953,7 @@ public final class Static88 {
if (local226 == 5419) { if (local226 == 5419) {
local609 = Static72.aClass100_447; local609 = Static72.aClass100_447;
if (Static232.aClass212_5 != null) { if (Static232.aClass212_5 != null) {
local609 = Static181.method3341(Static232.aClass212_5.anInt5926); local609 = Static181.method3341(Static232.aClass212_5.intArg2);
try { try {
if (Static232.aClass212_5.result != null) { if (Static232.aClass212_5.result != null) {
@Pc(8281) byte[] local8281 = ((String) Static232.aClass212_5.result).getBytes("ISO-8859-1"); @Pc(8281) byte[] local8281 = ((String) Static232.aClass212_5.result).getBytes("ISO-8859-1");
@ -2978,10 +2978,10 @@ public final class Static88 {
local26--; local26--;
local609 = Static3.aClass100Array176[local26]; local609 = Static3.aClass100Array176[local26];
@Pc(8356) JagString local8356 = Static34.method882(new JagString[] { Static15.method479(), local609 }); @Pc(8356) JagString local8356 = Static34.method882(new JagString[] { Static15.method479(), local609 });
if (GameShell.frame != null || local1552 && SignLink.anInt5928 != 3 && SignLink.aString15.startsWith("win") && !Static178.aBoolean203) { if (GameShell.frame != null || local1552 && SignLink.anInt5928 != 3 && SignLink.osName.startsWith("win") && !Static178.aBoolean203) {
Static164.newTab = local1552; Static164.newTab = local1552;
Static175.url = local8356; Static175.url = local8356;
Static33.openUrlRequest = GameShell.signLink.method5131(new String(local8356.method3148(), "ISO-8859-1")); Static33.openUrlRequest = GameShell.signLink.openUrl(new String(local8356.method3148(), "ISO-8859-1"));
continue; continue;
} }
Static169.openUrl(local8356, local1552); Static169.openUrl(local8356, local1552);

View file

@ -130,7 +130,7 @@ public final class Static89 {
if (Static69.signLink.applet == null) { if (Static69.signLink.applet == null) {
return; return;
} }
@Pc(109) PrivilegedRequest local109 = Static69.signLink.method5118(new URL(Static69.signLink.applet.getCodeBase(), "clienterror.ws?c=" + GameShell.anInt3252 + "&u=" + Static101.aLong98 + "&v1=" + SignLink.javaVendor + "&v2=" + SignLink.javaVersion + "&e=" + local13)); @Pc(109) PrivilegedRequest local109 = Static69.signLink.openUrlStream(new URL(Static69.signLink.applet.getCodeBase(), "clienterror.ws?c=" + GameShell.anInt3252 + "&u=" + Static101.aLong98 + "&v1=" + SignLink.javaVendor + "&v2=" + SignLink.javaVersion + "&e=" + local13));
while (local109.status == 0) { while (local109.status == 0) {
Static231.sleep(1L); Static231.sleep(1L);
} }

View file

@ -204,7 +204,7 @@ public final class client extends GameShell {
GameShell.fullScreenFrame = null; GameShell.fullScreenFrame = null;
} }
if (GameShell.signLink != null) { if (GameShell.signLink != null) {
GameShell.signLink.method5121(this.getClass()); GameShell.signLink.unloadGlNatives(this.getClass());
} }
if (Static178.instance != null) { if (Static178.instance != null) {
Static178.instance.aBoolean151 = false; Static178.instance.aBoolean151 = false;
@ -739,7 +739,7 @@ public final class client extends GameShell {
Static147.aClass62_2 = Static107.method2262(2048, GameShell.signLink, GameShell.canvas, 1); Static147.aClass62_2 = Static107.method2262(2048, GameShell.signLink, GameShell.canvas, 1);
Static204.aClass3_Sub3_Sub2_1 = new MixerPcmStream(); Static204.aClass3_Sub3_Sub2_1 = new MixerPcmStream();
Static147.aClass62_2.method3566(Static204.aClass3_Sub3_Sub2_1); Static147.aClass62_2.method3566(Static204.aClass3_Sub3_Sub2_1);
Static56.aClass156_1 = new Resampler(22050, Static44.anInt1404); Static56.aClass156_1 = new Resampler(22050, Static44.sampleRate);
Static250.anInt5441 = Static130.aClass153_47.method4482(Static1.aClass100_1); Static250.anInt5441 = Static130.aClass153_47.method4482(Static1.aClass100_1);
Static199.anInt4670 = 30; Static199.anInt4670 = 30;
Static166.anInt4051 = 50; Static166.anInt4051 = 50;

View file

@ -7,20 +7,20 @@ import org.openrs2.deob.annotation.OriginalMember;
public interface AudioSource { public interface AudioSource {
@OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(II)V") @OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(II)V")
void method5097(@OriginalArg(0) int arg0); void close(@OriginalArg(0) int channel);
@OriginalMember(owner = "signlink!ai", name = "b", descriptor = "(BI)I") @OriginalMember(owner = "signlink!ai", name = "b", descriptor = "(BI)I")
int method5098(@OriginalArg(1) int arg0); int getBufferSize(@OriginalArg(1) int channel);
@OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(III)V") @OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(III)V")
void method5099(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) throws Exception; void open(@OriginalArg(0) int channel, @OriginalArg(2) int bufferCapacity) throws Exception;
@OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(BI)V") @OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(BI)V")
void method5100(@OriginalArg(1) int arg0); void flush(@OriginalArg(1) int channel);
@OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(IBLjava/awt/Component;Z)V") @OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(IBLjava/awt/Component;Z)V")
void method5101(@OriginalArg(0) int arg0, @OriginalArg(2) Component arg1, @OriginalArg(3) boolean arg2) throws Exception; void init(@OriginalArg(0) int sampleRate, @OriginalArg(2) Component component, @OriginalArg(3) boolean stereo) throws Exception;
@OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(I[I)V") @OriginalMember(owner = "signlink!ai", name = "a", descriptor = "(I[I)V")
void method5102(@OriginalArg(0) int arg0, @OriginalArg(1) int[] arg1); void write(@OriginalArg(0) int channel, @OriginalArg(1) int[] samples);
} }

View file

@ -11,48 +11,48 @@ import org.openrs2.deob.annotation.Pc;
public final class CursorManager { public final class CursorManager {
@OriginalMember(owner = "signlink!g", name = "b", descriptor = "Ljava/awt/Component;") @OriginalMember(owner = "signlink!g", name = "b", descriptor = "Ljava/awt/Component;")
private Component aComponent5; private Component component;
@OriginalMember(owner = "signlink!g", name = "a", descriptor = "Ljava/awt/Robot;") @OriginalMember(owner = "signlink!g", name = "a", descriptor = "Ljava/awt/Robot;")
private final Robot aRobot1 = new Robot(); private final Robot robot = new Robot();
@OriginalMember(owner = "signlink!g", name = "<init>", descriptor = "()V") @OriginalMember(owner = "signlink!g", name = "<init>", descriptor = "()V")
public CursorManager() throws Exception { public CursorManager() throws Exception {
} }
@OriginalMember(owner = "signlink!g", name = "a", descriptor = "(BLjava/awt/Point;ILjava/awt/Component;I[I)V") @OriginalMember(owner = "signlink!g", name = "a", descriptor = "(BLjava/awt/Point;ILjava/awt/Component;I[I)V")
public final void method5107(@OriginalArg(1) Point arg0, @OriginalArg(2) int arg1, @OriginalArg(3) Component arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int[] arg4) { public final void setCursor(@OriginalArg(1) Point hotSpot, @OriginalArg(2) int width, @OriginalArg(3) Component component, @OriginalArg(4) int height, @OriginalArg(5) int[] pixels) {
if (arg4 == null) { if (pixels == null) {
arg2.setCursor(null); component.setCursor(null);
} else { } else {
@Pc(13) BufferedImage local13 = new BufferedImage(arg1, arg3, 2); @Pc(13) BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
local13.setRGB(0, 0, arg1, arg3, arg4, 0, arg1); image.setRGB(0, 0, width, height, pixels, 0, width);
arg2.setCursor(arg2.getToolkit().createCustomCursor(local13, arg0, null)); component.setCursor(component.getToolkit().createCustomCursor(image, hotSpot, null));
} }
} }
@OriginalMember(owner = "signlink!g", name = "a", descriptor = "(III)V") @OriginalMember(owner = "signlink!g", name = "a", descriptor = "(III)V")
public final void method5108(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) { public final void setPosition(@OriginalArg(0) int x, @OriginalArg(2) int y) {
this.aRobot1.mouseMove(arg0, arg1); this.robot.mouseMove(x, y);
} }
@OriginalMember(owner = "signlink!g", name = "a", descriptor = "(Ljava/awt/Component;IZ)V") @OriginalMember(owner = "signlink!g", name = "a", descriptor = "(Ljava/awt/Component;IZ)V")
public final void method5109(@OriginalArg(0) Component arg0, @OriginalArg(2) boolean arg1) { public final void setComponent(@OriginalArg(0) Component component, @OriginalArg(2) boolean reset) {
if (arg1) { if (reset) {
arg0 = null; component = null;
} else if (arg0 == null) { } else if (component == null) {
throw new NullPointerException(); throw new NullPointerException();
} }
if (arg0 == this.aComponent5) { if (component == this.component) {
return; return;
} }
if (this.aComponent5 != null) { if (this.component != null) {
this.aComponent5.setCursor(null); this.component.setCursor(null);
this.aComponent5 = null; this.component = null;
} }
if (arg0 != null) { if (component != null) {
arg0.setCursor(arg0.getToolkit().createCustomCursor(new BufferedImage(1, 1, 2), new Point(0, 0), null)); component.setCursor(component.getToolkit().createCustomCursor(new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB), new Point(0, 0), null));
this.aComponent5 = arg0; this.component = component;
} }
} }
} }

View file

@ -11,88 +11,88 @@ import org.openrs2.deob.annotation.Pc;
public final class FileOnDisk { public final class FileOnDisk {
@OriginalMember(owner = "signlink!qm", name = "c", descriptor = "Ljava/io/RandomAccessFile;") @OriginalMember(owner = "signlink!qm", name = "c", descriptor = "Ljava/io/RandomAccessFile;")
private RandomAccessFile aRandomAccessFile1; private RandomAccessFile randomAccessFile;
@OriginalMember(owner = "signlink!qm", name = "b", descriptor = "Ljava/io/File;") @OriginalMember(owner = "signlink!qm", name = "b", descriptor = "Ljava/io/File;")
private final File aFile1; private final File file;
@OriginalMember(owner = "signlink!qm", name = "a", descriptor = "J") @OriginalMember(owner = "signlink!qm", name = "a", descriptor = "J")
private final long aLong1315; private final long maxLength;
@OriginalMember(owner = "signlink!qm", name = "d", descriptor = "J") @OriginalMember(owner = "signlink!qm", name = "d", descriptor = "J")
private long aLong1316; private long offset;
@OriginalMember(owner = "signlink!qm", name = "<init>", descriptor = "(Ljava/io/File;Ljava/lang/String;J)V") @OriginalMember(owner = "signlink!qm", name = "<init>", descriptor = "(Ljava/io/File;Ljava/lang/String;J)V")
public FileOnDisk(@OriginalArg(0) File arg0, @OriginalArg(1) String arg1, @OriginalArg(2) long arg2) throws IOException { public FileOnDisk(@OriginalArg(0) File file, @OriginalArg(1) String mode, @OriginalArg(2) long maxLength) throws IOException {
if (arg2 == -1L) { if (maxLength == -1L) {
arg2 = Long.MAX_VALUE; maxLength = Long.MAX_VALUE;
} }
if (arg2 <= arg0.length()) { if (maxLength <= file.length()) {
arg0.delete(); file.delete();
} }
this.aRandomAccessFile1 = new RandomAccessFile(arg0, arg1); this.randomAccessFile = new RandomAccessFile(file, mode);
this.aFile1 = arg0; this.file = file;
this.aLong1315 = arg2; this.maxLength = maxLength;
this.aLong1316 = 0L; this.offset = 0L;
@Pc(42) int local42 = this.aRandomAccessFile1.read(); @Pc(42) int firstByte = this.randomAccessFile.read();
if (local42 != -1 && !arg1.equals("r")) { if (firstByte != -1 && !mode.equals("r")) {
this.aRandomAccessFile1.seek(0L); this.randomAccessFile.seek(0L);
this.aRandomAccessFile1.write(local42); this.randomAccessFile.write(firstByte);
} }
this.aRandomAccessFile1.seek(0L); this.randomAccessFile.seek(0L);
} }
@OriginalMember(owner = "signlink!qm", name = "a", descriptor = "(BJ)V") @OriginalMember(owner = "signlink!qm", name = "a", descriptor = "(BJ)V")
public final void method5133(@OriginalArg(1) long arg0) throws IOException { public final void seek(@OriginalArg(1) long offset) throws IOException {
this.aRandomAccessFile1.seek(arg0); this.randomAccessFile.seek(offset);
this.aLong1316 = arg0; this.offset = offset;
} }
@OriginalMember(owner = "signlink!qm", name = "finalize", descriptor = "()V") @OriginalMember(owner = "signlink!qm", name = "finalize", descriptor = "()V")
@Override @Override
public final void finalize() throws Throwable { public final void finalize() throws Throwable {
if (this.aRandomAccessFile1 != null) { if (this.randomAccessFile != null) {
System.out.println("Warning! fileondisk " + this.aFile1 + " not closed correctly using close(). Auto-closing instead. "); System.out.println("Warning! fileondisk " + this.file + " not closed correctly using close(). Auto-closing instead. ");
this.method5136(); this.close();
} }
} }
@OriginalMember(owner = "signlink!qm", name = "a", descriptor = "(I[BII)V") @OriginalMember(owner = "signlink!qm", name = "a", descriptor = "(I[BII)V")
public final void method5134(@OriginalArg(1) byte[] arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) throws IOException { public final void write(@OriginalArg(1) byte[] src, @OriginalArg(2) int len, @OriginalArg(3) int off) throws IOException {
if (this.aLong1316 + (long) arg1 > this.aLong1315) { if (this.offset + (long) len > this.maxLength) {
this.aRandomAccessFile1.seek(this.aLong1315 + 1L); this.randomAccessFile.seek(this.maxLength + 1L);
this.aRandomAccessFile1.write(1); this.randomAccessFile.write(1);
throw new EOFException(); throw new EOFException();
} else { } else {
this.aRandomAccessFile1.write(arg0, arg2, arg1); this.randomAccessFile.write(src, off, len);
this.aLong1316 += arg1; this.offset += len;
} }
} }
@OriginalMember(owner = "signlink!qm", name = "a", descriptor = "(III[B)I") @OriginalMember(owner = "signlink!qm", name = "a", descriptor = "(III[B)I")
public final int method5135(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) byte[] arg2) throws IOException { public final int read(@OriginalArg(0) int off, @OriginalArg(2) int len, @OriginalArg(3) byte[] bytes) throws IOException {
@Pc(6) int local6 = this.aRandomAccessFile1.read(arg2, arg0, arg1); @Pc(6) int n = this.randomAccessFile.read(bytes, off, len);
if (local6 > 0) { if (n > 0) {
this.aLong1316 += local6; this.offset += n;
} }
return local6; return n;
} }
@OriginalMember(owner = "signlink!qm", name = "b", descriptor = "(I)V") @OriginalMember(owner = "signlink!qm", name = "b", descriptor = "(I)V")
public final void method5136() throws IOException { public final void close() throws IOException {
if (this.aRandomAccessFile1 != null) { if (this.randomAccessFile != null) {
this.aRandomAccessFile1.close(); this.randomAccessFile.close();
this.aRandomAccessFile1 = null; this.randomAccessFile = null;
} }
} }
@OriginalMember(owner = "signlink!qm", name = "c", descriptor = "(I)J") @OriginalMember(owner = "signlink!qm", name = "c", descriptor = "(I)J")
public final long method5137() throws IOException { public final long length() throws IOException {
return this.aRandomAccessFile1.length(); return this.randomAccessFile.length();
} }
@OriginalMember(owner = "signlink!qm", name = "a", descriptor = "(I)Ljava/io/File;") @OriginalMember(owner = "signlink!qm", name = "a", descriptor = "(I)Ljava/io/File;")
public final File method5138() { public final File getFile() {
return this.aFile1; return this.file;
} }
} }

View file

@ -12,21 +12,21 @@ import org.openrs2.deob.annotation.Pc;
public final class FullScreenManager { public final class FullScreenManager {
@OriginalMember(owner = "signlink!e", name = "b", descriptor = "Ljava/awt/DisplayMode;") @OriginalMember(owner = "signlink!e", name = "b", descriptor = "Ljava/awt/DisplayMode;")
private DisplayMode aDisplayMode1; private DisplayMode previousDisplayMode;
@OriginalMember(owner = "signlink!e", name = "a", descriptor = "Ljava/awt/GraphicsDevice;") @OriginalMember(owner = "signlink!e", name = "a", descriptor = "Ljava/awt/GraphicsDevice;")
private GraphicsDevice aGraphicsDevice1; private GraphicsDevice device;
@OriginalMember(owner = "signlink!e", name = "<init>", descriptor = "()V") @OriginalMember(owner = "signlink!e", name = "<init>", descriptor = "()V")
public FullScreenManager() throws Exception { public FullScreenManager() throws Exception {
@Pc(3) GraphicsEnvironment local3 = GraphicsEnvironment.getLocalGraphicsEnvironment(); @Pc(3) GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
this.aGraphicsDevice1 = local3.getDefaultScreenDevice(); this.device = env.getDefaultScreenDevice();
if (!this.aGraphicsDevice1.isFullScreenSupported()) { if (!this.device.isFullScreenSupported()) {
@Pc(15) GraphicsDevice[] local15 = local3.getScreenDevices(); @Pc(15) GraphicsDevice[] devices = env.getScreenDevices();
for (@Pc(19) int local19 = 0; local19 < local15.length; local19++) { for (@Pc(19) int i = 0; i < devices.length; i++) {
@Pc(27) GraphicsDevice local27 = local15[local19]; @Pc(27) GraphicsDevice d = devices[i];
if (local27 != null && local27.isFullScreenSupported()) { if (d != null && d.isFullScreenSupported()) {
this.aGraphicsDevice1 = local27; this.device = d;
return; return;
} }
} }
@ -35,82 +35,82 @@ public final class FullScreenManager {
} }
@OriginalMember(owner = "signlink!e", name = "a", descriptor = "(Ljava/awt/Frame;B)V") @OriginalMember(owner = "signlink!e", name = "a", descriptor = "(Ljava/awt/Frame;B)V")
private void method5103(@OriginalArg(0) Frame arg0) { private void setFullScreenWindow(@OriginalArg(0) Frame frame) {
@Pc(1) boolean local1 = false; @Pc(1) boolean wasValid = false;
try { try {
@Pc(6) Field local6 = Class.forName("sun.awt.Win32GraphicsDevice").getDeclaredField("valid"); @Pc(6) Field valid = Class.forName("sun.awt.Win32GraphicsDevice").getDeclaredField("valid");
local6.setAccessible(true); valid.setAccessible(true);
@Pc(16) boolean local16 = (Boolean) local6.get(this.aGraphicsDevice1); @Pc(16) boolean v = (Boolean) valid.get(this.device);
if (local16) { if (v) {
local6.set(this.aGraphicsDevice1, Boolean.FALSE); valid.set(this.device, Boolean.FALSE);
local1 = true; wasValid = true;
} }
} catch (@Pc(27) Throwable local27) { } catch (@Pc(27) Throwable ex) {
} }
try { try {
this.aGraphicsDevice1.setFullScreenWindow(arg0); this.device.setFullScreenWindow(frame);
} finally { } finally {
if (local1) { if (wasValid) {
try { try {
@Pc(66) Field local66 = Class.forName("sun.awt.Win32GraphicsDevice").getDeclaredField("valid"); @Pc(66) Field valid = Class.forName("sun.awt.Win32GraphicsDevice").getDeclaredField("valid");
local66.set(this.aGraphicsDevice1, Boolean.TRUE); valid.set(this.device, Boolean.TRUE);
} catch (@Pc(73) Throwable local73) { } catch (@Pc(73) Throwable ex) {
} }
} }
} }
} }
@OriginalMember(owner = "signlink!e", name = "a", descriptor = "(IIIILjava/awt/Frame;I)V") @OriginalMember(owner = "signlink!e", name = "a", descriptor = "(IIIILjava/awt/Frame;I)V")
public final void method5104(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) Frame arg3, @OriginalArg(5) int arg4) { public final void enter(@OriginalArg(1) int refreshRate, @OriginalArg(2) int bitDepth, @OriginalArg(3) int height, @OriginalArg(4) Frame frame, @OriginalArg(5) int width) {
this.aDisplayMode1 = this.aGraphicsDevice1.getDisplayMode(); this.previousDisplayMode = this.device.getDisplayMode();
if (this.aDisplayMode1 == null) { if (this.previousDisplayMode == null) {
throw new NullPointerException(); throw new NullPointerException();
} }
arg3.setUndecorated(true); frame.setUndecorated(true);
arg3.enableInputMethods(false); frame.enableInputMethods(false);
this.method5103(arg3); this.setFullScreenWindow(frame);
if (arg0 == 0) { if (refreshRate == 0) {
@Pc(37) int local37 = this.aDisplayMode1.getRefreshRate(); @Pc(37) int previousRefreshRate = this.previousDisplayMode.getRefreshRate();
@Pc(41) DisplayMode[] local41 = this.aGraphicsDevice1.getDisplayModes(); @Pc(41) DisplayMode[] displayModes = this.device.getDisplayModes();
@Pc(43) boolean local43 = false; @Pc(43) boolean foundMode = false;
for (@Pc(45) int local45 = 0; local45 < local41.length; local45++) { for (@Pc(45) int i = 0; i < displayModes.length; i++) {
if (local41[local45].getWidth() == arg4 && local41[local45].getHeight() == arg2 && arg1 == local41[local45].getBitDepth()) { if (displayModes[i].getWidth() == width && displayModes[i].getHeight() == height && bitDepth == displayModes[i].getBitDepth()) {
@Pc(77) int local77 = local41[local45].getRefreshRate(); @Pc(77) int r = displayModes[i].getRefreshRate();
if (!local43 || Math.abs(local77 - local37) < Math.abs(arg0 - local37)) { if (!foundMode || Math.abs(r - previousRefreshRate) < Math.abs(refreshRate - previousRefreshRate)) {
local43 = true; foundMode = true;
arg0 = local77; refreshRate = r;
} }
} }
} }
if (!local43) { if (!foundMode) {
arg0 = local37; refreshRate = previousRefreshRate;
} }
} }
this.aGraphicsDevice1.setDisplayMode(new DisplayMode(arg4, arg2, arg1, arg0)); this.device.setDisplayMode(new DisplayMode(width, height, bitDepth, refreshRate));
} }
@OriginalMember(owner = "signlink!e", name = "a", descriptor = "(Z)[I") @OriginalMember(owner = "signlink!e", name = "a", descriptor = "(Z)[I")
public final int[] method5105() { public final int[] getDisplayModes() {
@Pc(9) DisplayMode[] local9 = this.aGraphicsDevice1.getDisplayModes(); @Pc(9) DisplayMode[] displayModes = this.device.getDisplayModes();
@Pc(15) int[] local15 = new int[local9.length << 2]; @Pc(15) int[] result = new int[displayModes.length << 2];
for (@Pc(17) int local17 = 0; local17 < local9.length; local17++) { for (@Pc(17) int i = 0; i < displayModes.length; i++) {
local15[local17 << 2] = local9[local17].getWidth(); result[i << 2] = displayModes[i].getWidth();
local15[(local17 << 2) + 1] = local9[local17].getHeight(); result[(i << 2) + 1] = displayModes[i].getHeight();
local15[(local17 << 2) + 2] = local9[local17].getBitDepth(); result[(i << 2) + 2] = displayModes[i].getBitDepth();
local15[(local17 << 2) + 3] = local9[local17].getRefreshRate(); result[(i << 2) + 3] = displayModes[i].getRefreshRate();
} }
return local15; return result;
} }
@OriginalMember(owner = "signlink!e", name = "a", descriptor = "(I)V") @OriginalMember(owner = "signlink!e", name = "a", descriptor = "(I)V")
public final void method5106() { public final void exit() {
if (this.aDisplayMode1 != null) { if (this.previousDisplayMode != null) {
this.aGraphicsDevice1.setDisplayMode(this.aDisplayMode1); this.device.setDisplayMode(this.previousDisplayMode);
if (!this.aGraphicsDevice1.getDisplayMode().equals(this.aDisplayMode1)) { if (!this.device.getDisplayMode().equals(this.previousDisplayMode)) {
throw new RuntimeException("Did not return to correct resolution!"); throw new RuntimeException("Did not return to correct resolution!");
} }
this.aDisplayMode1 = null; this.previousDisplayMode = null;
} }
this.method5103(null); this.setFullScreenWindow(null);
} }
} }

View file

@ -6,18 +6,18 @@ import org.openrs2.deob.annotation.Pc;
public final class MonotonicClock { public final class MonotonicClock {
@OriginalMember(owner = "signlink!ad", name = "a", descriptor = "J") @OriginalMember(owner = "signlink!ad", name = "a", descriptor = "J")
private static long aLong1312; private static long leapMillis;
@OriginalMember(owner = "signlink!ad", name = "b", descriptor = "J") @OriginalMember(owner = "signlink!ad", name = "b", descriptor = "J")
private static long aLong1313; private static long previous;
@OriginalMember(owner = "signlink!ad", name = "a", descriptor = "(B)J") @OriginalMember(owner = "signlink!ad", name = "a", descriptor = "(B)J")
public static synchronized long currentTimeMillis() { public static synchronized long currentTimeMillis() {
@Pc(1) long local1 = System.currentTimeMillis(); @Pc(1) long now = System.currentTimeMillis();
if (aLong1313 > local1) { if (previous > now) {
aLong1312 += aLong1313 - local1; leapMillis += previous - now;
} }
aLong1313 = local1; previous = now;
return aLong1312 + local1; return leapMillis + now;
} }
} }

View file

@ -8,19 +8,19 @@ public final class PrivilegedRequest {
public volatile Object result; public volatile Object result;
@OriginalMember(owner = "signlink!im", name = "f", descriptor = "I") @OriginalMember(owner = "signlink!im", name = "f", descriptor = "I")
public int anInt5924; public int type;
@OriginalMember(owner = "signlink!im", name = "b", descriptor = "Lsignlink!im;") @OriginalMember(owner = "signlink!im", name = "b", descriptor = "Lsignlink!im;")
public PrivilegedRequest aClass212_6; public PrivilegedRequest next;
@OriginalMember(owner = "signlink!im", name = "c", descriptor = "Ljava/lang/Object;") @OriginalMember(owner = "signlink!im", name = "c", descriptor = "Ljava/lang/Object;")
public Object anObject7; public Object objectArg;
@OriginalMember(owner = "signlink!im", name = "a", descriptor = "I") @OriginalMember(owner = "signlink!im", name = "a", descriptor = "I")
public int anInt5926; public int intArg2;
@OriginalMember(owner = "signlink!im", name = "g", descriptor = "I") @OriginalMember(owner = "signlink!im", name = "g", descriptor = "I")
public int anInt5927; public int intArg1;
@OriginalMember(owner = "signlink!im", name = "d", descriptor = "I") @OriginalMember(owner = "signlink!im", name = "d", descriptor = "I")
public volatile int status = 0; public volatile int status = 0;

View file

@ -27,67 +27,67 @@ public final class SignLink implements Runnable {
public static String javaVersion; public static String javaVersion;
@OriginalMember(owner = "signlink!ll", name = "n", descriptor = "Ljava/lang/String;") @OriginalMember(owner = "signlink!ll", name = "n", descriptor = "Ljava/lang/String;")
public static String aString15; public static String osName;
@OriginalMember(owner = "signlink!ll", name = "l", descriptor = "Ljava/lang/String;") @OriginalMember(owner = "signlink!ll", name = "l", descriptor = "Ljava/lang/String;")
private static String aString16; private static String osNameRaw;
@OriginalMember(owner = "signlink!ll", name = "v", descriptor = "Ljava/lang/String;") @OriginalMember(owner = "signlink!ll", name = "v", descriptor = "Ljava/lang/String;")
private static String aString17; private static String homeDir;
@OriginalMember(owner = "signlink!ll", name = "j", descriptor = "Ljava/lang/String;") @OriginalMember(owner = "signlink!ll", name = "j", descriptor = "Ljava/lang/String;")
private static String aString18; private static String osVersion;
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "Ljava/lang/String;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "Ljava/lang/String;")
public static String javaVendor; public static String javaVendor;
@OriginalMember(owner = "signlink!ll", name = "b", descriptor = "Ljava/lang/String;") @OriginalMember(owner = "signlink!ll", name = "b", descriptor = "Ljava/lang/String;")
private static String aString21; private static String osArch;
@OriginalMember(owner = "signlink!ll", name = "u", descriptor = "Ljava/lang/reflect/Method;") @OriginalMember(owner = "signlink!ll", name = "u", descriptor = "Ljava/lang/reflect/Method;")
public static Method setFocusCycleRoot; public static Method setFocusCycleRoot;
@OriginalMember(owner = "signlink!ll", name = "r", descriptor = "Ljava/lang/reflect/Method;") @OriginalMember(owner = "signlink!ll", name = "r", descriptor = "Ljava/lang/reflect/Method;")
public static Method aMethod6; public static Method setFocusTraversalKeysEnabled;
@OriginalMember(owner = "signlink!ll", name = "e", descriptor = "I") @OriginalMember(owner = "signlink!ll", name = "e", descriptor = "I")
public static final int anInt5928 = 1; public static final int anInt5928 = 1;
@OriginalMember(owner = "signlink!ll", name = "w", descriptor = "Ljava/util/Hashtable;") @OriginalMember(owner = "signlink!ll", name = "w", descriptor = "Ljava/util/Hashtable;")
private static final Hashtable aHashtable2 = new Hashtable(16); private static final Hashtable fileCache = new Hashtable(16);
@OriginalMember(owner = "signlink!ll", name = "q", descriptor = "J") @OriginalMember(owner = "signlink!ll", name = "q", descriptor = "J")
private static volatile long aLong1314 = 0L; private static volatile long breakConnectionsUntil = 0L;
@OriginalMember(owner = "signlink!ll", name = "A", descriptor = "Lsignlink!ai;") @OriginalMember(owner = "signlink!ll", name = "A", descriptor = "Lsignlink!ai;")
private AudioSource anInterface10_2; private AudioSource audioSource;
@OriginalMember(owner = "signlink!ll", name = "g", descriptor = "Lsignlink!qm;") @OriginalMember(owner = "signlink!ll", name = "g", descriptor = "Lsignlink!qm;")
public FileOnDisk cacheData = null; public FileOnDisk cacheData;
@OriginalMember(owner = "signlink!ll", name = "p", descriptor = "Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "p", descriptor = "Lsignlink!im;")
private PrivilegedRequest aClass212_7 = null; private PrivilegedRequest requestQueueTail = null;
@OriginalMember(owner = "signlink!ll", name = "f", descriptor = "Z") @OriginalMember(owner = "signlink!ll", name = "f", descriptor = "Z")
private boolean aBoolean360 = false; private boolean stop;
@OriginalMember(owner = "signlink!ll", name = "h", descriptor = "Lsignlink!qm;") @OriginalMember(owner = "signlink!ll", name = "h", descriptor = "Lsignlink!qm;")
public FileOnDisk cacheMasterIndex = null; public FileOnDisk cacheMasterIndex;
@OriginalMember(owner = "signlink!ll", name = "d", descriptor = "Lsignlink!qm;") @OriginalMember(owner = "signlink!ll", name = "d", descriptor = "Lsignlink!qm;")
public FileOnDisk uid = null; public FileOnDisk uid;
@OriginalMember(owner = "signlink!ll", name = "y", descriptor = "Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "y", descriptor = "Lsignlink!im;")
private PrivilegedRequest aClass212_8 = null; private PrivilegedRequest requestQueueHead = null;
@OriginalMember(owner = "signlink!ll", name = "i", descriptor = "Ljava/applet/Applet;") @OriginalMember(owner = "signlink!ll", name = "i", descriptor = "Ljava/applet/Applet;")
public Applet applet = null; public Applet applet;
@OriginalMember(owner = "signlink!ll", name = "x", descriptor = "Ljava/lang/String;") @OriginalMember(owner = "signlink!ll", name = "x", descriptor = "Ljava/lang/String;")
private final String aString19; private final String cacheSubDir;
@OriginalMember(owner = "signlink!ll", name = "z", descriptor = "I") @OriginalMember(owner = "signlink!ll", name = "z", descriptor = "I")
private final int anInt5929; private final int cacheId;
@OriginalMember(owner = "signlink!ll", name = "k", descriptor = "Ljava/awt/EventQueue;") @OriginalMember(owner = "signlink!ll", name = "k", descriptor = "Ljava/awt/EventQueue;")
public EventQueue eventQueue; public EventQueue eventQueue;
@ -96,23 +96,23 @@ public final class SignLink implements Runnable {
public FileOnDisk[] cacheIndexes; public FileOnDisk[] cacheIndexes;
@OriginalMember(owner = "signlink!ll", name = "t", descriptor = "Lsignlink!e;") @OriginalMember(owner = "signlink!ll", name = "t", descriptor = "Lsignlink!e;")
private FullScreenManager aClass210_1; private FullScreenManager fullScreenManager;
@OriginalMember(owner = "signlink!ll", name = "s", descriptor = "Lsignlink!g;") @OriginalMember(owner = "signlink!ll", name = "s", descriptor = "Lsignlink!g;")
private CursorManager aClass211_1; private CursorManager cursorManager;
@OriginalMember(owner = "signlink!ll", name = "m", descriptor = "Ljava/lang/Thread;") @OriginalMember(owner = "signlink!ll", name = "m", descriptor = "Ljava/lang/Thread;")
private final Thread aThread3; private final Thread thread;
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(ZLjava/lang/String;)Lsignlink!qm;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(ZLjava/lang/String;)Lsignlink!qm;")
private static FileOnDisk method5117(@OriginalArg(1) String arg0) { private static FileOnDisk openPreferencesInternal(@OriginalArg(1) String cacheSubDir) {
@Pc(41) String[] local41 = new String[] { "c:/rscache/", "/rscache/", aString17, "c:/windows/", "c:/winnt/", "c:/", "/tmp/", "" }; @Pc(41) String[] cacheLocations = new String[] { "c:/rscache/", "/rscache/", homeDir, "c:/windows/", "c:/winnt/", "c:/", "/tmp/", "" };
for (@Pc(43) int local43 = 0; local43 < local41.length; local43++) { for (@Pc(43) int i = 0; i < cacheLocations.length; i++) {
@Pc(51) String local51 = local41[local43]; @Pc(51) String cacheLocation = cacheLocations[i];
if (local51.length() <= 0 || (new File(local51)).exists()) { if (cacheLocation.length() <= 0 || (new File(cacheLocation)).exists()) {
try { try {
return new FileOnDisk(new File(local51, "jagex_" + arg0 + "_preferences.dat"), "rw", 10000L); return new FileOnDisk(new File(cacheLocation, "jagex_" + cacheSubDir + "_preferences.dat"), "rw", 10000L);
} catch (@Pc(84) Exception local84) { } catch (@Pc(84) Exception ex) {
} }
} }
} }
@ -120,43 +120,43 @@ public final class SignLink implements Runnable {
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/String;IZLjava/lang/String;)Ljava/io/File;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/String;IZLjava/lang/String;)Ljava/io/File;")
public static File method5127(@OriginalArg(0) String arg0, @OriginalArg(1) int arg1, @OriginalArg(3) String arg2) { public static File getFile(@OriginalArg(0) String cacheSubDir, @OriginalArg(1) int storeId, @OriginalArg(3) String name) {
@Pc(4) File local4 = (File) aHashtable2.get(arg2); @Pc(4) File cachedFile = (File) fileCache.get(name);
if (local4 != null) { if (cachedFile != null) {
return local4; return cachedFile;
} }
@Pc(53) String[] local53 = new String[] { "c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", aString17, "/tmp/", "" }; @Pc(53) String[] cacheLocations = new String[] { "c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", homeDir, "/tmp/", "" };
@Pc(78) String[] local78 = new String[] { ".jagex_cache_" + arg1, ".file_store_" + arg1 }; @Pc(78) String[] cacheDirs = new String[] { ".jagex_cache_" + storeId, ".file_store_" + storeId };
for (@Pc(80) int local80 = 0; local80 < 2; local80++) { for (@Pc(80) int attempt = 0; attempt < 2; attempt++) {
for (@Pc(87) int local87 = 0; local87 < local78.length; local87++) { for (@Pc(87) int i = 0; i < cacheDirs.length; i++) {
for (@Pc(93) int local93 = 0; local93 < local53.length; local93++) { for (@Pc(93) int j = 0; j < cacheLocations.length; j++) {
@Pc(128) String local128 = local53[local93] + local78[local87] + "/" + (arg0 == null ? "" : arg0 + "/") + arg2; @Pc(128) String path = cacheLocations[j] + cacheDirs[i] + "/" + (cacheSubDir == null ? "" : cacheSubDir + "/") + name;
@Pc(130) RandomAccessFile local130 = null; @Pc(130) RandomAccessFile randomAccessFile = null;
try { try {
@Pc(135) File local135 = new File(local128); @Pc(135) File file = new File(path);
if (local80 != 0 || local135.exists()) { if (attempt != 0 || file.exists()) {
@Pc(145) String local145 = local53[local93]; @Pc(145) String cacheLocation = cacheLocations[j];
if (local80 != 1 || local145.length() <= 0 || (new File(local145)).exists()) { if (attempt != 1 || cacheLocation.length() <= 0 || (new File(cacheLocation)).exists()) {
(new File(local53[local93] + local78[local87])).mkdir(); (new File(cacheLocations[j] + cacheDirs[i])).mkdir();
if (arg0 != null) { if (cacheSubDir != null) {
(new File(local53[local93] + local78[local87] + "/" + arg0)).mkdir(); (new File(cacheLocations[j] + cacheDirs[i] + "/" + cacheSubDir)).mkdir();
} }
local130 = new RandomAccessFile(local135, "rw"); randomAccessFile = new RandomAccessFile(file, "rw");
@Pc(210) int local210 = local130.read(); @Pc(210) int firstByte = randomAccessFile.read();
local130.seek(0L); randomAccessFile.seek(0L);
local130.write(local210); randomAccessFile.write(firstByte);
local130.seek(0L); randomAccessFile.seek(0L);
local130.close(); randomAccessFile.close();
aHashtable2.put(arg2, local135); fileCache.put(name, file);
return local135; return file;
} }
} }
} catch (@Pc(229) Exception local229) { } catch (@Pc(229) Exception ex) {
try { try {
if (local130 != null) { if (randomAccessFile != null) {
local130.close(); randomAccessFile.close();
} }
} catch (@Pc(239) Exception local239) { } catch (@Pc(239) Exception ex2) {
} }
} }
} }
@ -166,11 +166,11 @@ public final class SignLink implements Runnable {
} }
@OriginalMember(owner = "signlink!ll", name = "<init>", descriptor = "(Ljava/applet/Applet;ILjava/lang/String;I)V") @OriginalMember(owner = "signlink!ll", name = "<init>", descriptor = "(Ljava/applet/Applet;ILjava/lang/String;I)V")
public SignLink(@OriginalArg(0) Applet arg0, @OriginalArg(1) int arg1, @OriginalArg(2) String arg2, @OriginalArg(3) int arg3) throws Exception { public SignLink(@OriginalArg(0) Applet applet, @OriginalArg(1) int cacheId, @OriginalArg(2) String cacheSubDir, @OriginalArg(3) int archiveCount) throws Exception {
javaVersion = "1.1"; javaVersion = "1.1";
this.aString19 = arg2; this.cacheSubDir = cacheSubDir;
this.anInt5929 = arg1; this.cacheId = cacheId;
this.applet = arg0; this.applet = applet;
javaVendor = "Unknown"; javaVendor = "Unknown";
try { try {
javaVendor = System.getProperty("java.vendor"); javaVendor = System.getProperty("java.vendor");
@ -178,354 +178,346 @@ public final class SignLink implements Runnable {
} catch (@Pc(43) Exception local43) { } catch (@Pc(43) Exception local43) {
} }
try { try {
aString16 = System.getProperty("os.name"); osNameRaw = System.getProperty("os.name");
} catch (@Pc(48) Exception local48) { } catch (@Pc(48) Exception local48) {
aString16 = "Unknown"; osNameRaw = "Unknown";
} }
aString15 = aString16.toLowerCase(); osName = osNameRaw.toLowerCase();
try { try {
aString21 = System.getProperty("os.arch").toLowerCase(); osArch = System.getProperty("os.arch").toLowerCase();
} catch (@Pc(59) Exception local59) { } catch (@Pc(59) Exception local59) {
aString21 = ""; osArch = "";
} }
try { try {
aString18 = System.getProperty("os.version").toLowerCase(); osVersion = System.getProperty("os.version").toLowerCase();
} catch (@Pc(67) Exception local67) { } catch (@Pc(67) Exception local67) {
aString18 = ""; osVersion = "";
} }
try { try {
aString17 = System.getProperty("user.home"); homeDir = System.getProperty("user.home");
if (aString17 != null) { if (homeDir != null) {
aString17 = aString17 + "/"; homeDir = homeDir + "/";
} }
} catch (@Pc(86) Exception local86) { } catch (@Pc(86) Exception ex) {
} }
if (aString17 == null) { if (homeDir == null) {
aString17 = "~/"; homeDir = "~/";
} }
try { try {
this.eventQueue = Toolkit.getDefaultToolkit().getSystemEventQueue(); this.eventQueue = Toolkit.getDefaultToolkit().getSystemEventQueue();
} catch (@Pc(97) Throwable local97) { } catch (@Pc(97) Throwable ex) {
} }
try { try {
if (arg0 == null) { if (applet == null) {
aMethod6 = Class.forName("java.awt.Component").getDeclaredMethod("setFocusTraversalKeysEnabled", Boolean.TYPE); setFocusTraversalKeysEnabled = Class.forName("java.awt.Component").getDeclaredMethod("setFocusTraversalKeysEnabled", Boolean.TYPE);
} else { } else {
aMethod6 = arg0.getClass().getMethod("setFocusTraversalKeysEnabled", Boolean.TYPE); setFocusTraversalKeysEnabled = applet.getClass().getMethod("setFocusTraversalKeysEnabled", Boolean.TYPE);
} }
} catch (@Pc(125) Exception local125) { } catch (@Pc(125) Exception ex) {
} }
try { try {
if (arg0 == null) { if (applet == null) {
setFocusCycleRoot = Class.forName("java.awt.Container").getDeclaredMethod("setFocusCycleRoot", Boolean.TYPE); setFocusCycleRoot = Class.forName("java.awt.Container").getDeclaredMethod("setFocusCycleRoot", Boolean.TYPE);
} else { } else {
setFocusCycleRoot = arg0.getClass().getMethod("setFocusCycleRoot", Boolean.TYPE); setFocusCycleRoot = applet.getClass().getMethod("setFocusCycleRoot", Boolean.TYPE);
} }
} catch (@Pc(153) Exception local153) { } catch (@Pc(153) Exception ex) {
} }
this.uid = new FileOnDisk(method5127(null, this.anInt5929, "random.dat"), "rw", 25L); this.uid = new FileOnDisk(getFile(null, this.cacheId, "random.dat"), "rw", 25L);
this.cacheData = new FileOnDisk(method5127(this.aString19, this.anInt5929, "main_file_cache.dat2"), "rw", 104857600L); this.cacheData = new FileOnDisk(getFile(this.cacheSubDir, this.cacheId, "main_file_cache.dat2"), "rw", 104857600L);
this.cacheMasterIndex = new FileOnDisk(method5127(this.aString19, this.anInt5929, "main_file_cache.idx255"), "rw", 1048576L); this.cacheMasterIndex = new FileOnDisk(getFile(this.cacheSubDir, this.cacheId, "main_file_cache.idx255"), "rw", 1048576L);
this.cacheIndexes = new FileOnDisk[arg3]; this.cacheIndexes = new FileOnDisk[archiveCount];
for (@Pc(200) int local200 = 0; local200 < arg3; local200++) { for (@Pc(200) int i = 0; i < archiveCount; i++) {
this.cacheIndexes[local200] = new FileOnDisk(method5127(this.aString19, this.anInt5929, "main_file_cache.idx" + local200), "rw", 1048576L); this.cacheIndexes[i] = new FileOnDisk(getFile(this.cacheSubDir, this.cacheId, "main_file_cache.idx" + i), "rw", 1048576L);
} }
try { try {
this.aClass210_1 = new FullScreenManager(); this.fullScreenManager = new FullScreenManager();
} catch (@Pc(239) Throwable local239) { } catch (@Pc(239) Throwable ex) {
} }
try { try {
this.aClass211_1 = new CursorManager(); this.cursorManager = new CursorManager();
} catch (@Pc(246) Throwable local246) { } catch (@Pc(246) Throwable ex) {
} }
@Pc(249) ThreadGroup local249 = Thread.currentThread().getThreadGroup(); @Pc(249) ThreadGroup rootGroup = Thread.currentThread().getThreadGroup();
for (@Pc(252) ThreadGroup local252 = local249.getParent(); local252 != null; local252 = local252.getParent()) { for (@Pc(252) ThreadGroup group = rootGroup.getParent(); group != null; group = group.getParent()) {
local249 = local252; rootGroup = group;
} }
@Pc(263) Thread[] local263 = new Thread[1000]; @Pc(263) Thread[] threads = new Thread[1000];
local249.enumerate(local263); rootGroup.enumerate(threads);
for (@Pc(269) int local269 = 0; local269 < local263.length; local269++) { for (@Pc(269) int i = 0; i < threads.length; i++) {
if (local263[local269] != null && local263[local269].getName().startsWith("AWT")) { if (threads[i] != null && threads[i].getName().startsWith("AWT")) {
local263[local269].setPriority(1); threads[i].setPriority(1);
} }
} }
this.aBoolean360 = false; this.stop = false;
this.aThread3 = new Thread(this); this.thread = new Thread(this);
this.aThread3.setPriority(10); this.thread.setPriority(10);
this.aThread3.setDaemon(true); this.thread.setDaemon(true);
this.aThread3.start(); this.thread.start();
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(I)V") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(I)V")
public final void method5110() { public final void breakConnection() {
aLong1314 = MonotonicClock.currentTimeMillis() + 5000L; breakConnectionsUntil = MonotonicClock.currentTimeMillis() + 5000L;
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Z)Z") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Z)Z")
public final boolean method5111() { public final boolean isFullScreenSupported() {
return this.aClass210_1 != null; return this.fullScreenManager != null;
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/String;I)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/String;I)Lsignlink!im;")
public final PrivilegedRequest method5112(@OriginalArg(0) String arg0) { public final PrivilegedRequest openPreferences(@OriginalArg(0) String cacheSubDir) {
return this.method5114(12, 0, arg0, 0); return this.enqueue(12, 0, cacheSubDir, 0);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "([IIILjava/awt/Component;Ljava/awt/Point;I)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "([IIILjava/awt/Component;Ljava/awt/Point;I)Lsignlink!im;")
public final PrivilegedRequest method5113(@OriginalArg(0) int[] arg0, @OriginalArg(2) int arg1, @OriginalArg(3) Component arg2, @OriginalArg(4) Point arg3, @OriginalArg(5) int arg4) { public final PrivilegedRequest setCursor(@OriginalArg(0) int[] pixels, @OriginalArg(2) int width, @OriginalArg(3) Component component, @OriginalArg(4) Point hotSpot, @OriginalArg(5) int height) {
return this.method5114(17, arg4, new Object[] { arg2, arg0, arg3 }, arg1); return this.enqueue(17, height, new Object[] { component, pixels, hotSpot }, width);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(IILjava/lang/Object;II)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(IILjava/lang/Object;II)Lsignlink!im;")
private PrivilegedRequest method5114(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) Object arg2, @OriginalArg(3) int arg3) { private PrivilegedRequest enqueue(@OriginalArg(0) int type, @OriginalArg(1) int intArg1, @OriginalArg(2) Object objectArg, @OriginalArg(3) int intArg2) {
@Pc(3) PrivilegedRequest local3 = new PrivilegedRequest(); @Pc(3) PrivilegedRequest request = new PrivilegedRequest();
local3.anInt5927 = arg1; request.intArg1 = intArg1;
local3.anInt5926 = arg3; request.intArg2 = intArg2;
local3.anInt5924 = arg0; request.type = type;
local3.anObject7 = arg2; request.objectArg = objectArg;
synchronized (this) { synchronized (this) {
if (this.aClass212_7 == null) { if (this.requestQueueTail == null) {
this.aClass212_7 = this.aClass212_8 = local3; this.requestQueueTail = this.requestQueueHead = request;
} else { } else {
this.aClass212_7.aClass212_6 = local3; this.requestQueueTail.next = request;
this.aClass212_7 = local3; this.requestQueueTail = request;
} }
this.notify(); this.notify();
return local3; return request;
} }
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/awt/Frame;I)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/awt/Frame;I)Lsignlink!im;")
public final PrivilegedRequest method5115(@OriginalArg(0) Frame arg0) { public final PrivilegedRequest exitFullScreen(@OriginalArg(0) Frame frame) {
return this.method5114(7, 0, arg0, 0); return this.enqueue(7, 0, frame, 0);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(ZLjava/net/URL;)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(ZLjava/net/URL;)Lsignlink!im;")
public final PrivilegedRequest method5118(@OriginalArg(1) URL arg0) { public final PrivilegedRequest openUrlStream(@OriginalArg(1) URL url) {
return this.method5114(4, 0, arg0, 0); return this.enqueue(4, 0, url, 0);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(BLjava/lang/String;I)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(BLjava/lang/String;I)Lsignlink!im;")
public final PrivilegedRequest openSocket(@OriginalArg(1) String arg0, @OriginalArg(2) int arg1) { public final PrivilegedRequest openSocket(@OriginalArg(1) String hostname, @OriginalArg(2) int port) {
return this.method5114(1, 0, arg0, arg1); return this.enqueue(1, 0, hostname, port);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/Class;I)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/Class;I)Lsignlink!im;")
public final PrivilegedRequest method5121(@OriginalArg(0) Class arg0) { public final PrivilegedRequest unloadGlNatives(@OriginalArg(0) Class targetClass) {
return this.method5114(11, 0, arg0, 0); return this.enqueue(11, 0, targetClass, 0);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/Class;[Ljava/lang/Class;ILjava/lang/String;)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/Class;[Ljava/lang/Class;ILjava/lang/String;)Lsignlink!im;")
public final PrivilegedRequest method5122(@OriginalArg(0) Class arg0, @OriginalArg(1) Class[] arg1, @OriginalArg(3) String arg2) { public final PrivilegedRequest getDeclaredMethod(@OriginalArg(0) Class targetClass, @OriginalArg(1) Class[] parameterTypes, @OriginalArg(3) String name) {
return this.method5114(8, 0, new Object[] { arg0, arg2, arg1 }, 0); return this.enqueue(8, 0, new Object[] { targetClass, name, parameterTypes }, 0);
} }
@OriginalMember(owner = "signlink!ll", name = "run", descriptor = "()V") @OriginalMember(owner = "signlink!ll", name = "run", descriptor = "()V")
@Override @Override
public final void run() { public final void run() {
while (true) { while (true) {
@Pc(16) PrivilegedRequest local16; @Pc(16) PrivilegedRequest request;
synchronized (this) { synchronized (this) {
while (true) { while (true) {
if (this.aBoolean360) { if (this.stop) {
return; return;
} }
if (this.aClass212_8 != null) { if (this.requestQueueHead != null) {
local16 = this.aClass212_8; request = this.requestQueueHead;
this.aClass212_8 = this.aClass212_8.aClass212_6; this.requestQueueHead = this.requestQueueHead.next;
if (this.aClass212_8 == null) { if (this.requestQueueHead == null) {
this.aClass212_7 = null; this.requestQueueTail = null;
} }
break; break;
} }
try { try {
this.wait(); this.wait();
} catch (@Pc(33) InterruptedException local33) { } catch (@Pc(33) InterruptedException ex) {
} }
} }
} }
try { try {
@Pc(45) int local45 = local16.anInt5924; @Pc(45) int type = request.type;
if (local45 == 1) { @Pc(687) Object[] args;
if (aLong1314 > MonotonicClock.currentTimeMillis()) { if (type == 1) {
if (breakConnectionsUntil > MonotonicClock.currentTimeMillis()) {
throw new IOException(); throw new IOException();
} }
local16.result = new Socket(InetAddress.getByName((String) local16.anObject7), local16.anInt5926); request.result = new Socket(InetAddress.getByName((String) request.objectArg), request.intArg2);
} else if (local45 == 2) { } else if (type == 2) {
@Pc(813) Thread local813 = new Thread((Runnable) local16.anObject7); @Pc(813) Thread thread = new Thread((Runnable) request.objectArg);
local813.setDaemon(true); thread.setDaemon(true);
local813.start(); thread.start();
local813.setPriority(local16.anInt5926); thread.setPriority(request.intArg2);
local16.result = local813; request.result = thread;
} else if (local45 == 4) { } else if (type == 3) {
if (aLong1314 > MonotonicClock.currentTimeMillis()) { if (MonotonicClock.currentTimeMillis() < breakConnectionsUntil) {
throw new IOException(); throw new IOException();
} }
local16.result = new DataInputStream(((URL) local16.anObject7).openStream()); @Pc(147) String ip = (request.intArg2 >> 24 & 0xFF) + "." + (request.intArg2 >> 16 & 0xFF) + "." + (request.intArg2 >> 8 & 0xFF) + "." + (request.intArg2 & 0xFF);
} else { request.result = InetAddress.getByName(ip).getHostName();
@Pc(687) Object[] local687; } else if (type == 4) {
if (local45 == 8) { if (breakConnectionsUntil > MonotonicClock.currentTimeMillis()) {
local687 = (Object[]) local16.anObject7; throw new IOException();
if (((Class) local687[0]).getClassLoader() == null) { }
request.result = new DataInputStream(((URL) request.objectArg).openStream());
} else if (type == 5) {
request.result = this.fullScreenManager.getDisplayModes();
} else if (type == 6) {
@Pc(168) Frame frame = new Frame("Jagex Full Screen");
request.result = frame;
frame.setResizable(false);
this.fullScreenManager.enter(request.intArg1 & 0xFFFF, request.intArg1 >> 16, request.intArg2 & 0xFFFF, frame, request.intArg2 >>> 16);
} else if (type == 7) {
this.fullScreenManager.exit();
} else if (type == 8) {
args = (Object[]) request.objectArg;
if (((Class) args[0]).getClassLoader() == null) {
throw new SecurityException(); throw new SecurityException();
} }
local16.result = ((Class) local687[0]).getDeclaredMethod((String) local687[1], (Class[]) local687[2]); request.result = ((Class) args[0]).getDeclaredMethod((String) args[1], (Class[]) args[2]);
} else if (local45 == 9) { } else if (type == 9) {
local687 = (Object[]) local16.anObject7; args = (Object[]) request.objectArg;
if (((Class) local687[0]).getClassLoader() == null) { if (((Class) args[0]).getClassLoader() == null) {
throw new SecurityException(); throw new SecurityException();
} }
local16.result = ((Class) local687[0]).getDeclaredField((String) local687[1]); request.result = ((Class) args[0]).getDeclaredField((String) args[1]);
} else { } else if (type == 10) {
@Pc(147) String local147;
if (local45 == 3) {
if (MonotonicClock.currentTimeMillis() < aLong1314) {
throw new IOException();
}
local147 = (local16.anInt5926 >> 24 & 0xFF) + "." + (local16.anInt5926 >> 16 & 0xFF) + "." + (local16.anInt5926 >> 8 & 0xFF) + "." + (local16.anInt5926 & 0xFF);
local16.result = InetAddress.getByName(local147).getHostName();
} else if (local45 == 5) {
local16.result = this.aClass210_1.method5105();
} else if (local45 == 6) {
@Pc(168) Frame local168 = new Frame("Jagex Full Screen");
local16.result = local168;
local168.setResizable(false);
this.aClass210_1.method5104(local16.anInt5927 & 0xFFFF, local16.anInt5927 >> 16, local16.anInt5926 & 0xFFFF, local168, local16.anInt5926 >>> 16);
} else if (local45 == 7) {
this.aClass210_1.method5106();
} else if (local45 == 10) {
GLProfile.initSingleton(); GLProfile.initSingleton();
} else { } else if (type == 11) {
@Pc(490) int local490;
if (local45 == 11) {
GLProfile.shutdown(); GLProfile.shutdown();
} else if (local45 == 12) { } else if (type == 12) {
local147 = (String) local16.anObject7; String cacheSubDir = (String) request.objectArg;
@Pc(558) FileOnDisk local558 = method5117(local147); @Pc(558) FileOnDisk preferences = openPreferencesInternal(cacheSubDir);
local16.result = local558; request.result = preferences;
} else if (local45 == 14) { } else if (type == 14) {
@Pc(570) int local570 = local16.anInt5927; @Pc(570) int x = request.intArg1;
@Pc(573) int local573 = local16.anInt5926; @Pc(573) int y = request.intArg2;
this.aClass211_1.method5108(local573, local570); this.cursorManager.setPosition(y, x);
} else if (local45 == 15) { } else if (type == 15) {
@Pc(591) boolean local591 = local16.anInt5926 != 0; @Pc(591) boolean reset = request.intArg2 != 0;
@Pc(595) Component local595 = (Component) local16.anObject7; @Pc(595) Component component = (Component) request.objectArg;
this.aClass211_1.method5109(local595, local591); this.cursorManager.setComponent(component, reset);
} else if (local45 == 17) { } else if (type == 17) {
local687 = (Object[]) local16.anObject7; args = (Object[]) request.objectArg;
this.aClass211_1.method5107((Point) local687[2], local16.anInt5926, (Component) local687[0], local16.anInt5927, (int[]) local687[1]); this.cursorManager.setCursor((Point) args[2], request.intArg2, (Component) args[0], request.intArg1, (int[]) args[1]);
} else if (local45 == 16) { } else if (type == 16) {
try { try {
if (!aString15.startsWith("win")) { if (!osName.startsWith("win")) {
throw new Exception(); throw new Exception();
} }
local147 = (String) local16.anObject7; String url = (String) request.objectArg;
if (!local147.startsWith("http://") && !local147.startsWith("https://")) { if (!url.startsWith("http://") && !url.startsWith("https://")) {
throw new Exception(); throw new Exception();
} }
@Pc(636) String local636 = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789?&=,.%+-_#:/*"; @Pc(636) String safeChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789?&=,.%+-_#:/*";
for (local490 = 0; local490 < local147.length(); local490++) { for (@Pc(490) int i = 0; i < url.length(); i++) {
if (local636.indexOf(local147.charAt(local490)) == -1) { if (safeChars.indexOf(url.charAt(i)) == -1) {
throw new Exception(); throw new Exception();
} }
} }
Runtime.getRuntime().exec("cmd /c start \"j\" \"" + local147 + "\""); Runtime.getRuntime().exec("cmd /c start \"j\" \"" + url + "\"");
local16.result = null; request.result = null;
} catch (@Pc(674) Exception local674) { } catch (@Pc(674) Exception ex) {
local16.result = local674; request.result = ex;
} }
} else { } else {
throw new Exception(); throw new Exception();
} }
} request.status = 1;
} } catch (@Pc(830) ThreadDeath ex) {
} throw ex;
local16.status = 1; } catch (@Pc(833) Throwable ex) {
} catch (@Pc(830) ThreadDeath local830) { request.status = 2;
throw local830;
} catch (@Pc(833) Throwable local833) {
local16.status = 2;
} }
} }
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(ILjava/lang/Class;)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(ILjava/lang/Class;)Lsignlink!im;")
public final PrivilegedRequest method5123(@OriginalArg(1) Class arg0) { public final PrivilegedRequest loadGlNatives(@OriginalArg(1) Class targetClass) {
return this.method5114(10, 0, arg0, 0); return this.enqueue(10, 0, targetClass, 0);
} }
@OriginalMember(owner = "signlink!ll", name = "b", descriptor = "(I)V") @OriginalMember(owner = "signlink!ll", name = "b", descriptor = "(I)V")
public final void stop() { public final void stop() {
synchronized (this) { synchronized (this) {
this.aBoolean360 = true; this.stop = true;
this.notifyAll(); this.notifyAll();
} }
try { try {
this.aThread3.join(); this.thread.join();
} catch (@Pc(21) InterruptedException local21) { } catch (@Pc(21) InterruptedException ex) {
} }
if (this.cacheData != null) { if (this.cacheData != null) {
try { try {
this.cacheData.method5136(); this.cacheData.close();
} catch (@Pc(39) IOException local39) { } catch (@Pc(39) IOException ex) {
} }
} }
if (this.cacheMasterIndex != null) { if (this.cacheMasterIndex != null) {
try { try {
this.cacheMasterIndex.method5136(); this.cacheMasterIndex.close();
} catch (@Pc(49) IOException local49) { } catch (@Pc(49) IOException ex) {
} }
} }
if (this.cacheIndexes != null) { if (this.cacheIndexes != null) {
for (@Pc(55) int local55 = 0; local55 < this.cacheIndexes.length; local55++) { for (@Pc(55) int i = 0; i < this.cacheIndexes.length; i++) {
if (this.cacheIndexes[local55] != null) { if (this.cacheIndexes[i] != null) {
try { try {
this.cacheIndexes[local55].method5136(); this.cacheIndexes[i].close();
} catch (@Pc(79) IOException local79) { } catch (@Pc(79) IOException ex) {
} }
} }
} }
} }
if (this.uid != null) { if (this.uid != null) {
try { try {
this.uid.method5136(); this.uid.close();
} catch (@Pc(93) IOException local93) { } catch (@Pc(93) IOException ex) {
} }
} }
} }
@OriginalMember(owner = "signlink!ll", name = "b", descriptor = "(B)Lsignlink!ai;") @OriginalMember(owner = "signlink!ll", name = "b", descriptor = "(B)Lsignlink!ai;")
public final AudioSource method5125() { public final AudioSource getAudioSource() {
return this.anInterface10_2; return this.audioSource;
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(ILjava/lang/String;Ljava/lang/Class;)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(ILjava/lang/String;Ljava/lang/Class;)Lsignlink!im;")
public final PrivilegedRequest method5126(@OriginalArg(1) String arg0, @OriginalArg(2) Class arg1) { public final PrivilegedRequest getDeclaredField(@OriginalArg(1) String name, @OriginalArg(2) Class targetClass) {
return this.method5114(9, 0, new Object[] { arg1, arg0 }, 0); return this.enqueue(9, 0, new Object[] { targetClass, name }, 0);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(II)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(II)Lsignlink!im;")
public final PrivilegedRequest method5128(@OriginalArg(1) int arg0) { public final PrivilegedRequest getReverseDns(@OriginalArg(1) int ip) {
return this.method5114(3, 0, null, arg0); return this.enqueue(3, 0, null, ip);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(IIIII)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(IIIII)Lsignlink!im;")
public final PrivilegedRequest method5129(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) { public final PrivilegedRequest enterFullScreen(@OriginalArg(1) int bitDepth, @OriginalArg(2) int height, @OriginalArg(3) int width) {
return this.method5114(6, arg0 << 16, null, (arg2 << 16) + arg1); return this.enqueue(6, bitDepth << 16, null, (width << 16) + height);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(IILjava/lang/Runnable;)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(IILjava/lang/Runnable;)Lsignlink!im;")
public final PrivilegedRequest startThread(@OriginalArg(1) int arg0, @OriginalArg(2) Runnable arg1) { public final PrivilegedRequest startThread(@OriginalArg(1) int priority, @OriginalArg(2) Runnable runnable) {
return this.method5114(2, 0, arg1, arg0); return this.enqueue(2, 0, runnable, priority);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/String;Z)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(Ljava/lang/String;Z)Lsignlink!im;")
public final PrivilegedRequest method5131(@OriginalArg(0) String arg0) { public final PrivilegedRequest openUrl(@OriginalArg(0) String url) {
return this.method5114(16, 0, arg0, 0); return this.enqueue(16, 0, url, 0);
} }
@OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(B)Lsignlink!im;") @OriginalMember(owner = "signlink!ll", name = "a", descriptor = "(B)Lsignlink!im;")
public final PrivilegedRequest method5132() { public final PrivilegedRequest getDisplayModes() {
return this.method5114(5, 0, null, 0); return this.enqueue(5, 0, null, 0);
} }
} }