Sfoglia il codice sorgente

Added 'Chat.Channels.Party.Spies.Automatically_Enable_Spying' which allows chat spys to join servers with spying toggled on instead of off
its a QOL feature for people who are always spying on chat

nossr50 4 anni fa
parent
commit
449407439a

+ 1 - 0
Changelog.txt

@@ -1,6 +1,7 @@
 Version 2.1.151
     Fixed a bug where players could use the party chat command without the party chat permission
     Added new config 'chat.yml'
+    Added 'Chat.Channels.Party.Spies.Automatically_Enable_Spying' to chat.yml which when enabled will start users who have the chat spy permission in chat spying mode
     All chat settings that used to be in 'config.yml' are now in 'chat.yml'
 
     NOTES:

+ 1 - 2
src/main/java/com/gmail/nossr50/chat/ChatManager.java

@@ -218,5 +218,4 @@ public class ChatManager {
             }
         }
     }
-}
-
+}

+ 5 - 0
src/main/java/com/gmail/nossr50/config/ChatConfig.java

@@ -48,4 +48,9 @@ public class ChatConfig extends AutoUpdateConfigLoader {
         String key = "Chat.Channels." + StringUtils.getCapitalized(chatChannel.toString()) + ".Use_Display_Names";
         return config.getBoolean(key, true);
     }
+
+    public boolean isSpyingAutomatic() {
+        return config.getBoolean("Chat.Channels.Party.Spies.Automatically_Enable_Spying", false);
+    }
+
 }

+ 5 - 0
src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java

@@ -3,6 +3,7 @@ package com.gmail.nossr50.datatypes.player;
 import com.gmail.nossr50.chat.author.AdminAuthor;
 import com.gmail.nossr50.chat.author.PartyAuthor;
 import com.gmail.nossr50.config.AdvancedConfig;
+import com.gmail.nossr50.config.ChatConfig;
 import com.gmail.nossr50.config.Config;
 import com.gmail.nossr50.config.WorldBlacklist;
 import com.gmail.nossr50.config.experience.ExperienceConfig;
@@ -161,6 +162,10 @@ public class McMMOPlayer implements Identified {
         this.partyAuthor = new PartyAuthor(player);
 
         this.chatChannel = ChatChannel.NONE;
+
+        if(ChatConfig.getInstance().isSpyingAutomatic() && Permissions.adminChatSpy(getPlayer())) {
+            chatSpy = true;
+        }
     }
 
     public String getPlayerName() {

+ 3 - 0
src/main/resources/chat.yml

@@ -8,6 +8,9 @@ Chat:
             Enable: true
             # Whether or not to use the current display name of a player
             Use_Display_Names: true
+            Spies:
+                # Whether or not players with the chat spy permission join the server with chat spying toggled on
+                Automatically_Enable_Spying: false
         Admin:
             # Enable or disable party chat
             Enable: true