2012-06-01 3 views
0

Можно ли получить данные, которые мы получаем из GameCenter, и создать для этого свой собственный скин?GameCenter skinning

Если да, то где я могу получить доступ ко всем данным, которые мы получаем? Важные данные, которые я хочу, это текущие матчи, все остальное для меня не имеет большого значения. Может ли кто-нибудь помочь ?!

+0

Если это невозможно, было бы неразумно захватывать данные сопоставления каждый раз, когда вы создаете новое совпадение, а затем сохраняете его - это может закончиться не синхронизированным, если не сделано правильно .. но если бы я мог его получить все синхронизируются, если я нахожусь в правильных функциях GameCenter, это должно быть хорошо и работать? Хорошая идея/Плохая идея? – Lagoo87

+0

Вы говорите о пошаговых играх? –

+0

Yea- Я ищу данные совпадения в своем собственном пользовательском интерфейсе, чтобы сделать его более родным, а не прыгать назад и вперед между gamecenter и моим приложением. – Lagoo87

ответ

1

Они должны получить ты:

[GKTurnBasedMatch loadMatchesWithCompletionHandler:(void (^)(NSArray *matches, NSError *error))completionHandler]; 

[GKTurnBasedMatch loadMatchDataWithCompletionHandler:(void (^)(NSData *matchData, NSError *error))completionHandler]; 

Edit:

Это займет очень длинный пост, чтобы объяснить весь процесс шаг за шагом, но вот главная идея:

[GKTurnBasedMatch loadMatchesWithCompletionHandler:(void (^)(NSArray *matches, NSError *error)){ 

for (GKTurnBasedMatch *myMatch in matches) { 

// update your UI depending on the games. Below is just an example.. This part is up to you - update a tableView, manage a view etc.. 

int k = 0; // will hold the number of active players still in the game 
for (GKTurnBasedParticipant *part in myMatch.participants) { 

if(participant.matchOutcome != GKTurnBasedMatchOutcomeQuit){ 
k++; 
} 

} 

if ([myMatch.currentParticipant.playerID isEqualToString [GKPlayer localPlayer].playerID]) { 
//our turn 

if (k<2) { //there are less than 2 active players - end game if it's your turn etc... 

//end turn depending on your turn. 
return; 
} 

//update your UI for that match.. 


} else { //not your turn 

//update your UI - goes to their turn section for example 

} 

} 


}]; 

Снова я только что написал все это из-за моей головы, поэтому я уверен, что есть ошибки, но это основной маршрут, который вы хотите принять. Вы хотите получить список своих текущих матчей - и перечислите их в зависимости от того, в чём очередь, или, если игра закончилась, и другие вещи.

:
+0

Спасибо за те, что он отплевывает много данных. Есть ли способ, по которому вы рекомендуете разделить данные на отдельные объекты? Это моя первая попытка! – Lagoo87

+0

Вы удивительный человек. Большое спасибо за Вашу помощь! : D – Lagoo87