From 809b5b2718b3a64b26f74ade0116c78d8ddace74 Mon Sep 17 00:00:00 2001 From: WooxSolo Date: Thu, 1 Nov 2018 15:02:15 +0100 Subject: [PATCH 1/4] Fix localToCanvas calculation on fixed screen --- runelite-api/src/main/java/net/runelite/api/Perspective.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Perspective.java b/runelite-api/src/main/java/net/runelite/api/Perspective.java index 2af3634869..a81f69db90 100644 --- a/runelite-api/src/main/java/net/runelite/api/Perspective.java +++ b/runelite-api/src/main/java/net/runelite/api/Perspective.java @@ -139,7 +139,9 @@ public class Perspective { int pointX = client.getViewportWidth() / 2 + x * client.getScale() / y; int pointY = client.getViewportHeight() / 2 + var8 * client.getScale() / y; - return new Point(pointX, pointY); + return new Point( + pointX + client.getViewportXOffset(), + pointY + client.getViewportYOffset()); } } From fbb03a7f1514fb6afa96460dad453e580c8326f4 Mon Sep 17 00:00:00 2001 From: WooxSolo Date: Thu, 1 Nov 2018 16:24:58 +0100 Subject: [PATCH 2/4] Remove viewportOffset calculation from prayer bar --- .../net/runelite/client/plugins/prayer/PrayerBarOverlay.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/prayer/PrayerBarOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/prayer/PrayerBarOverlay.java index 4f88684fba..18d28da696 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/prayer/PrayerBarOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/prayer/PrayerBarOverlay.java @@ -80,8 +80,8 @@ class PrayerBarOverlay extends Overlay final Point canvasPoint = Perspective.localToCanvas(client, localLocation, client.getPlane(), height); // Draw bar - final int barX = canvasPoint.getX() + client.getViewportXOffset() - 15; - final int barY = canvasPoint.getY() + client.getViewportYOffset(); + final int barX = canvasPoint.getX() - 15; + final int barY = canvasPoint.getY(); final int barWidth = PRAYER_BAR_SIZE.width; final int barHeight = PRAYER_BAR_SIZE.height; final float ratio = (float) client.getBoostedSkillLevel(Skill.PRAYER) / client.getRealSkillLevel(Skill.PRAYER); From 42caca779d838b5d3f42b859a4d35b063aac2f5d Mon Sep 17 00:00:00 2001 From: WooxSolo Date: Thu, 1 Nov 2018 16:26:06 +0100 Subject: [PATCH 3/4] Remove viewportOffset calculation from demonic gorillas --- .../client/plugins/demonicgorilla/DemonicGorillaOverlay.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/demonicgorilla/DemonicGorillaOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/demonicgorilla/DemonicGorillaOverlay.java index 90b3c4df56..2fa191d5ba 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/demonicgorilla/DemonicGorillaOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/demonicgorilla/DemonicGorillaOverlay.java @@ -94,9 +94,7 @@ public class DemonicGorillaOverlay extends Overlay gorilla.getNpc().getLogicalHeight() + 16); if (point != null) { - point = new Point( - client.getViewportXOffset() + point.getX(), - client.getViewportYOffset() + point.getY()); + point = new Point(point.getX(), point.getY()); List attackStyles = gorilla.getNextPosibleAttackStyles(); List icons = new ArrayList<>(); From 2eabb70422f08e1ff62d4c9575b4f0f51824679a Mon Sep 17 00:00:00 2001 From: WooxSolo Date: Thu, 1 Nov 2018 16:30:49 +0100 Subject: [PATCH 4/4] Remove viewportOffset from get2DGeometry --- .../src/main/java/net/runelite/api/Perspective.java | 9 --------- 1 file changed, 9 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Perspective.java b/runelite-api/src/main/java/net/runelite/api/Perspective.java index a81f69db90..bfbc2f070e 100644 --- a/runelite-api/src/main/java/net/runelite/api/Perspective.java +++ b/runelite-api/src/main/java/net/runelite/api/Perspective.java @@ -595,15 +595,6 @@ public class Perspective int maxX = Math.max(Math.max(a.getX(), b.getX()), c.getX()) + 4; int maxY = Math.max(Math.max(a.getY(), b.getY()), c.getY()) + 4; - // ...and the rectangles in the fixed client are shifted 4 pixels right and down - if (!client.isResized()) - { - minX += client.getViewportXOffset(); - minY += client.getViewportYOffset(); - maxX += client.getViewportXOffset(); - maxY += client.getViewportYOffset(); - } - Rectangle clickableRect = new Rectangle( minX - radius, minY - radius, maxX - minX + radius, maxY - minY + radius