Cocos2dx v3 - 每隔一定间隔不断保存游戏的正确方法
Cocos2dx v3 - Proper way to constantly save the game every certain interval?
每隔
一定间隔不断保存游戏(例如:保存玩家的等级、获得的经验、当前 HP/MP 等)的正确方法是什么,以便
即使用户不当退出游戏,他/她也可以恢复到游戏的相同状态吗?
这合适吗?
float _interval;
bool GameMaster::init() {
if(!Layer::init()) {
return false;
}
// Run every frame
_interval = 0;
this->scheduleUpdate();
}
void GameMaster::update(float dt) {
_interval += dt;
if(_interval > 10.0) {
// Runs every 10 sec
saveGame();
// Restart the counter
_interval = 0.0;
}
}
使用调度程序可能是一个更好的主意,如下所示:
float _interval;
bool GameMaster::init() {
if(!Layer::init()) {
return false;
}
Scheduler* scheduler = Director::getInstance()->getScheduler();
scheduler->schedule(schedule_selector(GameMaster::saveGame), this,
_interval, true);
}
void GameMaster::saveGame(float deltaTime) {
saveGame();
}
您可以在此处找到调度程序的文档。
相关文章:
- 在全局变量中保存类的实例以重新创建类(创建"backup")
- 如何在选项卡视图Qt中设置一个新项目,并保存以前的项目
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- 将字符指针十六进制转换为字符串并保存在文本文件C++中
- 在没有定义返回类型的函数中返回布尔值,并将结果保存在无错误的char编译中-为什么
- EvtExportLogneneneba API正在将远程计算机的事件日志保存到远程PC本身.如何将其保存到主机
- 在C++中将类(带有Vector成员)保存为二进制文件
- 在C++游戏中与库存系统作斗争
- C++.我想将更改后的特定字符行保存在字符串中
- 使用FFMPEG将RGB图像序列保存到.mp4时出现问题
- 将RGB图像保存为PPM格式
- 换位表导致测试失败(但在游戏中运行良好)
- 哈希文件递归并保存到矢量Cryptopp中
- 如何将二进制格式的 C++ 对象的 std::vector 保存到磁盘?
- Craps游戏问题,忽略if语句
- 无法通过头文件保存变量的值
- 无法恢复我的安卓 c++ 游戏的状态(状态>保存状态始终为空)
- 为游戏保存大量数据
- Cocos2dx v3 - 每隔一定间隔不断保存游戏的正确方法
- 保存和加载游戏状态到二进制文件中.c++