Merge remote-tracking branch 'Owain/2310-merge'

This commit is contained in:
Owain van Brakel
2019-10-31 18:54:24 +01:00
105 changed files with 1629 additions and 632 deletions

View File

@@ -213,10 +213,10 @@ public abstract class AbstractWorldMapIcon {
class197.midiPcmStream.clear();
class197.field2377 = 1;
class247.musicTrackArchive = null;
} else if (var0 != -1 && var0 != Client.field865 && Client.field864 != 0 && !Client.field855) {
WorldMapIcon_0.method253(2, class216.archive6, var0, 0, Client.field864, false);
} else if (var0 != -1 && var0 != Client.currentTrackGroupId && Client.musicVolume != 0 && !Client.field855) {
WorldMapIcon_0.method253(2, class216.archive6, var0, 0, Client.musicVolume, false);
}
Client.field865 = var0;
Client.currentTrackGroupId = var0;
}
}

View File

@@ -237,7 +237,8 @@ public final class Client extends GameShell implements Usernamed {
@ObfuscatedGetter(
intValue = -1636781949
)
static int field868;
@Export("areaSoundEffectVolume")
static int areaSoundEffectVolume;
@ObfuscatedName("sl")
@ObfuscatedGetter(
intValue = 1393467707
@@ -354,7 +355,8 @@ public final class Client extends GameShell implements Usernamed {
@ObfuscatedGetter(
intValue = 398456721
)
static int field865;
@Export("currentTrackGroupId")
static int currentTrackGroupId;
@ObfuscatedName("pq")
@ObfuscatedGetter(
intValue = -87647027
@@ -372,7 +374,8 @@ public final class Client extends GameShell implements Usernamed {
@ObfuscatedGetter(
intValue = -1999845863
)
static int field864;
@Export("musicVolume")
static int musicVolume;
@ObfuscatedName("qq")
@Export("soundLocations")
static int[] soundLocations;
@@ -1493,11 +1496,11 @@ public final class Client extends GameShell implements Usernamed {
destinationX = 0;
destinationY = 0;
minimapState = 0;
field864 = 255;
field865 = -1;
musicVolume = 255;
currentTrackGroupId = -1;
field855 = false;
soundEffectVolume = 127;
field868 = 127;
areaSoundEffectVolume = 127;
soundEffectCount = 0;
soundEffectIds = new int[50];
queuedSoundEffectLoops = new int[50];
@@ -1611,7 +1614,7 @@ public final class Client extends GameShell implements Usernamed {
var45 = 0;
}
class197.midiPcmStream.method3942(var45);
class197.midiPcmStream.setPcmStreamVolume(var45);
} else {
class197.midiPcmStream.clear();
class197.midiPcmStream.removeAll();
@@ -2653,7 +2656,7 @@ public final class Client extends GameShell implements Usernamed {
if (class197.midiPcmStream.loadMusicTrack(class197.musicTrack, class197.musicPatchesArchive, ByteArrayPool.soundCache, 22050)) {
class197.midiPcmStream.clearAll();
class197.midiPcmStream.method3942(class197.field2379);
class197.midiPcmStream.setPcmStreamVolume(class197.musicTrackVolume);
class197.midiPcmStream.setMusicTrack(class197.musicTrack, ScriptFrame.musicTrackBoolean);
class197.field2377 = 0;
class197.musicTrack = null;
@@ -4084,7 +4087,7 @@ public final class Client extends GameShell implements Usernamed {
var9 = 0;
}
var3 = (var4 - var9) * field868 / var4;
var3 = (var4 - var9) * areaSoundEffectVolume / var4;
} else {
var3 = soundEffectVolume;
}
@@ -4114,8 +4117,8 @@ public final class Client extends GameShell implements Usernamed {
}
if (field855 && !Login.method2256()) {
if (field864 != 0 && field865 != -1) {
MusicPatchNode2.method3830(class216.archive6, field865, 0, field864, false);
if (musicVolume != 0 && currentTrackGroupId != -1) {
MusicPatchNode2.playMusicTrack(class216.archive6, currentTrackGroupId, 0, musicVolume, false);
}
field855 = false;
@@ -4717,13 +4720,13 @@ public final class Client extends GameShell implements Usernamed {
var6 += var5.y * 128 - var3;
}
if (var6 - 64 <= var5.field1052 && field868 != 0 && var1 == var5.plane) {
if (var6 - 64 <= var5.field1052 && areaSoundEffectVolume != 0 && var1 == var5.plane) {
var6 -= 64;
if (var6 < 0) {
var6 = 0;
}
int var7 = (var5.field1052 - var6) * field868 / var5.field1052;
int var7 = (var5.field1052 - var6) * areaSoundEffectVolume / var5.field1052;
Object var10000;
if (var5.stream1 == null) {
if (var5.soundEffectId >= 0) {
@@ -5630,7 +5633,7 @@ public final class Client extends GameShell implements Usernamed {
if (ServerPacket.field2103 == var1.serverPacket) {
for (var16 = 0; var16 < VarpDefinition.VarpDefinition_fileCount; ++var16) {
VarpDefinition var51 = Varcs.method2352(var16);
VarpDefinition var51 = Varcs.VarpDefinition_get(var16);
if (var51 != null) {
Varps.Varps_temp[var16] = 0;
Varps.Varps_main[var16] = 0;
@@ -5657,7 +5660,7 @@ public final class Client extends GameShell implements Usernamed {
Varps.Varps_main[var16] = var41;
}
WorldMapDecoration.method389(var16);
WorldMapDecoration.changeGameOptions(var16);
field817[++field679 - 1 & 31] = var16;
var1.serverPacket = null;
return true;
@@ -5681,7 +5684,7 @@ public final class Client extends GameShell implements Usernamed {
for (var16 = 0; var16 < Varps.Varps_main.length; ++var16) {
if (Varps.Varps_main[var16] != Varps.Varps_temp[var16]) {
Varps.Varps_main[var16] = Varps.Varps_temp[var16];
WorldMapDecoration.method389(var16);
WorldMapDecoration.changeGameOptions(var16);
field817[++field679 - 1 & 31] = var16;
}
}
@@ -6003,7 +6006,7 @@ public final class Client extends GameShell implements Usernamed {
Varps.Varps_main[var5] = var16;
}
WorldMapDecoration.method389(var5);
WorldMapDecoration.changeGameOptions(var5);
field817[++field679 - 1 & 31] = var5;
var1.serverPacket = null;
return true;

View File

@@ -475,7 +475,7 @@ public class GrandExchangeOfferOwnWorldComparator implements Comparator {
if (var14.cs1Instructions != null && var14.cs1Instructions[0][0] == 5) {
var10 = var14.cs1Instructions[0][1];
Varps.Varps_main[var10] = 1 - Varps.Varps_main[var10];
WorldMapDecoration.method389(var10);
WorldMapDecoration.changeGameOptions(var10);
}
} else if (var2 == 29) {
var8 = SoundSystem.getPacketBufferNode(ClientPacket.field2252, Client.packetWriter.isaacCipher);
@@ -486,7 +486,7 @@ public class GrandExchangeOfferOwnWorldComparator implements Comparator {
var10 = var14.cs1Instructions[0][1];
if (Varps.Varps_main[var10] != var14.cs1ComparisonValues[0]) {
Varps.Varps_main[var10] = var14.cs1ComparisonValues[0];
WorldMapDecoration.method389(var10);
WorldMapDecoration.changeGameOptions(var10);
}
}
} else if (var2 == 30) {

View File

@@ -169,7 +169,7 @@ final class GrandExchangeOfferTotalQuantityComparator implements Comparator {
PacketWriter.friendSystem.clear();
for (var0 = 0; var0 < VarpDefinition.VarpDefinition_fileCount; ++var0) {
VarpDefinition var3 = Varcs.method2352(var0);
VarpDefinition var3 = Varcs.VarpDefinition_get(var0);
if (var3 != null) {
Varps.Varps_temp[var0] = 0;
Varps.Varps_main[var0] = 0;

View File

@@ -137,7 +137,8 @@ public class MidiPcmStream extends PcmStream {
signature = "(II)V",
garbageValue = "636798046"
)
public synchronized void method3942(int var1) {
@Export("setPcmStreamVolume")
public synchronized void setPcmStreamVolume(int var1) {
this.field2399 = var1;
}

View File

@@ -1,3 +1,4 @@
import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedGetter;
import net.runelite.mapping.ObfuscatedName;
@@ -92,12 +93,13 @@ public class MusicPatchNode2 {
signature = "(Lhq;IIIZI)V",
garbageValue = "1856110966"
)
public static void method3830(AbstractArchive var0, int var1, int var2, int var3, boolean var4) {
@Export("playMusicTrack")
public static void playMusicTrack(AbstractArchive var0, int var1, int var2, int var3, boolean var4) {
class197.field2377 = 1;
class247.musicTrackArchive = var0;
class189.musicTrackGroupId = var1;
class197.musicTrackFileId = var2;
class197.field2379 = var3;
class197.musicTrackVolume = var3;
ScriptFrame.musicTrackBoolean = var4;
class197.field2384 = 10000;
}

View File

@@ -231,7 +231,7 @@ public final class Tile extends Node {
)
@Export("addSequenceSoundEffect")
static void addSequenceSoundEffect(SequenceDefinition var0, int var1, int var2, int var3) {
if (Client.soundEffectCount < 50 && Client.field868 != 0) {
if (Client.soundEffectCount < 50 && Client.areaSoundEffectVolume != 0) {
if (var0.soundEffects != null && var1 < var0.soundEffects.length) {
int var4 = var0.soundEffects[var1];
if (var4 != 0) {

View File

@@ -329,7 +329,8 @@ public class Varcs {
signature = "(II)Liu;",
garbageValue = "-1999284157"
)
public static VarpDefinition method2352(int var0) {
@Export("VarpDefinition_get")
public static VarpDefinition VarpDefinition_get(int var0) {
VarpDefinition var1 = (VarpDefinition)VarpDefinition.VarpDefinition_cached.get((long)var0);
if (var1 != null) {
return var1;

View File

@@ -140,7 +140,8 @@ public class WorldMapDecoration {
signature = "(IB)V",
garbageValue = "-115"
)
static final void method389(int var0) {
@Export("changeGameOptions")
static final void changeGameOptions(int var0) {
BoundaryObject.method3393();
for (ObjectSound var1 = (ObjectSound)ObjectSound.objectSounds.last(); var1 != null; var1 = (ObjectSound)ObjectSound.objectSounds.previous()) {
@@ -149,7 +150,7 @@ public class WorldMapDecoration {
}
}
int var4 = Varcs.method2352(var0).type;
int var4 = Varcs.VarpDefinition_get(var0).type;
if (var4 != 0) {
int var2 = Varps.Varps_main[var0];
if (var4 == 1) {
@@ -198,20 +199,20 @@ public class WorldMapDecoration {
var3 = 0;
}
if (var3 != Client.field864) {
if (Client.field864 == 0 && Client.field865 != -1) {
MusicPatchNode2.method3830(class216.archive6, Client.field865, 0, var3, false);
if (var3 != Client.musicVolume) {
if (Client.musicVolume == 0 && Client.currentTrackGroupId != -1) {
MusicPatchNode2.playMusicTrack(class216.archive6, Client.currentTrackGroupId, 0, var3, false);
Client.field855 = false;
} else if (var3 == 0) {
ReflectionCheck.method2438();
Client.field855 = false;
} else if (class197.field2377 != 0) {
class197.field2379 = var3;
class197.musicTrackVolume = var3;
} else {
class197.midiPcmStream.method3942(var3);
class197.midiPcmStream.setPcmStreamVolume(var3);
}
Client.field864 = var3;
Client.musicVolume = var3;
}
}
@@ -251,23 +252,23 @@ public class WorldMapDecoration {
if (var4 == 10) {
if (var2 == 0) {
Client.field868 = 127;
Client.areaSoundEffectVolume = 127;
}
if (var2 == 1) {
Client.field868 = 96;
Client.areaSoundEffectVolume = 96;
}
if (var2 == 2) {
Client.field868 = 64;
Client.areaSoundEffectVolume = 64;
}
if (var2 == 3) {
Client.field868 = 32;
Client.areaSoundEffectVolume = 32;
}
if (var2 == 4) {
Client.field868 = 0;
Client.areaSoundEffectVolume = 0;
}
}

View File

@@ -42,8 +42,8 @@ public class WorldMapEvent {
)
@Export("playSoundJingle")
static void playSoundJingle(int var0, int var1) {
if (Client.field864 != 0 && var0 != -1) {
MusicPatchNode2.method3830(Decimator.archive11, var0, 0, Client.field864, false);
if (Client.musicVolume != 0 && var0 != -1) {
MusicPatchNode2.playMusicTrack(Decimator.archive11, var0, 0, Client.musicVolume, false);
Client.field855 = true;
}

View File

@@ -173,7 +173,7 @@ public class WorldMapIcon_0 extends AbstractWorldMapIcon {
class247.musicTrackArchive = var1;
class189.musicTrackGroupId = var2;
class197.musicTrackFileId = var3;
class197.field2379 = var4;
class197.musicTrackVolume = var4;
ScriptFrame.musicTrackBoolean = var5;
class197.field2384 = var0;
}

View File

@@ -62,7 +62,7 @@ public final class WorldMapRectangle {
public static void method330(AbstractArchive var0, String var1, String var2, int var3, boolean var4) {
int var5 = var0.getGroupId(var1);
int var6 = var0.getFileId(var5, var2);
MusicPatchNode2.method3830(var0, var5, var6, var3, var4);
MusicPatchNode2.playMusicTrack(var0, var5, var6, var3, var4);
}
@ObfuscatedName("v")

View File

@@ -392,7 +392,7 @@ public final class WorldMapSprite {
var37 = var1.method5646();
if (var7 >= 0 && var8 >= 0 && var7 < 104 && var8 < 104) {
var32 = var4 + 1;
if (class215.localPlayer.pathX[0] >= var7 - var32 && class215.localPlayer.pathX[0] <= var7 + var32 && class215.localPlayer.pathY[0] >= var8 - var32 && class215.localPlayer.pathY[0] <= var8 + var32 && Client.field868 != 0 && var5 > 0 && Client.soundEffectCount < 50) {
if (class215.localPlayer.pathX[0] >= var7 - var32 && class215.localPlayer.pathX[0] <= var7 + var32 && class215.localPlayer.pathY[0] >= var8 - var32 && class215.localPlayer.pathY[0] <= var8 + var32 && Client.areaSoundEffectVolume != 0 && var5 > 0 && Client.soundEffectCount < 50) {
Client.soundEffectIds[Client.soundEffectCount] = var37;
Client.queuedSoundEffectLoops[Client.soundEffectCount] = var5;
Client.queuedSoundEffectDelays[Client.soundEffectCount] = var2;

View File

@@ -507,7 +507,7 @@ final class class1 implements class0 {
System.gc();
class80.method2194(2);
Client.field865 = -1;
Client.currentTrackGroupId = -1;
Client.field855 = false;
GameShell.method1141();
Tile.updateGameState(10);

View File

@@ -44,7 +44,8 @@ public class class197 {
@ObfuscatedGetter(
intValue = -1006961815
)
public static int field2379;
@Export("musicTrackVolume")
public static int musicTrackVolume;
@ObfuscatedName("d")
@ObfuscatedGetter(
intValue = -1415687209

View File

@@ -177,7 +177,7 @@ final class class4 implements class0 {
} else if (var29 == ScriptOpcodes.SET_VARP) {
var11 = var6[var17];
Varps.Varps_main[var11] = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
WorldMapDecoration.method389(var11);
WorldMapDecoration.changeGameOptions(var11);
} else if (var29 == ScriptOpcodes.SCONST) {
Interpreter.Interpreter_stringStack[++WorldMapDecoration.Interpreter_stringStackSize - 1] = var3.stringOperands[var17];
} else if (var29 == ScriptOpcodes.JUMP) {

View File

@@ -126,7 +126,7 @@ public class class80 {
class247.musicTrackArchive = null;
class189.musicTrackGroupId = -1;
class197.musicTrackFileId = -1;
class197.field2379 = 0;
class197.musicTrackVolume = 0;
ScriptFrame.musicTrackBoolean = false;
class197.field2384 = var0;
}