我正在使用flash cs5构建游戏。我正在制作开始画面,现在我尝试加载游戏但是我在玩游戏功能时出现错误1180。这是它的工作原理
这是函数,我得到了这行错误.stageRef。这个类是我的mainMenu,扩展了basemenu。
private function playGame(e:MouseEvent) : void
{
unload();
this.stageRef.dispatchEvent(new Event("gameSTART"));
}
这是我的引擎功能
public function Engine()
{
preloader = new ThePreloader(474, this.loaderInfo);
stage.addChild(preloader);
preloader.addEventListener("loadComplete", loadAssets);
preloader.addEventListener("preloaderFinished", showMenu);
stage.addEventListener("gameSTART", fGameStart);
}
private function fGameStart(e:Event):void
{
.......... here is all my game code
}
答案 0 :(得分:0)
看来,你的stageRef不是正确的EventDispatcher对象。您有另一个自定义Stage类,或者当您使用Stage对象获得stage属性时,此属性的所有者尚未在舞台上。因此,尝试在源对象的Event.ADDED_TO_STAGE事件之后获取stage属性。或者在您获得Stage的地方显示您的代码并传递给MainMenu。
答案 1 :(得分:0)
使stageRef类实现IEventDispatcher