我正在開發一款手機遊戲,當遊戲失去焦點時需要暫停遊戲時間,例如當來電時。除了當遊戲重新獲得焦點時,時間調整爲彷彿它一直在運行。如果有人在他們回來的時候打了3分鐘的電話,他們應該在那裏找到比賽時間。AS3需要暫停的時間
這裏是我的代碼:
public function showTime(event:Event){
gameTime = getTimer()-gameStartTime;
timeDisplay.text = "Time: "+clockTime(gameTime);
}
public function clockTime(ms:int) {
var seconds:int = Math.floor(ms/1000);
var minutes:int = Math.floor(seconds/60);
seconds -= minutes*60;
var timeString:String = minutes+":"+String(seconds+100).substr(1,2);
return timeString;
}
public function onActivate(event:Event):void {
addEventListener(Event.ENTER_FRAME, showTime);
}
public function onDeactivate(event:Event):void {
removeEventListener(Event.ENTER_FRAME, showTime);
}
我一直在谷歌搜索這兩天,我堅持。有人能指點我正確的方向嗎?由於我對AS3相當陌生,所以一些示例代碼也是有益的。謝謝!
豐富
謝謝。一旦你描述延遲考慮,我決定走這條路線,因爲它對我來說很有意義。我添加了兩個新的getTimer(),並從一開始就減去了停頓,然後從gameStartTime中取出了這個延遲量。還沒有在設備上使用它,但它可以在Flash中使用。非常感謝你的幫助! – Rich 2011-06-09 16:10:42