[英]Stopwatch cocos2d-x (Android & iOS)
我目前面臨一個問題。
我創建了一個游戲,用戶可以在一個關卡中競賽,並且有一個秒表來計算用戶完成關卡的時間。
我使用此代碼段將計數器轉換為秒表
void update(float dt)
{
if (!paused)
{
fcheckbutton+=dt;
ftimer+=dt;
if (ftimer >= 0.01f)
{
this->timer();
ftimer = 0.0f;
}
}
}
void timer()
{
m_timer++;
int milliseconds = m_timer%60;
int seconds = (m_timer/60)%60;
int minutes = m_timer/3600;
CCString * P1Time = CCString::createWithFormat("%02d:%02d:%02d", minutes,seconds,milliseconds);
m_label->setString(P1Time->getCString());
}
我在更新方法中調用了此函數...
問題在於秒表在每個設備(iOS和Android)中都會產生各種結果。
在我的測試用例中,如果用戶不進行任何輸入,則應該在32秒內迷路。
iOS(iPhone 4)是最接近的一種,秒表約為32秒
但是在Android設備上,結果卻有所不同。
Google Nexus S 28秒
新的Google Nexus 7 18秒
Galaxy Note 30秒
必須在每個設備中同步秒表,這一點很重要,因為我有一個基於用戶秒表結果的排行榜。
我應該怎么做?
編輯:更新為調用計時器方法
您在哪里更新m_timer變量? 我認為問題在於某些設備的FPS較低。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.