Merge remote-tracking branch 'runelite/master' into 2009-merge
This commit is contained in:
@@ -28,6 +28,7 @@ import com.google.inject.AbstractModule;
|
||||
import com.google.inject.Provides;
|
||||
import com.google.inject.name.Names;
|
||||
import java.applet.Applet;
|
||||
import java.io.File;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.ScheduledExecutorService;
|
||||
import javax.annotation.Nullable;
|
||||
@@ -51,12 +52,15 @@ import net.runelite.client.task.Scheduler;
|
||||
import net.runelite.client.util.DeferredEventBus;
|
||||
import net.runelite.client.util.ExecutorServiceExceptionLogger;
|
||||
import net.runelite.http.api.RuneLiteAPI;
|
||||
import okhttp3.Cache;
|
||||
import okhttp3.OkHttpClient;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class RuneLiteModule extends AbstractModule
|
||||
{
|
||||
private static final int MAX_OKHTTP_CACHE_SIZE = 20 * 1024 * 1024; // 20mb
|
||||
|
||||
private final ClientUpdateCheckMode updateCheckMode;
|
||||
private final boolean developerMode;
|
||||
|
||||
@@ -72,7 +76,9 @@ public class RuneLiteModule extends AbstractModule
|
||||
bindConstant().annotatedWith(Names.named("updateCheckMode")).to(updateCheckMode);
|
||||
bindConstant().annotatedWith(Names.named("developerMode")).to(developerMode);
|
||||
bind(ScheduledExecutorService.class).toInstance(new ExecutorServiceExceptionLogger(Executors.newSingleThreadScheduledExecutor()));
|
||||
bind(OkHttpClient.class).toInstance(RuneLiteAPI.CLIENT);
|
||||
bind(OkHttpClient.class).toInstance(RuneLiteAPI.CLIENT.newBuilder()
|
||||
.cache(new Cache(new File(RuneLite.RUNELITE_DIR, "cache" + File.separator + "okhttp"), MAX_OKHTTP_CACHE_SIZE))
|
||||
.build());
|
||||
bind(MenuManager.class);
|
||||
bind(ChatMessageManager.class);
|
||||
bind(ItemManager.class);
|
||||
|
||||
@@ -136,7 +136,7 @@ public class ItemManager
|
||||
private final Client client;
|
||||
private final ScheduledExecutorService scheduledExecutorService;
|
||||
private final ClientThread clientThread;
|
||||
private final ItemClient itemClient = new ItemClient();
|
||||
private final ItemClient itemClient;
|
||||
private final ImmutableMap<Integer, ItemStats> itemStatMap;
|
||||
private final LoadingCache<ImageKey, AsyncBufferedImage> itemImages;
|
||||
private final LoadingCache<Integer, ItemDefinition> itemDefinitions;
|
||||
@@ -149,12 +149,14 @@ public class ItemManager
|
||||
Client client,
|
||||
ScheduledExecutorService executor,
|
||||
ClientThread clientThread,
|
||||
EventBus eventbus
|
||||
EventBus eventbus,
|
||||
ItemClient itemClient
|
||||
)
|
||||
{
|
||||
this.client = client;
|
||||
this.scheduledExecutorService = executor;
|
||||
this.clientThread = clientThread;
|
||||
this.itemClient = itemClient;
|
||||
|
||||
scheduledExecutorService.scheduleWithFixedDelay(this::loadPrices, 0, 30, TimeUnit.MINUTES);
|
||||
scheduledExecutorService.submit(this::loadStats);
|
||||
|
||||
@@ -29,7 +29,7 @@ import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.geom.Area;
|
||||
import java.awt.Shape;
|
||||
import java.util.List;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Singleton;
|
||||
@@ -90,7 +90,7 @@ class AgilityOverlay extends Overlay
|
||||
}
|
||||
return;
|
||||
}
|
||||
Area objectClickbox = object.getClickbox();
|
||||
Shape objectClickbox = object.getClickbox();
|
||||
if (objectClickbox != null)
|
||||
{
|
||||
AgilityShortcut agilityShortcut = obstacle.getShortcut();
|
||||
|
||||
@@ -27,7 +27,7 @@ package net.runelite.client.plugins.blastfurnace;
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.geom.Area;
|
||||
import java.awt.Shape;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Singleton;
|
||||
import net.runelite.api.Client;
|
||||
@@ -110,7 +110,7 @@ class BlastFurnaceClickBoxOverlay extends Overlay
|
||||
|
||||
if (localLocation.distanceTo(location) <= MAX_DISTANCE)
|
||||
{
|
||||
Area objectClickbox = object.getClickbox();
|
||||
Shape objectClickbox = object.getClickbox();
|
||||
if (objectClickbox != null)
|
||||
{
|
||||
if (objectClickbox.contains(mousePosition.getX(), mousePosition.getY()))
|
||||
|
||||
@@ -63,7 +63,9 @@ public class DefaultWorldPlugin extends Plugin
|
||||
@Inject
|
||||
private ClientThread clientThread;
|
||||
|
||||
private final WorldClient worldClient = new WorldClient();
|
||||
@Inject
|
||||
private WorldClient worldClient;
|
||||
|
||||
private int worldCache;
|
||||
private boolean worldChangeRequired;
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ import java.awt.FontMetrics;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.Shape;
|
||||
import java.awt.geom.Rectangle2D;
|
||||
import java.util.List;
|
||||
import javax.inject.Inject;
|
||||
@@ -326,10 +327,10 @@ class DevToolsOverlay extends Overlay
|
||||
|
||||
// Draw a polygon around the convex hull
|
||||
// of the model vertices
|
||||
Polygon p = gameObject.getConvexHull();
|
||||
Shape p = gameObject.getConvexHull();
|
||||
if (p != null)
|
||||
{
|
||||
graphics.drawPolygon(p);
|
||||
graphics.draw(p);
|
||||
}
|
||||
// This is incredibly taxing to run, only uncomment if you know what you're doing.
|
||||
/*renderGameObjectWireframe(graphics, gameObject, Color.CYAN);*/
|
||||
@@ -372,16 +373,16 @@ class DevToolsOverlay extends Overlay
|
||||
OverlayUtil.renderTileOverlay(graphics, decorObject, "ID: " + decorObject.getId(), DEEP_PURPLE);
|
||||
}
|
||||
|
||||
Polygon p = decorObject.getConvexHull();
|
||||
Shape p = decorObject.getConvexHull();
|
||||
if (p != null)
|
||||
{
|
||||
graphics.drawPolygon(p);
|
||||
graphics.draw(p);
|
||||
}
|
||||
|
||||
p = decorObject.getConvexHull2();
|
||||
if (p != null)
|
||||
{
|
||||
graphics.drawPolygon(p);
|
||||
graphics.draw(p);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -553,23 +554,6 @@ class DevToolsOverlay extends Overlay
|
||||
graphics.drawString(text, textX, textY);
|
||||
}
|
||||
|
||||
private void renderGameObjectWireframe(Graphics2D graphics, GameObject gameObject, Color color)
|
||||
{
|
||||
Polygon[] polys = gameObject.getPolygons();
|
||||
|
||||
if (polys == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
graphics.setColor(color);
|
||||
|
||||
for (Polygon p : polys)
|
||||
{
|
||||
graphics.drawPolygon(p);
|
||||
}
|
||||
}
|
||||
|
||||
private void renderPlayerWireframe(Graphics2D graphics, Player player, Color color)
|
||||
{
|
||||
Polygon[] polys = player.getPolygons();
|
||||
|
||||
@@ -66,13 +66,15 @@ public class FeedPlugin extends Plugin
|
||||
@Inject
|
||||
private ScheduledExecutorService executorService;
|
||||
|
||||
@Inject
|
||||
private FeedClient feedClient;
|
||||
|
||||
@Inject
|
||||
private EventBus eventBus;
|
||||
|
||||
private FeedPanel feedPanel;
|
||||
private NavigationButton navButton;
|
||||
|
||||
private final FeedClient feedClient = new FeedClient();
|
||||
private final Supplier<FeedResult> feedSupplier = Suppliers.memoizeWithExpiration(() ->
|
||||
{
|
||||
try
|
||||
|
||||
@@ -32,6 +32,7 @@ import java.awt.Font;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.Shape;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -201,7 +202,7 @@ public class GauntletOverlay extends Overlay
|
||||
|
||||
if (plugin.isOverlayBoss())
|
||||
{
|
||||
Polygon polygon = boss.getConvexHull();
|
||||
Shape polygon = boss.getConvexHull();
|
||||
|
||||
if (polygon == null)
|
||||
{
|
||||
@@ -315,7 +316,7 @@ public class GauntletOverlay extends Overlay
|
||||
{
|
||||
|
||||
// Don't use Convex Hull click box. As the room start to fill up, your FPS will dip.
|
||||
Polygon polygon = object.getGameObject().getConvexHull();
|
||||
Shape polygon = object.getGameObject().getConvexHull();
|
||||
|
||||
if (polygon == null)
|
||||
{
|
||||
|
||||
@@ -30,6 +30,7 @@ import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Shape;
|
||||
import java.text.DecimalFormat;
|
||||
import java.text.NumberFormat;
|
||||
import java.time.Instant;
|
||||
@@ -46,12 +47,12 @@ import net.runelite.api.Point;
|
||||
import net.runelite.api.coords.LocalPoint;
|
||||
import net.runelite.api.coords.WorldArea;
|
||||
import net.runelite.api.coords.WorldPoint;
|
||||
import net.runelite.api.util.Text;
|
||||
import net.runelite.client.graphics.ModelOutlineRenderer;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayLayer;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayUtil;
|
||||
import net.runelite.api.util.Text;
|
||||
|
||||
@Singleton
|
||||
public class NpcSceneOverlay extends Overlay
|
||||
@@ -181,8 +182,9 @@ public class NpcSceneOverlay extends Overlay
|
||||
renderPoly(graphics, color, tilePoly);
|
||||
break;
|
||||
case HULL:
|
||||
final Polygon objectClickbox = actor.getConvexHull();
|
||||
renderPoly(graphics, color, objectClickbox);
|
||||
final Shape objectClickbox = actor.getConvexHull();
|
||||
graphics.setColor(color);
|
||||
graphics.draw(objectClickbox);
|
||||
break;
|
||||
case THIN_OUTLINE:
|
||||
modelOutliner.drawOutline(actor, 1, color);
|
||||
|
||||
@@ -28,8 +28,7 @@ package net.runelite.client.plugins.objectindicators;
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.geom.Area;
|
||||
import java.awt.Shape;
|
||||
import static java.lang.Math.floor;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Singleton;
|
||||
@@ -101,8 +100,8 @@ class ObjectIndicatorsOverlay extends Overlay
|
||||
}
|
||||
break;
|
||||
case HULL:
|
||||
final Polygon polygon;
|
||||
Polygon polygon2 = null;
|
||||
final Shape polygon;
|
||||
Shape polygon2 = null;
|
||||
|
||||
if (object instanceof GameObject)
|
||||
{
|
||||
@@ -129,7 +128,7 @@ class ObjectIndicatorsOverlay extends Overlay
|
||||
}
|
||||
break;
|
||||
case CLICKBOX:
|
||||
Area clickbox = object.getClickbox();
|
||||
Shape clickbox = object.getClickbox();
|
||||
if (clickbox != null)
|
||||
{
|
||||
OverlayUtil.renderHoverableArea(graphics, object.getClickbox(), client.getMouseCanvasPosition(), TRANSPARENT, objectColor, objectColor.darker());
|
||||
|
||||
@@ -30,7 +30,7 @@ import java.awt.BasicStroke;
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Shape;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.api.Player;
|
||||
@@ -92,12 +92,12 @@ public class GangplankOverlay extends Overlay
|
||||
|
||||
if (noviceGangplankTile != null)
|
||||
{
|
||||
Polygon polygon = noviceGangplankTile.getGameObjects()[0].getConvexHull();
|
||||
Shape polygon = noviceGangplankTile.getGameObjects()[0].getConvexHull();
|
||||
if (polygon != null)
|
||||
{
|
||||
graphics.setColor(noviceCbColor);
|
||||
graphics.setStroke(new BasicStroke(2));
|
||||
graphics.drawPolygon(polygon);
|
||||
graphics.draw(polygon);
|
||||
graphics.setColor(setColorAlpha(noviceCbColor, 45));
|
||||
graphics.fill(polygon);
|
||||
|
||||
@@ -112,12 +112,12 @@ public class GangplankOverlay extends Overlay
|
||||
|
||||
if (intermediateGangplankTile != null)
|
||||
{
|
||||
Polygon polygon = intermediateGangplankTile.getGameObjects()[0].getConvexHull();
|
||||
Shape polygon = intermediateGangplankTile.getGameObjects()[0].getConvexHull();
|
||||
if (polygon != null)
|
||||
{
|
||||
graphics.setColor(intermediateCbColor);
|
||||
graphics.setStroke(new BasicStroke(2));
|
||||
graphics.drawPolygon(polygon);
|
||||
graphics.draw(polygon);
|
||||
graphics.setColor(setColorAlpha(intermediateCbColor, 45));
|
||||
graphics.fill(polygon);
|
||||
|
||||
@@ -132,12 +132,12 @@ public class GangplankOverlay extends Overlay
|
||||
|
||||
if (veteranGangplankTile != null)
|
||||
{
|
||||
Polygon polygon = veteranGangplankTile.getGameObjects()[0].getConvexHull();
|
||||
Shape polygon = veteranGangplankTile.getGameObjects()[0].getConvexHull();
|
||||
if (polygon != null)
|
||||
{
|
||||
graphics.setColor(veteranCbColor);
|
||||
graphics.setStroke(new BasicStroke(2));
|
||||
graphics.drawPolygon(polygon);
|
||||
graphics.draw(polygon);
|
||||
graphics.setColor(setColorAlpha(veteranCbColor, 45));
|
||||
graphics.fill(polygon);
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@ import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Shape;
|
||||
import java.util.HashMap;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.runelite.api.Client;
|
||||
@@ -141,7 +142,7 @@ public class NpcHighlightOverlay extends Overlay
|
||||
|
||||
private void renderHullOverlay(Graphics2D graphics, NPC npc, Color color)
|
||||
{
|
||||
Polygon objectClickbox = npc.getConvexHull();
|
||||
Shape objectClickbox = npc.getConvexHull();
|
||||
if (objectClickbox != null)
|
||||
{
|
||||
graphics.setColor(color);
|
||||
|
||||
@@ -30,7 +30,7 @@ import java.awt.BasicStroke;
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.geom.Area;
|
||||
import java.awt.Shape;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.api.Constants;
|
||||
import net.runelite.api.GameObject;
|
||||
@@ -185,7 +185,7 @@ public class RepairOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
private void renderObjectOverlay(Graphics2D graphics, Area area, Color color, Point mousePosition)
|
||||
private void renderObjectOverlay(Graphics2D graphics, Shape area, Color color, Point mousePosition)
|
||||
{
|
||||
if (area == null)
|
||||
{
|
||||
|
||||
@@ -27,7 +27,7 @@ package net.runelite.client.plugins.pyramidplunder;
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.geom.Area;
|
||||
import java.awt.Shape;
|
||||
import java.text.DecimalFormat;
|
||||
import java.text.NumberFormat;
|
||||
import java.util.Locale;
|
||||
@@ -119,7 +119,7 @@ public class PyramidPlunderOverlay extends Overlay
|
||||
objectID = impostor.getId();
|
||||
}
|
||||
|
||||
Area objectClickbox = object.getClickbox();
|
||||
Shape objectClickbox = object.getClickbox();
|
||||
if (objectClickbox != null)
|
||||
{
|
||||
Color configColor = Color.GREEN;
|
||||
|
||||
@@ -2,7 +2,7 @@ package net.runelite.client.plugins.raids.shortcuts;
|
||||
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Shape;
|
||||
import java.awt.image.BufferedImage;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Singleton;
|
||||
@@ -48,7 +48,7 @@ public class ShortcutOverlay extends Overlay
|
||||
{
|
||||
if (shortcut.getPlane() == client.getPlane())
|
||||
{
|
||||
Polygon poly;
|
||||
Shape poly;
|
||||
if ((shortcut instanceof GameObject))
|
||||
{
|
||||
poly = ((GameObject) shortcut).getConvexHull();
|
||||
|
||||
@@ -28,7 +28,7 @@ import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.geom.Area;
|
||||
import java.awt.Shape;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Singleton;
|
||||
import net.runelite.api.Client;
|
||||
@@ -74,7 +74,7 @@ public class RoguesDenOverlay extends Overlay
|
||||
{
|
||||
if (tile.getPlane() == client.getPlane())
|
||||
{
|
||||
final Area clickBox = obstacle.getClickbox();
|
||||
final Shape clickBox = obstacle.getClickbox();
|
||||
if (clickBox != null)
|
||||
{
|
||||
final Point mouse = client.getMouseCanvasPosition();
|
||||
@@ -93,7 +93,7 @@ public class RoguesDenOverlay extends Overlay
|
||||
}
|
||||
else
|
||||
{
|
||||
Polygon p;
|
||||
Shape p;
|
||||
if (obstacle instanceof GameObject)
|
||||
{
|
||||
p = ((GameObject) obstacle).getConvexHull();
|
||||
@@ -106,7 +106,7 @@ public class RoguesDenOverlay extends Overlay
|
||||
if (p != null)
|
||||
{
|
||||
graphics.setColor(OBJECT_COLOR);
|
||||
graphics.drawPolygon(p);
|
||||
graphics.draw(p);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.geom.Area;
|
||||
import java.awt.Shape;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.api.DecorativeObject;
|
||||
import net.runelite.api.NPC;
|
||||
@@ -105,7 +105,7 @@ class AbyssOverlay extends Overlay
|
||||
}
|
||||
|
||||
Point mousePosition = client.getMouseCanvasPosition();
|
||||
Area objectClickbox = object.getClickbox();
|
||||
Shape objectClickbox = object.getClickbox();
|
||||
if (objectClickbox != null)
|
||||
{
|
||||
if (objectClickbox.contains(mousePosition.getX(), mousePosition.getY()))
|
||||
|
||||
@@ -31,6 +31,7 @@ import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Shape;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import javax.inject.Inject;
|
||||
@@ -43,12 +44,12 @@ import net.runelite.api.Point;
|
||||
import net.runelite.api.coords.LocalPoint;
|
||||
import net.runelite.api.coords.WorldArea;
|
||||
import net.runelite.api.coords.WorldPoint;
|
||||
import net.runelite.api.util.Text;
|
||||
import net.runelite.client.graphics.ModelOutlineRenderer;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayLayer;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayUtil;
|
||||
import net.runelite.api.util.Text;
|
||||
|
||||
@Singleton
|
||||
public class TargetClickboxOverlay extends Overlay
|
||||
@@ -129,7 +130,7 @@ public class TargetClickboxOverlay extends Overlay
|
||||
break;
|
||||
|
||||
case HULL:
|
||||
Polygon objectClickbox = actor.getConvexHull();
|
||||
Shape objectClickbox = actor.getConvexHull();
|
||||
|
||||
if (objectClickbox == null)
|
||||
{
|
||||
|
||||
@@ -28,6 +28,7 @@ import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Shape;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Singleton;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -69,11 +70,11 @@ public class TarnsLairOverlay extends Overlay
|
||||
{
|
||||
if (tile.getPlane() == client.getPlane() && obstacle.getLocalLocation().distanceTo(playerLocation) < MAX_DISTANCE)
|
||||
{
|
||||
Polygon p = tile.getGameObjects()[0].getConvexHull();
|
||||
Shape p = tile.getGameObjects()[0].getConvexHull();
|
||||
if (p != null)
|
||||
{
|
||||
graphics.setColor(Color.GREEN);
|
||||
graphics.drawPolygon(p);
|
||||
graphics.draw(p);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -82,11 +83,11 @@ public class TarnsLairOverlay extends Overlay
|
||||
{
|
||||
if (tile.getPlane() == client.getPlane() && obstacle.getLocalLocation().distanceTo(playerLocation) < MAX_DISTANCE)
|
||||
{
|
||||
Polygon p = tile.getGameObjects()[0].getConvexHull();
|
||||
Shape p = tile.getGameObjects()[0].getConvexHull();
|
||||
if (p != null)
|
||||
{
|
||||
graphics.setColor(Color.CYAN);
|
||||
graphics.drawPolygon(p);
|
||||
graphics.draw(p);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -5,6 +5,7 @@ import java.awt.Color;
|
||||
import java.awt.Font;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Shape;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
@@ -248,7 +249,7 @@ public class NyloHandler extends RoomHandler
|
||||
{
|
||||
try
|
||||
{
|
||||
Polygon objectClickbox = npc.getConvexHull();
|
||||
Shape objectClickbox = npc.getConvexHull();
|
||||
|
||||
Color color;
|
||||
String name = npc.getName() != null ? npc.getName() : "";
|
||||
@@ -266,7 +267,8 @@ public class NyloHandler extends RoomHandler
|
||||
color = Color.LIGHT_GRAY;
|
||||
}
|
||||
|
||||
renderPoly(graphics, color, objectClickbox);
|
||||
graphics.setColor(color);
|
||||
graphics.draw(objectClickbox);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
@@ -141,6 +141,9 @@ public class WorldHopperPlugin extends Plugin
|
||||
@Inject
|
||||
private WorldHopperPingOverlay worldHopperOverlay;
|
||||
|
||||
@Inject
|
||||
private WorldClient worldClient;
|
||||
|
||||
private ScheduledExecutorService hopperExecutorService;
|
||||
|
||||
private NavigationButton navButton;
|
||||
@@ -533,7 +536,7 @@ public class WorldHopperPlugin extends Plugin
|
||||
{
|
||||
log.debug("Fetching worlds");
|
||||
|
||||
new WorldClient().lookupWorlds()
|
||||
worldClient.lookupWorlds()
|
||||
.subscribeOn(Schedulers.io())
|
||||
.take(1)
|
||||
.subscribe(
|
||||
|
||||
@@ -30,6 +30,7 @@ import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Shape;
|
||||
import java.util.List;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.runelite.api.AnimationID;
|
||||
@@ -174,7 +175,7 @@ public class ZalcanoOverlay extends Overlay
|
||||
{
|
||||
if (plugin.getGolem() != null)
|
||||
{
|
||||
Polygon hull = plugin.getGolem().getConvexHull();
|
||||
Shape hull = plugin.getGolem().getConvexHull();
|
||||
if (hull != null)
|
||||
{
|
||||
OverlayUtil.renderPolygon(graphics, hull, new Color(206, 41, 231));
|
||||
@@ -187,7 +188,7 @@ public class ZalcanoOverlay extends Overlay
|
||||
{
|
||||
if (plugin.getZalcano() != null)
|
||||
{
|
||||
Polygon hull = plugin.getZalcano().getConvexHull();
|
||||
Shape hull = plugin.getZalcano().getConvexHull();
|
||||
if (hull != null)
|
||||
{
|
||||
OverlayUtil.renderPolygon(graphics, hull, config.zalcanoHullColor());
|
||||
|
||||
@@ -33,8 +33,8 @@ import java.awt.Graphics2D;
|
||||
import java.awt.Polygon;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.RenderingHints;
|
||||
import java.awt.Shape;
|
||||
import java.awt.Stroke;
|
||||
import java.awt.geom.Area;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.util.List;
|
||||
import net.runelite.api.Actor;
|
||||
@@ -61,14 +61,14 @@ public class OverlayUtil
|
||||
private static final int MINIMAP_DOT_RADIUS = 4;
|
||||
private static final double UNIT = Math.PI / 1024.0d;
|
||||
|
||||
public static void renderPolygon(Graphics2D graphics, Polygon poly, Color color)
|
||||
public static void renderPolygon(Graphics2D graphics, Shape poly, Color color)
|
||||
{
|
||||
graphics.setColor(color);
|
||||
final Stroke originalStroke = graphics.getStroke();
|
||||
graphics.setStroke(new BasicStroke(2));
|
||||
graphics.drawPolygon(poly);
|
||||
graphics.draw(poly);
|
||||
graphics.setColor(new Color(0, 0, 0, 50));
|
||||
graphics.fillPolygon(poly);
|
||||
graphics.fill(poly);
|
||||
graphics.setStroke(originalStroke);
|
||||
}
|
||||
|
||||
@@ -211,7 +211,7 @@ public class OverlayUtil
|
||||
renderImageLocation(client, graphics, localLocation, image, 0);
|
||||
}
|
||||
|
||||
public static void renderHoverableArea(Graphics2D graphics, Area area, net.runelite.api.Point mousePosition, Color fillColor, Color borderColor, Color borderHoverColor)
|
||||
public static void renderHoverableArea(Graphics2D graphics, Shape area, net.runelite.api.Point mousePosition, Color fillColor, Color borderColor, Color borderHoverColor)
|
||||
{
|
||||
if (area != null)
|
||||
{
|
||||
@@ -326,7 +326,7 @@ public class OverlayUtil
|
||||
}
|
||||
}
|
||||
|
||||
public static void renderClickBox(Graphics2D graphics, Point mousePosition, Area objectClickbox, Color configColor)
|
||||
public static void renderClickBox(Graphics2D graphics, Point mousePosition, Shape objectClickbox, Color configColor)
|
||||
{
|
||||
if (objectClickbox.contains(mousePosition.getX(), mousePosition.getY()))
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user