我之前解释过这个并得到了一个很好的答案。出于某种原因,它并没有像我想要的那样运作。我有一个计数器从15秒倒计时。我希望用户输入“4 8 15 16 23 42”,然后单击按钮或按Enter键。然后这将启动一个不同的场景,将计数器反击回到1:08:00 ..
但是如果他们在计数器达到零之前没有输入数字,我希望它能够显示计算机爆炸或剧烈震动的不同场景。这是我之前获得的代码。但是一旦我点击按钮,它就会在15秒内重新开始,而不是播放我的新场景。
编辑:刚刚发现如果你输入任何数字,甚至不是正确的数字,它会在15点开始计数。
import flash.events.MouseEvent; submitbtn.addEventListener(MouseEvent.CLICK,testPassword); function testPassword(e:MouseEvent):void {if(numbertext.text ==“4 8 15 16 23 42”){gotoAndPlay(“success”);
} else {gotoAndPlay(“shake”);
}
}
答案 0 :(得分:1)
首先,只有当你用鼠标点击时这才会起作用,所以你应该添加听众,如果你想添加按Enter键的可能性,
as3中的和gotoAndPlay与gotoAndPlay(frameNumber, "sceneName");
类似
所以你的功能应该是:
import flash.events.MouseEvent;
submitbtn.addEventListener(MouseEvent.CLICK, testPassword);
function testPassword(e:MouseEvent):void {
if (numbertext.text == "4 8 15 16 23 42") {
gotoAndPlay(1, "success");
} else {
gotoAndPlay(1, "shake");
}
}
关于计时器,请确保当你实例化时,你就这样做了,
var timer:Timer = new Timer(15000,1); // 15sec and just 1 time
并且听众应该是TimerEvent.TIMER_COMPLETE
但你需要做的是阅读文档,也可能是一些教程,以学习基础知识......