Спавн объекты в игровом уровне в установленное время

Мне нужен способ порождать объекты на уровне в установленное время. Я знаю, что могу сделать это с помощью операторов If, проверяя переменные времени, но эта идея глупа, потому что она проверяет обновление ewery, если это подходящее время, и это замедлит мою игру. Есть ли другой способ? Я программирую на Java. И извините за плохой английский.

1 ответ

Решение

Вы захотите использовать класс таймера Java, http://docs.oracle.com/javase/6/docs/api/java/util/Timer.html

Вот простой пример:

public class Reminder 
{
    Timer timer;

    public Reminder(int seconds) {
        timer = new Timer();
        timer.schedule(new RemindTask(), seconds*1000);
    }

    class RemindTask extends TimerTask {
        public void run() {
            System.out.println("Time's up!");
            timer.cancel(); //Terminate the timer thread
        }
    }

    public static void main(String args[]) {
        new Reminder(5);
        System.out.println("Task scheduled.");
    }
}

В вашем случае вы захотите заменить вызов метода расписания таймера из аргумента секунд на переменную Date. Вы будете использовать этот конструктор:

schedule (TimerTask task, Date time) Планирует выполнение указанной задачи в указанное время.

Надеюсь, это поможет вам!

Другие вопросы по тегам