unpause
This commit is contained in:
@@ -1,10 +1,11 @@
|
||||
package net.runelite.client.plugins.dpscounter;
|
||||
|
||||
import net.runelite.client.config.Config;
|
||||
import net.runelite.client.config.ConfigGroup;
|
||||
import net.runelite.client.config.ConfigItem;
|
||||
|
||||
@ConfigGroup("dpscounter")
|
||||
public interface DpsConfig
|
||||
public interface DpsConfig extends Config
|
||||
{
|
||||
@ConfigItem(
|
||||
position = 0,
|
||||
|
||||
@@ -128,6 +128,12 @@ public class DpsCounterPlugin extends Plugin
|
||||
DpsMember dpsMember = members.computeIfAbsent(name, n -> new DpsMember(name));
|
||||
dpsMember.addDamage(hit);
|
||||
|
||||
if (dpsMember.isPaused())
|
||||
{
|
||||
dpsMember.unpause();
|
||||
log.debug("Unpausing {}", dpsMember.getName());
|
||||
}
|
||||
|
||||
if (hit > 0 && !partyService.getMembers().isEmpty())
|
||||
{
|
||||
// Check the player is attacking the boss
|
||||
@@ -162,6 +168,12 @@ public class DpsCounterPlugin extends Plugin
|
||||
|
||||
DpsMember dpsMember = members.computeIfAbsent(name, DpsMember::new);
|
||||
dpsMember.addDamage(dpsUpdate.getHit());
|
||||
|
||||
if (dpsMember.isPaused())
|
||||
{
|
||||
dpsMember.unpause();
|
||||
log.debug("Unpausing {}", dpsMember.getName());
|
||||
}
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package net.runelite.client.plugins.dpscounter;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.time.Instant;
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@@ -34,4 +35,20 @@ class DpsMember
|
||||
{
|
||||
end = Instant.now();
|
||||
}
|
||||
|
||||
boolean isPaused()
|
||||
{
|
||||
return end != null;
|
||||
}
|
||||
|
||||
void unpause()
|
||||
{
|
||||
if (end == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
start = start.plus(Duration.between(end, Instant.now());
|
||||
end = null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ import java.awt.Graphics2D;
|
||||
import java.text.DecimalFormat;
|
||||
import java.util.Map;
|
||||
import javax.inject.Inject;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
@@ -30,7 +30,7 @@ public class DpsOverlay extends Overlay
|
||||
this.dpsCounterPlugin = dpsCounterPlugin;
|
||||
this.dpsConfig = dpsConfig;
|
||||
this.partyService = partyService;
|
||||
getMenuEntries().add(new OverlayMenuEntry(RUNELITE_OVERLAY_CONFIG, "Reset", "DPS counter"));
|
||||
getMenuEntries().add(new OverlayMenuEntry(RUNELITE_OVERLAY, "Reset", "DPS counter"));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user