2013-01-07 27 views
6

我對動作腳本3非常陌生,現在我正在嘗試製作一個非常基本的遊戲。然而,無論我看了多少頁,我都找不到讓我的遊戲保持得分的工作方式:/。ActionScript 3:動態文本幫助:對遊戲的評分

我想要做的就是讓每10秒鐘將10分加到分數上(現在我已經用一個鍵替換了鍵,看看我能否得到這個結果,但它沒有「T)。 這是我想現在使用的代碼:

var playerScore:int = 0 

    stage.addEventListener(MouseEvent.CLICK,onclick); 

    function updateTextFields():void{ 
     playerScoreText.text = ("Player Score: " + playerScore); 
    } 

    if(Key.isDown(Key.G)){ 
      playerScore++; //increase playerScore by 1 
      updateTextFields(); 
    } 

playerScoreText是任何幫助,將不勝感激動態文本 的名字:)

此代碼是所有時間軸

添加

我在想這個問題很可能與動態文本的創建有關,但我不確定。

+0

它看起來並不像你有什麼監聽按鍵。您發佈的代碼在哪裏存在?它只是坐在時間線上或某個地方的課程中?有沒有什麼封裝這個代碼示例? (之前和之後有什麼?) – Foggzie

+0

對不起,我忘了添加事件監聽器的代碼,我把它放在那裏,但我確實有:XD stage.addEventListener(MouseEvent.CLICK,onclick); 它位於時間線 – jackbtroop62

回答

2

確保字體嵌入正確,並且動態文本字段的顏色與背景不同。

也,而不是寫

playerScoreText.text = ("Player Score: " + playerScore); 

試試這個

playerScoreText.text = "Player Score: " + String(playerScore); 
+0

嗯仍然得到同樣的問題,我知道顏色和嵌入是好的,你可以想到創建動態文本的任何常見錯誤?因爲我確信這是問題所在,因爲編碼看起來很好:l – jackbtroop62

+0

'playerScore + = 10'最後缺少分號。還要確保文本字段不在其他任何對象下面。確保它足夠大,以便文本適合。 –

+0

也嘗試更改防別名屬性。將其更改爲使用設備字體或不使用別名,然後查看具體操作。也可以有人回答我的 - http://stackoverflow.com/questions/14204769/what-is-the-null-object-error-with-this-as3-code-for-loading-external-swf –

2

這聽起來像你想用定時器類做這樣的事情。您的密鑰代碼寫入不正確。

var playerScore:int = 0; 
var score_timer:Timer = new Timer(10000,0); 
score_timer.addEventListener(TimerEvent.TIMER,updateTextFields); 
score_timer.start(); 
function updateTextFields(e:TimerEvent):void 
{ 
    playerScore+=10 
    playerScoreText.text = ("Player Score: " + playerScore); 
} 
+0

的操作部分內似乎沒有工作,playerscore文本只是停留在0,有時會出現一秒鐘的錯誤,並增加了另一個0.爲了確保它不僅僅是一個東西,項目,我將這些代碼粘貼到一個全新的項目中,但仍然沒有任何功能:/。還有什麼我必須添加到此以使其起作用? – jackbtroop62

+0

我也遇到了動態文本的問題,它只顯示一些數字。嘗試從其屬性中對字體進行位圖映射。 – Jono

+0

我的意思是文字。它應該是一個TextField,如果我沒有記錯的話。 – Jono