Показать сообщение отдельно
Старый 21.07.2011, 01:13
savva вне форума Посмотреть профиль Отправить личное сообщение для savva Найти все сообщения от savva
  № 1  
Ответить с цитированием
savva

Регистрация: Jul 2011
Сообщений: 79
По умолчанию Как передать stage и stage3D в объект другого класса?

Заголовок не полностью отражает суть вопроса.По порядку
У меня есть пара вопросов,в actionscript 3 примерно с месяц (меня на летнюю практику отправили и дали разбираться с as3 и alternativa3d) всё познать не успеваю.

Собственно вопрос следующим образом

Есть класс сцена в котором прописывается парсер создаются контроллеры пишутся stage.align и прочее.

в main файле пишется
Код:
public class Main extends Scene {}
и всё! Всё прекрасно работает.Почему?В сцене создаётся эмбед xml файла парсится и так далее.

хочется сделать по иному,чтобы в объект класса сцены передавался xml. Но в классе сцена производятся следующие манипуляции
Код:
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE
.....
stage3D = stage.stage3Ds[0];
stage3D.addEventListener(Event.CONTEXT3D_CREATE, onContextCreate);
stage3D.requestContext3D();
И прочее,там контроллер присобачивается(которому нужно передать stage и прочие элементы.Собственно хочется перейти к такому виду
Код:
import Scene
public class Main 
public function Main{
var sc:Scene=new Scene(xml,stage);
}
(Ну что-то в этом духе не охото расписывать,но здесь вероятно придётся создавать тоже stage да?)
Судя по всему придётся всё onEnterFrame и прочее подобные вещи переносить в main да?

Вообще хочется понять разницу между подходами.В первом случае extended я вообще ничего не вызываю,но при этом всё выполняется.(Простите если глупый вопрос,просто в голове не как не уляжется).

Выдаёт ошибку что stage находится в Scene. То есть нужно производить инициализацию stage(всякие align и прочее) и stage3D(stage.stage3ds[0] и т.д.) в Main а потом передавать в сцену?

Извините за сумбурность текста и вопросов,написал как мог.