プロが教えるわが家の防犯対策術!

AS3のtimerとif文の組み合わせかたについて。


as3.0でゲーム要素が少しあるものを作ることになりました。
作りたいものは、

5秒以内にクリックされたらA(ラベル名)に飛んで5秒以上経ってからクリックしたらB(ラベル名)に飛ぶってという指示です。

~されたらという指示なのでif文を使うことは分かるのですが、それをtimerとどう組み会わせてかけばいいのか、TimerEventの何を使えばいいのか調べてみましたが、関係しそうな情報を見つけてもどれが使えるのかわからず困っております。

何を使ってどう書けばいいのでしょうか?
どなたか分かる方がいらっしゃれば教えて下さい。


よろしくお願いします。

A 回答 (1件)

素人くさい方法かもしれませんが、


以下の方法で判定可能ではないでしょうか。

//5秒後判定フラグ
private ver isAfterFiveMin:Boolean;

//タイマー
private var timer:Timer = new Timer(5000,1);

//5秒後を判定したい処理
private function xxx():void {
//5秒後判定フラグに"5秒後ではない"を設定
isAfterFiveMin = false;

//Timerイベント発動、5秒後に5秒後判定フラグに"5秒後である"を設定するメソッドを呼び出す
timer.addEventListener(TimerEvent.Timer, setIsAfterFiveMin);
timer.start();
}

private function setIsAfterFiveMin():void {
timer.stop();
timer.removeEventListener(TimerEvent.Timer, setIsAfterFiveMin);

//5秒後判定フラグに"5秒後である"を設定
isAfterFiveMin = true;
}

//クリックされたら実行される処理
private function onClick():void {
if(!isAfterFiveMin) {
//クリックされた時5秒以内なら、ラベルAに飛ばす
} else {
//クリックされた時5秒後なら、ラベルBへ飛ばす
}
}

開発環境がなく確認はできていません。
不備があれば修正を加えてお試しください。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!