1

主文件

package{
    import flash.display.*;
    import flash.events.Event;

    public class main extends MovieClip{

        public function main(){
            changeState(null,"menu");
        }
        public function changeState( CurrentState, NextState){
            if(CurrentState != null){
                removeChild(CurrentState);
            }
            if(NextState == "menu"){
                var mm:mainMenu = new mainMenu(changeState);
                addChild(mm);
            }
            else if(NextState == "game"){
                var g:CollapsingBlocks = new CollapsingBlocks(changeState);
                addChild(g);
            }
            else if(NextState == "exit"){

            }
        }
    }
}

maniMenu.as

package{
    import flash.display.*;
    import flash.events.MouseEvent;
    import flash.events.Event;

    public class mainMenu extends MovieClip{

        var theCallBackFunction:Function;
        public function mainMenu(callBack){
            var btnPlay:mmPlay = new mmPlay();
            btnPlay.addEventListener(MouseEvent.MOUSE_DOWN, btnP_Button);
            btnPlay.x=width/2=btnPlay.width/2;
            btnPlay.y=height/2=btnPlay.height/2;
            addChild(btnPlay);

            var btnExit:mmExit = new mmExit();
            btnExit.addEventListener(MouseEvent.MOUSE_DOWN, btnE_Button);
            btnExit.x=width/2=btnExit.width/2;
            btnExit.y=height/2=btnExit.height/2;
            btnExit.y + btnExit.height + 4;
            addChild(btnExit);

            theCallBackFunction = callBack;
        }
        public function btnP_button(e:MouseEvent){
            theCallBackFunction (this, "game");
            return;
        }
        public function btnE_button(e:MouseEvent){
            theCallBackFunction (this, "exit");
            return;
        }
    }
}

CollapsingBlock.as

..
public function startCollapsingBlocks(callBack) {
..

如何解决这个问题呢?(错误 1136),我使用的是 Flash CS6 版本。游戏文件名为 CollapsingBlocks.fla,主函数名为 startCollapsingBlocks,我试图在这里制作简单的 Flash 游戏菜单,带有 2 个按钮(播放和退出)。

4

2 回答 2

0

看起来你正在调用一些不需要参数的函数,但你正在给它参数。从您的代码中,它唯一可以是theCallBackFunction (this, "game");and theCallBackFunction (this, "exit");,因为它们是唯一的运行时引用

检查 的值theCallBackFunction是否始终是需要 2 个参数的函数。

于 2013-04-07T06:28:37.040 回答
-2

0 个预期参数意味着您在函数括号内添加了一些非预期的示例:

    function mainMenu(callBack) //this is a 1 argument expected answer
    function mainMenu();        this expects no expected arguments

请检查你在哪里请求函数,你会发现函数说明/参数应该是 0;

否则你已经为这个函数定义了零周长/参数

于 2013-04-07T06:20:38.427 回答