【发布时间】:2014-08-18 03:22:14
【问题描述】:
我创建了一个类似于小鸟的游戏,但添加了硬币元素。我有高分工作,但我不知道如何使硬币得分工作。我希望在玩家重新开始游戏时将硬币分数与之前的最佳硬币分数相加。目前,我的代码只显示之前最好的硬币分数,不会在玩家重新开始游戏时单独添加硬币分数。如何更改代码以显示收集的总硬币而不是最佳硬币分数?
- (void)didLoadFromCCB {
[self loadSavedState];
}
-(BOOL)ccPhysicsCollisionBegin:(CCPhysicsCollisionPair *)pair hero:(CCNode *)hero coin: (CCNode *)coin {
_coins++;
if (_coins > _bestCoin) {
_bestCoin = _coins;
[self saveState];
}
[self loadSavedState];
return TRUE;
}
//write for coin
- (void)saveState {
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
[prefs setInteger:_bestCoin forKey:@"bestCoin"];
[prefs synchronize];
}
//read for coin
- (void)loadSavedState {
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
_bestCoin = [prefs integerForKey:@"bestCoin"];
_coinLabel.string = [NSString stringWithFormat:@"%d",_bestCoin];
}
【问题讨论】:
-
你的问题不清楚。你想要什么,在标签上显示硬币数量?你在哪里增加你的硬币?
-
是的,我想在标签上显示总硬币数。我正在增加我在 ccPhysicsCollisonBegin 中的硬币数量。
标签: ios objective-c cocos2d-iphone nsuserdefaults spritebuilder