我正在创建一个iOS简单游戏,我有一个名为scorescore的int变量,每次玩游戏时都会得到分数。我已经创建了一个名为highscore的int变量并使用NSUserDefaults存储它,这在第一次因为某些原因而无法在之后调用它
e.g。我第一次玩游戏获得2的高分,它存储了两个高分,一切都很好。但是如果我在接下来的比赛中超过两分,那么就不会改变高分。
int highscoreyeah = [[[NSUserDefaults standardUserDefaults] objectForKey:@"HIGHSCOREppp"] integerValue];
if (scorescore >> highscoreyeah) {
[[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:scorescore] forKey:@"HIGHSCOREppp"];
}
int highscoreshowm = [[[NSUserDefaults standardUserDefaults] objectForKey:@"HIGHSCOREppp"] integerValue];
顺便说一下,我正在使用sprite kit,如果这会产生影响,那就不知道了......
答案 0 :(得分:2)
更改
if (scorescore >> highscoreyeah)
到
if (scorescore > highscoreyeah)
>>
是一个按位运算符,而不是等式运算符(非常不同的东西)