1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Какой event выполняется для игрока ВСЕГДА?

Тема в разделе "Разработка плагинов для новичков", создана пользователем Nippels, 4 июл 2017.

  1. Автор темы
    Nippels

    Nippels Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Nippels
    Ну по вопросу все ясно) Мне нужен event, который выполняется постоянно, а не только когда игрок ходит.
    Не подскажите какой это event?
     
  2. zenbot

    zenbot Активный участник Пользователь

    Баллы:
    61
    Ивент - событие. То есть, когда игрок что-то делает, то вызывается конкретный ивент. Общего, на сколько я знаю, нет. Если я правильно понял для чего это, то это что-то типа антиафк? Что мешает обрабатывать все ивенты?
     
  3. Автор темы
    Nippels

    Nippels Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Nippels
    Хочу сделать что-то типо магнита) Когда игрок держит определенный предмет, выполняется действие.
    Но не тогда когда он ходит, можно и когда просто афкашит)
     
  4. zenbot

    zenbot Активный участник Пользователь

    Баллы:
    61
    Тогда это шедуллер.
    Код:
    Bukkit.getScheduler().runTaskTimer(plugin, () -> {
        ItemStack item = player.getItemInHand();
        if(item.getType() != Material.AIR) {
            //code
        }
    }, time, time);
    Где plugin - ссылка на Main класс, time - время в тиках. 20 тиков = 1 секунда. player - игрок.
    Сделай HashMap где-нибудь, туда записывай BukkitTask при заходе игрока, когда игрок выходит - отменяй task
     

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