Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class ChatListener implements Listener {
- public static HashMap<String, String> prefixRename = new HashMap();
- private static final String QUIZPREFIX = "�8[�3Quiz�8] ";
- private HashMap<Object, Object> supportWaiting = SupportChatCommand.supportWaiting;
- private HashMap<Object, Object> supportChannel = SupportChatCommand.supportChannel;
- @EventHandler
- public void onChat(AsyncPlayerChatEvent event) {
- Player player = event.getPlayer();
- String chatMessage = event.getMessage();
- SpigotUser user = SpigotUser.getUser(player);
- String server = VaroxCore.getInstance().getConfigFile().getServer();
- boolean cityBuild = server.equalsIgnoreCase("CityBuild");
- boolean seaBuild = server.equalsIgnoreCase("SeaBuild");
- boolean chatMute = ChatMuteCommand.MUTESTATE;
- String currency = "";
- if (cityBuild) { currency = "&6 Voxis"; }
- else if (seaBuild) { currency = "&6 M�nzen"; }
- Contexts contexts = LuckPerms.getApi().getContextManager().getApplicableContexts(player);
- MetaData Meta = ((User)Objects.requireNonNull(LuckPerms.getApi().getUser(event.getPlayer().getName()))).getCachedData().getMetaData(contexts);
- String Prefix = ((String)Objects.requireNonNull(Meta.getPrefix())).replaceAll("&", "�");
- String EcoPapi = "�f%vault_eco_balance_formatted% ";
- String Eco = PlaceholderAPI.setPlaceholders(player, EcoPapi);
- String FraktionPapi = "�f%seacore_fraktion% ";
- String Fraktion = PlaceholderAPI.setPlaceholders(player, FraktionPapi);
- ComponentBuilder BUILDER_CITYBUILD_NOCLAN = (new ComponentBuilder("")).append("�eName: ").append(event.getPlayer().getName() + "\n").append("�eGuthaben: ").append(Eco + "Voxis");
- ComponentBuilder BUILDER_SEABUILD_NOCLAN = (new ComponentBuilder("")).append("�eName: ").append(event.getPlayer().getName() + "\n").append("�eGuthaben: ").append(Eco + "M�nzen\n").append("�eFraktion: ").append(Fraktion);
- ComponentBuilder BUILDER_CITYBUILD = BUILDER_CITYBUILD_NOCLAN;
- ComponentBuilder BUILDER_SEABUILD = BUILDER_SEABUILD_NOCLAN;
- if (event.isCancelled())
- return;
- if (prefixRename.containsKey(player.getName())) {
- if (!chatMessage.startsWith("cancel")) {
- event.setCancelled(true);
- String oldPrefix = (String)prefixRename.get(player.getName());
- VaroxCore.getInstance().getPrefixPerformer().renamePrefix(oldPrefix, "&8[" + chatMessage + "&8] &c");
- Bukkit.getScheduler().runTaskLater(VaroxCore.getInstance(), () -> prefixRename.clear(), 20L);
- player.sendMessage(Colors.convertStringWithColors("�8[�b�lVarox�8] �7&2Der Prefix wurde umbenannt in: &8[" + chatMessage
- .replaceAll("&", "�") + "&8] &c".replaceAll("&", "�")));
- return;
- }
- event.setCancelled(true);
- prefixRename.clear();
- player.sendMessage(Colors.convertStringWithColors("�8[�b�lVarox�8] �7&cDu hast die Aktion abgebrochen."));
- player.sendMessage(Colors.convertStringWithColors("�8[�b�lVarox�8] �7&2Der Chat wurde wieder freigegeben."));
- player.sendMessage(Colors.convertStringWithColors(""));
- return;
- }
- if (chatMute &&
- !player.hasPermission("chat.bypass")) {
- VaroxCore.getInstance().getMessageFile().sendChatMutedIsActiveMessage(player);
- event.setCancelled(true);
- return;
- }
- if (chatMessage.contains("&4") &&
- !player.hasPermission("*")) {
- VaroxCore.getInstance().getMessageFile().sendChatNotAllowed(player);
- event.setCancelled(true);
- return;
- }
- if (!player.hasPermission("chat.color")) {
- chatMessage = chatMessage.replace("&", "");
- } else {
- chatMessage = chatMessage.replace("&", "�");
- }
- if (chatMessage.startsWith("@")) {
- event.setCancelled(true);
- return;
- }
- if (QuizCommand.QUIZSTATE) {
- String answer = (String)QuizCommand.quizMap.get("Answer");
- int price = ((Integer)QuizCommand.quizMap.get("Price")).intValue();
- if (chatMessage.equalsIgnoreCase(answer) || chatMessage.contains(answer)) {
- event.setCancelled(true);
- for (Player all : Bukkit.getOnlinePlayers()) {
- all.sendMessage(Colors.convertStringWithColors(""));
- all.sendMessage(Colors.convertStringWithColors("&7--------------- [ &3&lQUIZ &7] ---------------"));
- all.sendMessage(Colors.convertStringWithColors(""));
- all.sendMessage(Colors.convertStringWithColors("�8[�3Quiz�8] &6Der Spieler&3 " + player.getName() + " &6hat gewonnen."));
- all.sendMessage(Colors.convertStringWithColors("�8[�3Quiz�8] &8? &6Die richtige Antwort war:&3 " + answer));
- all.sendMessage(Colors.convertStringWithColors("�8[�3Quiz�8] &8? &6Er gewinnt:&3 " + price + currency));
- all.sendMessage(Colors.convertStringWithColors(""));
- }
- VaroxCore.econ.depositPlayer(player.getName(), price);
- player.sendMessage(Colors.convertStringWithColors("�8[�3Quiz�8] &2Du hast die Frage richtig beantwortet."));
- player.sendMessage(Colors.convertStringWithColors("�8[�3Quiz�8] &2Dir wurden &3" + price + currency + " &2gutgeschrieben."));
- player.sendMessage("");
- Bukkit.getScheduler().cancelTask(QuizCommand.quizTaskId);
- QuizCommand.QUIZSTATE = false;
- QuizCommand.quizMap.clear();
- return;
- }
- }
- String colorCode = "";
- String chatFormat = "";
- String chatFormatNoClan = VaroxCore.getInstance().getMessageFile().getChatFormat().replace("%PREFIX%", Prefix).replace("%PLAYER%", player.getDisplayName()).replace("&", "�");
- chatFormat = chatFormatNoClan;
- if (user.existsPersistKey("autoColor") &&
- !user.getPersistValue("autoColor").equals(Boolean.valueOf(false))) {
- colorCode = (String)user.getPersistValue("autoColor");
- }
- if (user.existsPersistKey("autoColor") && !user.getPersistValue("autoColor").equals(Boolean.valueOf(false))) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", colorCode)); }
- else if (player.hasPermission("tab.admin")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�4")); }
- else if (player.hasPermission("tab.admin")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�4")); }
- else if (player.hasPermission("tab.dev")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�b")); }
- else if (player.hasPermission("tab.builder")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�f")); }
- else if (player.hasPermission("tab.mod")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�c")); }
- else if (player.hasPermission("tab.supp")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�2")); }
- else if (player.hasPermission("tab.tsupp")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�a")); }
- else if (player.hasPermission("tab.helfer")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�d")); }
- else if (player.hasPermission("tab.youtuber")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�c")); }
- else if (player.hasPermission("tab.primeplus")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�b")); }
- else if (player.hasPermission("tab.reaper")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�e")); }
- else if (player.hasPermission("tab.svip")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�c")); }
- else if (player.hasPermission("tab.supreme")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�c")); }
- else if (player.hasPermission("tab.chrome")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�a")); }
- else if (player.hasPermission("tab.prime")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�b")); }
- else if (player.hasPermission("tab.vibe")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�6")); }
- else if (player.hasPermission("tab.spieler")) { event.setFormat(chatFormat.replace("%CHAT_COLOR%", "�f")); }
- String format = event.getFormat() + chatMessage;
- TextComponent formatCityBuild = new TextComponent(TextComponent.fromLegacyText(format));
- formatCityBuild.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, BUILDER_CITYBUILD.create()));
- formatCityBuild.setClickEvent(new ClickEvent(ClickEvent.Action.SUGGEST_COMMAND, "/msg " + event.getPlayer().getName()));
- TextComponent formatSeaBuild = new TextComponent(TextComponent.fromLegacyText(format));
- formatSeaBuild.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, BUILDER_SEABUILD.create()));
- formatSeaBuild.setClickEvent(new ClickEvent(ClickEvent.Action.SUGGEST_COMMAND, "/msg " + event.getPlayer().getName()));
- for (Map.Entry<Object, Object> entry : this.supportChannel.entrySet()) {
- String suppFormat = Colors.convertStringWithColors("&8[&2SC&8] " + event.getFormat() + chatMessage);
- if (entry.getValue().equals(player.getUniqueId()) || entry.getKey().equals(player.getUniqueId())) {
- List<Object> support = new ArrayList<Object>();
- support.add(entry.getValue());
- support.add(entry.getKey());
- support.forEach(o -> {
- event.setCancelled(true);
- UUID uuid = (UUID)o;
- Player player1 = Bukkit.getPlayer(uuid);
- player1.sendMessage(suppFormat);
- });
- return;
- }
- }
- for (Player all : Bukkit.getOnlinePlayers()) {
- if (!chatMessage.startsWith("/")) {
- event.setCancelled(true);
- SpigotUser spigotUser = SpigotUser.getUser(all);
- if (!spigotUser.existsPersistKey("supportState") || spigotUser.getPersistValue("supportState").equals(Boolean.valueOf(false))) {
- if (cityBuild) { all.spigot().sendMessage(formatCityBuild); continue; }
- if (seaBuild) all.spigot().sendMessage(formatSeaBuild);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement