puzzle solver plugin: Use Sprite ID for overlay image

This commit is contained in:
Jordan Atwood
2018-07-18 12:02:00 -07:00
parent 39ac378f4d
commit 470966d0d6
2 changed files with 6 additions and 19 deletions

View File

@@ -33,11 +33,9 @@ import java.awt.Graphics2D;
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Arrays;
import java.util.concurrent.Future;
import java.util.concurrent.ScheduledExecutorService;
import javax.imageio.ImageIO;
import javax.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import net.runelite.api.Client;
@@ -45,8 +43,10 @@ import net.runelite.api.GameState;
import net.runelite.api.InventoryID;
import net.runelite.api.Item;
import net.runelite.api.ItemContainer;
import static net.runelite.api.SpriteID.MINIMAP_DESTINATION_FLAG;
import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.game.SpriteManager;
import net.runelite.client.plugins.puzzlesolver.solver.PuzzleSolver;
import net.runelite.client.plugins.puzzlesolver.solver.PuzzleState;
import net.runelite.client.plugins.puzzlesolver.solver.heuristics.ManhattanDistance;
@@ -77,18 +77,18 @@ public class PuzzleSolverOverlay extends Overlay
private final Client client;
private final PuzzleSolverConfig config;
private final ScheduledExecutorService executorService;
private final SpriteManager spriteManager;
private PuzzleSolver solver;
private Future<?> solverFuture;
private int[] cachedItems;
private BufferedImage downArrow;
private BufferedImage upArrow;
private BufferedImage leftArrow;
private BufferedImage rightArrow;
@Inject
public PuzzleSolverOverlay(Client client, PuzzleSolverConfig config, ScheduledExecutorService executorService)
public PuzzleSolverOverlay(Client client, PuzzleSolverConfig config, ScheduledExecutorService executorService, SpriteManager spriteManager)
{
setPosition(OverlayPosition.DYNAMIC);
setPriority(OverlayPriority.HIGH);
@@ -96,6 +96,7 @@ public class PuzzleSolverOverlay extends Overlay
this.client = client;
this.config = config;
this.executorService = executorService;
this.spriteManager = spriteManager;
}
@Override
@@ -426,21 +427,7 @@ public class PuzzleSolverOverlay extends Overlay
private BufferedImage getDownArrow()
{
if (downArrow == null)
{
try
{
synchronized (ImageIO.class)
{
downArrow = ImageIO.read(PuzzleSolverOverlay.class.getResourceAsStream("arrow.png"));
}
}
catch (IOException e)
{
log.warn("Error loading image", e);
}
}
return downArrow;
return spriteManager.getSprite(MINIMAP_DESTINATION_FLAG, 1);
}
private BufferedImage getUpArrow()

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 B