我正在开发一款使用基本点系统拍摄敌人的游戏,然后将该得分转换为硬币值以解锁游戏中的额外枪支。所以当你玩的时候,你的分数会提高,当你死的时候屏幕会显示你的分数,以及你从那个游戏中获得的硬币数量(此刻的分数是10分)。在一个视图控制器中保存得分值并在另一个视图控制器上显示
我正在寻找获得硬币价值并在另一个屏幕上显示它的最佳方法,枪选择屏幕,第一次玩,然后从一个游戏中获得的硬币将增加到总数您拥有的硬币,枪选择屏幕上显示的值。如果这很容易做到的话,一种加密硬币值的方法。
这是我目前使用的,NSUserDefaults的用在玩游戏的看法:
NSUserDefaults *coins = [NSUserDefaults standardUserDefaults];
NSNumber *myCoins = [NSNumber numberWithInt:_killCount*9.4];
_myCoinsInt = [myCoins integerValue];
_totalCoinsInt = _myCoinsInt + _totalCoinsInt;
[coins setObject:myCoins forKey:@"coins"];
[coins synchronize];
NSUserDefaults *totalCoins = [NSUserDefaults standardUserDefaults];
NSNumber *theTotalCoins = [NSNumber numberWithInt:_totalCoinsInt];
[totalCoins setObject:theTotalCoins forKey:@"totalCoins"];
[totalCoins synchronize];
NSLog(@"%@", theTotalCoins);
而且在枪选择屏幕,viewDidLoad方法下:
NSUserDefaults *totalCoins = [NSUserDefaults standardUserDefaults];
NSInteger _totalCoinsInt = [totalCoins objectForKey:@"totalCoins"];
NSString *intString = [NSString stringWithFormat:@"%d", _totalCoinsInt];
scoreField.text = intString;
我试图从它得到奇怪的值,例如,如果我得到70个硬币,它会显示像550,000。我将使用我正在使用的代码编辑我的问题。 –
我在示例中添加了一个示例 – mkral
,用于在'NSNumber'和'NSInteger'之间切换。如果你想要int值你可以使用'someNSNumber.integerValue' – mkral