0

我正在flash cs5上构建一个游戏。我正在制作开始屏幕,现在我尝试加载游戏,但我在玩游戏功能时收到错误 1180。下面是它的工作原理

如果我在 this.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
            }
4

2 回答 2

0

看来,您的 stageRef 不是正确的 EventDispatcher 对象。要么您有另一个自定义 Stage 类,要么当您使用 Stage 对象获取舞台属性时,该属性的所有者尚未在舞台上。所以尝试在源对象的 Event.ADDED_TO_STAGE 事件之后获取舞台属性。或者在您获得 Stage 并传递给 MainMenu 的位置显示您的代码。

于 2012-04-29T10:54:51.217 回答
0

使 stageRef 类实现 IEventDispatcher

于 2012-04-29T10:57:47.803 回答