Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -66,7 +66,7 @@ public abstract class CameraMixin implements RSClient
|
||||
}
|
||||
}
|
||||
|
||||
@FieldHook("cameraPitchTarget")
|
||||
@FieldHook("camAngleX")
|
||||
@Inject
|
||||
static void onCameraPitchTargetChanged(int idx)
|
||||
{
|
||||
|
||||
@@ -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))
|
||||
{
|
||||
@@ -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)
|
||||
{
|
||||
|
||||
@@ -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)
|
||||
{
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user