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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.11.2014, 00:29
Dmitriy154 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy154 Найти все сообщения от Dmitriy154
  № 1  
Ответить с цитированием
Dmitriy154

Регистрация: Feb 2014
Сообщений: 192
Checked остановить все клипы из fla

Здравствуйте! Столкнулся с такой проблемой. Наделал клипов в файле fla (и только). Возник вопрос, как остановить все клипы.
this.stop() и stop () не сработало. Если по отдельности, например car.stop() (где car экземпляр клипа), то все получается, но а если этих экземпляров куча. Как обратиться к главному классу fla файла. Спасибо!

Старый 20.11.2014, 00:44
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 2  
Ответить с цитированием
in4core
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Пробегитесь рекурсией по всем вложенностям и стопаните их
__________________
Марк Tween

Старый 20.11.2014, 00:52
Dmitriy154 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy154 Найти все сообщения от Dmitriy154
  № 3  
Ответить с цитированием
Dmitriy154

Регистрация: Feb 2014
Сообщений: 192
а что есть рекурсия и как она работает? Рекурсия повторный вызов самой себя для функции, а какой примерно код. И если можно еще вопросик, есть экземпляр car, представляющий авто, в него вложены клип вращения колес. Каким кодом можно заставить их остановиться, ничего не слушают.
Извините за тупые вопросы, уже ночь на дворе

Старый 20.11.2014, 11:18
Партизан вне форума Посмотреть профиль Отправить личное сообщение для Партизан Найти все сообщения от Партизан
  № 4  
Ответить с цитированием
Партизан
 
Аватар для Партизан

блогер
Регистрация: Nov 2007
Адрес: Almaty, Moscow
Сообщений: 396
Записей в блоге: 5
Отправить сообщение для Партизан с помощью Skype™
К примеру, так остановятся все мувики вложенные в car
Код AS3:
for (var i:int = 0; i < car.numChildren; i++ ){
    var mc:MovieClip = car.getChildAt(i) as MovieClip;
    if(mc)mc.stop();
}


Последний раз редактировалось Партизан; 20.11.2014 в 11:41.
Старый 20.11.2014, 13:19
Dmitriy154 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy154 Найти все сообщения от Dmitriy154
  № 5  
Ответить с цитированием
Dmitriy154

Регистрация: Feb 2014
Сообщений: 192
Спасибо Партизан! А не подскажите как обратится из вложенного экземпляра к главному родителю, к главному мувиклипу. Подскажите, монтажный кадр в fla файле, что из себя представляет в AS 3


Последний раз редактировалось Dmitriy154; 20.11.2014 в 14:11.
Старый 20.11.2014, 18:17
ChuwY вне форума Посмотреть профиль Отправить личное сообщение для ChuwY Посетить домашнюю страницу ChuwY Найти все сообщения от ChuwY
  № 6  
Ответить с цитированием
ChuwY
 
Аватар для ChuwY

Регистрация: Nov 2009
Адрес: Тула / Москва
Сообщений: 734
Отправить сообщение для ChuwY с помощью ICQ Отправить сообщение для ChuwY с помощью Skype™
stop all mc actionscript
Второй ответ в гугле.
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ"
Мои ачивки: художник-паразит.

Старый 20.11.2014, 19:03
Dmitriy154 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy154 Найти все сообщения от Dmitriy154
  № 7  
Ответить с цитированием
Dmitriy154

Регистрация: Feb 2014
Сообщений: 192
гугл не помогает, ответ Партизана тоже не помог, буду разбираться.

Старый 20.11.2014, 19:30
ChuwY вне форума Посмотреть профиль Отправить личное сообщение для ChuwY Посетить домашнюю страницу ChuwY Найти все сообщения от ChuwY
  № 8  
Ответить с цитированием
ChuwY
 
Аватар для ChuwY

Регистрация: Nov 2009
Адрес: Тула / Москва
Сообщений: 734
Отправить сообщение для ChuwY с помощью ICQ Отправить сообщение для ChuwY с помощью Skype™
Ну как это гугл не помог.

Код AS3:
function stopAllClips(mc:MovieClip):void
{
    var n:int = mc.numChildren;
    mc.gotoAndStop(1);
    for (var i:int=0;i<n;i++)
    {
        var clip:MoviceClip = mc.getChildAt(i) as MovieClip;
        if (clip)
            stopAllClips(clip)
    }
}
Код AS3:
stopAllClips(this)
В мейнклассе. и все.
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ"
Мои ачивки: художник-паразит.

Старый 20.11.2014, 20:23
Dmitriy154 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy154 Найти все сообщения от Dmitriy154
  № 9  
Ответить с цитированием
Dmitriy154

Регистрация: Feb 2014
Сообщений: 192
Я не знаю в чем дело, вроде все должно срабатывать но нет. Я сделал в fla файле пример
на главной шкале создал красный прямоугольник который двигается (клип - red, имя экземпляра - redE), в данном экземпляре я создал второй синий прямоугольник, тоже движется вперед-назад (клип - blue, имя экземпляра - blueE), в синем экз-ре я создал белый квадратик (клип - white, имя экземпляра - whiteE), тоже движется. На главной шкале в ключевом кадре нажимаю f9 и пытаюсь остановить все три, но получается только отдельными записями:
Код AS3:
stop(); //останавливаю красный экз-р
redE.stop(); //останавливаю синий экз-р
redE.blueE.stop(); //останавливаю белый экз-р
Все вышеперечисленные советы не срабатывают. Т.е я хотел бы либо рекурсивной функцией их остановить, либо есть какой метод
Свой fla файл и Main.as вылаживаю тут.
Подскажите рабочий способ в моем случае остановить все вложенные анимации. Спасибо

Старый 20.11.2014, 20:50
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 10  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Вы забыли вызвать функцию, как написал ChuwY.
Код AS3:
stopAllClips(this)
То-есть после того как вы написали тело функции, эта функция сама по себе не сработает, надо её вызвать.

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

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

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


 


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


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