如题,求获取游戏运行总时间方法
cocos版本:3.2
需求:
1.玩家点游戏ICON进入游戏时开始计算
2.游戏暂停时(home键暂停游戏等情况),时间暂停
3.不希望修改cocos2d源代码
4.游戏中用到多个scene,在各scene的scheduleUpdate()里写异常麻烦,求一个相对简单点的方法
cocos新手&c++新手,希望各位大大帮帮忙~
如题,求获取游戏运行总时间方法
cocos版本:3.2
需求:
1.玩家点游戏ICON进入游戏时开始计算
2.游戏暂停时(home键暂停游戏等情况),时间暂停
3.不希望修改cocos2d源代码
4.游戏中用到多个scene,在各scene的scheduleUpdate()里写异常麻烦,求一个相对简单点的方法
cocos新手&c++新手,希望各位大大帮帮忙~
进入前台 后台的时候 获取系统时间 做运算
我需要的是实时计算,实时可获取
研究了一下午scheduleUpdate,貌似没有什么好的方法实现全局的scheduleUpdate
正在考虑用多线程做个定时器
顺便吐槽一下,java转c++那个蛋疼啊。。。各种坑爹的语法
仔细想了想,你的方法是好用哈~~
1.记录游戏开始时间A
2.pause时,记录开始暂停的时间B
3.resume时,计算 当前时间 - B,加到暂停总消耗时间dt上
获取游戏运行时间就是 当前时间 - A - dt
LZ你的问题解决了吗?是不是用这种方法做的。。。求教
解决了啊
刚进游戏时,记录进游戏的时间startTime,初始化pauseTime = 0
当pause时,记录pause开始时间pauseStartTime
当resume时,pauseTime += 当前时间 - pauseStartTime
游戏总运行时间 = 当前时间 - startTime - pauseTime
不过首先你得找一个获取当前时间的方法,我用的是:
//距离xx日期有多少毫秒
static inline int64_t getCurrentTime() {
time_t currTime;
time(&currTime);
timeval tv;
gettimeofday(&tv, NULL);
return currTime * 1000ll + tv.tv_usec / 1000;
}