我正在使用actionscipt 3在flash中构建一个简单的游戏。 我希望当用户点击舞台上的3个动画片段来追踪“感谢您点击所有3个动画片段!”这样的消息时。
此消息必须在他不仅在一个上点击3时出现。
任何想法:)
答案 0 :(得分:1)
如果已经点击了每个听众可以访问的位置,您希望存储,例如:
var clicked1:Boolean = false;
var clicked2:Boolean = false;
var clicked3:Boolean = false;
然后在你的动作监听器方法中:
function listenerMethod1(e:MouseEvent):void {
clicked1 = true;
checkIfAllClicked();
}
function listenerMethod2(e:MouseEvent):void {
clicked2 = true;
checkIfAllClicked();
}
function listenerMethod3(e:MouseEvent):void {
clicked3 = true;
checkIfAllClicked();
}
等...(或者您可以在同一个处理程序方法中处理所有3个movieClip事件)。不要忘记检查功能:
function checkIfAllClicked(){
if(clicked1 && clicked2 && clicked3){
trace("Thanks for clicking all 3 movieclips!");
}
}
根据您的操作,您可以使用重置方法将所有3重置为false。
如果你有大量的动画片段,你可以考虑使用一个集合,例如Vector<Boolean>
。
答案 1 :(得分:0)
或者您可以使用所有按钮使用的单个功能:
var count:uint = 0;
function buttonPress(e:MouseEvent):void {
count++;
if (count == 3) {
trace("Thanks for clicking all 3 movieclips!");
//reset count if required
//count = 0;
}
}