diff --git a/runelite-api/src/main/java/net/runelite/api/widgets/WidgetID.java b/runelite-api/src/main/java/net/runelite/api/widgets/WidgetID.java index 523c0335c8..50e388076c 100644 --- a/runelite-api/src/main/java/net/runelite/api/widgets/WidgetID.java +++ b/runelite-api/src/main/java/net/runelite/api/widgets/WidgetID.java @@ -533,6 +533,7 @@ public class WidgetID static final int SPELL_ICON = 27; static final int SPELL_TEXT = 28; static final int AUTO_RETALIATE = 29; + static final int SPEC_BAR = 34; } static class VolcanicMine diff --git a/runelite-api/src/main/java/net/runelite/api/widgets/WidgetInfo.java b/runelite-api/src/main/java/net/runelite/api/widgets/WidgetInfo.java index 78bb2832b4..058e9aa05a 100644 --- a/runelite-api/src/main/java/net/runelite/api/widgets/WidgetInfo.java +++ b/runelite-api/src/main/java/net/runelite/api/widgets/WidgetInfo.java @@ -313,6 +313,7 @@ public enum WidgetInfo COMBAT_SPELL_ICON(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.SPELL_ICON), COMBAT_SPELL_TEXT(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.SPELL_TEXT), COMBAT_AUTO_RETALIATE(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.AUTO_RETALIATE), + COMBAT_SPEC_BAR(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.SPEC_BAR), // Used by CombatInterfaceSP.rs2asm DIALOG_OPTION(WidgetID.DIALOG_OPTION_GROUP_ID, 0), diff --git a/runelite-client/src/main/scripts/CombatInterfaceSP.hash b/runelite-client/src/main/scripts/CombatInterfaceSP.hash new file mode 100644 index 0000000000..e92e5b127b --- /dev/null +++ b/runelite-client/src/main/scripts/CombatInterfaceSP.hash @@ -0,0 +1 @@ +DDFE4E407122EEEAE2C64A233EA937B2CC20E92D66CB66772C31182A6C60820D \ No newline at end of file diff --git a/runelite-client/src/main/scripts/CombatInterfaceSP.rs2asm b/runelite-client/src/main/scripts/CombatInterfaceSP.rs2asm new file mode 100644 index 0000000000..9f908245af --- /dev/null +++ b/runelite-client/src/main/scripts/CombatInterfaceSP.rs2asm @@ -0,0 +1,29 @@ +.id 327 +.int_stack_count 1 +.string_stack_count 0 +.int_var_count 1 +.string_var_count 0 + ; Attach specbar redraw listeners to special attack bar instead of to + ; auto retaliate text (which is var0). Test by enabling "Hide auto retaliate" + ; and using a spec. + iconst 38862882 ; 593.34 - spec bar + istore 0 ; overwrite script parameter which is the autoretail text + iload 0 + invoke 187 + iconst 186 + iload 0 + iconst 301 + iconst 300 + iconst 284 + iconst 3 + sconst "IY" + iload 0 + if_setonvartransmit + iconst 186 + iload 0 + iconst 94 + iconst 1 + sconst "IY" + iload 0 + if_setoninvtransmit + return