GKMatchRequest
A GKMatchRequest объект используется для указания параметров для нового живого или основанного на повороте соответствия. Вы инициализируете объект запроса соответствия, затем передаете его другому объекту фактически создать соответствие. Вид объекта, которому Вы передаете его, зависит, на котором виде соответствия Вы хотите и хотите ли Вы вывести на экран стандарт matchmaking пользовательский интерфейс. Посмотрите Таблицу 1.
Оператор импорта
Swift
import GameKit
Objective C
@import GameKit;
Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает максимальное количество проигрывателей, позволенных в запросе соответствия на данный тип соответствия.
Объявление
Swift
class func maxPlayersAllowedForMatchOfType(_matchType: GKMatchType) -> IntObjective C
+ (NSUInteger)maxPlayersAllowedForMatchOfType:(GKMatchType)matchTypeПараметры
matchTypeВид соответствия. Посмотрите Тип Соответствия.
Возвращаемое значение
Максимальное количество позволенных проигрывателей для того типа соответствия.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.9 и позже.
-
maxPlayers maxPlayersСвойствоМаксимальное количество проигрывателей, которые могут присоединиться к соответствию.
Обсуждение
Максимальное количество проигрывателей должно быть равным или больше, чем минимальное число игроков. Максимальное количество проигрывателей может быть не больше, чем значением, возвращенным
maxPlayersAllowedForMatchOfType:метод для вида соответствия Вы планируете создать.Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.8 и позже.
-
minPlayers minPlayersСвойствоМинимальное число игроков, которое может присоединиться к соответствию.
Обсуждение
Минимальное число игроков должно быть по крайней мере 2.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.8 и позже.
-
Число игроков по умолчанию для соответствия.
Объявление
Swift
var defaultNumberOfPlayers: IntObjective C
@property(assign) NSUInteger defaultNumberOfPlayersОбсуждение
Если это свойство не установлено, то число игроков по умолчанию равно значению, сохраненному в
maxPlayersсвойство. Число игроков по умолчанию определяет число приглашенных, показанных в стандарте matchmaking пользовательский интерфейс. Проигрыватель может принять решение переопределить это, чтобы добавить или удалить слоты.Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.8 и позже.
-
inviteMessage inviteMessageСвойствоСтрока, выведенная на экран на устройстве другого проигрывателя, когда приглашено для присоединения к соответствию.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.8 и позже.
-
playerGroup playerGroupСвойствоЧисло, идентифицирующее подмножество проигрывателей, позволило присоединяться к соответствию.
Обсуждение
Если Ваша игра устанавливает
playerGroupсвойство, только проигрыватели, запросы которых совместно используют то жеplayerGroupзначение является автосоответствующим Игровым Центром. Значение группы проигрывателя произвольно. Например, Вы могли определить отличающийсяplayerGroupзначения для реализации любого из следующих фильтров:Игра могла ограничить проигрыватели на основе уровня квалификации.
Игра, обеспечивающая многократные игровые режимы, могла использовать его для фильтрации проигрывателей в определенную игру, в которую они хотят играть.
Игра, обеспечивающая содержание бонуса посредством закупки в приложении, могла соответствовать проигрыватели, кому принадлежит то же содержание друг с другом.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.8 и позже.
-
playerAttributes playerAttributesСвойствоМаска, указывающая роль, которую местный игрок хотел бы играть в игре.
Объявление
Swift
var playerAttributes: UInt32Objective C
@property(assign) uint32_t playerAttributesОбсуждение
Если это значение
0xFFFFFFFF(значение по умолчанию), это свойство проигнорировано. Если значение является ненулевым, то, автосоответствуя использованию значение, поскольку маска, ограничивающая роль проигрыватель, может играть в группе. Автосоответствие атрибутам проигрывателя соответствует новые проигрыватели в игру так, чтобы битовое «ИЛИ» масок всех проигрывателей в получающемся соответствии равнялось0xFFFFFFFF.Для получения дополнительной информации см. Игровое Руководство по программированию Центра.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.8 и позже.
-
Список идентификаторов проигрывателя для проигрывателей для приглашения в соответствие.
Объявление
Swift
var playersToInvite: [AnyObject]!Objective C
@property(retain) NSArray *playersToInviteОбсуждение
Свойство содержит массив
NSStringобъекты, каждый из которых является идентификатором для проигрывателя на Игровом Центре. Если значение свойства не -nil, при использовании запроса для создания соответствия, Игровой Центр приглашает те проигрыватели в соответствие. Никакое автосоответствие не сделано иGKMatchRequestmaxPlayersиminPlayersсвойства проигнорированы. Еслиnil(значение по умолчанию), никакие проигрыватели не приглашены. Точное поведение для matchmaking зависит от вида создаваемого соответствия, и класс раньше создавал соответствие. Для получения дополнительной информации см. Игровое Руководство по программированию Центра.Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.8 и позже.
Осуждаемый в OS X v10.10.
-
получатели получателиСвойствоСписок идентификаторов проигрывателя для проигрывателей для приглашения в соответствие.
Обсуждение
Свойство содержит массив
GKPlayerобъекты, каждый из которых содержит идентификатор для проигрывателя на Игровом Центре. Если значение свойства не -nil, при использовании запроса для создания соответствия, Игровой Центр приглашает те проигрыватели в соответствие. Никакое автосоответствие не сделано иGKMatchRequestmaxPlayersиminPlayersсвойства проигнорированы. Еслиnil(значение по умолчанию), никакие проигрыватели не приглашены. Точное поведение для matchmaking зависит от вида создаваемого соответствия, и класс раньше создавал соответствие. Для получения дополнительной информации см. Игровое Руководство по программированию Центра.Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.10 и позже.
-
Блок, который вызовут, когда ответ от приглашенного проигрывателя возвращается к Вашей игре.
Объявление
Swift
var recipientResponseHandler: ((GKPlayer!, GKInviteRecipientResponse) -> Void)!Objective C
@property(copy) void (^recipientResponseHandler)( GKPlayer *player, GKInviteRecipientResponse response)Обсуждение
Блок берет следующие параметры:
playerGKPlayerобъект связался с приглашенным проигрывателем.GKInviteeRecipientResponseПрирода ответа. Посмотрите Ответы Приглашенного.
Обработчик ответа приглашенного вызывают каждый раз, когда Вы программно приглашаете определенные проигрыватели присоединяться к соответствию. Это вызывают один раз для каждого проигрывателя, приглашенного в соответствие. Как правило, Ваша игра использует ответы для обновления настроенного пользовательского интерфейса. Например, Вы хотите, чтобы проигрыватель был в состоянии выполнить любую из следующих задач:
Начните матч.
Пригласите дополнительный набор определенных проигрывателей.
Используйте matchmaking для заполнения остающихся слотов соответствия.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.10 и позже.
-
Блок, который вызовут, когда ответ от приглашенного проигрывателя возвращается к Вашей игре.
Объявление
Swift
var inviteeResponseHandler: ((String!, GKInviteeResponse) -> Void)!Objective C
@property(copy) void (^inviteeResponseHandler)( NSString *playerID, GKInviteeResponse response)Обсуждение
Блок берет следующие параметры:
playerIDИдентификатор для проигрывателя.
GKInviteeResponseПрирода ответа. Посмотрите Ответы Приглашенного (Осуждаемый в iOS 8).
Обработчик ответа приглашенного вызывают каждый раз, когда Вы программно приглашаете определенные проигрыватели присоединяться к соответствию. Это вызывают один раз для каждого проигрывателя, приглашенного в соответствие. Как правило, Ваша игра использует ответы для обновления настроенного пользовательского интерфейса. Например, Вы хотите, чтобы проигрыватель был в состоянии выполнить любую из следующих задач:
Начните матч.
Пригласите дополнительный набор определенных проигрывателей.
Используйте matchmaking для заполнения остающихся слотов соответствия.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.9 и позже.
Осуждаемый в OS X v10.10.
-
Вид создаваемого соответствия.
Объявление
Swift
enum GKMatchType : UInt { case PeerToPeer case Hosted case TurnBased }Objective C
enum { GKMatchTypePeerToPeer, GKMatchTypeHosted, GKMatchTypeTurnBased }; typedef NSUInteger GKMatchType;Константы
-
PeerToPeerGKMatchTypePeerToPeerОдноранговое соответствие размещается Игровым Центром. Это представлено a
GKMatchобъект.Доступный в OS X v10.8 и позже.
-
HostedGKMatchTypeHostedСоответствие размещается на Вашем частном сервере.
Доступный в OS X v10.8 и позже.
-
TurnBasedGKMatchTypeTurnBasedОснованное на повороте соответствие размещается Игровым Центром. Это представлено a
GKTurnBasedMatchобъект.Доступный в OS X v10.8 и позже.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.8 и позже.
-
-
Возможные ответы от приглашения до удаленного проигрывателя.
Объявление
Swift
enum GKInviteRecipientResponse : Int { case InviteRecipientResponseAccepted case InviteRecipientResponseDeclined case InviteRecipientResponseFailed case InviteRecipientResponseIncompatible case InviteRecipientResponseUnableToConnect case InviteRecipientResponseNoAnswer }Objective C
enum { GKInviteRecipientResponseAccepted = 0, GKInviteRecipientResponseDeclined = 1, GKInviteRecipientResponseFailed = 2, GKInviteRecipientResponseIncompatible = 3, GKInviteRecipientResponseUnableToConnect = 4, GKInviteRecipientResponseNoAnswer = 5, }; typedef NSInteger GKInviteRecipientResponse;Константы
-
InviteRecipientResponseAcceptedGKInviteRecipientResponseAcceptedПроигрыватель принял приглашение.
Доступный в OS X v10.10 и позже.
-
InviteRecipientResponseDeclinedGKInviteRecipientResponseDeclinedПроигрыватель отклонил приглашение.
Доступный в OS X v10.10 и позже.
-
InviteRecipientResponseFailedGKInviteRecipientResponseFailedПриглашение было неспособно быть поставленным.
Доступный в OS X v10.10 и позже.
-
InviteRecipientResponseIncompatibleGKInviteRecipientResponseIncompatibleПриглашенный не выполняет совместимую версию Вашей игры.
Доступный в OS X v10.10 и позже.
-
InviteRecipientResponseUnableToConnectGKInviteRecipientResponseUnableToConnectС приглашенным нельзя было связаться.
Доступный в OS X v10.10 и позже.
-
InviteRecipientResponseNoAnswerGKInviteRecipientResponseNoAnswerПриглашение испытало таймаут без ответа.
Доступный в OS X v10.10 и позже.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.10 и позже.
-
-
Возможные ответы от приглашения до удаленного проигрывателя.
Осуждаемый в iOS 8. Используйте перечисление GKInviteeRecipientResponse вместо этого.
Объявление
Swift
typealias GKInviteeResponse = GKInviteRecipientResponseObjective C
enum { GKInviteeResponseAccepted = 0, GKInviteeResponseDeclined = 1, GKInviteeResponseFailed = 2, GKInviteeResponseIncompatible = 3, GKInviteeResponseUnableToConnect = 4, GKInviteeResponseNoAnswer = 5, }; typedef NSInteger GKInviteeResponse;Константы
-
GKInviteeResponseAcceptedGKInviteeResponseAcceptedПроигрыватель принял приглашение.
Доступный в OS X v10.8 и позже.
-
GKInviteeResponseDeclinedGKInviteeResponseDeclinedПроигрыватель отклонил приглашение.
Доступный в OS X v10.8 и позже.
-
GKInviteeResponseFailedGKInviteeResponseFailedПриглашение было неспособно быть поставленным.
Доступный в OS X v10.8 и позже.
-
GKInviteeResponseIncompatibleGKInviteeResponseIncompatibleПриглашенный не выполняет совместимую версию Вашей игры.
Доступный в OS X v10.8 и позже.
-
GKInviteeResponseUnableToConnectGKInviteeResponseUnableToConnectС приглашенным нельзя было связаться.
Доступный в OS X v10.8 и позже.
-
GKInviteeResponseNoAnswerGKInviteeResponseNoAnswerПриглашение испытало таймаут без ответа.
Доступный в OS X v10.8 и позже.
Оператор импорта
Objective C
@import GameKit;Swift
import GameKitДоступность
Доступный в OS X v10.8 и позже.
-
