Pla*_*air -1 sprite-kit swift swift2
我在GameScene中创建了一个得分变量.现在我想在另一个场景中看到结果,例如GameOverScene.我怎么能这样做?
您总是需要尝试在堆栈溢出时发布一些代码.
有很多方法可以做你想要的.
1)您可以使用NSUserDefaults来保存分数并在另一个场景中访问已保存的属性,然后将其分配给新的分数变量.
2)你可以将得分属性设为静态,所以在gameScene中你会说
static var score = 0
Run Code Online (Sandbox Code Playgroud)
你可以说,而不是你项目中的任何地方
GameScene.score = 5
Run Code Online (Sandbox Code Playgroud)
请记住在每次游戏后将得分重置为0,因为静态属性只有1个实例,即它们在应用程序的生命周期内存在.
3)另一种方法是做一个单身人士课程
class GameData {
static let shared = GameData()
var score = 0
private init() { }
}
Run Code Online (Sandbox Code Playgroud)
比你的SKscenes要好
let gameData = GameData.shared
gameData.score = 5
Run Code Online (Sandbox Code Playgroud)
要么
GameData.shared.score = 5
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1501 次 |
| 最近记录: |