当得分等于0时,AS2场景不会进入下一场景

时间:2014-04-01 11:48:19

标签: flash actionscript-2

嗨,我的AS2代码存在问题,当健康状况达到零时,它应该转到下一个名为“gameOver”的场景,但它似乎什么也没做,但它正在工作,因为它跟踪输出“你好”。

我不知道为什么实际的功能不起作用,但这里是我用过的代码

在家庭场景中:

    userScore = 0;
    userHealth = 100;
    stop();

在影片剪辑对象

    onClipEvent(enterFrame){
           if (this.hitTest(_root.enemy) && _root.userHealth <= 0)
{
    nextScene();
}
                           }

在敌人的电影剪辑对象中

    onClipEvent (enterFrame) {

if (this.hitTest(_root.ball))
{
    _root.userHealth -= 10;
}
    }

gameOver场景中也有一个停止,因此它不会跳到下一个场景。

我还是初学者,所以请放轻松一下哈哈谢谢

1 个答案:

答案 0 :(得分:0)

我相信这会解决它。

 onClipEvent(enterframe)
 {
    if (this.hitTest(_root.enemy) && _root.userHealth <= 0)
    {
    gotoAndPlay(scene # of gameover frame);
    }
 }

当我创建PAC-MAN时,我遇到了类似的错误。祝好运。 干杯! 另外我建议你在第一帧上有你所有的变量声明,在第二帧写下游戏。它将有助于初始化和停止重置。

另一件事,你为什么要......

 if (this.hitTest(_root.enemy) && _root.userHealth <= 0)

这是说如果这击中了敌人,你的健康状况是0,游戏就结束了。我建议你......

 if (this.hitTest(_root.enemy) || _root.userHealth <= 0)

注意:||是指OR。