Как бы я заставил сообщение ждать в onEnable? - PullRequest
0 голосов
/ 27 января 2020

Итак, я создаю плагин 'chatbot', в котором плагин автоматически сообщает чат со ссылкой на пожертвование и другими полезными сообщениями. Я знаю, что мне, вероятно, нужно будет вставить public void onEnable void, однако я бы не знал, как заставить его ждать около 45 секунд, прежде чем он отправит другое сообщение, я знаю, что thread.sleep взломает sh сервер, но это была моя единственная мысль.

1 Ответ

2 голосов
/ 28 января 2020

Для любых отложенных / повторных действий вы можете использовать Bukkit Schedule API (https://bukkit.gamepedia.com/Scheduler_Programming).

Для отправки сообщения после задержки вы можете использовать этот код:

public void onEnable() {
    new BukkitRunnable() {

        @Override
        public void run() {
            // What you want to schedule goes here
            plugin.getServer().broadcastMessage("Welcome to Bukkit! Remember to read the documentation!");
        }

    }.runTaskLater(this, 20);  // means delay of 20 ticks = 1 sec
}
...