Показать сообщение отдельно
Старый 23.07.2008, 16:43
Infectedcell вне форума Посмотреть профиль Отправить личное сообщение для Infectedcell Посетить домашнюю страницу Infectedcell Найти все сообщения от Infectedcell
  № 4  
Ответить с цитированием
Infectedcell
 
Аватар для Infectedcell

Регистрация: Mar 2006
Адрес: Москва
Сообщений: 415
Цитата:
Сообщение от Starling Посмотреть сообщение
тоесть каждую шторку надо создавать как отдельный мувиклип?
Пожалуй не соглашусь.
- Цель всех Ваших шторок одна и та же
- схема работы у них одна и та же.

Никогда не городите кучу одних и тех же мувиков, если их значение одно и то же..

Просто решите свой вопрос, проверя состояние всех, будь то 4 или 104, шторок на то или иное событие, разместив шторку двумя способами:
- шторку на сцену и продублировать её на этой же сцене, столько раз, сколько необходимо. Присвойте каждой шторке InstanceName0, InstanceName1.... и потом, перебирайте эти шторки на события...
- создайте пустой МС на сцене или с помощью AS.
Дальше, закиньте в этот МС столько шторок, скольку Вам необходимо с помощью attachMovie из библиотеки и так же перебирайте их на события

Цитата:
Сообщение от Starling Посмотреть сообщение
тоесть, ставлю, например, верхнюю шторку, справа на кнопке прописываю скрипт на открытие. А скрипт на закрытие тогда какой? и как вообще зацепить на шторке кадр клипа? Если можно только gotoandplay сцену или кадр?
не надо ничего писать на кнопках, работайте с клипами через AS
Давайте рассмотрим пример того, что я написал выше..
Код:
//В самом клипе шторы, укажите  в первом кадре - 
delete this.onEnterFrame;
stop();
//Аттачим наши шторки из библиотеки, предварительно присвоив нашей шторке LinkageID - myMC
//На сцене у нас лежит мувик с именем MCholder
var objY:Number = 0;
for (i=0;i<4;i++){
var curt = MCholder.attachMovie('myMC','newMC'+i,i);
curt._y = objY;
objY = objY+curt._height
curt.onRelease = check;
}
//Сама процедура проверки, какая шторка активна, в зависомости от этого, осуществляем те или иные действия
function check() {
   for (i-0;i<4;i++){
   var mc:MovieClip = MCholder['myMC'+i];
   if (this!=mc){ 
      this.gotoAndPlay(2);
      this.onRelease = check;
   }else{
      mc.onEnterFrame = function() {
         prevFrame();
      }
      delete mc.onRelease; 
   }
}
Что то типа того,
__________________
Mix: Хобби | Работа | undefined


Последний раз редактировалось Infectedcell; 23.07.2008 в 16:58.