2017-02-22 2 views
0

Я создаю приложение для игры в objective-c, которое использует Google Play Game services для realtimeMultiplayer функциональность. В приложении пользователь должен делать ставки на некоторые монеты перед началом игры, и мы хотим, чтобы пользователь, который подключен, должен был поставить ставку на тот же номер для монет. Я следую документации по адресу https://developers.google.com/games/services/ios/realtimeMultiplayer. Приложение отлично работает при поиске игрока в реальном времени без особой роли каждого игрока, такого как игроки с разными монетами.Google Play Игра с многопользовательским режимом в реальном времени

- (void)createQuickStartRoom { 
    GPGMultiplayerConfig *config = [[GPGMultiplayerConfig alloc] init]; 
    // Could also include variants or exclusive bitmasks here 
    config.minAutoMatchingPlayers = totalPlayers - 1; 
    config.maxAutoMatchingPlayers = totalPlayers - 1; 

    // Show waiting room UI 
    [[GPGLauncherController sharedInstance] presentRealTimeWaitingRoomWithConfig:config]; 
} 

Но я хочу искать игроков, имеющих ту же роль, что и каждый игрок, потратив такое же количество монет в моем приложении.

static uint64_t const ROLE_COIN_10 = 0x1; // 001 in binary 
static uint64_t const ROLE_COIN_20 = 0x2; // 010 in binary 
static uint64_t const ROLE_COIN_50 = 0x4; // 100 in binary 

- (void)createQuickStartRoomWithRole:(uint64_t)role { 
    GPGMultiplayerConfig *config = [[GPGMultiplayerConfig alloc] init]; 

    // auto-match with two random auto-match opponents of different roles 
    config.minAutoMatchingPlayers = 2; 
    config.maxAutoMatchingPlayers = 2; 
    config.exclusiveBitMask = role; 

    // create room, etc. 
    // … 
} 

Но необходимый игрок не имеет такой же роли. Он по-прежнему предоставляет игроку RealTime разную роль. Пожалуйста, дайте мне знать, как достичь этой функциональности. Спасибо.

ответ

2

Вы хотите использовать поле variant, чтобы соответствовать игрокам, запрашивающим одно и то же (отличное от нуля) значение. В вашем примере укажите вариант с количеством монет. Исключительная битовая маска используется для соответствия различным типам. Например, если вам нужно «нарушение» и «защита» для матча.

+0

Привет, Клейтон, спасибо. Он работал идеально. Ты спас мой день :). –

+0

не могли бы вы помочь мне на этом http://stackoverflow.com/questions/42427673/invite-friend-in-google-play-services –

Смежные вопросы