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

Помогите runTaskTimer not working

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

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

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

    Баллы:
    46
    Суть в чём: при достижении определённого времени, будет выполняться соответствующие действия, но таймер не работает. Только при "СТАРТЕ" выводит в консоль "result: 0" и всё.
    P.S. 30*1000 = 30 секунд жи? Я же не дибил?

    Код:
       
      private static final int CORE_FREQUENCY_DESTRUCTION = 30 * 1000;
    
            Bukkit.getScheduler().runTaskTimer(this, new Runnable() {
                @Override
                public void run() {
                    currentGameDate = new Date().getTime();
                    int result = (int) (startGameDate - currentGameDate) / 1000;
                    System.out.println("result: " + result);
                    if (result >= 30) {
                        System.out.println("Done: " + result);
                    }
                }
            }, 0, CORE_FREQUENCY_DESTRUCTION);
    
    P.S. System.out.println чисто для проверки. Настоящие действия ещё не поставил туда.
     
  2. Хостинг MineCraft
    <
  3. xDark

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

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    20 тиков - 1 секунда
     
  4. Автор темы
    Exception_Prototype

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

    Баллы:
    46
    Не понял. К чему это?
     
  5. slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooooooooooo
    В шедулере 20 - 1 секунда. В потоках 1000-1 секунда
     
  6. Автор темы
    Exception_Prototype

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

    Баллы:
    46
    Хорошо. А что я сделал не правильно? Можете этот момент объяснить? Я с потоками ранее не работал.
     
  7. alexandrage

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

    Баллы:
    173
    Skype:
    alexandr0116
    20 тиков при 20-ти tps = 1 секунда. Из чего делаем выводы, 600 тиков при 20-ти tps = 30 секунд. CORE_FREQUENCY_DESTRUCTION = 30 * 20. Математика епти, не учат уже в школе?
     
    Последнее редактирование: 7 дек 2016

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