diff --git a/pom.xml b/pom.xml
index 5e9ad5b..66e7f2a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -2,7 +2,7 @@
com.songoda
UltimateModeration
4.0.0
- 1.2.6
+ 1.2.7
clean install
UltimateModeration-${project.version}
diff --git a/src/main/java/com/songoda/ultimatemoderation/commands/CommandStaffChat.java b/src/main/java/com/songoda/ultimatemoderation/commands/CommandStaffChat.java
index 21d6275..049d9f2 100644
--- a/src/main/java/com/songoda/ultimatemoderation/commands/CommandStaffChat.java
+++ b/src/main/java/com/songoda/ultimatemoderation/commands/CommandStaffChat.java
@@ -38,6 +38,8 @@ public class CommandStaffChat extends AbstractCommand {
return ReturnType.FAILURE;
}
+ instance.getLocale().getMessage("event.staffchat.leave")
+ .processPlaceholder("channel", channelName).sendPrefixedMessage(player);
instance.getStaffChatManager().getChat(channelName).addMember(player);
return ReturnType.SUCCESS;
}
diff --git a/src/main/java/com/songoda/ultimatemoderation/listeners/ChatListener.java b/src/main/java/com/songoda/ultimatemoderation/listeners/ChatListener.java
index eabb146..1514d4b 100644
--- a/src/main/java/com/songoda/ultimatemoderation/listeners/ChatListener.java
+++ b/src/main/java/com/songoda/ultimatemoderation/listeners/ChatListener.java
@@ -8,6 +8,7 @@ import com.songoda.ultimatemoderation.utils.Methods;
import com.songoda.ultimatemoderation.settings.Settings;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.AsyncPlayerChatEvent;
@@ -35,7 +36,7 @@ public class ChatListener implements Listener {
return slowModeOverride;
}
- @EventHandler
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onChat(AsyncPlayerChatEvent event) {
Player player = event.getPlayer();
if (!onChat(player, event.getMessage()))
diff --git a/src/main/java/com/songoda/ultimatemoderation/staffchat/StaffChannel.java b/src/main/java/com/songoda/ultimatemoderation/staffchat/StaffChannel.java
index b76f38d..b915375 100644
--- a/src/main/java/com/songoda/ultimatemoderation/staffchat/StaffChannel.java
+++ b/src/main/java/com/songoda/ultimatemoderation/staffchat/StaffChannel.java
@@ -28,6 +28,10 @@ public class StaffChannel {
public void addMember(Player player) {
if (members.contains(player.getUniqueId())) return;
+ messageAll(UltimateModeration.getInstance().getLocale()
+ .getMessage("event.staffchat.alljoin")
+ .processPlaceholder("player", player.getName()).getMessage());
+
UltimateModeration.getInstance().getStaffChatManager().getChats().values().stream().forEach(members1 -> {
if (members1.listMembers().contains(player.getUniqueId())) {
members1.removeMember(player);
@@ -37,16 +41,13 @@ public class StaffChannel {
if (chatLog.size() > 5) {
chatLog.stream().skip(chatLog.size() - 3).forEach(message -> player.sendMessage(Methods.formatText(message)));
}
- messageAll(UltimateModeration.getInstance().getLocale()
- .getMessage("event.staffchat.join")
- .processPlaceholder("channel", channelName).getMessage());
}
public void removeMember(Player player) {
members.remove(player.getUniqueId());
messageAll(UltimateModeration.getInstance().getLocale()
- .getMessage("event.staffchat.leave")
- .processPlaceholder("channel", channelName).getMessage());
+ .getMessage("event.staffchat.allleave")
+ .processPlaceholder("player", player.getName()).getMessage());
}
public void processMessage(String message, Player player) {
diff --git a/src/main/resources/en_US.lang b/src/main/resources/en_US.lang
index d3dac06..4b7ad71 100644
--- a/src/main/resources/en_US.lang
+++ b/src/main/resources/en_US.lang
@@ -69,7 +69,9 @@ event:
message: '&7You have been warned'
staffchat:
leave: '&7You left &6%channel% &7successfully.'
- leave: '&7You joined &6%channel% &7successfully.'
+ join: '&7You joined &6%channel% &7successfully.'
+ allleave: '&6%player% &7has left the channel.'
+ alljoin: '&6%player% has joined the channel.'
nochannels: '&cYou are not in any channels.'
format: '&%color%[%channel%] %player%&%color%: %message%'
slowmode: