iPhone GameCenter presentando punteggio più alto?
-
28-09-2019 - |
Domanda
Sto usando qui di seguito la funzione per inviare il punteggio al centro del gioco. Come modificare sottostante codice in modo che posso inviare il punteggio solo se è più alto di quanto il punteggio già presentato? E io non voglio mantenere i punteggi a livello locale. Qualsiasi aiuto?
- (void) reportScore: (int64_t) score forCategory: (NSString*) category
{
GKScore *scoreReporter = [[[GKScore alloc] initWithCategory:category] autorelease];
scoreReporter.value = score;
[scoreReporter reportScoreWithCompletionHandler: ^(NSError *error)
{
[self callDelegateOnMainThread: @selector(scoreReported:) withArg: NULL error: error];
}];
}
Grazie.
Modifica:. Ho appena scoperto che è gestito dal centro di gioco unica ... Solo il punteggio più alto verrà visualizzato sul app GameCenter
Soluzione
È possibile recuperare il punteggio precedente utilizzando
GKLeaderboard *query = [[GKLeaderBoard alloc] initWithPlayerIDs:[NSArray arrayWithObject:yourPlayerId]];
if (query != nil)
{
[query loadScoresWithCompletionHandler: ^(NSArray *scores, NSError *error) {
if (error != nil)
// handle the error.
if (scores != nil)
// process the score information.
}];
}
Maggiori informazioni su Mela GameKit Guida di programmazione
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow