簡體   English   中英

秒表cocos2d-x(Android和iOS)

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM