Ситуация / Вопрос
Вот ситуация.
В Flash Professional у меня есть MovieClip, и у этого клипа есть дети. Допустим, родительский клип - это ночное небо, а дети - разные экземпляры звездного мувиклипа, который анимируется в цикле. Все это сводится к NightSky.swc, который я использую в Flash Builder как часть более крупного проекта.
В Flash Pro я размещаю дочерние клипы с высокой точностью. Оттуда я хочу назначить свойства этим «звездам». Скажем, я хочу назначить "galaxyId" и "isRedGiant", но ( и это ключ ) Я хочу отредактировать эти свойства в Flash Professional и получить их значения во Flex. Как мне это сделать?
Пример
Например, используя Flash Pro, я размещаю 6 звезд на небе, присваиваю им все галактические идентификаторы «MilkyWay» и назначаю 3 из них красными гигантами. Затем я компилирую SWC и перехожу, чтобы согнуть. Во Flex (Flash Builder) у меня есть некоторая логика в следующем виде:
public function showRedPulse():void {
//psuedo-code just as an example:
for each Child in the Night Sky
if Child is in the Milky Way
and if Child is a Red Giant
Then, gotoAndPlay("redPulse")
}
Итак, в основном мне нужно получить доступ к свойствам во Flex, но мне нужно установить их во Flash.
Предыдущее решение
Ok. Итак, я делал это около 2 лет в CS4, но в CS5 он очень глючит. Поэтому я ищу новый подход. Ранее я создал класс ActionScript (расширяющий UIMovieClip) и добавил метатег Inspectable в поля, которые мне нужно было видеть во Flash, например:
private var _galaxyId:String;
[Inspectable(name="galaxyId", type=String, defaultValue="MilkyWay")]
public function set galaxyId(value:String):void {
_galaxyId = value;
}
Тогда, во flash professional, я бы "звездой" использовал класс actionscript в качестве базового класса. Затем я щелкну правой кнопкой мыши на звездочке в библиотеке и отредактирую определение ее компонента, указав на тот же класс. Как только я это сделаю, все проверяемые свойства появятся в Инспекторе компонентов Flash.
Основная информация
Мой предыдущий подход работал прекрасно, годами. Теперь в CS5 он очень глючный, работает только иногда! Я полностью застрял, не могу продвинуться вперед в своем проекте, и я думаю о том, чтобы полностью отказаться от Flash Pro и попробовать вместо этого Flash Catalyst.
Мне просто нужно создать объекты во Flash, которые я могу использовать во Flex (3.6, а не Flex 4). Мне нужны эти объекты Flash, чтобы иметь свойства, которые я могу редактировать во Flash и получать доступ к коду Flex.
Как еще я могу подойти к этому? Это не должно быть так сложно.