COCOS-2d-x:实现游戏级别进步的想法

时间:2015-03-02 17:12:38

标签: android c++ ios iphone cocos2d-x

我开发了一个18级的安卓游戏。我在启动屏幕上有菜单,有18个级别的18个按钮。

例如,如果用户没有完成1级,则不应启用2级按钮,依此类推。如果用户在游戏中完成某些级别,则应启用下一级别。 我想创建级别作为cpp文件,而不是作为" plist"文件

2 个答案:

答案 0 :(得分:2)

布置关卡按钮

for (int i = 1; i <= 18; i++) {
    auto levelButton = Button::create();
    levelButton->setEnabled(isLevelFinished(i));
    levelButton->setTitleText(String::createWithFormat("%d",i)->getCString());        
    // You may change button the texture according to level completion information

}

bool HelloWorld::isLevelFinished(int levelIndex)
{
    return UserDefault::getInstance()->getBoolForKey(String::createWithFormat("isLevelFinished_%d", levelIndex)->getCString(), false);
}

等级结束后,请致电:

void HelloWorld::setLevelFinished(int levelIndex)
{
    UserDefault::getInstance()->setBoolForKey(String::createWithFormat("isLevelFinished_%d", levelIndex)->getCString(), true);
}

答案 1 :(得分:0)

您可以使用CCUserDefault并为每个级别保存bool键。根据CCUserDefault值,为级别按钮启用或禁用按钮。 如果要存储更复杂的数据,也可以创建Sqlite数据库