Eavesdrop Immunity Permission

This commit is contained in:
ryanhamshire 2015-12-16 14:27:06 -08:00
parent 320f692c20
commit fbd856cc64
2 changed files with 9 additions and 5 deletions

View File

@ -217,6 +217,7 @@ permissions:
griefprevention.claimbook: true griefprevention.claimbook: true
griefprevention.notignorable: true griefprevention.notignorable: true
griefprevention.seeinactivity: true griefprevention.seeinactivity: true
griefprevention.eavesdropimmune: true
griefprevention.siegeimmune: griefprevention.siegeimmune:
description: Makes a player immune to /Siege. description: Makes a player immune to /Siege.
default: op default: op
@ -307,3 +308,6 @@ permissions:
griefprevention.seeinactivity: griefprevention.seeinactivity:
description: Players with this permission can see how long a claim owner has been offline. description: Players with this permission can see how long a claim owner has been offline.
default: op default: op
griefprevention.eavesdropimmune:
description: Players with this permission can't have their private messages eavesdropped.
default: op

View File

@ -505,11 +505,11 @@ class PlayerEventHandler implements Listener
return; return;
} }
//if eavesdrop enabled and sender doesn't have the eavesdrop permission, eavesdrop //if eavesdrop enabled and sender doesn't have the eavesdrop immunity permission, eavesdrop
if(GriefPrevention.instance.config_whisperNotifications && !player.hasPermission("griefprevention.eavesdrop")) if(GriefPrevention.instance.config_whisperNotifications && !player.hasPermission("griefprevention.eavesdropimmune"))
{ {
//except for when the recipient has eavesdrop permission //except for when the recipient has eavesdrop immunity
if(targetPlayer == null || !targetPlayer.hasPermission("griefprevention.eavesdrop")) if(targetPlayer == null || !targetPlayer.hasPermission("griefprevention.eavesdropimmune"))
{ {
StringBuilder logMessageBuilder = new StringBuilder(); StringBuilder logMessageBuilder = new StringBuilder();
logMessageBuilder.append("[[").append(event.getPlayer().getName()).append("]] "); logMessageBuilder.append("[[").append(event.getPlayer().getName()).append("]] ");
@ -524,7 +524,7 @@ class PlayerEventHandler implements Listener
Collection<Player> players = (Collection<Player>)GriefPrevention.instance.getServer().getOnlinePlayers(); Collection<Player> players = (Collection<Player>)GriefPrevention.instance.getServer().getOnlinePlayers();
for(Player onlinePlayer : players) for(Player onlinePlayer : players)
{ {
if(onlinePlayer.hasPermission("griefprevention.eavesdrop") && !onlinePlayer.equals(targetPlayer)) if(onlinePlayer.hasPermission("griefprevention.eavesdrop") && !onlinePlayer.equals(targetPlayer) && !onlinePlayer.equals(player))
{ {
onlinePlayer.sendMessage(ChatColor.GRAY + logMessage); onlinePlayer.sendMessage(ChatColor.GRAY + logMessage);
} }