Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   addChild в наследуемом классе. (http://www.flasher.ru/forum/showthread.php?t=179683)

Mkey 19.05.2012 19:46

addChild в наследуемом классе.
 
Блин я пытаюсь упростить себе жизнь, но жизнь становится все сложнее.
Есть класс, В классе есть функция, которая создает объекты.(Ну объекты импортированные) и....
пишу в функции
Код AS3:

Enemy:EnemyT=new EnemyT();
 addChild(Enemy);

Результат 0. Ошибок нету и Мувиклипа я на сцене не вижу=(

Добавлено через 1 минуту
Опять же нужный мне код я в основном классе писать не хочу.

ЗлОй ПрОграММер 19.05.2012 20:23

Возможно экземпляр класса B не был добавлен на сцену.

Mkey 19.05.2012 20:26

Вложений: 1
Что-то нужно сделать еще?

Mkey 19.05.2012 20:27

Цитата:

Сообщение от ЗлОй ПрОграММер (Сообщение 1080311)
Возможно экземпляр класса B не был добавлен на сцену.

Там не класс В, это просто предлог написанный с большой буквы:)

Wolsh 19.05.2012 20:53

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

Mkey 19.05.2012 21:01

Попытаюсь разъяснить
Вот основной класс
Код AS3:

package{
        import flash.display.*;
        import flash.events.*;
        public class LifeArena extends MovieClip
        {
                public function LifeArena()
                {
 
                var TimerStart:HostileControl=new HostileControl();
                stage.addEventListener(Event.ENTER_FRAME,TimerStart.TimerStart);///C этой функцией работаю
                }
 
        }
 
}

Дальше рассматривает класс
Код AS3:

package 
{
        import flash.display.*;
 
        import flash.utils.getTimer;
 
        import flash.net.*;
 
        import flash.events.*;
 
        public class HostileControl extends MovieClip
        {
                var Enemy:Hostile=new Hostile();///Его нам надо создать
                var _timer:int = getTimer() / 1000;
                var startWave:Boolean = false;
                public function HostileControl()
                {
 
                }
 
                public function TimerStart(e:Event)///Таймер.
                {
                        if (startWave == false) {
                                if (((getTimer()/1000)-_timer)>10) {
 
                                        trace("Perfect");
                                        startWave = true;
                                        CreateEnemy();///Функция которая создает 10 объектов.
                                } else {
                                        trace((getTimer()/1000));
                                }
                        }
                }
 
                private function CreateEnemy()
                {
                        var count:int = 10;
                        for (var i=0; i<=10; i++) {
 
addChild(Enemy);///Вот это не пашет!<
Enemy.x=-100;
Enemy.y=-100;
 
                        }
 
                }
 
        }
 
}


ЗлОй ПрОграММер 19.05.2012 21:58

Код AS3:

Enemy.x=-100;
Enemy.y=-100;

за сценой создаётся объект !?

olexandr 19.05.2012 22:04

в главном классе:
Код AS3:

addChild(TimerStart)

нифига себе, у вас велосипед.

мои извинения, не хочу обидеть, но вам бы этот пример лучше сюда добавить

Hauts 19.05.2012 22:10

Цитата:

мои извинения, не хочу обидеть, но вам бы этот пример лучше сюда добавить
olexandr, кроме этого нечего сказать, да?

Mkey 19.05.2012 22:11

Цитата:

Сообщение от ЗлОй ПрОграММер (Сообщение 1080323)
Код AS3:

Enemy.x=-100;
Enemy.y=-100;

за сценой создаётся объект !?

Ну да, но это значение не имеет, его один фиг там нет=)

Добавлено через 2 минуты
Цитата:

Сообщение от olexandr (Сообщение 1080324)
в главном классе:
Код AS3:

addChild(TimerStart)

нифига себе, у вас велосипед.

мои извинения, не хочу обидеть, но вам бы этот пример лучше сюда добавить

Пока главное, чтобы работало:)

Добавлено через 5 минут
Спасибо всем.


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

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