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

@@ -50,6 +50,7 @@ import net.runelite.api.Ignore;
import net.runelite.api.IndexDataBase;
import net.runelite.api.IndexedSprite;
import net.runelite.api.InventoryID;
import net.runelite.api.MenuEntry;
import net.runelite.api.MenuOpcode;
import static net.runelite.api.MenuOpcode.PLAYER_EIGTH_OPTION;
import static net.runelite.api.MenuOpcode.PLAYER_FIFTH_OPTION;
@@ -59,7 +60,6 @@ import static net.runelite.api.MenuOpcode.PLAYER_SECOND_OPTION;
import static net.runelite.api.MenuOpcode.PLAYER_SEVENTH_OPTION;
import static net.runelite.api.MenuOpcode.PLAYER_SIXTH_OPTION;
import static net.runelite.api.MenuOpcode.PLAYER_THIRD_OPTION;
import net.runelite.api.MenuEntry;
import net.runelite.api.MessageNode;
import net.runelite.api.NPC;
import net.runelite.api.Node;
@@ -98,6 +98,7 @@ import net.runelite.api.events.PlayerSpawned;
import net.runelite.api.events.ResizeableChanged;
import net.runelite.api.events.UsernameChanged;
import net.runelite.api.events.VarbitChanged;
import net.runelite.api.events.VolumeChanged;
import net.runelite.api.events.WidgetLoaded;
import net.runelite.api.events.WidgetPressed;
import net.runelite.api.hooks.Callbacks;
@@ -1760,7 +1761,6 @@ public abstract class RSClientMixin implements RSClient
return modulus;
}
@Inject
@Override
public void setModulus(BigInteger modulus)
@@ -1783,4 +1783,41 @@ public abstract class RSClientMixin implements RSClient
client.promptCredentials(true);
}
}
@Inject
@Override
public void setMusicVolume(int volume)
{
if (volume > 0 && client.getMusicVolume() <= 0 && client.getCurrentTrackGroupId() != -1)
{
client.playMusicTrack(client.getMusicTracks(), client.getCurrentTrackGroupId(), 0, volume, false);
}
client.setClientMusicVolume(volume);
client.setMusicTrackVolume(volume);
if (client.getMidiPcmStream() != null)
{
client.getMidiPcmStream().setPcmStreamVolume(volume);
}
}
@Copy("changeGameOptions")
public static void rs$changeGameOptions(int var0)
{
throw new RuntimeException();
}
@Replace("changeGameOptions")
public static void changeGameOptions(int var0)
{
rs$changeGameOptions(var0);
int type = client.getVarpDefinition(var0).getType();
if (type == 3 || type == 4 || type == 10)
{
VolumeChanged volumeChanged = new VolumeChanged(type == 3 ? VolumeChanged.Type.MUSIC : type == 4 ? VolumeChanged.Type.EFFECTS : VolumeChanged.Type.AREA);
client.getCallbacks().post(VolumeChanged.class, volumeChanged);
}
}
}

View File

@@ -31,11 +31,11 @@ import net.runelite.api.mixins.FieldHook;
import net.runelite.api.mixins.Inject;
import net.runelite.api.mixins.Mixin;
import net.runelite.api.mixins.Shadow;
import net.runelite.rs.api.RSRawPcmStream;
import net.runelite.rs.api.RSClient;
import net.runelite.rs.api.RSPcmStream;
import net.runelite.rs.api.RSRawPcmStream;
import net.runelite.rs.api.RSRawSound;
import net.runelite.rs.api.RSSoundEffect;
import net.runelite.rs.api.RSPcmStream;
@Mixin(RSClient.class)
public abstract class SoundEffectMixin implements RSClient