Remove config calls from fps overlay (#708)
This commit is contained in:
@@ -45,6 +45,7 @@ public class FpsDrawListener implements Runnable
|
|||||||
private static final int SAMPLE_SIZE = 4;
|
private static final int SAMPLE_SIZE = 4;
|
||||||
|
|
||||||
private final FpsConfig config;
|
private final FpsConfig config;
|
||||||
|
private final FpsPlugin plugin;
|
||||||
|
|
||||||
private long targetDelay = 0;
|
private long targetDelay = 0;
|
||||||
|
|
||||||
@@ -58,9 +59,10 @@ public class FpsDrawListener implements Runnable
|
|||||||
private long sleepDelay = 0;
|
private long sleepDelay = 0;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private FpsDrawListener(FpsConfig config)
|
private FpsDrawListener(FpsConfig config, FpsPlugin plugin)
|
||||||
{
|
{
|
||||||
this.config = config;
|
this.config = config;
|
||||||
|
this.plugin = plugin;
|
||||||
reloadConfig();
|
reloadConfig();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -83,8 +85,8 @@ public class FpsDrawListener implements Runnable
|
|||||||
|
|
||||||
private boolean isEnforced()
|
private boolean isEnforced()
|
||||||
{
|
{
|
||||||
return FpsLimitMode.ALWAYS == config.limitMode()
|
return FpsLimitMode.ALWAYS == plugin.getLimitMode()
|
||||||
|| (FpsLimitMode.UNFOCUSED == config.limitMode() && !isFocused);
|
|| (FpsLimitMode.UNFOCUSED == plugin.getLimitMode() && !isFocused);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -50,7 +50,6 @@ import net.runelite.client.ui.overlay.OverlayUtil;
|
|||||||
public class FpsOverlay extends Overlay
|
public class FpsOverlay extends Overlay
|
||||||
{
|
{
|
||||||
// Local dependencies
|
// Local dependencies
|
||||||
private final FpsConfig config;
|
|
||||||
private final Client client;
|
private final Client client;
|
||||||
private final FpsPlugin plugin;
|
private final FpsPlugin plugin;
|
||||||
|
|
||||||
@@ -58,9 +57,8 @@ public class FpsOverlay extends Overlay
|
|||||||
private boolean isFocused = true;
|
private boolean isFocused = true;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private FpsOverlay(FpsPlugin plugin, FpsConfig config, Client client)
|
private FpsOverlay(FpsPlugin plugin, Client client)
|
||||||
{
|
{
|
||||||
this.config = config;
|
|
||||||
this.client = client;
|
this.client = client;
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
setLayer(OverlayLayer.ABOVE_WIDGETS);
|
setLayer(OverlayLayer.ABOVE_WIDGETS);
|
||||||
@@ -75,8 +73,8 @@ public class FpsOverlay extends Overlay
|
|||||||
|
|
||||||
private boolean isEnforced()
|
private boolean isEnforced()
|
||||||
{
|
{
|
||||||
return FpsLimitMode.ALWAYS == config.limitMode()
|
return FpsLimitMode.ALWAYS == plugin.getLimitMode()
|
||||||
|| (FpsLimitMode.UNFOCUSED == config.limitMode() && !isFocused);
|
|| (FpsLimitMode.UNFOCUSED == plugin.getLimitMode() && !isFocused);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Color getFpsValueColor()
|
private Color getFpsValueColor()
|
||||||
@@ -110,7 +108,7 @@ public class FpsOverlay extends Overlay
|
|||||||
@Override
|
@Override
|
||||||
public Dimension render(Graphics2D graphics)
|
public Dimension render(Graphics2D graphics)
|
||||||
{
|
{
|
||||||
if (!config.drawFps() && !config.drawPing())
|
if (!plugin.isDrawFps() && !plugin.isDrawPing())
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -121,7 +119,7 @@ public class FpsOverlay extends Overlay
|
|||||||
|
|
||||||
int baseYOffset = (fontMetrics.getAscent() - fontMetrics.getDescent()) + 1;
|
int baseYOffset = (fontMetrics.getAscent() - fontMetrics.getDescent()) + 1;
|
||||||
|
|
||||||
if (config.drawFps())
|
if (plugin.isDrawFps())
|
||||||
{
|
{
|
||||||
final String fpsText = String.format("%d FPS", client.getFPS());
|
final String fpsText = String.format("%d FPS", client.getFPS());
|
||||||
final int textWidth = fontMetrics.stringWidth(fpsText);
|
final int textWidth = fontMetrics.stringWidth(fpsText);
|
||||||
@@ -132,7 +130,7 @@ public class FpsOverlay extends Overlay
|
|||||||
baseYOffset += 11;
|
baseYOffset += 11;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (config.drawPing())
|
if (plugin.isDrawPing())
|
||||||
{
|
{
|
||||||
final String pingText = String.format("%dms", plugin.getPing());
|
final String pingText = String.format("%dms", plugin.getPing());
|
||||||
final int textWidth = fontMetrics.stringWidth(pingText);
|
final int textWidth = fontMetrics.stringWidth(pingText);
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ import com.google.inject.Provides;
|
|||||||
import java.util.concurrent.Executors;
|
import java.util.concurrent.Executors;
|
||||||
import java.util.concurrent.ScheduledExecutorService;
|
import java.util.concurrent.ScheduledExecutorService;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
import lombok.AccessLevel;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.GameState;
|
import net.runelite.api.GameState;
|
||||||
@@ -90,6 +91,15 @@ public class FpsPlugin extends Plugin
|
|||||||
|
|
||||||
private final ScheduledExecutorService pingExecutorService = new ExecutorServiceExceptionLogger(Executors.newSingleThreadScheduledExecutor());
|
private final ScheduledExecutorService pingExecutorService = new ExecutorServiceExceptionLogger(Executors.newSingleThreadScheduledExecutor());
|
||||||
|
|
||||||
|
@Getter(AccessLevel.PACKAGE)
|
||||||
|
private FpsLimitMode limitMode;
|
||||||
|
|
||||||
|
@Getter(AccessLevel.PACKAGE)
|
||||||
|
private boolean drawFps;
|
||||||
|
|
||||||
|
@Getter(AccessLevel.PACKAGE)
|
||||||
|
private boolean drawPing;
|
||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
FpsConfig provideConfig(ConfigManager configManager)
|
FpsConfig provideConfig(ConfigManager configManager)
|
||||||
{
|
{
|
||||||
@@ -102,6 +112,10 @@ public class FpsPlugin extends Plugin
|
|||||||
if (event.getGroup().equals(CONFIG_GROUP_KEY))
|
if (event.getGroup().equals(CONFIG_GROUP_KEY))
|
||||||
{
|
{
|
||||||
drawListener.reloadConfig();
|
drawListener.reloadConfig();
|
||||||
|
|
||||||
|
limitMode = fpsConfig.limitMode();
|
||||||
|
drawFps = fpsConfig.drawFps();
|
||||||
|
drawPing = fpsConfig.drawPing();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -115,6 +129,9 @@ public class FpsPlugin extends Plugin
|
|||||||
@Override
|
@Override
|
||||||
protected void startUp() throws Exception
|
protected void startUp() throws Exception
|
||||||
{
|
{
|
||||||
|
limitMode = fpsConfig.limitMode();
|
||||||
|
drawFps = fpsConfig.drawFps();
|
||||||
|
drawPing = fpsConfig.drawPing();
|
||||||
overlayManager.add(overlay);
|
overlayManager.add(overlay);
|
||||||
drawManager.registerEveryFrameListener(drawListener);
|
drawManager.registerEveryFrameListener(drawListener);
|
||||||
drawListener.reloadConfig();
|
drawListener.reloadConfig();
|
||||||
@@ -131,7 +148,7 @@ public class FpsPlugin extends Plugin
|
|||||||
|
|
||||||
private void getPingToCurrentWorld()
|
private void getPingToCurrentWorld()
|
||||||
{
|
{
|
||||||
if (client.getGameState().equals(GameState.LOGGED_IN) && fpsConfig.drawPing())
|
if (client.getGameState().equals(GameState.LOGGED_IN) && drawPing)
|
||||||
{
|
{
|
||||||
ping = Ping.ping(String.format("oldschool%d.runescape.com", client.getWorld() - 300));
|
ping = Ping.ping(String.format("oldschool%d.runescape.com", client.getWorld() - 300));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user