Показать сообщение отдельно
Старый 18.07.2011, 23:53
krog2008 вне форума Посмотреть профиль Отправить личное сообщение для krog2008 Найти все сообщения от krog2008
  № 1  
Ответить с цитированием
krog2008

Регистрация: Jul 2011
Сообщений: 25
По умолчанию Помогите с таймером!

Доброго времени суток! Посмотрел массу тем на форуме - ответа нет!
возникла проблема.
Задача:
Менять фоновую картинку каждые n секунд, бесконечно, и картинки выбирать случайно (из 10 выбранных)
что сделал:
создал два слоя: "AS3" и "Img" во второй соответственно закинул в 10 ключевых кадров по изображению! в AS3 написал код:

Код AS3:
import flash.utils.Timer;
import flash.events.TimerEvent;
var time:Timer = new Timer(4000,0);
time.start();
time.addEventListener(TimerEvent.TIMER, wallch);
function wallch(event:TimerEvent):void
{
    var randf:Number = Math.ceil(Math.random() * 10);
    gotoAndStop(randf);
}
stop();
Проблема: когда запуская просмотр, то происходит что картинки меняются, и действительно рандомно, но четкий интервал не держится в (4000мс) причем после 7 - 8 кадров (т.е. первые 8 кадров идут нормально). Когда прописал trace(randf); то увидел что переменная randf в один момент принимает два, а то и три значения, которые иногда дублируют друг друга, иногда в разнобой. в чем ошибка? подскажите!
Я не профессионал (мягко говоря) но понимаю суть кода, но не понимаю в чем проблема! Заранее спасибо!!!


Последний раз редактировалось Wolsh; 19.07.2011 в 14:05.