2014-09-05 66 views
3

我在spritekit中構建了一個包含三個場景的遊戲:主菜單,玩場景和場景遊戲。Swift:如何跟蹤和交流SpriteKit場景之間的分數

我需要主菜單來顯示高分,顯示當前得分的比賽場景和場景比賽來顯示最後比賽中的高分和玩家得分。

如何在場景之間傳輸此分數據以及如何跟蹤玩家的高分?

環顧四周我找到了關於NSUserDefaults的東西,但我不知道如何正確實現它。

不可否認,我是SpriteKit的新手,一般編碼,所以我需要非常具體的說明。

對不起,如果這個問題相當廣泛。謝謝。

回答

3

NSUserDefaults是跟蹤分數的好方法。

要保存高分:

let x : Int = 45 // This int is your high score 
var myString = String(x) // This String is you high score as a String 

var defaults = NSUserDefaults.standardUserDefaults() 

defaults.setObject(myString, forkey : "High_Score") // Saving the String to NSUserDefaults 

要訪問的高分:

var defaults = NSUserDefaults.standardUserDefaults() 

var HighScore = defaults.objectForKey("High_Score") // Retrieving your high score as a String 
+0

太好了!謝謝。那麼我會把它放在我的視圖控制器中嗎?如果是的話,我可以放在我的視圖控制器中嗎?我還需要從多個場景訪問這些數據,那麼我該怎麼做? – 2014-09-05 14:47:50

+0

你可以把第二部分放在你想要訪問數據的程序中,第一部分保存你的高分(無論你在哪裏)。 – WMios 2014-09-05 16:04:34

+0

我知道我需要什麼。非常感謝! – 2014-09-06 02:48:08