AS3 1180:调用可能未定义的方法mnright

时间:2014-06-21 17:52:46

标签: actionscript-3 flash

所以我在第5,10,15,20帧中有mnright();我创建了一个名为Main的文档类,我在主类等中声明了函数mnright();。但是当我尝试运行它我得到4个错误

  

1180:调用可能未定义的方法mnright。

我到处寻找一个太阳镜,但我找不到一个,所以这是我的最后一招。

Main.as

    package Main {
        import flash.display.MovieClip;

        public class Main extends MovieClip {

            public function Main() {
                trace("working");       

                function mnright():void {
                    if (man.hitTestObject(square)) {
                        pullBackwards();
                    } else {
                        man.x += 10;
                    }
                }

                function pullBackwards():void {
                    man.x -= 10;
                }
            }
        }
    }
}

1 个答案:

答案 0 :(得分:1)

您希望制作班级的mnright()pullBackwards()公共函数。因为它只存在于构造函数中......所以只需改为:

package Main {
    import flash.display.MovieClip;

    public class Main extends MovieClip {

        public function Main() {
            trace("working");       

        }//end of constructor
        public function mnright():void {//becomes public member
            trace("mnright was used");
            if (man.hitTestObject(square)) {
                pullBackwards();
            } else {
                man.x += 10;
            }
        }
        public function pullBackwards():void {//this too
            trace("pulling backwards!");
            man.x -= 10;
        }
    }
}

从技术上讲,它们可能是私有的或受保护的,但为了便于使用,我建议公开,直到你更习惯于文档类及其技巧:)