我想製作一個遊戲,玩家可以選擇他們想玩的角色。目前我有一個場景,他們選擇角色,當他們點擊一個角色時,它會轉換到他們玩遊戲的場景。我試圖通過設置一個基於他們選擇的字符的整數值,然後使用NSUserDefaults在下一個場景中提供此整數值,我在這些場景中創建了決定角色紋理(基於他們選擇的人)的條件。但它沒有用,我的角色沒有紋理就顯示出來了。選擇一個角色 - 斯威夫特/ SpriteKit
我的問題有什麼更好的方法呢?
這是我目前的:
我有在遊戲場景中創建兩個人物兩個函數,我打電話給他們這樣的根據場景選擇的角色,玩家選擇角色:
if choosePlayer == 1{
addDrake()
}else if choosePlayer == 2{
addFuture()
}
目前沒有任何字符顯示出來。
UPDATE:
我印刷choosePlayer變量和我發現這個問題 - 它停留等於0出於某種原因。在我選擇的角色場景中,當玩家選擇其中一個角色時,它應該改變choosePlayer的值(最初設置爲Int()),然後轉換到下一個場景。 SO讓他們說點擊Future。這是我的代碼:
else if chooseFuture.containsPoint(location){
choosePlayer = 2
let playScene = PlayScene(size: self.size)
let transition = SKTransition.flipVerticalWithDuration(0.0)
playScene.scaleMode = SKSceneScaleMode.AspectFill
self.scene!.view?.presentScene(playScene, transition: transition)
}
您是否記得在傳入時同步NSUserDefaults?如果您不調用同步,它只會緩衝直到有足夠的數據。 – Gliderman
是的,我做到了。我認爲錯誤不在NSUserdefaults中。我認爲它在設置紋理。我應該怎麼做呢?我有一個玩家節點,紋理取決於他們在第一個場景中選擇哪個角色。 –
我不知道。您需要在您的問題中提供更多信息。你目前有什麼? – Gliderman