0

乱数に設定されたタイマーを使用するゲームを作成しています。タイマーがこの数までカウントアップすると、ゲームは終了します。タイマーが切れたらプレイヤーがリプレイできるようにしたいのですが、どうすればよいかわかりません。これが今の様子です。

var age:int = Math.floor(Math.random()*100)+1;
trace(age);
var upCounter:int = 1;
timer();

//timer
function timer(){
var myTimer:Timer = new Timer(1000, age);
myTimer.addEventListener("timer", timerHandler);
myTimer.start();
}

//displays timer and triggers outcome function
function timerHandler(event:TimerEvent):void{
    if ( upCounter < age) {
          trace(upCounter);
          age_txt.text = String(upCounter);
          upCounter++;
          }
          else{
            outcome();
          }
}

問題は、"age" 変数と "upCounter" 変数がグローバルであることです。これらを "startGame" 関数内に配置すると、それらを "timerHandler" に渡すことができません。それらを「startGame」関数内に配置しないと、ゲームを再起動する方法がわかりません。ありがとう。

4

1 に答える 1