diff --git a/runelite-client/src/main/java/net/runelite/client/RuneLite.java b/runelite-client/src/main/java/net/runelite/client/RuneLite.java index 974a1c8c7f..a05f4bc848 100644 --- a/runelite-client/src/main/java/net/runelite/client/RuneLite.java +++ b/runelite-client/src/main/java/net/runelite/client/RuneLite.java @@ -197,9 +197,6 @@ public class RuneLite @Inject private Provider chatboxPanelManager; - @Inject - private Provider partyService; - @Inject private Groups groups; @@ -428,15 +425,6 @@ public class RuneLite // Initialize Discord service discordService.init(); - // Register event listeners - eventBus.register(clientUI); - eventBus.register(pluginManager); - eventBus.register(externalPluginManager); - eventBus.register(overlayManager); - eventBus.register(drawManager); - eventBus.register(infoBoxManager); - eventBus.register(tooltipManager); - if (!isOutdated) { // Initialize chat colors diff --git a/runelite-client/src/main/java/net/runelite/client/util/WeaponMap.java b/runelite-client/src/main/java/net/runelite/client/util/WeaponMap.java index c4d02d8071..9fedf84a6d 100644 --- a/runelite-client/src/main/java/net/runelite/client/util/WeaponMap.java +++ b/runelite-client/src/main/java/net/runelite/client/util/WeaponMap.java @@ -83,6 +83,8 @@ public class WeaponMap StyleMap.put(ItemID.BLACK_SWORD, WeaponStyle.MELEE); StyleMap.put(ItemID.BLACK_WARHAMMER, WeaponStyle.MELEE); StyleMap.put(ItemID.BLADE_OF_SAELDOR, WeaponStyle.MELEE); + StyleMap.put(ItemID.BLADE_OF_SAELDOR_I, WeaponStyle.MELEE); + StyleMap.put(ItemID.BLADE_OF_SAELDOR_INACTIVE, WeaponStyle.MELEE); StyleMap.put(ItemID.BLESSED_AXE, WeaponStyle.MELEE); StyleMap.put(ItemID.BLUE_FLOWERS, WeaponStyle.MELEE); StyleMap.put(ItemID.BLUE_FLOWERS_8936, WeaponStyle.MELEE); @@ -452,7 +454,6 @@ public class WeaponMap StyleMap.put(ItemID.ZAMORAK_GODSWORD, WeaponStyle.MELEE); StyleMap.put(ItemID.ZAMORAK_GODSWORD_OR, WeaponStyle.MELEE); StyleMap.put(ItemID.ZOMBIE_HEAD, WeaponStyle.MELEE); - //Ranged StyleMap.put(ItemID._3RD_AGE_BOW, WeaponStyle.RANGE); diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java index 8fd6dbbd66..da33a187a5 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java @@ -178,6 +178,12 @@ public abstract class RSClientMixin implements RSClient @Inject private static RSTileItem lastItemDespawn; + @Inject + private static boolean invertPitch; + + @Inject + private static boolean invertYaw; + @Inject private boolean gpu; @@ -1888,4 +1894,38 @@ public abstract class RSClientMixin implements RSClient return widgetClickMask; } + + @Inject + @FieldHook("camAngleDX") + private static void onCamAngleDXChange(int index) + { + if(invertPitch && client.getMouseCurrentButton() == 4 && client.isMouseCam()) + { + client.setCamAngleDX(-client.getCamAngleDX()); + } + } + + @Inject + @FieldHook("camAngleDY") + private static void onCamAngleDYChange(int index) + { + if(invertYaw && client.getMouseCurrentButton() == 4 && client.isMouseCam()) + { + client.setCamAngleDY(-client.getCamAngleDY()); + } + } + + @Inject + @Override + public void setInvertPitch(boolean state) + { + invertPitch = state; + } + + @Inject + @Override + public void setInvertYaw(boolean state) + { + invertYaw = state; + } } \ No newline at end of file diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java index b866f3c90a..c7782c6ef8 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java @@ -381,6 +381,23 @@ public interface RSClient extends RSGameShell, Client @Override int[] getWidgetPositionsY(); + @Import("mouseCam") + boolean isMouseCam(); + + + + @Import("camAngleDX") + int getCamAngleDX(); + + @Import("camAngleDX") + void setCamAngleDX(int angle); + + @Import("camAngleDY") + int getCamAngleDY(); + + @Import("camAngleDY") + void setCamAngleDY(int angle); + @Import("itemContainers") RSNodeHashTable getItemContainers();