gotoAndStop获取我们使用gotoAndStop方法的帧的动作代码?

时间:2013-12-28 22:30:42

标签: actionscript-3 flash actionscript

我怀疑希望你可以提供帮助。 gotoAndStop获取我们使用gotoAndStop方法的帧的动作代码? 我问这个是因为我在我的第一帧的动作中使用gotoAndStop(3),当我因为我的“gotoAndStop(3)”我的第一帧动作中的每个代码而进入第3帧时正在我的第3帧工作,但我不想这样,gotoAndStop就是这样的? 还有其他选择吗?

import Game;
import flash.events.MouseEvent;
import flash.ui.Mouse;

var game:Game = new Game(stage); 

stage.addEventListener(Event.ENTER_FRAME, checkScore);

game.statusGame(Game.status_begin);

function checkScore(e:Event)
   {
      if(game.pointsCount == 10)

        {
         gotoAndStop(3);
        }
    }

我的代码在第一帧的动作中,现在当我转到第3帧时,这行代码“game.statusGame(Game.status_begin);”仍在工作,我不想要那个,我的帧号3中没有这个代码! 在第3帧中我只有这个:

flash.ui.Mouse.show();

play_again_btn.addEventListener(MouseEvent.MOUSE_DOWN, restartgame);

function restartgame(e:Event) 
{

 gotoAndStop("game");

}

我的状态游戏是游戏开始的地方,当我控制要更改为下一关卡的点时,我的代码:

public function statusGame(status:int):void
        {
            switch (status)
            {
                case 1 :
                    this.begin();
                    break;

                case 2 :
                    brokenBall = false;
                    ball = new Ball(this,velX,velY);
                    break;

                case 3 :
                    brokenBall = true;
                    points(); // to check points
                    break;

                case 4 :

                    velX = 15;
                    velY = -2;
                    break;

            }
        }

1 个答案:

答案 0 :(得分:0)

如果你不想让statusGame()方法继续进入第3帧,那么我会在你进入第3帧之前编写一个抑制该方法的方法,或者在第3帧中我会检查该方法并禁止它如果它不应该运行。 像这样:

    function checkScore(e:Event)
    {
       if(game.pointsCount == 10){
        game.suppressionMethod();  //here is the method I was referring to
        gotoAndStop(3);
       }
    }