Tôi đang gặp khó khăn trong việc tìm ra cách để mời lại một trình phát bị ngắt kết nối theo cách tốt, sử dụng lớp GKMatch cho Trung tâm trò chơi. Trò chơi là một trò chơi 1 so với 1.Kết nối lại máy nghe nhạc trong Game Center
Khi tôi phát hiện một máy nghe nhạc bị ngắt kết nối, tôi cố gắng mời lại mà chơi cụ thể để phù hợp với cuộc gọi này:
[[GKMatchmaker sharedMatchmaker] addPlayersToMatch:theMatch matchRequest:request completionHandler:^(NSError *error)
này hoạt động như nó phải làm. Khi người chơi khác đã thiết lập kết nối anh ta được mời lại và trận đấu có thể tiếp tục. Nhưng điều này là một vấn đề mà tôi không thể giải quyết được. Ở đây có trường hợp:
- Trình phát 1 ngắt kết nối.
- Người chơi 2 rời khỏi trận đấu trong khi Người chơi 1 bị ngắt kết nối.
- Trình phát 1 kết nối lại và phát hiện rằng anh đã mất kết nối với Trình phát 2 và cố gắng kết nối lại với trình phát2.
- Người chơi 2 đang tìm kiếm một trận đấu mới, mà anh đang làm với matchMakerViewController.
- Người chơi 2 đột nhiên tham gia trận đấu cũ với Người chơi 1 mà anh ta đã rời đi.
Vì vậy, vấn đề của tôi là matchmakerViewController cho phép người chơi tham gia các trận đấu cũ nếu họ được mời lại. Có cách nào tốt hơn để xử lý kịch bản kết nối lại này để mọi người không được mời trở lại các trận đấu cũ?
@ Cupcake.Trong mã của tôi nó xảy ra khi 1 người chơi bị ngắt kết nối tự động ngắt kết nối khác khỏi trò chơi.Y nó xảy ra như vậy? Làm thế nào để tránh sự ngắt kết nối này của người chơi 1 mặc dù người chơi 2get diconnect –