Fix mentions happening within words

This commit is contained in:
Teriuihi 2023-06-17 23:58:33 +02:00
parent 6c6b798677
commit 9b7868bea7

View File

@ -102,7 +102,7 @@ public class ChatListener implements Listener {
if (message.contains(name.toLowerCase())) { if (message.contains(name.toLowerCase())) {
modifiableString.replace(TextReplacementConfig.builder() modifiableString.replace(TextReplacementConfig.builder()
.once() .once()
.match(Pattern.compile(name, Pattern.CASE_INSENSITIVE)) .match(Pattern.compile("\b" + name + "\b", Pattern.CASE_INSENSITIVE))
.replacement(mention.append(onlinePlayer.displayName())) .replacement(mention.append(onlinePlayer.displayName()))
.build()); .build());
if (!ChatUserManager.getChatUser(onlinePlayer.getUniqueId()).getIgnoredPlayers().contains(player.getUniqueId())) if (!ChatUserManager.getChatUser(onlinePlayer.getUniqueId()).getIgnoredPlayers().contains(player.getUniqueId()))
@ -110,7 +110,7 @@ public class ChatListener implements Listener {
} else if (message.contains(nickName.toLowerCase())) { } else if (message.contains(nickName.toLowerCase())) {
modifiableString.replace(TextReplacementConfig.builder() modifiableString.replace(TextReplacementConfig.builder()
.once() .once()
.match(Pattern.compile(nickName, Pattern.CASE_INSENSITIVE)) .match(Pattern.compile("\b" + nickName + "\b", Pattern.CASE_INSENSITIVE))
.replacement(mention.append(onlinePlayer.displayName())) .replacement(mention.append(onlinePlayer.displayName()))
.build()); .build());
if (!ChatUserManager.getChatUser(onlinePlayer.getUniqueId()).getIgnoredPlayers().contains(player.getUniqueId())) if (!ChatUserManager.getChatUser(onlinePlayer.getUniqueId()).getIgnoredPlayers().contains(player.getUniqueId()))