Помогите Авто-Размут

  • Автор темы Автор темы Slavkaa
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Slavkaa

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Slavok2001
Добрый вечер, форумчане. Писал плагин на баны/муты. Авто-разбан я сделать смог, тупо, конечно, но смог. А вот как сделать, чтобы автоматически снимало мут игроку, когда истекает его срок? Какое событие использовать или куда вообще воткнуть код размута?
 
Добрый вечер, форумчане. Писал плагин на баны/муты. Авто-разбан я сделать смог, тупо, конечно, но смог. А вот как сделать, чтобы автоматически снимало мут игроку, когда истекает его срок? Какое событие использовать или куда вообще воткнуть код размута?
System.currentTimeMillis() + бд sql, с банами так же
 
System.currentTimeMillis() + бд sql, с банами так же
Не, ты не совсем меня понял. Мне нужен механизм размута. Сам метод у меня есть, нужно только, чтобы сервер всегда проверял в муте игрок или уже нет.
 
Просто ивенет на чат слушай и чекай, если время прошло, то при написании сообщения снимай мут.
Разницы нет, что снимется мут сразу же, или при сообщении в чате.
 
Сделай так:
AsyncPlayerChatEvent: Проверяй и отключай мут, если нужно.
onDisable или onEnable: Проверяй всю базу и снимай муты, если нужно.
Вот и все.
 
Ну у меня нет возможности использовать базу. Короче, как я понял, надо каждую секунду в onEnable() проверять муты? Если так, то не нагрузит ли это сервер?
 
Просто хотелось бы, чтобы при авто-размуте игроку отсылалось сообщение, что мут прошел.
 
Ну у меня нет возможности использовать базу.
Я не имел ввиду mysql или sql. Базу матов, которые ты берешь из какого-то хранилища, вот и все.

Короче, как я понял, надо каждую секунду в onEnable() проверять муты? Если так, то не нагрузит ли это сервер?
Да нафига оно тебе каждую секунду. Один раз при выключении или при включении сервера проверь и норм.
А отсылать игроку смс не нужно, ему и без него нормально будет.
 
Я не имел ввиду mysql или sql. Базу матов, которые ты берешь из какого-то хранилища, вот и все.
Да нафига оно тебе каждую секунду. Один раз при выключении или при включении сервера проверь и норм.
А отсылать игроку смс не нужно, ему и без него нормально будет.
Просто я хотел реализовать что-то подобное размуту, как в Essentials'e
 
Просто я хотел реализовать что-то подобное размуту, как в Essentials'e
Да фигня это, но если так уж хочешь, то запускай шедулер(Желательно не в основном потоке. Т.е асинхронный) и в нём проверяй всю базу мутов и если что снимай мут и отсылай игроку смс(Если он онлайн), но уже через метод, который отправит смс в основном потоке.
 
Да фигня это, но если так уж хочешь, то запускай шедулер(Желательно не в основном потоке. Т.е асинхронный) и в нём проверяй всю базу мутов и если что снимай мут и отсылай игроку смс(Если он онлайн), но уже через метод, который отправит смс в основном потоке.
Повторяющийся шедулер? Но тогда он должен повторяться каждую секунду. Вот отсюда и вопрос: не нагрузит ли он сервер?
 
Повторяющийся шедулер? Но тогда он должен повторяться каждую секунду. Вот отсюда и вопрос: не нагрузит ли он сервер?
Нагрузит конечно, но если делать все через отдельный поток, то все будет окей.
На самом деле даже если ты будешь проверять через основной поток, то сервер не будет умирать(Конечно, если база не за 100к).
 
Повторяющийся шедулер? Но тогда он должен повторяться каждую секунду. Вот отсюда и вопрос: не нагрузит ли он сервер?
Но вообще конечно все от оптимизации кода зависит, но сомневаюсь, что ты там что-то ужасное сделаешь.
 
А вообще оно того не стоит конечно, лучше уж сделать одноразовую проверку в onEnable или onDisable, но тоже не через основной поток.
Повторяющийся шедулер? Но тогда он должен повторяться каждую секунду. Вот отсюда и вопрос: не нагрузит ли он сервер?
 
Но вообще конечно все от оптимизации кода зависит, но сомневаюсь, что ты там что-то ужасное сделаешь.
Такая фишка, что у меня мут для донатеров, т.е. вечного там не будет, да и на длительный срок тоже. Я все храню в хеше, т.к. эти данные не особы важны. Этот механизм, значит, вряд ли нагрузит сервер?
 
Вряд-ли.
Такая фишка, что у меня мут для донатеров, т.е. вечного там не будет, да и на длительный срок тоже. Я все храню в хеше, т.к. эти данные не особы важны. Этот механизм, значит, вряд ли нагрузит сервер?
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх