11package simplexity .simplepms .logic ;
22
3- import net .kyori .adventure .text .Component ;
43import org .bukkit .command .CommandSender ;
54import org .bukkit .entity .Player ;
65import simplexity .simplepms .SimplePMs ;
@@ -21,9 +20,13 @@ public static void handlePrivateMessage(CommandSender initiator, CommandSender t
2120 messageContent = messageEvent .getMessageContent ();
2221 handleMessageSend (initiator , target , messageContent );
2322 handleMessageReceive (initiator , target , messageContent );
24- handleSocialSpy (initiator , target , messageContent );
2523 lastMessaged .put (initiator , target );
2624 lastMessaged .put (target , initiator );
25+ if (!(initiator instanceof Player ) || !(target instanceof Player )) {
26+ SpyHandler .handleConsoleSpy (messageEvent );
27+ } else {
28+ SpyHandler .handleSocialSpy (messageEvent );
29+ }
2730 }
2831
2932 private static void handleMessageSend (CommandSender initiator , CommandSender target , String messageContent ) {
@@ -51,77 +54,7 @@ private static void handleMessageReceive(CommandSender initiator, CommandSender
5154 }
5255
5356
54- public static void sendCommandSpy (CommandSender initiator , String command , String messageContent ) {
55- if (initiator .hasPermission (Constants .BYPASS_COMMAND_SPY )) return ;
56- Component parsedMessage = MessageUtils .getInstance ().parseMessage (
57- LocaleMessage .FORMAT_COMMAND_SPY .getMessage (), initiator ,
58- command , messageContent , true );
59- for (Player spyingPlayer : SimplePMs .getSpyingPlayers ()) {
60- if (initiator .equals (spyingPlayer )) continue ;
61- spyingPlayer .sendMessage (parsedMessage );
62- playSpySound (spyingPlayer );
63- }
64- if (ConfigHandler .getInstance ().doesConsoleHaveCommandSpy ()) {
65- sendConsoleMessage (parsedMessage );
66- }
67- }
68-
69- private static void handleSocialSpy (CommandSender initiator , CommandSender target , String messageContent ) {
70- boolean consoleSpy = false ;
71- Player initiatorPlayer = MessageUtils .getInstance ().getPlayerFromCommandSender (initiator );
72- Player targetPlayer = MessageUtils .getInstance ().getPlayerFromCommandSender (target );
73- if (initiatorPlayer == null || targetPlayer == null ) consoleSpy = true ;
74- if (!consoleSpy ) {
75- if (initiatorPlayer .hasPermission (Constants .BYPASS_SOCIAL_SPY ) || targetPlayer .hasPermission (Constants .BYPASS_SOCIAL_SPY ))
76- return ;
77- sendSocialSpy (initiator , target , messageContent );
78- } else {
79- sendConsoleSpy (initiator , target , messageContent );
80- }
81- }
82-
83- private static void sendConsoleSpy (CommandSender initiator , CommandSender target , String messageContent ) {
84- Component parsedMessage = MessageUtils .getInstance ().parseMessage (
85- LocaleMessage .FORMAT_SOCIAL_SPY .getMessage (),
86- initiator , target , messageContent ,
87- true );
88- for (Player spyingPlayer : SimplePMs .getSpyingPlayers ()) {
89- if (initiator .equals (spyingPlayer ) || target .equals (spyingPlayer )) continue ;
90- if (!spyingPlayer .hasPermission (Constants .ADMIN_CONSOLE_SPY )) continue ;
91- spyingPlayer .sendMessage (parsedMessage );
92- playSpySound (spyingPlayer );
93- }
94- if (ConfigHandler .getInstance ().doesConsoleHaveSocialSpy ()) {
95- sendConsoleMessage (parsedMessage );
96- }
97- }
98-
99- private static void sendSocialSpy (CommandSender initiator , CommandSender target , String messageContent ) {
100- Component parsedMessage = MessageUtils .getInstance ().parseMessage (
101- LocaleMessage .FORMAT_SOCIAL_SPY .getMessage (),
102- initiator , target , messageContent ,
103- true );
104- for (Player spyingPlayer : SimplePMs .getSpyingPlayers ()) {
105- if (initiator .equals (spyingPlayer ) || target .equals (spyingPlayer )) continue ;
106- spyingPlayer .sendMessage (parsedMessage );
107- playSpySound (spyingPlayer );
108- }
109- if (ConfigHandler .getInstance ().doesConsoleHaveSocialSpy ()) {
110- sendConsoleMessage (parsedMessage );
111- }
112- }
113-
114- private static void sendConsoleMessage (Component message ) {
115- SimplePMs .getPMConsoleSender ().sendMessage (message );
116- }
11757
118- private static void playSpySound (Player spyingPlayer ) {
119- if (!ConfigHandler .getInstance ().messagePlaysSoundForSpy ()) return ;
120- spyingPlayer .playSound (spyingPlayer ,
121- ConfigHandler .getInstance ().getSpySound (),
122- ConfigHandler .getInstance ().getSpyVolume (),
123- ConfigHandler .getInstance ().getSpyPitch ());
124- }
12558
12659 private static PrivateMessageEvent callPMEvent (CommandSender initiator , CommandSender target , String messageContent ) {
12760 PrivateMessageEvent messageEvent = new PrivateMessageEvent (initiator , target , messageContent , SimplePMs .getSpyingPlayers ());
0 commit comments