2014-02-17 2 views
0

Я ищу для создания чрезвычайно простой функции чата для моего приложения.Google play услуги простая реализация чата?

Я просто хочу, чтобы иметь возможность отправить сообщение противнику в моем пошаговом матчевом матче.

Я не хочу использовать библиотеки, такие как Scringo, и что у вас есть. Есть ли способ реализовать это?

Я пытался использовать Games.RealtimeMultiplayer.sendReliableMessage(), но у моих игроков нет в комнате, поэтому он не работает.

ответ

1

В просматривал API, кажется, что единственный способ отправить данные, чтобы позвонить takeTurn

Чтобы повернуть, используйте этот метод:

Метод Описание takeTurn()

Ваша игра должна вызывать этот метод только в том случае, если пользователь переходит в активное пошаговое соответствие. После вызова этого метода пользователь видит это соответствие в списке «Их поворот» в пользовательском интерфейсе списка соответствия. Если идентификатор участника указан в вызове метода, этот участник становится текущим игроком и может сыграть поворот. В первый раз, когда это происходит с приглашенным игроком, игрок получает уведомление о приглашении. Впоследствии игрок получает уведомление о повороте. Если идентификатор ожидающего участника не указан, состояние соответствия изменяется на MATCH_STATUS_AUTO_MATCHING. Ваша игра может только оставить идентификатор участника неуказанным, если есть слоты для проигрывателя, которые все еще свободны для автоматического сопоставления. Ваша игра может вызывать takeTurn() с текущим игроком в качестве ожидающего участника. В этом случае службы Play Games загружают данные игры, но уведомление не отправляется.

Нет других вызовов, которые изменяют данные, хранящиеся на серверах, и передаются другим игрокам.

Теперь, сказав это, можно отправить чат для игрока, которому в настоящее время принадлежит Поворот. Похоже, что есть два способа сделать это: либо включите Чат, либо установите ожидающего участника на следующий участник ... или обновите только часть чата, а затем вызовите takeTurn с включенным участником-участником текущего активного участника. Если посмотреть на документацию, это приведет к обновлению данных, хранящихся на серверах Google, но не обязательно отправит уведомление, которое оно обновило, поскольку, как представляется, уведомления отправляются только в том случае, если на самом деле он уведомляет игрока о том, что он их очередь. (если вы предполагаете, что ваше приложение открыто, пока игрок ждал, пока другие будут завершены, тогда он может опросить данные с помощью getData(), так как нет требования, чтобы я мог видеть, что это очередь Игрока запросить данные().

Это позволит игроку в чат, но не в режиме реального времени, как вы говорите ... как API строго пошаговая.

+0

вы говорите о пошаговых Multiplayer API. Он специально ссылаясь на многопользовательский режим реального времени, который имеет метод sendReliableMessage. Нельзя ли использовать Turn-based для игровых данных, но в реальном времени для чата? – mbarrows

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