Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Как выключить таймер, чтобы его можно было потом запустить?

Тема в разделе "Разработка плагинов для новичков", создана пользователем waterwalker, 15 ноя 2016.

Статус темы:
Закрыта.
  1. Автор темы
    waterwalker

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

    Баллы:
    61
    Имя в Minecraft:
    SeemsGood
    Столкнулся с проблемой:
    Мне нужно запустить таймер из одного класса. Затем, нужно его отменить в другом классе. После этого мне нужно опять запустить этот же таймер. Как это сделать?
    1 класс:
    Код:
    public class OnMove implements Listener {
    public static java.util.Timer tim = new Timer();
    @EventHandler
    public void onMove(PlayerMoveEvent e){
    <...>
    TimerTask a = new TimerTask() {
    @Override
    public void run() {
    b.getWorld().playEffect(b.getLocation().add(0.5,1,0.5), Effect.valueOf(getCfg().getString(name+".Effect")), var1);
    //Вызов частиц. b - Блок
    };
    tim.schedule(a, 0, nb.getInt("Delay"));
    }
    
    }
    
    2 класс:
    Код:
    public class onBreak implements Listener {
    @EventHandler
    public void onBreak(BlockBreakEvent e) {
    //Здесь должна быть отмена таймера, при этом, если произойдет событие, описанное в первом классе, ошибку не выдаст и будет нормально работать.
    }
    
    }
    
    Заранее спасибо.

    З.Ы.
    <...> - некий код.
     
  2. Хостинг MineCraft
    <
  3. xDark

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

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    boolean
     
  4. Автор темы
    waterwalker

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

    Баллы:
    61
    Имя в Minecraft:
    SeemsGood
    Можно пример? Не совсем понимаю, что Вы имеете ввиду.[DOUBLEPOST=1479227357,1479222121][/DOUBLEPOST]Up!
     
  5. DonDays

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

    Баллы:
    96
    Имя в Minecraft:
    DonDays
    WTF? 1 класс на евент?
    BukkitTask
     
  6. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    cancel() не?
     
  7. Автор темы
    waterwalker

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

    Баллы:
    61
    Имя в Minecraft:
    SeemsGood
    При повторном запуске таймера выдает ошибку если cancel[DOUBLEPOST=1479232159,1479232090][/DOUBLEPOST]
    Пример можно, пожалуйста...
     
  8. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Ну так тебе его нужно по новой определить, таймер t = new таймер() t.schedule
     
    Последнее редактирование: 16 ноя 2016
  9. DonDays

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

    Баллы:
    96
    Имя в Minecraft:
    DonDays
    new BukkitRunnable()?
     
  10. Автор темы
    waterwalker

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

    Баллы:
    61
    Имя в Minecraft:
    SeemsGood
    Всем спасибо, реализовал через BukkitRunnable с условием. Тогда и выключать не надо.
     
Статус темы:
Закрыта.

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