如果这是一个初学者问题,请道歉,但我无法在线找到解决方案。我能找到的大部分帮助都没有解决我的问题,而且是针对以前版本的 Swift 的。
我想保留玩家在游戏中的累积分数。他们第一次登录时它会为零,但每次他们玩它都会增加,这取决于他们玩了多少轮。
我尝试了一些安排,但现在在我的 AppDelegate 文件中我有:
UserDefaults.standard.set(Int(100),forKey:"TotalPoints")
然后,当玩家前进时,在 GameScene 的其他部分,我有:
let defaults=UserDefaults.standard
var CurrentExtras=defaults.integer(forKey: "TotalPoints")
CurrentExtras = CurrentExtras+100
UserDefaults.standard.set(Int(CurrentExtras),forKey:"TotalPoints")
这适用于游戏更新,但是一旦我关闭应用程序并重新启动它,它就会恢复到初始值。如何检查初始默认值以确保它没有覆盖?我一开始就这样做正确吗?