Merge pull request #368 from runelite-extended/freezetimers

Update FreezeTimersOverlay.java
This commit is contained in:
Tyler Bochard
2019-05-23 05:11:35 -04:00
committed by GitHub
2 changed files with 20 additions and 23 deletions

View File

@@ -25,7 +25,6 @@
*/
package net.runelite.client.plugins.freezetimers;
import com.google.common.eventbus.Subscribe;
import java.awt.Color;
import static java.awt.Color.RED;
import static java.awt.Color.WHITE;
@@ -34,14 +33,10 @@ import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.Polygon;
import java.awt.image.BufferedImage;
import java.util.Map;
import java.util.HashMap;
import javax.inject.Inject;
import net.runelite.api.Actor;
import net.runelite.api.Client;
import net.runelite.api.events.PlayerDespawned;
import net.runelite.api.GraphicID;
import net.runelite.api.Player;
import net.runelite.api.Point;
import net.runelite.client.ui.FontManager;
import net.runelite.client.ui.overlay.Overlay;
@@ -53,7 +48,6 @@ import net.runelite.client.util.ImageUtil;
public class FreezeTimersOverlay extends Overlay
{
private final Map<String, FreezeInfo> freezes = new HashMap<>();
private final FreezeTimersConfig config;
private final Client client;
private final Font timerFont = FontManager.getRunescapeBoldFont().deriveFont(14.0f);
@@ -64,7 +58,7 @@ public class FreezeTimersOverlay extends Overlay
private Timers timers;
private boolean lock;
private long finishedAtTest;
private Actor player;
@Inject
public FreezeTimersOverlay(FreezeTimersConfig config, Client client)
@@ -90,22 +84,6 @@ public class FreezeTimersOverlay extends Overlay
return null;
}
@Subscribe
public void onPlayerDespawned(PlayerDespawned playerDespawned)
{
final Player player = playerDespawned.getPlayer();
// All despawns ok: death, teleports, log out, runs away from screen
if (config.showPlayers() | config.showNpcs() | config.FreezeTimers() | config.Veng() | config.TB())
{
this.remove(player);
}
}
public void remove(Actor actor)
{
freezes.remove(actor.getName());
}
private void renderOverlayFor(Graphics2D g, Actor actor)
{
if (timers.areAllTimersZero(actor))

View File

@@ -26,15 +26,20 @@ package net.runelite.client.plugins.freezetimers;
import com.google.inject.Provides;
import javax.inject.Inject;
import net.runelite.api.Actor;
import net.runelite.api.Client;
import net.runelite.api.Player;
import net.runelite.api.events.GameTick;
import net.runelite.api.events.GraphicChanged;
import net.runelite.api.events.PlayerDespawned;
import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.Subscribe;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.plugins.PluginType;
import net.runelite.client.ui.overlay.OverlayManager;
import java.util.HashMap;
import java.util.Map;
@PluginDescriptor(
name = "Freeze Timers",
@@ -44,6 +49,8 @@ import net.runelite.client.ui.overlay.OverlayManager;
)
public class FreezeTimersPlugin extends Plugin
{
private final Map<String, FreezeInfo> freezes = new HashMap<>();
private Actor player;
@Inject
private Client client;
@@ -110,4 +117,16 @@ public class FreezeTimersPlugin extends Plugin
prayerTracker.gameTick();
}
@Subscribe
public void onPlayerDespawned(PlayerDespawned playerDespawned)
{
final Player player = playerDespawned.getPlayer();
// All despawns ok: death, teleports, log out, runs away from screen
this.remove(player);
}
public void remove(Actor actor)
{
freezes.remove(actor.getName());
}
}