mirror of
https://gitlab.com/2009scape/2009scape.git
synced 2025-12-12 09:30:19 -07:00
Audio related update trying to track down why some sounds aren't playing properly/too fast.
This commit is contained in:
parent
0b498fc455
commit
98450d84a1
14 changed files with 72 additions and 67 deletions
|
|
@ -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;
|
||||
|
|
|
|||
37
Client/src/main/java/org/runite/client/AudioHandler.java
Normal file
37
Client/src/main/java/org/runite/client/AudioHandler.java
Normal file
|
|
@ -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 + ')');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
|
|
|
|||
|
|
@ -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 + ')');
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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 + ')');
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 {
|
||||
|
|
|
|||
|
|
@ -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")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue