嗨,我的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场景中也有一个停止,因此它不会跳到下一个场景。
我还是初学者,所以请放轻松一下哈哈谢谢
答案 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。