Войти или зарегистрироваться

Помогите event.setCancelled(true); не работает

Статус
Закрыто для дальнейших ответов.

KoT_B_MaMe

Участник
Пользователь
Баллы
31
Имя в Minecraft
KoT_B_MaMKe
я хотел обнаружить капс, ну вроде справился.
вот сделал if, который должен выполнять event.setCancelled(true); тем самым воспрепятствуя отправку сообщения, но оно не работает. просто не работает. ошибки в консоли нет, оно просто не отменяет сообщение. что не так?
Вот код:
@EventHandler
public void capsCheck(PlayerChatEvent event){
String message = event.getMessage();
int uppercase = 0;
Player player = event.getPlayer();

for(char c : message.toCharArray()) {
if(Character.isUpperCase(c)) {
uppercase+=1;
if(uppercase==5){
player.sendMessage(ChatColor.RED + "Выключите CAPSLOCK.");
event.setCancelled(true);
}
} else {
uppercase = 0;
}
}
}
}
 
В первую очередь, используй AsyncPlayerChatEvent вместо PlayerChatEvent. PCE заставляет чат работать в основном потоке сервера, да и в целом не поддерживается.
 
я это, проблему уже решил, так что закрою тему
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх