Я пишу небольшой плагин для JT Player LongtailVideo, это AS3. У меня есть слушатель, который получает текущее время воспроизведения и таймер(), который подсчитывает секунды воспроизведения видео (я начинаю-останавливать время() на буферах, пауза ...)AS3 вводит неверное значение, если
Дело в том, что мне нужно запустите еще одно событие, как только время будет достигнуто 30 секунд, поэтому я использую слушателя, который получает время воспроизведения (увольняется постоянно), и я проверяю, является ли значение Timer() равным 30 или нет, если я это сделаю моя вещь, если ее нет, ничего.
Это фрагмент кода:
private function countCheck(event:MediaEvent):void {
if(timeCounter.currentCount == 30){
ExternalInterface.call("console.log" , "Time elapsed " + timeCounter.currentCount);
}
}
timeCounter
был объявлен как таймер, и это хорошо работает, дело в том, что он входит, что если (и отображает журнал), даже если timeCounter.currentCount
не 30 , и я не знаю, что я делаю неправильно!
Это консольный вывод:
Time elapsed 0
Time elapsed 0
Time elapsed 30 (5x)
Я не против повторения, когда я достигну 30, как я могу добавить флаг и сделать действие только один раз.
Любые мысли?
EDIT: Я перекомпилировал с использованием Flash CS4, и он работает нормально, странно. Я думаю, что Кристоф Херреман был прав, и изменение среды изменило кеш, так что это сработало.
на основе вашей консоли вывода, является он прыгает от 0, 0, 30? Вы пытались запустить отладчик со вспышки и посмотреть, что он выкидывает? – TNC
Чтобы получить отладчик, мне нужно установить Flash, не так ли? Я компилирую AS, используя Flex SDK. Он вводится, если два раза по 0, а затем снова на 30. Иногда он делает то же самое на 31, это странно! Я попытаюсь получить флеш-отладчик. – Adirael
Вы пытались очистить свой проект? Похоже, что кешированная версия кода все еще запущена. –