Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Массив объектов (http://www.flasher.ru/forum/showthread.php?t=148866)

dan 13.01.2011 03:38

Массив объектов
 
Доброго времени суток!
На AS2 был пример-при запуске игры экземпляры мувиков ,имеющихся на сцене, передавали себя в качестве параметра в функцию на главном timeline,складывающую их в массив.В итоге не нужно было именовать каждый мувик,чтобы потом проверять его на столкновения.Как сделать так на AS3?

bav 13.01.2011 14:13

Покажите код AS2, с помощью которого «экземпляры мувиков ,имеющихся на сцене, передавали себя в качестве параметра в функцию на главном timeline». И саму эту функцию.

passertm 13.01.2011 14:20

А что мешает сделать так же?
Код AS3:

var arr:Array = [];
public function addObjectToArray(d:DisplayObject) {
        arr.push(d);
}

Или я опять что то не так понял?

dan 14.01.2011 02:59

Код в root клипе:
Код AS3:

var arr:Array = [];
public function addObjectToArray(d) {
        arr.push(d);
}

Код в клипе:
Код AS3:

package 
{
        import flash.display.MovieClip;
 
        public class C extends MovieClip
        {
                public function C()
                {
                        parent.addObjectToArray(this);
                }
        }
}

Выдает ошибку 1061: Call to a possibly undefined method addObjectToArray through a reference with static type flash.display.DisplayObjectContainer.

goodguy 14.01.2011 09:14

Если эти мувики добавляются в другой объект типа MovieClip, то логично будет сделать так:
Код AS3:

(parent as MovieClip).addObjectToArray(this);


passertm 14.01.2011 16:09

Цитата:

Сообщение от dan (Сообщение 964508)
Выдает ошибку 1061: Call to a possibly undefined method addObjectToArray through a reference with static type flash.display.DisplayObjectContainer.

Сложно сказать не видя всей проги. Куда вы вписали эту функцию? Где находится клип который ее вызывает?


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

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