コード例 #1
0
 public void CreateQuickMatch(uint minOpponents, uint maxOpponents, uint variant,
                              Action <bool, TurnBasedMatch> callback)
 {
     callback = Callbacks.AsOnGameThreadCallback(callback);
     using (var configBuilder = TurnBasedMatchConfigBuilder.Create()) {
         configBuilder.SetVariant(variant);
         configBuilder.SetMinimumAutomatchingPlayers(minOpponents);
         configBuilder.SetMaximumAutomatchingPlayers(maxOpponents);
         using (var config = configBuilder.Build()) {
             mTurnBasedManager.CreateMatch(config, BridgeMatchToUserCallback(callback));
         }
     }
 }
 public void CreateQuickMatch(uint minOpponents, uint maxOpponents, uint variant, ulong exclusiveBitmask, Action <bool, GooglePlayGames.BasicApi.Multiplayer.TurnBasedMatch> callback)
 {
     callback = Callbacks.AsOnGameThreadCallback(callback);
     using (GooglePlayGames.Native.PInvoke.TurnBasedMatchConfigBuilder turnBasedMatchConfigBuilder = GooglePlayGames.Native.PInvoke.TurnBasedMatchConfigBuilder.Create())
     {
         turnBasedMatchConfigBuilder.SetVariant(variant).SetMinimumAutomatchingPlayers(minOpponents).SetMaximumAutomatchingPlayers(maxOpponents)
         .SetExclusiveBitMask(exclusiveBitmask);
         using (GooglePlayGames.Native.PInvoke.TurnBasedMatchConfig config = turnBasedMatchConfigBuilder.Build())
         {
             mTurnBasedManager.CreateMatch(config, BridgeMatchToUserCallback(delegate(UIStatus status, GooglePlayGames.BasicApi.Multiplayer.TurnBasedMatch match)
             {
                 callback(status == UIStatus.Valid, match);
             }));
         }
     }
 }
コード例 #3
0
        /// <summary>
        /// Starts a game with randomly selected opponent(s) using exclusiveBitMask.
        ///  No UI will be shown.
        /// </summary>
        /// <param name="minOpponents">Minimum number opponents, not counting the current
        /// player -- so for a 2-player game, use 1).</param>
        /// <param name="maxOpponents">Max opponents, not counting the current player.</param>
        /// <param name="variant">Variant. Use 0 for default.</param>
        /// <param name="exclusiveBitmask">The bitmask used to match players. The
        /// xor operation of all the bitmasks must be 0 to match players.</param>
        /// <param name="callback">Callback. Called when match setup is complete or fails.
        /// If it succeeds, will be called with (true, match); if it fails, will be
        /// called with (false, null).</param>
        public void CreateQuickMatch(uint minOpponents, uint maxOpponents, uint variant,
                                     ulong exclusiveBitmask, Action <bool, TurnBasedMatch> callback)
        {
            callback = Callbacks.AsOnGameThreadCallback(callback);
            using (var configBuilder = TurnBasedMatchConfigBuilder.Create())
            {
                configBuilder.SetVariant(variant)
                .SetMinimumAutomatchingPlayers(minOpponents)
                .SetMaximumAutomatchingPlayers(maxOpponents)
                .SetExclusiveBitMask(exclusiveBitmask);

                using (var config = configBuilder.Build())
                {
                    mTurnBasedManager.CreateMatch(config, BridgeMatchToUserCallback(
                                                      (status, match) => callback(status == UIStatus.Valid, match)));
                }
            }
        }