Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 27.08.2005, 17:50
MyXus вне форума Посмотреть профиль Отправить личное сообщение для MyXus Посетить домашнюю страницу MyXus Найти все сообщения от MyXus
  № 1  
Ответить с цитированием
MyXus
 
Аватар для MyXus

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
По умолчанию как прописать программно последовательность проигрывания мувиков?

Например, после того как сыграет mov1, запустить mov2 и т.д.
Последовательность случайна и должна программироваться, очевидно.
Я пробовал запоминать имя мувика и в конце каждого клипа пихать комманду на его выполнение, но дело в том что у них могут быть разные родители. А выполнить eval('_parent._parent['+mov_name+']').gotoAndPlay(scene) нельзя. У меня по кр мере не получилось..

Старый 27.08.2005, 17:56
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
при запуске в первом кадре напиши:
_global.arrayMC=new Array()
в каждом клипе который может запускаться в первом кадре напиши:
if (!this.flag){
_global.arrayMC[_global.arrayMC.length]=this
this.flag=true;
}

Теперь у тебя есть массив со списком (включая путь) до каждого клипа.
В конце клипа надо использовать код:
stop();
_global.arrayMC[Math.floor(Math.random()*(_global.arrayMC.length-1))].play()

Писал в слепую, поэтому может в синтаксисе быть какая-нибудь ошибка, но это ты уже сам проверь
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 27.08.2005, 18:02
MyXus вне форума Посмотреть профиль Отправить личное сообщение для MyXus Посетить домашнюю страницу MyXus Найти все сообщения от MyXus
  № 3  
Ответить с цитированием
MyXus
 
Аватар для MyXus

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
ух! всё понял, круто, спасибо =)

Старый 27.08.2005, 18:23
kost@ вне форума Посмотреть профиль Отправить личное сообщение для kost@ Посетить домашнюю страницу kost@ Найти все сообщения от kost@
  № 4  
Ответить с цитированием
kost@
[+ 1.7 - 04.02.2006]
 
Аватар для kost@

Регистрация: Jul 2005
Адрес: ПТЗ
Сообщений: 313
Отправить сообщение для kost@ с помощью ICQ
Можно не прописывать ничего в кадрах клипов, а вписать в первый кадр главной сцены это... Но тут есть и свои недостатки, которые ты, конечно же, сам найдешь 80)
Код:
// наши клипы
clips = ["mc1","mc2"...]
// тормозим все клипы сначала
for (var i in clips) {
   this[clips[i].stop]
}
// и проигрываем первый
id = 0; clips[id].play()

len = clips.length;
loop = setInterval(nextPlay, 1/21)

// постоянно проверяем
function nextPlay() {
// как только очередной проигрался полностью играем следующий
if (this[clips[id]]._currentframe == this[clips[id]._totalframes) {
   this[clips[id]].stop(); // или
   this[clips[id]].unloadMovie(); // или
   // закончили играть все клипы
   if (id == len) clearInterval(loop)
   else this[clips[++id]].play(); // следующий...
}}

Создать новую тему Ответ Часовой пояс GMT +4, время: 14:55.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 14:55.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.