![]() |
|
||||||||||
|
|
|
|||||
|
Вот такой вопрос заинтересовал.
Есть скажем класс, в нем как статичные так и обычные переменные и функции. Некоторый объект ( допустим спрайт ) будет статичной переменной. Использоваться будет так же в обоих функциях. Для чего это надо, думаю не суть важно. Смысл лишь тот, что для всех экземпляров созданного класса будет одно общее свойство которое можно изменить моментально для всех сразу. И вот вопрос Допустим наш спрайт как я уже сказал статичный. Но кроме статичных методов, он выполняет еще посылы конструктора, скажем событие двигающее по x координате спрайт наш, так вот с каждым новым добавлением класса, поскольку спрайт статичный x будет наростать. Как этого избежать? Вот пример private static var spr:Sprite; public function Main () { spr = new Sprite(); stage.addEventListener(Event.ENTER_FRAME,onFrame); } private function onFrame(e:Event) { spr.x ++; // сначала у нас по 1 движется, а при создании еще экземпляров уже 2,....n , как этого избежать при такой конструкции? } public static function someEvent() { trace('apply to all') } |
|
|||||
|
стервочка (я мужик)
|
никак. бредовая конструкция.
|
|
|||||
|
Сделать метод инициализирующий
в другом методе и дёрнуть его разок. А подход убог.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
|
Перед stage.addEventListener(Event.ENTER_FRAME,onFrame);
поставить stage.removeEventListener(Event.ENTER_FRAME,onFrame); и onFrame сделать статической. Ну и бред, да =) То, что у вас куча спрайтов создается не смущает, кстати?
__________________
Бобры отвечают на вопросы не потому, что знают на них ответы; они отвечают потому, что их спрашивают. |
|
|||||
|
.
|
Заведите статический счетчик инстансов Main и поле класса - номер текущего инстанса. Координату нового спрайта вычисляйте с поправкой на их количество.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 23:05. |
|
|
« Предыдущая тема | Следующая тема » |
|
|