2011-03-30 56 views
0

我剛開始學習動作3,我有一個問題。我正在嘗試創建一個遊戲,但我不確定如何爲變量創建全局更新?例如,如果我把這個:如何更新actionscript 3中的變量?

myNumber+=1; 
    txt.text = myNumber.toString(); 

它只更新一次,並在遊戲開始時停止。我想不斷更新。這怎麼可能?有沒有更新()方法,這需要去?

回答

0
import flash.events.Event; 

addEventListener(Event.EnterFrame, HandleGameLoop); 

function HandleGameLoop(e:Event):void 
{ 
    // Everything in here will be called Every frame. 
} 

我建議你看看幾個教程給出你所問的問題。 這是一個很棒的遊戲。它貫穿整個過程,從頭到尾。

http://gamedev.michaeljameswilliams.com/

+0

儘量避免使用enterFrame事件作爲這個工程關閉可改變瑞士法郎設置的幀速率的並有可能搞亂數據。你最好打賭是使用Timer類。 – 2011-03-30 19:36:53

+0

他只是想讓文本字段保持最新狀態。運行遊戲計時器的幀速率將是一個巨大的錯誤,我同意。但只是更新文本字段等任何方式將工作。閃存時代的問題在於,如果你開始滯後真的很糟糕(通過大量垃圾進行並且幀速率下降),定時器會在適當的時間繼續工作,所以一切正在發生,以便按照給定的幀率一起關閉。 – Feltope 2011-03-30 19:42:15

+0

這兩者的混合物是我通常在遊戲原型中使用的。一切都是在一段時間內完成的。我不移動x每幀,而是移動x *時間片。所以當幀速率下降時,一切都保持平穩。 – Feltope 2011-03-30 19:44:42