0

私の関数buildingBuiltが呼び出されると、次のようなイベントがディスパッチされます。

dispatchEvent(new Event("Built"));

私の Toolbar.as には、「ビルド」と聞いたときにタイマーをトリガーするリスナーがあります。

10 秒ごとに、文字列「money」が 500 減少しています。

Toolbar.as

drop500=new Timer(10000);
drop500.addEventListener(TimerEvent.TIMER, dropMoney);
addEventListener("Built", timerMoney, false, 0, true);

private function timerMoney(event):void{
            drop500.start();

}

private function dropMoney(event):void {
   money.text = String( Number(money.text ) - 500 );
}

質問 : イベント "Built" が他の関数によってディスパッチされます。"Built" が聞こえるたびに -500 を加算することはできますか?

つまり、"Built" が 1 回ディスパッチされた場合: "money" は 10 秒ごとに 500 ドロップし、"Built" が 2 回ディスパッチされた場合: "money" は 10 秒ごとに 1000 ドロップします。

4

1 に答える 1

0

コードを次のように更新してみてください。

  var moneyDropper:int = 0;

  private function timerMoney(event):void {

     if(moneyDropper == 0)
     {        
         drop500.start();            
     }
     else
     {
         moneyDropper += 500;
     }
  }

  private function dropMoney(event):void {
      money.text = String( Number(money.text ) - moneyDropper);
  }
于 2014-02-13T12:59:43.087 に答える