Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Цикл для отслеживания времени

Метки:
Теги Теги
задержка плагин

loredmaxed3

Новичок
Пользователь
Баллы
6
Имя в Minecraft
loredmaxed3
Задумка в том, что-бы каждый час выдавать всем игрокам онлайн +1exp к уровню в своем плагине. Минуты я получаю, с ними все окей, но не могу запустить какой-то цикл, что-бы постоянно отслеживалось время. Я могу его отследить один раз когда выполню команду, мне нужно, что-бы я ввел например /customlevels payday start и начался цикл. Пробывал просто с бесконечным циклом while (true), ставил какую то задержку в 5 секунд с помощью Thread.sleep(5000), но сервер все равно ложился. Что я не так делаю? Был такой код:

DateFormat dateFormat = new SimpleDateFormat("mm");
while (true) {
if (dateFormat.format(new Date()).contains("00")) {
sender.sendMessage("Payday! +1exp");
Thread.sleep(*на 1 час в миллисекундах*)
} else {
try {
Thread.sleep(5000);
} catch (Exception ex) {
ex.printStackTrace();
return;
}
}
}
 
Последнее редактирование:
Просто завести через шедулер таймер, на какие-нибудь 5 секунд, чтобы он постоянно выполнял одно и тоже действие. Тебе не нужно писать цикл, это полный шлак, а нужно только написать "тело", которое будет регулярно выполняться.
 

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

Назад
Верх