2013-08-24 4 views
2

Я пытаюсь автоматизировать игроков по их выбранным критериям. Для простоты игрока можно оценить уровень 1, 2 или 3. Если игрок является уровнем 3 и хочет играть только противников третьего уровня, как это делается? Я читаю страницу за страницей из руководств и ссылок Google. В нем указано, что битовая маска может использоваться для установки критериев. В моих испытаниях я был в состоянии соответствовать игрокам, когда их битмаски являются дополнением друг к другу, как указано в документации Google.Использование битовой маски для automatch игроков в Android Development

exclusiveBitMask - Эксклюзивные битмаски для запроса на автоматизацию. Логическое И каждого спаривания запросов на автоматизацию должно быть равно нулю для автосогласования. Если для игры нет требований к эксклюзивности, это значение должно быть установлено на 0.

Итак, если у двух игроков одинаковая битмаска (то же самое), они НЕ будут сопоставляться. Каково решение? Если они совпадают на основе дополнения 2, как это реализовать? Кто получает «обычную» битовую маску, и кто получает это дополнение? Я не понимаю.

Я могу дать пользователям возможность создавать игры:

мой уровень ---- уровень готовы играть против

1 1 0 ---- 1 1 0 (ноль означает да, так мой уровень == 1 и готов играть на уровень 1 только)

Наряду с возможностью найти игру:

уровня, чтобы играть против ---- моего уровня

0 0 1 --- - 0 0 1 (играть против уровня 1, и я уровень 1)

Это нормально, но QuickGame снят, потому что либо ...

1) два человека на том же уровне, не получают совпадать, как:

0 0 0 ---- 0 0 1 и 0 0 0 ---- 0 0 1 (НЕТ МАТЧА, оба уровня 1 и готовы играть с кем-либо) будет соответствовать кому-то, желающему играть ТОЛЬКО 3-го уровня, как в:

0 0 0 ---- 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 y любой, и создать уровень игры 3 против уровня 3 ТОЛЬКО - это матч, и это не так)

Какое решение?

ответ

2

Дайте шанс public RoomConfig.Builder setVariant (int variant)
С setVariant вы можете создавать комнаты для разных уровней игроков.

+0

Я это рассмотрел. К сожалению, это не сработает. Вариант будет соответствовать только другому варианту. Это было бы хорошо для Уровня 1 против Уровня 1. Тем не менее, я искал, чтобы позволить игрокам выбирать противников большого уровня, чтобы играть. Пользователь A: Уровни 1, 2 и 3 Пользователь B: Уровни 1 и 2. Пользователь A должен соответствовать пользователю B, но не может использоваться при использовании вариантов. Я все еще ищу способ. :( – MrClicks

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