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

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

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

Регистрация: Sep 2010
Сообщений: 7
По умолчанию Программная замена movie clip в анимации

Допустим, я создал в Flash CS анимацию костра CampfireMC, содержащую child-клип:
Код AS3:
m_fire:FireMC
FireMC содержит анимацию пламени.
CampfireMC управляет проигрыванием m_fire, например, для последнего кадра CampfireMC добавлен action:
Код AS3:
m_fire.gotoAndStop(m_fire.totalFrames)
Вопрос: как при помощи actionscript заменить (именно заменить, а не удалить/добавить, так как gotoAndStop в анимации перестанет работать) анимацию
FireMC на другую анимацию FireMC2?

пробовал такой прием, не работает:
Код AS3:
var campfire:CampfireMC = new CampfireMC();
// Заменяем объект, на который ссылается m_fire
campfire.m_fire = new FireMC2();
campfire.gotoAndPlay(0)


Последний раз редактировалось iNils; 18.09.2010 в 15:11.
Старый 18.09.2010, 15:07
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 2  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Как очень хороший вариант - это собирать костер исключительно программно. И никаких проблем не будет
__________________
тут я

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Shalom, для оформления своего кода надо использовать теги [code][/code]
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 18.09.2010, 15:12
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 4  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
А вообще - сделать огонь тоже контейнером, где в кадрах будут разные анимации огня, затем по gotoAndStop переходить на нужный.
__________________
тут я

Старый 18.09.2010, 15:21
f.g.programmer вне форума Посмотреть профиль Отправить личное сообщение для f.g.programmer Найти все сообщения от f.g.programmer
  № 5  
Ответить с цитированием
f.g.programmer
 
Аватар для f.g.programmer

блогер
Регистрация: Sep 2010
Адрес: Россия
Сообщений: 137
Записей в блоге: 3
Можно так.
m_fire = мувик-контейнер, содержащий FireMC, и больше ничего

для последнего кадра CampfireMC:
Код AS3:
var m:MovieClip = m_fire.getChildAt(0) as MovieClip;
m.gotoAndStop(m.totalFrames);
Код AS3:
var campfire:CampfireMC = new CampfireMC();
campfire.m_fire.removeChildAt(0);
campfire.m_fire.addChild(new FireMC2());
campfire.gotoAndPlay(0);

Старый 18.09.2010, 16:30
Shalom вне форума Посмотреть профиль Отправить личное сообщение для Shalom Найти все сообщения от Shalom
  № 6  
Ответить с цитированием
Shalom

Регистрация: Sep 2010
Сообщений: 7
Цитата:
Сообщение от iNils Посмотреть сообщение
Shalom, для оформления своего кода надо использовать теги [code][/code]
Благодарю за правку моего поста, буду знать на будущее.

f.g.programmer, метод конечно, не очень красив, но работает, огромное спасибо =)
Похоже, что красиво эта проблема не решается =\

Старый 18.09.2010, 16:54
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 7  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,600
Записей в блоге: 17
В методе gotoAndPlay нумерация кадров начинается с 1.

Старый 18.09.2010, 18:56
f.g.programmer вне форума Посмотреть профиль Отправить личное сообщение для f.g.programmer Найти все сообщения от f.g.programmer
  № 8  
Ответить с цитированием
f.g.programmer
 
Аватар для f.g.programmer

блогер
Регистрация: Sep 2010
Адрес: Россия
Сообщений: 137
Записей в блоге: 3
Цитата:
Сообщение от Psycho Tiger Посмотреть сообщение
В методе gotoAndPlay нумерация кадров начинается с 1.
Знаю, но поставить 0 в gotoAndPlay кажется очень естественным, поэтому всё время забываю, что это неправильно.
Те кто писал что-нибудь на jsfl возможно знают, что там доступ к кадрам начинается от 0.

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

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

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


 


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


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