我已經做了一個簡單的課程,允許我將分數提交給我的在線高分系統,但我想知道如果沒有互聯網連接,我會怎麼做。我將比分保存在一個plist中,但是它不會在那裏同步,這發生在玩家在比賽結束後獲得新的高分後。如果沒有與互聯網連接,則分數將不會被提交。高分系統iphone遊戲
我的問題是:「如何確保在有連接可用時高分是同步的?」
由於提前,
喬
我已經做了一個簡單的課程,允許我將分數提交給我的在線高分系統,但我想知道如果沒有互聯網連接,我會怎麼做。我將比分保存在一個plist中,但是它不會在那裏同步,這發生在玩家在比賽結束後獲得新的高分後。如果沒有與互聯網連接,則分數將不會被提交。高分系統iphone遊戲
我的問題是:「如何確保在有連接可用時高分是同步的?」
由於提前,
喬
你可以保持的得分上傳狀態的記錄(含日期+時間,所以你可以有多個分)在一個文件中,並檢查它在啓動任何未同步的分數。
我對iPhone開發一無所知,但是在邏輯層面上,爲什麼你沒有將布爾標誌設置爲false,表明它從未在線同步呢?然後,當遊戲開始時,檢查旗幟,如果旗幟是假的,並且互聯網可用,則更新樂譜數據。您可以將該標誌設置爲true,或者將該值從plist中刪除。
我寫的最後一個Cocos2d遊戲我用Steffen Itterheim’s GameKitHelper class來達到很好的效果。
另見:
Integrate Gamecenter in cocos2d game
Synchronizing Offline Game Center Achievements and Scores
你也許可以適應其中之一爲自己的高評分系統,但它確實最難解決的問題「爲什麼不使用遊戲中心?」
我該怎麼做? – coderjoe 2012-02-24 14:31:14
一種方法是將它們保存在密鑰日期的字典中。如果同步失敗並填寫字典並保存到磁盤。在啓動時檢查它是否存在,嘗試再次上傳並在成功時刪除。 – Alexander 2012-02-24 14:32:47
@coderjoe:所以你已經想出瞭如何把分數放在plist中,但是你不能*弄清楚如何在那裏放置一個上傳狀態標誌? – JeremyP 2012-02-24 14:34:27