PDA

Просмотр полной версии : Старт ролика с n-ого фрейма


tilweb
30.01.2010, 14:00
Не подскажите, как можно сделать, чтобы флешка при открытие начинала с например 10ого фрейма проигрываться?
У меня просто календарь на флеше, и вот как наступает следующий месяц, хочется чтобы загружался не с первого

Может можно чтото прописать такое в первом фрейме?

udaaff
30.01.2010, 14:07
Через класс Date определяйте дату/месяц или что вам там надо. В зависимости от полученного результата, переходите на соответствующий кадр.

tilweb
30.01.2010, 14:10
а как это записать...? я as вообще плохо знаю(

udaaff
30.01.2010, 15:18
gotoAndStop(new Date().getMonth());

tilweb
30.01.2010, 16:16
а куда номер фрейма пихать...?

и нельзя например какнить чтото вроде gotoAndStop(32);
типо при открытие первого фрейма, сразу перейдём на 32?

aksios
30.01.2010, 16:23
А подумать? Попробовать???

tilweb
30.01.2010, 16:31
уже попробовал... не работает что я написал(

samana
30.01.2010, 16:47
а куда номер фрейма пихать...?
Так udaaff же подсказал.
new Date().getMonth() - возвращает номер текущего месяца, сейчас январь, это месяц номер 1, вот и получается что переходит на кадр номер один.
Ничего страшного, в следующем месяце уже перейдёт на кадр 2.

tilweb
30.01.2010, 21:26
а если февраль идёт не вторым кадром, а 34ым... ?

mr_pol
30.01.2010, 21:49
пишите услоовие типа
if (февраль) {
gotoAndStop(34);
} else if (март){
gotoAndStop(68);
}

udaaff
30.01.2010, 21:52
Поставьте на кадрах соответствующие метки.
var months:Array = [ "jan", "feb", "mar", "и так далее" ];

gotoAndStop(months[new Date().getMonth()]);

tilweb
30.01.2010, 22:19
а как ставить метки...?

и я так понимаю вот это писать в первый фрейм?
ну лишь дописав var months:Array = [ "jan", "feb", "mar", "и так далее" ];
до конца

udaaff
30.01.2010, 22:29
В свойствах кадра: Frame Label.
Можно и без меток, просто номера соответствующих кадров в массив запишите. Хотя это будет менее правильно и понятно.

tilweb
30.01.2010, 22:34
а как он понимает что нужно идти например в feb?
там getMonth определяет что месяц второй и выбирает от туда второе название?

udaaff
30.01.2010, 22:44
Да, только не второй, а первый, так как нумерация месяцев, так же как и элементов массива, с ноля начинается.

tilweb
30.01.2010, 22:49
т.е. мне нужно туда впихнуть перед первым в массив чтонить ещё..?

udaaff
30.01.2010, 22:53
Ненужно ничего никуда пихать.

tilweb
30.01.2010, 22:54
Спасибо огромное!

tilweb
03.02.2010, 00:43
хм... не работает почемуто...

udaaff
03.02.2010, 01:11
У меня почему-то работает.

fessor
03.02.2010, 20:07
для начинающих очень поможет команда trace(month);
в нее вместо слова "month" можно подставить любую переменную и после запуска флешки посмотреть ее значение

по сути вопроса (как уже было сказано) Date().getMonth() возвращает номер месяца
gotoAndStop(Date().getMonth()); //- остановит ролик в одном из 12 первых кадров
gotoAndStop(Date().getMonth()*4); //- остановит ролик в 4, 8, 12, 16 и прочих кадрах (кратных четырем)

Далее, если есть желание подгружать для каждого месяца свой фон - нумеруем картинки и динамически подгружаем только одну, с порядковым номером взятым из Date().getMonth().