entity hider: add option to hide ignored players

This is diabled in pvp to avoid abuse. This additionally allows the
"hide" options to be set without hiding others now.
This commit is contained in:
Adam
2021-02-13 09:50:12 -05:00
parent 5545b9d0ad
commit 77757229a5
3 changed files with 45 additions and 48 deletions

View File

@@ -29,16 +29,18 @@ import net.runelite.client.config.Config;
import net.runelite.client.config.ConfigGroup;
import net.runelite.client.config.ConfigItem;
@ConfigGroup("entityhider")
@ConfigGroup(EntityHiderConfig.GROUP)
public interface EntityHiderConfig extends Config
{
String GROUP = "entityhider";
@ConfigItem(
position = 1,
keyName = "hidePlayers",
name = "Hide Players",
description = "Configures whether or not players are hidden"
name = "Hide Others",
description = "Configures whether or not other players are hidden"
)
default boolean hidePlayers()
default boolean hideOthers()
{
return true;
}
@@ -46,10 +48,10 @@ public interface EntityHiderConfig extends Config
@ConfigItem(
position = 2,
keyName = "hidePlayers2D",
name = "Hide Players 2D",
description = "Configures whether or not players 2D elements are hidden"
name = "Hide Others 2D",
description = "Configures whether or not other players 2D elements are hidden"
)
default boolean hidePlayers2D()
default boolean hideOthers2D()
{
return true;
}
@@ -78,6 +80,17 @@ public interface EntityHiderConfig extends Config
@ConfigItem(
position = 5,
keyName = "hideIgnores",
name = "Hide Ignores",
description = "Configures whether or not ignored players are hidden"
)
default boolean hideIgnores()
{
return false;
}
@ConfigItem(
position = 6,
keyName = "hideLocalPlayer",
name = "Hide Local Player",
description = "Configures whether or not the local player is hidden"
@@ -88,7 +101,7 @@ public interface EntityHiderConfig extends Config
}
@ConfigItem(
position = 6,
position = 7,
keyName = "hideLocalPlayer2D",
name = "Hide Local Player 2D",
description = "Configures whether or not the local player's 2D elements are hidden"
@@ -99,7 +112,7 @@ public interface EntityHiderConfig extends Config
}
@ConfigItem(
position = 7,
position = 8,
keyName = "hideNPCs",
name = "Hide NPCs",
description = "Configures whether or not NPCs are hidden"
@@ -110,7 +123,7 @@ public interface EntityHiderConfig extends Config
}
@ConfigItem(
position = 8,
position = 9,
keyName = "hideNPCs2D",
name = "Hide NPCs 2D",
description = "Configures whether or not NPCs 2D elements are hidden"
@@ -121,7 +134,7 @@ public interface EntityHiderConfig extends Config
}
@ConfigItem(
position = 9,
position = 10,
keyName = "hidePets",
name = "Hide Pets",
description = "Configures whether or not other player pets are hidden"
@@ -132,7 +145,7 @@ public interface EntityHiderConfig extends Config
}
@ConfigItem(
position = 10,
position = 11,
keyName = "hideAttackers",
name = "Hide Attackers",
description = "Configures whether or not NPCs/players attacking you are hidden"
@@ -143,7 +156,7 @@ public interface EntityHiderConfig extends Config
}
@ConfigItem(
position = 11,
position = 12,
keyName = "hideProjectiles",
name = "Hide Projectiles",
description = "Configures whether or not projectiles are hidden"

View File

@@ -28,13 +28,9 @@ package net.runelite.client.plugins.entityhider;
import com.google.inject.Provides;
import javax.inject.Inject;
import net.runelite.api.Client;
import net.runelite.api.GameState;
import net.runelite.api.Player;
import net.runelite.api.coords.WorldPoint;
import net.runelite.client.events.ConfigChanged;
import net.runelite.api.events.GameStateChanged;
import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.Subscribe;
import net.runelite.client.events.ConfigChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
@@ -67,27 +63,22 @@ public class EntityHiderPlugin extends Plugin
@Subscribe
public void onConfigChanged(ConfigChanged e)
{
updateConfig();
}
@Subscribe
public void onGameStateChanged(GameStateChanged event)
{
if (event.getGameState() == GameState.LOGGED_IN)
if (e.getGroup().equals(EntityHiderConfig.GROUP))
{
client.setIsHidingEntities(isPlayerRegionAllowed());
updateConfig();
}
}
private void updateConfig()
{
client.setIsHidingEntities(isPlayerRegionAllowed());
client.setIsHidingEntities(true);
client.setPlayersHidden(config.hidePlayers());
client.setPlayersHidden2D(config.hidePlayers2D());
client.setOthersHidden(config.hideOthers());
client.setOthersHidden2D(config.hideOthers2D());
client.setFriendsHidden(config.hideFriends());
client.setFriendsChatMembersHidden(config.hideFriendsChatMembers());
client.setIgnoresHidden(config.hideIgnores());
client.setLocalPlayerHidden(config.hideLocalPlayer());
client.setLocalPlayerHidden2D(config.hideLocalPlayer2D());
@@ -107,11 +98,12 @@ public class EntityHiderPlugin extends Plugin
{
client.setIsHidingEntities(false);
client.setPlayersHidden(false);
client.setPlayersHidden2D(false);
client.setOthersHidden(false);
client.setOthersHidden2D(false);
client.setFriendsHidden(false);
client.setFriendsChatMembersHidden(false);
client.setIgnoresHidden(false);
client.setLocalPlayerHidden(false);
client.setLocalPlayerHidden2D(false);
@@ -125,19 +117,4 @@ public class EntityHiderPlugin extends Plugin
client.setProjectilesHidden(false);
}
private boolean isPlayerRegionAllowed()
{
final Player localPlayer = client.getLocalPlayer();
if (localPlayer == null)
{
return true;
}
final int playerRegionID = WorldPoint.fromLocalInstance(client, localPlayer.getLocalLocation()).getRegionID();
// 9520 = Castle Wars
return playerRegionID != 9520;
}
}