|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Jul 2003
Адрес: Kiev
Сообщений: 77
|
name динамично созданых экземляров класса
В основном классе динамично в цикле создаются экземпляры других классов warrior и platform:
public function the_game (level:int) { for (var i:uint=0; i<3; i++) { var warriors:warrior=new warrior; warriors.name="warrs_"+i; addChild(warriors); var platforms:platform=new platform; platforms.name="warrPlatforms_"+i; addChild(platforms); } addEventListener(Event.ENTER_FRAME,updateScene) } private function updateScene(e:Event):void { trace(this["warrs_"+0]); // ReferenceError: Error #1069: Property warrs_0 not found on main.the_game and there is no default value. } trace(this["warrs_"+0]) - ReferenceError: Error #1069: Property warrs_0 not found on main.the_game and there is no default value. Хотя если при паблише посмотреть Debug/List Objects, то там есть: Movie Clip: Frame=1 Target="_level0.the_game.warrs_0" и если в самом классе warrior задать trace(this.name), то он укажет правильно имя. Что сделать, что бы основной класс видел имена сабклассов и я смог к ним обращатся? Создавать массивы не очень удобно т.к. я планирую также обращатся к этим сабклассам по их имени и из других классов.
__________________
Immortal |
|
|||||
почитайте про getDefinitionByName
Но вообще рекомендую изменить подход: забыть про ас2, забыть про имена, заносить объекты в массив и оттуда их получать по индексу.
__________________
Ну все, теперь Забава м-о-я. Гы-гы, а корабль мой! |
|
|||||
Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
|
Интересно что быстрее, перебрать имена в векторе из 500 элементов или getChildByName?
|
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Bgg, вам что-то мешает написать тесты?
|
|
|||||
Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
|
etc, лень мешает
Сегодня вечером напишу. |
Часовой пояс GMT +4, время: 18:42. |
|
« Предыдущая тема | Следующая тема » |
|
|