npcaggro: show for current slayer task option

Co-authored-by: OSRS-Athan <67913155+osrs-athan@users.noreply.github.com>
This commit is contained in:
LlemonDuck
2022-06-10 22:51:12 -04:00
committed by Adam
parent fcacf4deeb
commit c669f6462b
2 changed files with 28 additions and 0 deletions

View File

@@ -128,4 +128,15 @@ public interface NpcAggroAreaConfig extends Config
{
return false;
}
@ConfigItem(
keyName = "showOnSlayerTask",
name = "Show on slayer task",
description = "Enable for current slayer task NPCs",
position = 9
)
default boolean showOnSlayerTask()
{
return false;
}
}

View File

@@ -57,7 +57,10 @@ import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.Subscribe;
import net.runelite.client.game.ItemManager;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDependency;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.plugins.slayer.SlayerPlugin;
import net.runelite.client.plugins.slayer.SlayerPluginService;
import net.runelite.client.ui.overlay.OverlayManager;
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
import net.runelite.client.util.WildcardMatcher;
@@ -68,6 +71,7 @@ import net.runelite.client.util.WildcardMatcher;
tags = {"highlight", "lines", "unaggro", "aggro", "aggressive", "npcs", "area", "slayer"},
enabledByDefault = false
)
@PluginDependency(SlayerPlugin.class)
public class NpcAggroAreaPlugin extends Plugin
{
/*
@@ -114,6 +118,9 @@ public class NpcAggroAreaPlugin extends Plugin
@Inject
private Notifier notifier;
@Inject
private SlayerPluginService slayerPluginService;
@Getter
private final WorldPoint[] safeCenters = new WorldPoint[2];
@@ -270,6 +277,15 @@ public class NpcAggroAreaPlugin extends Plugin
return false;
}
if (config.showOnSlayerTask())
{
List<NPC> targets = slayerPluginService.getTargets();
if (targets.contains(npc))
{
return true;
}
}
for (String pattern : npcNamePatterns)
{
if (WildcardMatcher.matches(pattern, npcName))
@@ -381,6 +397,7 @@ public class NpcAggroAreaPlugin extends Plugin
switch (key)
{
case "npcUnaggroAlwaysActive":
case "showOnSlayerTask":
recheckActive();
break;
case "npcUnaggroCollisionDetection":