Решено - Таймер по команде - Плагины Minecraft - PullRequest
0 голосов
/ 08 мая 2020

Я пытаюсь добавить в свой плагин таймер / время восстановления. Я хочу быть похожим на то, когда они запускают команду, в которой говорится, пожалуйста, не двигайтесь в течение 3 секунд, а затем, если они не двигаются, он телепортирует их, но если они будут двигаться, он отменит и сбросит таймер. Спасибо за любую помощь!

1 Ответ

0 голосов
/ 09 мая 2020

Есть несколько способов проверить это. Вы можете, например, запустить отложенную задачу из встроенного планировщика Bukkit и проверить позицию там. Или вы можете установить флаг для пользователя где-нибудь и проверить это в событии playerMove.

Вы захотите использовать внутренний планировщик Bukkit, если вы выберете первый упомянутый вариант: https://bukkit.gamepedia.com/Scheduler_Programming

// proudly stolen from here:
// https://bukkit.org/threads/making-a-countdown-timer.97071/#post-1312737

this.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
  public void run() {
      // Your check if the player actually has moved
      // Your teleport logic
  }
}, 60L); // 60 L == 3 sec, 20 ticks == 1 sec
...