Merge remote-tracking branch 'origin/master'

This commit is contained in:
Visne
2019-07-07 23:50:39 +02:00
308 changed files with 15461 additions and 14578 deletions

View File

@@ -66,7 +66,7 @@ public abstract class CameraMixin implements RSClient
}
}
@FieldHook("cameraPitchTarget")
@FieldHook("camAngleX")
@Inject
static void onCameraPitchTargetChanged(int idx)
{

View File

@@ -15,12 +15,12 @@ import net.runelite.api.mixins.Mixin;
import net.runelite.api.mixins.Replace;
import net.runelite.api.mixins.Shadow;
import org.slf4j.Logger;
import net.runelite.rs.api.RSAbstractIndexCache;
import net.runelite.rs.api.RSAbstractArchive;
import net.runelite.rs.api.RSClient;
import net.runelite.rs.api.RSIndexCache;
import net.runelite.rs.api.RSArchive;
@Mixin(RSAbstractIndexCache.class)
public abstract class RSAbstractIndexCacheMixin implements RSAbstractIndexCache
@Mixin(RSAbstractArchive.class)
public abstract class RSAbstractArchiveMixin implements RSAbstractArchive
{
@Shadow("client")
private static RSClient client;
@@ -35,14 +35,14 @@ public abstract class RSAbstractIndexCacheMixin implements RSAbstractIndexCache
return overlayOutdated;
}
@Copy("takeRecord")
@Copy("takeFile")
abstract byte[] rs$getConfigData(int archiveId, int fileId);
@Replace("takeRecord")
@Replace("takeFile")
public byte[] rl$getConfigData(int archiveId, int fileId)
{
byte[] rsData = rs$getConfigData(archiveId, fileId);
RSIndexCache indexData = (RSIndexCache) this;
RSArchive indexData = (RSArchive) this;
if (!OverlayIndex.hasOverlay(indexData.getIndex(), archiveId))
{

View File

@@ -51,7 +51,6 @@ import net.runelite.api.MenuEntry;
import net.runelite.api.MessageNode;
import net.runelite.api.NPC;
import net.runelite.api.Node;
import net.runelite.api.PacketBuffer;
import static net.runelite.api.Perspective.LOCAL_TILE_SIZE;
import net.runelite.api.Player;
import net.runelite.api.Point;
@@ -111,8 +110,9 @@ import net.runelite.api.mixins.MethodHook;
import net.runelite.api.mixins.Mixin;
import net.runelite.api.mixins.Replace;
import net.runelite.api.mixins.Shadow;
import net.runelite.rs.api.RSPacketBuffer;
import org.slf4j.Logger;
import net.runelite.rs.api.RSAbstractIndexCache;
import net.runelite.rs.api.RSAbstractArchive;
import net.runelite.rs.api.RSChatChannel;
import net.runelite.rs.api.RSClanChat;
import net.runelite.rs.api.RSClient;
@@ -1253,9 +1253,16 @@ public abstract class RSClientMixin implements RSClient
@Replace("menuAction")
static void rl$menuAction(int actionParam, int widgetId, int menuAction, int id, String menuOption, String menuTarget, int var6, int var7)
{
boolean authentic = true;
if (menuTarget != null && menuTarget.startsWith("!AUTHENTIC"))
{
authentic = false;
menuTarget = menuTarget.substring(10);
}
if (printMenuActions && client.getLogger().isDebugEnabled())
{
client.getLogger().debug("Menuaction: {} {} {} {} {} {} {} {}", actionParam, widgetId, menuAction, id, menuOption, menuTarget, var6, var7);
client.getLogger().debug("Menuaction: {} {} {} {} {} {} {} {} {}", actionParam, widgetId, menuAction, id, menuOption, menuTarget, var6, var7, authentic);
}
/* Along the way, the RuneScape client may change a menuAction by incrementing it with 2000.
@@ -1275,7 +1282,8 @@ public abstract class RSClientMixin implements RSClient
actionParam,
widgetId,
false
)
),
authentic
);
client.getCallbacks().post(menuOptionClicked);
@@ -1289,6 +1297,13 @@ public abstract class RSClientMixin implements RSClient
menuOptionClicked.getIdentifier(), menuOptionClicked.getOption(), menuOptionClicked.getTarget(), var6, var7);
}
@Override
@Inject
public void invokeMenuAction(int actionParam, int widgetId, int menuAction, int id, String menuOption, String menuTarget, int var6, int var7)
{
client.sendMenuAction(actionParam, widgetId, menuAction, id, menuOption, "!AUTHENTIC" + menuTarget, var6, var7);
}
@FieldHook("Login_username")
@Inject
public static void onUsernameChanged(int idx)
@@ -1329,7 +1344,7 @@ public abstract class RSClientMixin implements RSClient
@Inject
@MethodHook("updateNpcs")
public static void updateNpcs(boolean var0, PacketBuffer var1)
public static void updateNpcs(boolean var0, RSPacketBuffer var1)
{
client.getCallbacks().updateNpcs();
}
@@ -1355,13 +1370,13 @@ public abstract class RSClientMixin implements RSClient
}
@Inject
@MethodHook("methodDraw")
public void methodDraw(boolean var1)
@MethodHook("draw")
public void draw(boolean var1)
{
callbacks.clientMainLoop();
}
@MethodHook("drawWidgetGroup")
@MethodHook("drawInterface")
@Inject
public static void renderWidgetLayer(Widget[] widgets, int parentId, int minX, int minY, int maxX, int maxY, int x, int y, int var8)
{
@@ -1464,7 +1479,7 @@ public abstract class RSClientMixin implements RSClient
@Override
public RSSprite[] getSprites(IndexDataBase source, int archiveId, int fileId)
{
RSAbstractIndexCache rsSource = (RSAbstractIndexCache) source;
RSAbstractArchive rsSource = (RSAbstractArchive) source;
byte[] configData = rsSource.getConfigData(archiveId, fileId);
if (configData == null)
{

View File

@@ -15,7 +15,7 @@ public abstract class RSHealthBarDefinitionMixin implements RSHealthBarDefinitio
@Shadow("client")
private static RSClient client;
@MethodHook(value = "read", end = true)
@MethodHook(value = "decode", end = true)
@Inject
public void onRead(RSBuffer buffer)
{

View File

@@ -44,10 +44,10 @@ public abstract class RSTextureMixin implements RSTexture
@Inject
private float rl$v;
@Copy("Texture_animate")
@Copy("animate")
public abstract void rs$animate(int diff);
@Replace("Texture_animate")
@Replace("animate")
public void rl$animate(int diff)
{
// The client animates textures by cycling the backing pixels of the texture each fram

View File

@@ -7,7 +7,7 @@ import net.runelite.api.mixins.Copy;
import net.runelite.api.mixins.Inject;
import net.runelite.api.mixins.Mixin;
import net.runelite.api.mixins.Replace;
import net.runelite.rs.api.RSAbstractIndexCache;
import net.runelite.rs.api.RSAbstractArchive;
import net.runelite.rs.api.RSClient;
import net.runelite.rs.api.RSSprite;
@@ -35,13 +35,13 @@ public abstract class SpriteMixin implements RSClient
}
@Copy("readSprite")
public static RSSprite rs$loadSprite(RSAbstractIndexCache var0, int var1, int var2)
public static RSSprite rs$loadSprite(RSAbstractArchive var0, int var1, int var2)
{
throw new RuntimeException();
}
@Replace("readSprite")
public static RSSprite rl$loadSprite(RSAbstractIndexCache var0, int var1, int var2)
public static RSSprite rl$loadSprite(RSAbstractArchive var0, int var1, int var2)
{
Sprite sprite = spriteOverrides.get(var1);