Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Плагин [CHAT] Chatty - всеядный менеджер чата [1.7.10 - 1.20 и выше]

Нашли нюанс whitelist слов, если там указано слово "факт", то в чате при написании "фАкт" или "Факт"(поняли короч;)
будет писать что обнаружен мат
 
Добавь, пожалуйста, проверку на мат/рекламу/спам/капс в лс (через команды /m, /msg и т.д.)
 
Думаю, в плагин полезно добавить возможность включить ванильные уведомления о входе/выходе, смерти игрока
 
У меня плагин не использует префиксы из "PermissionsEx", что делать ?
Вроде всё правильно настроено.
upload_2019-6-27_23-43-25.png
 
Думаю, в плагин полезно добавить возможность включить ванильные уведомления о входе/выходе, смерти игрока
Можно просто удалить раздел Misc в конфиге, тогда ванильные сообщения будут успешно работать.
 
Уже пытался, увы, не работает.
А мне нужно что-бы плагин отображал не свои префиксы, а префиксы "PermissionsEx".
Ну так Chatty берет префикс с помощью Vault, независимо от менеджера прав. Все должно отлично работать с тем, как ты настроил. Проверь конфигурации плагина PeX. Ну и пора бы уже переходить на LuckPerms(имхо).
 
Ну так Chatty берет префикс с помощью Vault, независимо от менеджера прав. Все должно отлично работать с тем, как ты настроил. Проверь конфигурации плагина PeX. Ну и пора бы уже переходить на LuckPerms(имхо).
А, боже, я дурак, я не поставил "Vault"..
Спасибо, очень благодарен.
 
Можно ли в этом плагине изменить стандартные сообщения о входе/выходе и сделать автоматическую рассылку сообщений AutoMessage ?
 
Можно ли в этом плагине изменить стандартные сообщения о входе/выходе и сделать автоматическую рассылку сообщений AutoMessage ?
Рассылка сдесь уже есть. Вот пример.

Код:
notifications:
  # Chat notifications..
  chat:
    # On/off chat notifications.
    enable: true
    # Notification lists.
    lists:
      # List "default".
      # Permission: chatty.notification.chat.default
      default:
        # Messages interval.
        time: 180
        # Messages prefix.
        prefix: ''
        # List of messages.
        messages:
        - '&r\n &7⎧\n &8⎪ &fПовышай свой &eранг &fи выходи в топ сервера\n &8⎪ &fЧем выше уровень&f, тем &e&nближе&r &fк топу!\n &8⎪ &fПодробнее - &6/rank\n &7⎩ \n&r'
 
Вопрос. Игнор у кого-то не работает? У меня типа даже в ответ ничего нет. Просто тишина.
@MrBrikster

Код:
[19:46:32] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing 'ign daniel1385' in ru.mrbrikster.chatty.commands.pm.IgnoreCommand(ignore)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:188) ~[SimpleCommandMap.class:1.7.10-R0.1-SNAPSHOT]
    at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchCommand(CraftServer.java:717) ~[CraftServer.class:1.7.10-R0.1-SNAPSHOT]
    at net.minecraft.network.NetHandlerPlayServer.func_147361_d(NetHandlerPlayServer.java:1317) [nh.class:?]
    at net.minecraft.network.NetHandlerPlayServer.func_147354_a(NetHandlerPlayServer.java:1099) [nh.class:?]
    at net.minecraft.network.play.client.C01PacketChatMessage.func_148833_a(C01PacketChatMessage.java:38) [ir.class:?]
    at net.minecraft.network.play.client.C01PacketChatMessage.func_148833_a(C01PacketChatMessage.java:53) [ir.class:?]
    at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:245) [ej.class:?]
    at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:173) [nc.class:?]
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:991) [MinecraftServer.class:?]
    at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [lt.class:?]
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [MinecraftServer.class:?]
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [MinecraftServer.class:?]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_191]
Caused by: java.lang.NoSuchMethodError: com.google.gson.JsonArray.add(Ljava/lang/String;)V
    at ru.mrbrikster.chatty.commands.pm.IgnoreCommand.handle(IgnoreCommand.java:74) ~[?:?]
    at ru.mrbrikster.chatty.baseplugin.commands.BukkitCommand.execute(BukkitCommand.java:47) ~[?:?]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:181) ~[SimpleCommandMap.class:1.7.10-R0.1-SNAPSHOT]
    ... 12 more
 
Последнее редактирование:
Вопрос. Игнор у кого-то не работает? У меня типа даже в ответ ничего нет. Просто тишина.
@MrBrikster

Код:
[19:46:32] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing 'ign daniel1385' in ru.mrbrikster.chatty.commands.pm.IgnoreCommand(ignore)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:188) ~[SimpleCommandMap.class:1.7.10-R0.1-SNAPSHOT]
    at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchCommand(CraftServer.java:717) ~[CraftServer.class:1.7.10-R0.1-SNAPSHOT]
    at net.minecraft.network.NetHandlerPlayServer.func_147361_d(NetHandlerPlayServer.java:1317) [nh.class:?]
    at net.minecraft.network.NetHandlerPlayServer.func_147354_a(NetHandlerPlayServer.java:1099) [nh.class:?]
    at net.minecraft.network.play.client.C01PacketChatMessage.func_148833_a(C01PacketChatMessage.java:38) [ir.class:?]
    at net.minecraft.network.play.client.C01PacketChatMessage.func_148833_a(C01PacketChatMessage.java:53) [ir.class:?]
    at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:245) [ej.class:?]
    at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:173) [nc.class:?]
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:991) [MinecraftServer.class:?]
    at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [lt.class:?]
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [MinecraftServer.class:?]
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [MinecraftServer.class:?]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_191]
Caused by: java.lang.NoSuchMethodError: com.google.gson.JsonArray.add(Ljava/lang/String;)V
    at ru.mrbrikster.chatty.commands.pm.IgnoreCommand.handle(IgnoreCommand.java:74) ~[?:?]
    at ru.mrbrikster.chatty.baseplugin.commands.BukkitCommand.execute(BukkitCommand.java:47) ~[?:?]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:181) ~[SimpleCommandMap.class:1.7.10-R0.1-SNAPSHOT]
    ... 12 more
Пофикшу.
 
Там, получается, что нельзя добавить, но удалить можно. А если в коде поменять 2 строки местами, то можно добавить, но удалить уже не получится.

https://github.com/Brikster/Chatty/...rikster/chatty/commands/pm/IgnoreCommand.java
Воскл. знаком отметил строки(хз, мб будет важно)

Код:
JsonElement jsonElement = permanentStorage.getProperty((Player) sender, "ignore").orElseGet(JsonArray::new);

        if (!jsonElement.isJsonArray())
            jsonElement = new JsonArray();

        if (JsonUtil.contains(jsonElement.getAsJsonArray(), new JsonPrimitive(ignoreTargetPlayer.getName()))) {
            sender.sendMessage(Chatty.instance().messages().get("ignore-command.remove-ignore")
                    .replace("{label}", label).replace("{player}", ignoreTargetPlayer.getName()));
!!!           ((JsonArray) jsonElement).remove(new JsonPrimitive(ignoreTargetPlayer.getName()));
        } else {
            sender.sendMessage(Chatty.instance().messages().get("ignore-command.add-ignore")
                    .replace("{label}", label).replace("{player}", ignoreTargetPlayer.getName()));
!!!            jsonElement.getAsJsonArray().add(ignoreTargetPlayer.getName());
        }

        permanentStorage.setProperty((Player) sender, "ignore", jsonElement);
    }

}
 
Последнее редактирование:
Там, получается, что нельзя добавить, но удалить можно. А если в коде поменять 2 строки местами, то можно добавить, но удалить уже не получится.

https://github.com/Brikster/Chatty/...rikster/chatty/commands/pm/IgnoreCommand.java
Воскл. знаком отметил строки(хз, мб будет важно)

Код:
JsonElement jsonElement = permanentStorage.getProperty((Player) sender, "ignore").orElseGet(JsonArray::new);

        if (!jsonElement.isJsonArray())
            jsonElement = new JsonArray();

        if (JsonUtil.contains(jsonElement.getAsJsonArray(), new JsonPrimitive(ignoreTargetPlayer.getName()))) {
            sender.sendMessage(Chatty.instance().messages().get("ignore-command.remove-ignore")
                    .replace("{label}", label).replace("{player}", ignoreTargetPlayer.getName()));
!!!           ((JsonArray) jsonElement).remove(new JsonPrimitive(ignoreTargetPlayer.getName()));
        } else {
            sender.sendMessage(Chatty.instance().messages().get("ignore-command.add-ignore")
                    .replace("{label}", label).replace("{player}", ignoreTargetPlayer.getName()));
!!!            jsonElement.getAsJsonArray().add(ignoreTargetPlayer.getName());
        }

        permanentStorage.setProperty((Player) sender, "ignore", jsonElement);
    }

}
Да там не в этом дело.

Он пытается к классам Gson из Spigot'а обращаться, где другая версия зашейжена. А у меня своя шейдится, чтобы на старых версиях этот функционал работал (там Gson'а в ядре нет).
 
Да там не в этом дело.

Он пытается к классам Gson из Spigot'а обращаться, где другая версия зашейжена. А у меня своя шейдится, чтобы на старых версиях этот функционал работал (там Gson'а в ядре нет).
С этим вроде бы понятно, а что по новым функция о которых тут писали? (Я не требую, но кое кто обещал сделать летом)
 
Да там не в этом дело.

Он пытается к классам Gson из Spigot'а обращаться, где другая версия зашейжена. А у меня своя шейдится, чтобы на старых версиях этот функционал работал (там Gson'а в ядре нет).
можешь еще пожалуйста whitelist слов чекнуть? просто там учитывается регистр букв, и к примеру добавляем в whitelist слово 'факел', если написать в чате Факел, то уже за мат принимает. а swears как раз без учета регистра, как и нужно
 
А это нормаль что я выключаю команду /spy и перехожу на сервер и она снова включена?
 

Поделиться этой страницей

Назад
Верх