Merge pull request #368 from runelite-extended/freezetimers
Update FreezeTimersOverlay.java
This commit is contained in:
@@ -25,7 +25,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.freezetimers;
|
package net.runelite.client.plugins.freezetimers;
|
||||||
|
|
||||||
import com.google.common.eventbus.Subscribe;
|
|
||||||
import java.awt.Color;
|
import java.awt.Color;
|
||||||
import static java.awt.Color.RED;
|
import static java.awt.Color.RED;
|
||||||
import static java.awt.Color.WHITE;
|
import static java.awt.Color.WHITE;
|
||||||
@@ -34,14 +33,10 @@ import java.awt.Font;
|
|||||||
import java.awt.Graphics2D;
|
import java.awt.Graphics2D;
|
||||||
import java.awt.Polygon;
|
import java.awt.Polygon;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.HashMap;
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import net.runelite.api.Actor;
|
import net.runelite.api.Actor;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.events.PlayerDespawned;
|
|
||||||
import net.runelite.api.GraphicID;
|
import net.runelite.api.GraphicID;
|
||||||
import net.runelite.api.Player;
|
|
||||||
import net.runelite.api.Point;
|
import net.runelite.api.Point;
|
||||||
import net.runelite.client.ui.FontManager;
|
import net.runelite.client.ui.FontManager;
|
||||||
import net.runelite.client.ui.overlay.Overlay;
|
import net.runelite.client.ui.overlay.Overlay;
|
||||||
@@ -53,7 +48,6 @@ import net.runelite.client.util.ImageUtil;
|
|||||||
|
|
||||||
public class FreezeTimersOverlay extends Overlay
|
public class FreezeTimersOverlay extends Overlay
|
||||||
{
|
{
|
||||||
private final Map<String, FreezeInfo> freezes = new HashMap<>();
|
|
||||||
private final FreezeTimersConfig config;
|
private final FreezeTimersConfig config;
|
||||||
private final Client client;
|
private final Client client;
|
||||||
private final Font timerFont = FontManager.getRunescapeBoldFont().deriveFont(14.0f);
|
private final Font timerFont = FontManager.getRunescapeBoldFont().deriveFont(14.0f);
|
||||||
@@ -64,7 +58,7 @@ public class FreezeTimersOverlay extends Overlay
|
|||||||
private Timers timers;
|
private Timers timers;
|
||||||
private boolean lock;
|
private boolean lock;
|
||||||
private long finishedAtTest;
|
private long finishedAtTest;
|
||||||
private Actor player;
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public FreezeTimersOverlay(FreezeTimersConfig config, Client client)
|
public FreezeTimersOverlay(FreezeTimersConfig config, Client client)
|
||||||
@@ -90,22 +84,6 @@ public class FreezeTimersOverlay extends Overlay
|
|||||||
return null;
|
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)
|
private void renderOverlayFor(Graphics2D g, Actor actor)
|
||||||
{
|
{
|
||||||
if (timers.areAllTimersZero(actor))
|
if (timers.areAllTimersZero(actor))
|
||||||
|
|||||||
@@ -26,15 +26,20 @@ package net.runelite.client.plugins.freezetimers;
|
|||||||
|
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
import net.runelite.api.Actor;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
|
import net.runelite.api.Player;
|
||||||
import net.runelite.api.events.GameTick;
|
import net.runelite.api.events.GameTick;
|
||||||
import net.runelite.api.events.GraphicChanged;
|
import net.runelite.api.events.GraphicChanged;
|
||||||
|
import net.runelite.api.events.PlayerDespawned;
|
||||||
import net.runelite.client.config.ConfigManager;
|
import net.runelite.client.config.ConfigManager;
|
||||||
import net.runelite.client.eventbus.Subscribe;
|
import net.runelite.client.eventbus.Subscribe;
|
||||||
import net.runelite.client.plugins.Plugin;
|
import net.runelite.client.plugins.Plugin;
|
||||||
import net.runelite.client.plugins.PluginDescriptor;
|
import net.runelite.client.plugins.PluginDescriptor;
|
||||||
import net.runelite.client.plugins.PluginType;
|
import net.runelite.client.plugins.PluginType;
|
||||||
import net.runelite.client.ui.overlay.OverlayManager;
|
import net.runelite.client.ui.overlay.OverlayManager;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
@PluginDescriptor(
|
@PluginDescriptor(
|
||||||
name = "Freeze Timers",
|
name = "Freeze Timers",
|
||||||
@@ -44,6 +49,8 @@ import net.runelite.client.ui.overlay.OverlayManager;
|
|||||||
)
|
)
|
||||||
public class FreezeTimersPlugin extends Plugin
|
public class FreezeTimersPlugin extends Plugin
|
||||||
{
|
{
|
||||||
|
private final Map<String, FreezeInfo> freezes = new HashMap<>();
|
||||||
|
private Actor player;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private Client client;
|
private Client client;
|
||||||
@@ -110,4 +117,16 @@ public class FreezeTimersPlugin extends Plugin
|
|||||||
prayerTracker.gameTick();
|
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());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user