mixins: replace loadSprite mixin

This commit is contained in:
ThatGamerBlue
2019-07-19 07:25:54 +01:00
parent f4181265c0
commit 7df795101b

View File

@@ -3,9 +3,14 @@ package net.runelite.mixins;
import net.runelite.api.Sprite;
import java.util.HashMap;
import java.util.Map;
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.RSAbstractArchive;
import net.runelite.rs.api.RSClient;
import net.runelite.rs.api.RSSprite;
@Mixin(RSClient.class)
public abstract class SpriteMixin implements RSClient
@@ -29,4 +34,23 @@ public abstract class SpriteMixin implements RSClient
{
return widgetSpriteOverrides;
}
@Copy("loadSprite")
public static RSSprite rs$loadSprite(RSAbstractArchive var0, int var1, int var2)
{
throw new RuntimeException();
}
@Replace("loadSprite")
public static RSSprite rl$loadSprite(RSAbstractArchive var0, int var1, int var2)
{
Sprite sprite = spriteOverrides.get(var1);
if (sprite != null)
{
return (RSSprite) sprite;
}
return rs$loadSprite(var0, var1, var2);
}
}