2012-06-11 2 views
0

Я немного новичок в as3, так что простите меня, если это глупые вопросы. Два вопроса ...Изменить определение ролика as3

Помещение: Я загружаю персонажа из файла swf и хочу добавить аватар к нему. У меня его оживленная ходьба, а также стоя (stand_mc, walk_mc). Я также разделяю его части тела, поэтому внутри каждой анимации mc есть head_mc, body_mc и т. Д.

Первый вопрос, как я могу получить доступ к частям тела для любой анимации? вот мой код:

var WalkAnim:Class = SWFLoader.getClass('walk_mc'); //Using Greensock loader; but it's the same as using appDomain.getDefinition(); 
    var walkAnim:MovieClip = new WalkAnim(); 
    addChild(walkAnim); 

Второй вопрос, добавив, что walkAnim просто создает экземпляр определения mc. Как я могу изменить определение в библиотеке, чтобы сделать что-то вроде ..

var Hat:Class = SWFLoader.getClass('accessory_hat_mc'); 
    var hat = new Hat(); 
    WalkAnim:addChild(Hat)//??? 

Так что, если у меня есть несколько экземпляров на сцене, все они будут обновлены. Заранее спасибо за помощь!

ответ

0

В принципе, для доступа к дочерним элементам используется синтаксис точек. Это будет выглядеть примерно так (последнюю строку):

var WalkAnim:Class = SWFLoader.getClass('walk_mc'); 
var walkAnim:WalkAnim = new WalkAnim(); // I have typed your var as WalkAnim, not MovieClip. 
addChild(walkAnim); 
walkAnim.head_mc.rotation += 5; 

Чтобы ответить на ваш второй вопрос, вы не сможете изменить определение во время выполнения. Вы можете добавить товар к каждому экземпляру:

var Hat:Class = SWFLoader.getClass('accessory_hat_mc'); 
var myHat:Hat = new Hat(); 
walkAnim.head_mc.addChild(myHat); 
+0

Спасибо! Я использую точечную нотацию, но по некоторым причинам вижу некоторые части. Я вижу голову и ноги, но нет тела. Все выглядит так же в моей flash-библиотеке. –

+0

Вы уверены, что нет орфографических ошибок, недостающих связей или некоторых из них не являются мувиклипами? – poepje

+0

Выяснилось, что мне пришлось назначить каждой части имя экземпляра ... Не совсем понятно различия между именами экземпляров, AS Linkage и именем mc (все они назначены во Flash). –

Смежные вопросы