From cdbb0a3aa7b8f69bc5dee9fea953ac0f57d037d6 Mon Sep 17 00:00:00 2001 From: Adam Date: Sat, 4 Sep 2021 16:29:46 -0400 Subject: [PATCH] api: make getCanvasTilePoly work on multi-tile npcs --- runelite-api/src/main/java/net/runelite/api/Actor.java | 2 +- .../runelite/client/plugins/agility/AgilityOverlay.java | 8 +------- .../client/plugins/npchighlight/NpcSceneOverlay.java | 5 +---- 3 files changed, 3 insertions(+), 12 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Actor.java b/runelite-api/src/main/java/net/runelite/api/Actor.java index 857fdc3720..3e53351626 100644 --- a/runelite-api/src/main/java/net/runelite/api/Actor.java +++ b/runelite-api/src/main/java/net/runelite/api/Actor.java @@ -283,7 +283,7 @@ public interface Actor extends Renderable void setSpotAnimFrame(int spotAnimFrame); /** - * Gets the canvas area of the current tile the actor is standing on. + * Gets the canvas area of the current tiles the actor is standing on. * * @return the current tile canvas area */ diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityOverlay.java index 7612c5b662..e1102c3b89 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityOverlay.java @@ -35,8 +35,6 @@ import java.util.Set; import javax.inject.Inject; import net.runelite.api.Client; import net.runelite.api.NPC; -import net.runelite.api.NPCComposition; -import net.runelite.api.Perspective; import net.runelite.api.Point; import net.runelite.api.Tile; import net.runelite.api.coords.LocalPoint; @@ -157,11 +155,7 @@ class AgilityOverlay extends Overlay Color color = config.sepulchreHighlightColor(); for (NPC npc : npcs) { - NPCComposition npcComposition = npc.getComposition(); - int size = npcComposition.getSize(); - LocalPoint lp = npc.getLocalLocation(); - - Polygon tilePoly = Perspective.getCanvasTileAreaPoly(client, lp, size); + Polygon tilePoly = npc.getCanvasTilePoly(); if (tilePoly != null) { OverlayUtil.renderPolygon(graphics, tilePoly, color); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/npchighlight/NpcSceneOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/npchighlight/NpcSceneOverlay.java index 84e428918c..a13ef58ade 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/npchighlight/NpcSceneOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/npchighlight/NpcSceneOverlay.java @@ -162,10 +162,7 @@ public class NpcSceneOverlay extends Overlay if (highlightedNpc.isTile()) { - int size = npcComposition.getSize(); - LocalPoint lp = actor.getLocalLocation(); - Polygon tilePoly = Perspective.getCanvasTileAreaPoly(client, lp, size); - + Polygon tilePoly = actor.getCanvasTilePoly(); renderPoly(graphics, borderColor, fillColor, tilePoly); }