diff --git a/Client/src/main/java/org/runite/client/AtmosphereParser.java b/Client/src/main/java/org/runite/client/AtmosphereParser.java index 33a835355..9fd08d924 100644 --- a/Client/src/main/java/org/runite/client/AtmosphereParser.java +++ b/Client/src/main/java/org/runite/client/AtmosphereParser.java @@ -20,19 +20,6 @@ public final class AtmosphereParser { static int anInt1191; static int screenLowerY; - public static void musicHandler(int var1) { - try { - if (-1 == var1 && !Class83.aBoolean1158) { - GameObject.method1870(); - } else if (var1 != -1 && (Class129.anInt1691 != var1 || Class79.method1391(-1)) && Unsorted.anInt120 != 0 && !Class83.aBoolean1158) { - Unsorted.method2099(var1, CacheIndex.musicIndex, Unsorted.anInt120); - } - Class129.anInt1691 = var1; - } catch (RuntimeException var3) { - throw ClientErrorException.clientError(var3, "li.B(" + true + ',' + var1 + ')'); - } - } - static void method1428(int var0, int var2) { try { ItemDefinition.ram[var0] = var2; diff --git a/Client/src/main/java/org/runite/client/AudioHandler.java b/Client/src/main/java/org/runite/client/AudioHandler.java new file mode 100644 index 000000000..f9aae87b7 --- /dev/null +++ b/Client/src/main/java/org/runite/client/AudioHandler.java @@ -0,0 +1,37 @@ +package org.runite.client; + +public final class AudioHandler { + + + static int currentSoundEffectCount = 0; + static int soundEffectVolume = 127; + + public static void musicHandler(int var1) { + try { + if (-1 == var1 && !Class83.aBoolean1158) { + GameObject.method1870(); + } else if (var1 != -1 && (Class129.anInt1691 != var1 || Class79.method1391(-1)) && Unsorted.anInt120 != 0 && !Class83.aBoolean1158) { + Unsorted.method2099(var1, CacheIndex.musicIndex, Unsorted.anInt120); + } + Class129.anInt1691 = var1; + } catch (RuntimeException var3) { + throw ClientErrorException.clientError(var3, "li.B(" + true + ',' + var1 + ')'); + } + } + + static void soundEffectHandler(int soundEffectID, int soundEffectDelay, int soundEffectVolume) { + try { + if(soundEffectVolume != 0 && soundEffectID != 0 && currentSoundEffectCount < 50 && soundEffectDelay != -1) { + Class166.anIntArray2068[currentSoundEffectCount] = soundEffectID; + Class3_Sub25.anIntArray2550[currentSoundEffectCount] = soundEffectDelay; + Unsorted.anIntArray2157[currentSoundEffectCount] = soundEffectVolume; + Class102.aClass135Array2131[currentSoundEffectCount] = null; + Class3_Sub8.anIntArray3083[currentSoundEffectCount] = 0; + currentSoundEffectCount++; + } + + } catch (RuntimeException var5) { + throw ClientErrorException.clientError(var5, "ca.C(" + soundEffectID + ',' + soundEffectDelay + ',' + soundEffectVolume + ',' + -799 + ')'); + } + } +} diff --git a/Client/src/main/java/org/runite/client/CS2Script.java b/Client/src/main/java/org/runite/client/CS2Script.java index 32a902afa..2c499718e 100644 --- a/Client/src/main/java/org/runite/client/CS2Script.java +++ b/Client/src/main/java/org/runite/client/CS2Script.java @@ -29,7 +29,6 @@ public final class CS2Script extends Linkable { static ReferenceCache aReferenceCache_2442 = new ReferenceCache(50); static ReferenceCache aReferenceCache_2450 = new ReferenceCache(64); static byte[][][] aByteArrayArrayArray2452; - static int anInt2453 = 127; RSInterface aClass11_2438; RSString aClass94_2439; int scrollbarScrollAmount; @@ -938,11 +937,11 @@ public final class CS2Script extends Linkable { if (opcode < 3300) { if (opcode == 3200) { iStackCounter -= 3; - TextureOperation26.method199(ItemDefinition.intsStack[iStackCounter - -1], ItemDefinition.intsStack[iStackCounter], ItemDefinition.intsStack[iStackCounter + 2]); + AudioHandler.soundEffectHandler(ItemDefinition.intsStack[iStackCounter - -1], ItemDefinition.intsStack[iStackCounter], ItemDefinition.intsStack[iStackCounter + 2]); continue; } if (opcode == 3201) { - AtmosphereParser.musicHandler(ItemDefinition.intsStack[--iStackCounter]); + AudioHandler.musicHandler(ItemDefinition.intsStack[--iStackCounter]); continue; } if (opcode != 3202) @@ -2664,7 +2663,7 @@ public final class CS2Script extends Linkable { j35 = 0; if (j35 > 127) j35 = 127; - anInt2453 = j35; + AudioHandler.soundEffectVolume = j35; Class119.method1730(Class38.signlink); aBoolean2705 = false; continue; @@ -2800,7 +2799,7 @@ public final class CS2Script extends Linkable { continue; } if (opcode == 6118) { - ItemDefinition.intsStack[iStackCounter++] = anInt2453; + ItemDefinition.intsStack[iStackCounter++] = AudioHandler.soundEffectVolume; continue; } if (6119 == opcode) { diff --git a/Client/src/main/java/org/runite/client/Class113.java b/Client/src/main/java/org/runite/client/Class113.java index d049741b7..f7883a3dc 100644 --- a/Client/src/main/java/org/runite/client/Class113.java +++ b/Client/src/main/java/org/runite/client/Class113.java @@ -3,7 +3,6 @@ package org.runite.client; final class Class113 { static int interfacePacketCounter = 0; - static int anInt1552 = 0; static int anInt1559; int anInt1544; int anInt1545; diff --git a/Client/src/main/java/org/runite/client/Class23.java b/Client/src/main/java/org/runite/client/Class23.java index 7a8a446cd..d84feb183 100644 --- a/Client/src/main/java/org/runite/client/Class23.java +++ b/Client/src/main/java/org/runite/client/Class23.java @@ -39,7 +39,7 @@ public final class Class23 { var1.writeByte(Class38.aBoolean661 ? 1 : 0); var1.writeByte(Class3_Sub28_Sub9.anInt3622); var1.writeByte(!TextureOperation17.aBoolean3184 ? 0 : 1); - var1.writeByte(CS2Script.anInt2453); + var1.writeByte(AudioHandler.soundEffectVolume); var1.writeByte(Unsorted.anInt120); var1.writeByte(Sprites.anInt340); var1.writeShort(TextureOperation.anInt2378); diff --git a/Client/src/main/java/org/runite/client/Class39.java b/Client/src/main/java/org/runite/client/Class39.java index aaae204bd..2f511d340 100644 --- a/Client/src/main/java/org/runite/client/Class39.java +++ b/Client/src/main/java/org/runite/client/Class39.java @@ -557,13 +557,13 @@ public final class Class39 { var7 = 7 & var5; if (var2 >= 0 && var3 >= 0 && var2 < 104 && var3 < 104) { var28 = 1 + var6; - if (var2 + -var28 <= Class102.player.anIntArray2767[0] && Class102.player.anIntArray2767[0] <= var28 + var2 && Class102.player.anIntArray2755[0] >= -var28 + var3 && Class102.player.anIntArray2755[0] <= var28 + var3 && 0 != Sprites.anInt340 && var7 > 0 && 50 > Class113.anInt1552 && var4 != -1) { - Class3_Sub25.anIntArray2550[Class113.anInt1552] = var4; - Class166.anIntArray2068[Class113.anInt1552] = var7; - Unsorted.anIntArray2157[Class113.anInt1552] = var8; - Class102.aClass135Array2131[Class113.anInt1552] = null; - Class3_Sub8.anIntArray3083[Class113.anInt1552] = var6 + ((var2 << 16) - -(var3 << 8)); - ++Class113.anInt1552; + if (var2 + -var28 <= Class102.player.anIntArray2767[0] && Class102.player.anIntArray2767[0] <= var28 + var2 && Class102.player.anIntArray2755[0] >= -var28 + var3 && Class102.player.anIntArray2755[0] <= var28 + var3 && 0 != Sprites.anInt340 && var7 > 0 && 50 > AudioHandler.currentSoundEffectCount && var4 != -1) { + Class3_Sub25.anIntArray2550[AudioHandler.currentSoundEffectCount] = var4; + Class166.anIntArray2068[AudioHandler.currentSoundEffectCount] = var7; + Unsorted.anIntArray2157[AudioHandler.currentSoundEffectCount] = var8; + Class102.aClass135Array2131[AudioHandler.currentSoundEffectCount] = null; + Class3_Sub8.anIntArray3083[AudioHandler.currentSoundEffectCount] = var6 + ((var2 << 16) - -(var3 << 8)); + ++AudioHandler.currentSoundEffectCount; } } diff --git a/Client/src/main/java/org/runite/client/Class3_Sub8.java b/Client/src/main/java/org/runite/client/Class3_Sub8.java index 80659f93c..8c59c1041 100644 --- a/Client/src/main/java/org/runite/client/Class3_Sub8.java +++ b/Client/src/main/java/org/runite/client/Class3_Sub8.java @@ -131,12 +131,12 @@ final class Class3_Sub8 extends Linkable { static void method132() { try { - for(int var1 = 0; var1 < Class113.anInt1552; ++var1) { + for(int var1 = 0; var1 < AudioHandler.currentSoundEffectCount; ++var1) { --Unsorted.anIntArray2157[var1]; if(Unsorted.anIntArray2157[var1] < -10) { - --Class113.anInt1552; + --AudioHandler.currentSoundEffectCount; - for(int var2 = var1; var2 < Class113.anInt1552; ++var2) { + for(int var2 = var1; var2 < AudioHandler.currentSoundEffectCount; ++var2) { Class3_Sub25.anIntArray2550[var2] = Class3_Sub25.anIntArray2550[var2 - -1]; Class102.aClass135Array2131[var2] = Class102.aClass135Array2131[var2 + 1]; Class166.anIntArray2068[var2] = Class166.anIntArray2068[1 + var2]; @@ -160,7 +160,7 @@ final class Class3_Sub8 extends Linkable { if(0 > Unsorted.anIntArray2157[var1]) { int var3; if(anIntArray3083[var1] == 0) { - var3 = CS2Script.anInt2453; + var3 = AudioHandler.soundEffectVolume; } else { int var4 = 128 * (255 & anIntArray3083[var1]); int var7 = anIntArray3083[var1] >> 8 & 0xFF; diff --git a/Client/src/main/java/org/runite/client/Class79.java b/Client/src/main/java/org/runite/client/Class79.java index 1cc5a1c3b..08e148d03 100644 --- a/Client/src/main/java/org/runite/client/Class79.java +++ b/Client/src/main/java/org/runite/client/Class79.java @@ -109,9 +109,9 @@ final class Class79 { Unsorted.anInt3671 = Class3_Sub28_Sub9.anInt3622; TextureOperation17.aBoolean3184 = var0.readUnsignedByte() == 1; - CS2Script.anInt2453 = var0.readUnsignedByte(); - if (CS2Script.anInt2453 > 127) { - CS2Script.anInt2453 = 127; + AudioHandler.soundEffectVolume = var0.readUnsignedByte(); + if (AudioHandler.soundEffectVolume > 127) { + AudioHandler.soundEffectVolume = 127; } Unsorted.anInt120 = var0.readUnsignedByte(); diff --git a/Client/src/main/java/org/runite/client/Class84.java b/Client/src/main/java/org/runite/client/Class84.java index 16221f58f..ef75bfd1c 100644 --- a/Client/src/main/java/org/runite/client/Class84.java +++ b/Client/src/main/java/org/runite/client/Class84.java @@ -80,7 +80,7 @@ public final class Class84 { static int method1421() { try { - return ((TextureOperation17.aBoolean3184 ? 1 : 0) << 19) + (((Class38.aBoolean661 ? 1 : 0) << 16) + ((!Class128.aBoolean1685 ? 0 : 1) << 15) + ((!Class106.aBoolean1441 ? 0 : 1) << 13) + ((Class140_Sub6.aBoolean2910 ? 1 : 0) << 10) + ((Unsorted.aBoolean3275 ? 1 : 0) << 9) + ((RSInterface.aBoolean236 ? 1 : 0) << 7) + ((!Class25.aBoolean488 ? 0 : 1) << 6) + ((KeyboardListener.aBoolean1905 ? 1 : 0) << 5) + (((!Unsorted.aBoolean3665 ? 0 : 1) << 3) + (Unsorted.anInt3625 & 7) - (-((!Unsorted.aBoolean3604 ? 0 : 1) << 4) + -((WorldListEntry.aBoolean2623 ? 1 : 0) << 8)) - (-(Unsorted.anInt1137 << 11 & 6144) + -((CS2Script.anInt2453 == 0 ? 0 : 1) << 20) - (((Unsorted.anInt120 != 0 ? 1 : 0) << 21) + ((Sprites.anInt340 == 0 ? 0 : 1) << 22)))) - -(Class127_Sub1.method1757() << 23)); + return ((TextureOperation17.aBoolean3184 ? 1 : 0) << 19) + (((Class38.aBoolean661 ? 1 : 0) << 16) + ((!Class128.aBoolean1685 ? 0 : 1) << 15) + ((!Class106.aBoolean1441 ? 0 : 1) << 13) + ((Class140_Sub6.aBoolean2910 ? 1 : 0) << 10) + ((Unsorted.aBoolean3275 ? 1 : 0) << 9) + ((RSInterface.aBoolean236 ? 1 : 0) << 7) + ((!Class25.aBoolean488 ? 0 : 1) << 6) + ((KeyboardListener.aBoolean1905 ? 1 : 0) << 5) + (((!Unsorted.aBoolean3665 ? 0 : 1) << 3) + (Unsorted.anInt3625 & 7) - (-((!Unsorted.aBoolean3604 ? 0 : 1) << 4) + -((WorldListEntry.aBoolean2623 ? 1 : 0) << 8)) - (-(Unsorted.anInt1137 << 11 & 6144) + -((AudioHandler.soundEffectVolume == 0 ? 0 : 1) << 20) - (((Unsorted.anInt120 != 0 ? 1 : 0) << 21) + ((Sprites.anInt340 == 0 ? 0 : 1) << 22)))) - -(Class127_Sub1.method1757() << 23)); } catch (RuntimeException var2) { throw ClientErrorException.clientError(var2, "lf.F(" + -2 + ')'); } diff --git a/Client/src/main/java/org/runite/client/PacketParser.java b/Client/src/main/java/org/runite/client/PacketParser.java index 6ec444b5d..fbeb0ac8e 100644 --- a/Client/src/main/java/org/runite/client/PacketParser.java +++ b/Client/src/main/java/org/runite/client/PacketParser.java @@ -1369,7 +1369,7 @@ public final class PacketParser { } modelId = BufferedDataStream.incomingBuffer.readUnsignedShort(); - TextureOperation26.method199(var19, nodeModelId, modelId); + AudioHandler.soundEffectHandler(var19, nodeModelId, modelId); Unsorted.incomingOpcode = -1; return true; } else if (Unsorted.incomingOpcode == 66) { @@ -1697,7 +1697,7 @@ public final class PacketParser { nodeModelId = -1; } - AtmosphereParser.musicHandler(nodeModelId); + AudioHandler.musicHandler(nodeModelId); Unsorted.incomingOpcode = -1; return true; } else if (Unsorted.incomingOpcode == 208) { diff --git a/Client/src/main/java/org/runite/client/SequenceDefinition.java b/Client/src/main/java/org/runite/client/SequenceDefinition.java index 962300d43..749e4d177 100644 --- a/Client/src/main/java/org/runite/client/SequenceDefinition.java +++ b/Client/src/main/java/org/runite/client/SequenceDefinition.java @@ -447,7 +447,7 @@ public final class SequenceDefinition { Unsorted.anInt42 = (int)(110.0D * Math.random()) + -55; GameObject.aBoolean1837 = false; Class164_Sub2.anInt3020 = -20 + (int)(30.0D * Math.random()); - Class113.anInt1552 = 0; + AudioHandler.currentSoundEffectCount = 0; Class65.anInt987 = 0; TextureOperation9.anInt3102 = -60 + (int)(Math.random() * 120.0D); TextureOperation16.anInt3114 = 0; diff --git a/Client/src/main/java/org/runite/client/TextureOperation26.java b/Client/src/main/java/org/runite/client/TextureOperation26.java index 594c97116..8c976a6dd 100644 --- a/Client/src/main/java/org/runite/client/TextureOperation26.java +++ b/Client/src/main/java/org/runite/client/TextureOperation26.java @@ -193,21 +193,4 @@ final class TextureOperation26 extends TextureOperation { } } - static void method199(int var0, int var1, int var2) { - try { - - if(CS2Script.anInt2453 != 0 && var0 != 0 && Class113.anInt1552 < 50 && var1 != -1) { - Class3_Sub25.anIntArray2550[Class113.anInt1552] = var1; - Class166.anIntArray2068[Class113.anInt1552] = var0; - Unsorted.anIntArray2157[Class113.anInt1552] = var2; - Class102.aClass135Array2131[Class113.anInt1552] = null; - Class3_Sub8.anIntArray3083[Class113.anInt1552] = 0; - ++Class113.anInt1552; - } - - } catch (RuntimeException var5) { - throw ClientErrorException.clientError(var5, "ca.C(" + var0 + ',' + var1 + ',' + var2 + ',' + -799 + ')'); - } - } - } diff --git a/Client/src/main/java/org/runite/client/Unsorted.java b/Client/src/main/java/org/runite/client/Unsorted.java index 45b6a5285..c44b3285a 100644 --- a/Client/src/main/java/org/runite/client/Unsorted.java +++ b/Client/src/main/java/org/runite/client/Unsorted.java @@ -895,7 +895,7 @@ public class Unsorted { public static void method1470(int var0, SequenceDefinition var1, int var2, int var3, boolean var4, int var5) { try { - if (Class113.anInt1552 < 50) { + if (AudioHandler.currentSoundEffectCount < 50) { if (var1.sounds != null && var1.sounds.length > var5 && null != var1.sounds[var5]) { int var6 = var1.sounds[var5][0]; int var7 = var6 >> 8; @@ -911,22 +911,22 @@ public class Unsorted { int var9 = var6 & 31; if (var9 == 0) { if (var4) { - TextureOperation26.method199(var8, var7, 0); + AudioHandler.soundEffectHandler(var8, var7, 0); } } else if (0 != Sprites.anInt340) { - Class3_Sub25.anIntArray2550[Class113.anInt1552] = var7; - Class166.anIntArray2068[Class113.anInt1552] = var8; + Class3_Sub25.anIntArray2550[AudioHandler.currentSoundEffectCount] = var7; + Class166.anIntArray2068[AudioHandler.currentSoundEffectCount] = var8; int var11 = (-64 + var0) / 128; var10 = (var3 + -64) / 128; - anIntArray2157[Class113.anInt1552] = 0; - Class102.aClass135Array2131[Class113.anInt1552] = null; - Class3_Sub8.anIntArray3083[Class113.anInt1552] = var9 + (var10 << 16) + (var11 << 8); + anIntArray2157[AudioHandler.currentSoundEffectCount] = 0; + Class102.aClass135Array2131[AudioHandler.currentSoundEffectCount] = null; + Class3_Sub8.anIntArray3083[AudioHandler.currentSoundEffectCount] = var9 + (var10 << 16) + (var11 << 8); if (var2 != 183921384) { aClass33_1238 = null; } - ++Class113.anInt1552; + ++AudioHandler.currentSoundEffectCount; } } } @@ -2222,7 +2222,7 @@ public class Unsorted { Class133.anInt1753 = 1; } - Class113.anInt1552 = 0; + AudioHandler.currentSoundEffectCount = 0; if (Class65.anInt987 != 0) { Class45.anInt733 -= var10; Class65.anInt987 -= var9; @@ -4799,7 +4799,7 @@ public class Unsorted { Class25.aBoolean488 = true; anInt3671 = 0; RandomAccessFileWrapper var2 = null; - CS2Script.anInt2453 = 127; + AudioHandler.soundEffectVolume = 127; if (Class3_Sub24_Sub3.maxClientMemory >= 96) { Class127_Sub1.method1758(2); } else { diff --git a/Client/src/main/kotlin/org/rs09/client/console/DeveloperConsole.kt b/Client/src/main/kotlin/org/rs09/client/console/DeveloperConsole.kt index 1a161398d..74a465d95 100644 --- a/Client/src/main/kotlin/org/rs09/client/console/DeveloperConsole.kt +++ b/Client/src/main/kotlin/org/rs09/client/console/DeveloperConsole.kt @@ -247,7 +247,7 @@ object DeveloperConsole { if (argSize in 2..4) { if (clientCommand[1].toIntOrNull() == null) { clientCommand.removeFirst() - AtmosphereParser.musicHandler( + AudioHandler.musicHandler( CacheIndex.musicIndex.getArchiveForName( RSString.of( clientCommand.joinToString( @@ -258,7 +258,7 @@ object DeveloperConsole { ) } else { args = clientCommand[1].toInt() - AtmosphereParser.musicHandler(args) + AudioHandler.musicHandler(args) } } else { println("Error. Plays music. Use: playsong # OR playsong songName")