Увеличить интервал таймера

У меня есть таймер, который вызывает функцию «bottleCreate» от 500 до 500 миллисекунд. Но я хочу, чтобы это время увеличивалось во время игры (создание бутылок ускоряется, и игра становится сложнее). Но я не знаю, как увеличить эту переменную в новом таймере. Спасибо

   interval=500;
   var my_timer=new Timer(interval);
    my_timer.addEventListener(TimerEvent.TIMER, bottleCreate);
    my_timer.start();

person Inês Rodrigues    schedule 11.05.2015    source источник


Ответы (1)


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

Согласно документации по классу таймера вы можете использовать переменную задержки, чтобы изменить интервальную скорость.

Итак, чтобы сделать это быстрее, вы можете просто написать

my_timer.delay -= 50;

Каждый раз, когда вы это делаете, вызов функции будет вызываться на 50 мс быстрее.

Однако имейте в виду, что согласно документации, переход ниже 20 мс вызовет проблемы.

Кроме того, каждый раз, когда вы манипулируете переменной delay, таймер полностью перезапускается с тем же счетчиком повторов, который вы используете при инициализации.

person Community    schedule 11.05.2015
comment
my_timer.delay - = 50; было бы достаточно. - person BotMaster; 11.05.2015
comment
но это работает без какой-либо петли? это работает просто так каждую секунду? - person Inês Rodrigues; 11.05.2015
comment
Я не понимаю твой вопрос? Какой шлейф? функция, которая вызывается каждые n мс? Ну да, это работает без запуска цикла, вы можете управлять задержкой перед запуском цикла. - person ; 11.05.2015