diff --git a/src/main/java/com/massivecraft/factions/FPlayer.java b/src/main/java/com/massivecraft/factions/FPlayer.java index 83b58c86..d59e6c2c 100644 --- a/src/main/java/com/massivecraft/factions/FPlayer.java +++ b/src/main/java/com/massivecraft/factions/FPlayer.java @@ -66,6 +66,10 @@ public interface FPlayer extends EconomyParticipator { public ChatMode getChatMode(); + public void setIgnoreAllianceChat(boolean ignore); + + public boolean isIgnoreAllianceChat(); + public void setSpyingChat(boolean chatSpying); public boolean isSpyingChat(); diff --git a/src/main/java/com/massivecraft/factions/listeners/FactionsChatListener.java b/src/main/java/com/massivecraft/factions/listeners/FactionsChatListener.java index 029deaff..bb1ea025 100644 --- a/src/main/java/com/massivecraft/factions/listeners/FactionsChatListener.java +++ b/src/main/java/com/massivecraft/factions/listeners/FactionsChatListener.java @@ -58,7 +58,7 @@ public class FactionsChatListener implements Listener { //Send to all our allies for (FPlayer fplayer : FPlayers.getInstance().getOnlinePlayers()) { - if (myFaction.getRelationTo(fplayer) == Relation.ALLY) { + if (myFaction.getRelationTo(fplayer) == Relation.ALLY && !fplayer.isIgnoreAllianceChat()) { fplayer.sendMessage(message); } diff --git a/src/main/java/com/massivecraft/factions/zcore/persist/MemoryFPlayer.java b/src/main/java/com/massivecraft/factions/zcore/persist/MemoryFPlayer.java index 40f69858..b8b5cd74 100644 --- a/src/main/java/com/massivecraft/factions/zcore/persist/MemoryFPlayer.java +++ b/src/main/java/com/massivecraft/factions/zcore/persist/MemoryFPlayer.java @@ -64,6 +64,9 @@ public abstract class MemoryFPlayer implements FPlayer { // FIELD: chatMode protected ChatMode chatMode; + // FIELD: ignoreAllianceChat + protected boolean ignoreAllianceChat = false; + protected String id; protected String name; @@ -199,6 +202,14 @@ public abstract class MemoryFPlayer implements FPlayer { return chatMode; } + public void setIgnoreAllianceChat(boolean ignore) { + this.ignoreAllianceChat = ignore; + } + + public boolean isIgnoreAllianceChat() { + return ignoreAllianceChat; + } + public void setSpyingChat(boolean chatSpying) { this.spyingChat = chatSpying; }