PDA

Просмотр полной версии : не работает случайное время


alex001
04.08.2010, 20:43
здрасте.
такой вот код:
function runclip()
{
var ci = Math.floor(Math.random() * 4);

if (ci == 1)
{
this.gotoAndPlay(10);
}
else if (ci == 2)
{
this.gotoAndPlay(17);
}
else if (ci == 3)
{
this.gotoAndPlay(27);
}
else if (ci == 4)
{
this.gotoAndPlay(35);
}
}

setTimeout(runclip(), Math.floor(Math.random() * 2500 + 3000 ));
но в конце не проходит 3000 милисекунд + от 0 до 2500 милисикунд.
в чем проблема?

код накодится в move clipе. после перехода на случайный кадр он проигрываеться какое-то время и далее стоит команда gotoAndPlay(1); а в начале клипа он проигрывает 8 кадров и далее стоит команда gotoAndPlay(1); и они опять проигрываються.
это я на всякий случай говорю.
где со временем ошибка?

Zik.
04.08.2010, 20:53
в setTimeout не надо писать имя функции со скобочками, так же в setTimeout нельзя писать случайное число

Psycho Tiger
04.08.2010, 20:53
Ну, скорее всего в том что Вы вызываете метод runclip(), который что то возвращает (а скорее всего ничего). А нужно вызвать именно этот метод. Поэтому скобки надо убрать.
Или вообще:
setTimeout(this, runclip, Math.floor(Math.random() * 2500 + 3000 ));

alex001
04.08.2010, 21:00
написал я такой код, как вы посоветовали, но функция runclip не срабатывает.

Добавлено через 25 часов 39 минут
прошу, помогите!