ピエールの日記 by pierre 長尾和美

ピエールです。SamuraiTraditional(サムトラ)、たけしを(逸見泰典とのユニット)でギターやってます♪思いつきをブログに! ^^v by pierre

cocos2d-x スコアなどを保存・抽出する方法

      2017/10/25

保存方法

// 保存

// 下記は"tempScore"というキーでhogeScoreを保存しています。
// int型である場合はsetIntegerForKeyであることに注意。
CCUserDefault::sharedUserDefault()
      ->setIntegerForKey("tempScore", hogeScore);

// 最後にflush()をして反映させます。
// DBでいうcommitみたいなもとでしょう。
CCUserDefault::sharedUserDefault()->flush();

抽出方法

// 抽出

// int型で保存したので、抽出する時の変数をint型にしておく。
// 第二引数は保存値がない場合のdefault値
int tempScore = CCUserDefault::sharedUserDefault()
      ->getIntegerForKey("tempScore", 0);

int型の他には下記もあります。メモメモ。

CCUserDefault::sharedUserDefault()->setBoolForKey()
CCUserDefault::sharedUserDefault()->setDoubleForKey()
CCUserDefault::sharedUserDefault()->setFloatForKey()
CCUserDefault::sharedUserDefault()->setStringForKey()
CCUserDefault::sharedUserDefault()->getBoolForKey()
CCUserDefault::sharedUserDefault()->getDoubleForKey()
CCUserDefault::sharedUserDefault()->getFloatForKey()
CCUserDefault::sharedUserDefault()->getStringForKey()

自分の場合は、ゲームシーンでゲームオーバーになるときに保存して、ゲームオーバーシーンで抽出してスコアを表示したり、ゲームオーバーシーンで以前のスコアを抽出してスコアを比べて、今回ハイスコアなのかを判断したりしています。

 - cocos2d-x, アプリ