public void CreateQuickMatch(uint minOpponents, uint maxOpponents, uint variant, ulong exclusiveBitmask, Action <bool, GooglePlayGames.BasicApi.Multiplayer.TurnBasedMatch> callback)
 {
     callback = Callbacks.AsOnGameThreadCallback <bool, GooglePlayGames.BasicApi.Multiplayer.TurnBasedMatch>(callback);
     using (GooglePlayGames.Native.PInvoke.TurnBasedMatchConfigBuilder matchConfigBuilder = GooglePlayGames.Native.PInvoke.TurnBasedMatchConfigBuilder.Create())
     {
         matchConfigBuilder.SetVariant(variant).SetMinimumAutomatchingPlayers(minOpponents).SetMaximumAutomatchingPlayers(maxOpponents).SetExclusiveBitMask(exclusiveBitmask);
         using (GooglePlayGames.Native.PInvoke.TurnBasedMatchConfig config = matchConfigBuilder.Build())
             this.mTurnBasedManager.CreateMatch(config, this.BridgeMatchToUserCallback((Action <GooglePlayGames.BasicApi.UIStatus, GooglePlayGames.BasicApi.Multiplayer.TurnBasedMatch>)((status, match) => callback(status == GooglePlayGames.BasicApi.UIStatus.Valid, match))));
     }
 }
 public void CreateWithInvitationScreen(uint minOpponents, uint maxOpponents, uint variant, Action <GooglePlayGames.BasicApi.UIStatus, GooglePlayGames.BasicApi.Multiplayer.TurnBasedMatch> callback)
 {
     callback = Callbacks.AsOnGameThreadCallback <GooglePlayGames.BasicApi.UIStatus, GooglePlayGames.BasicApi.Multiplayer.TurnBasedMatch>(callback);
     this.mTurnBasedManager.ShowPlayerSelectUI(minOpponents, maxOpponents, true, (Action <PlayerSelectUIResponse>)(result =>
     {
         if (result.Status() != CommonErrorStatus.UIStatus.VALID)
         {
             callback((GooglePlayGames.BasicApi.UIStatus)result.Status(), (GooglePlayGames.BasicApi.Multiplayer.TurnBasedMatch)null);
         }
         using (GooglePlayGames.Native.PInvoke.TurnBasedMatchConfigBuilder matchConfigBuilder = GooglePlayGames.Native.PInvoke.TurnBasedMatchConfigBuilder.Create())
         {
             matchConfigBuilder.PopulateFromUIResponse(result).SetVariant(variant);
             using (GooglePlayGames.Native.PInvoke.TurnBasedMatchConfig config = matchConfigBuilder.Build())
                 this.mTurnBasedManager.CreateMatch(config, this.BridgeMatchToUserCallback(callback));
         }
     }));
 }
示例#3
0
 internal TurnBasedMatchConfigBuilder SetVariant(uint variant)
 {
     TurnBasedMatchConfigBuilder.TurnBasedMatchConfig_Builder_SetVariant(base.SelfPtr(), variant);
     return(this);
 }
示例#4
0
 internal TurnBasedMatchConfigBuilder SetExclusiveBitMask(ulong bitmask)
 {
     TurnBasedMatchConfigBuilder.TurnBasedMatchConfig_Builder_SetExclusiveBitMask(base.SelfPtr(), bitmask);
     return(this);
 }
示例#5
0
 internal TurnBasedMatchConfigBuilder SetMinimumAutomatchingPlayers(uint minimum)
 {
     TurnBasedMatchConfigBuilder.TurnBasedMatchConfig_Builder_SetMinimumAutomatchingPlayers(base.SelfPtr(), minimum);
     return(this);
 }
示例#6
0
 internal TurnBasedMatchConfigBuilder PopulateFromUIResponse(PlayerSelectUIResponse response)
 {
     TurnBasedMatchConfigBuilder.TurnBasedMatchConfig_Builder_PopulateFromPlayerSelectUIResponse(base.SelfPtr(), response.AsPointer());
     return(this);
 }
示例#7
0
 internal static TurnBasedMatchConfigBuilder Create() =>
 new TurnBasedMatchConfigBuilder(TurnBasedMatchConfigBuilder.TurnBasedMatchConfig_Builder_Construct());
示例#8
0
 protected override void CallDispose(HandleRef selfPointer)
 {
     TurnBasedMatchConfigBuilder.TurnBasedMatchConfig_Builder_Dispose(selfPointer);
 }
示例#9
0
 internal TurnBasedMatchConfig Build() =>
 new TurnBasedMatchConfig(TurnBasedMatchConfigBuilder.TurnBasedMatchConfig_Builder_Create(base.SelfPtr()));
示例#10
0
 internal TurnBasedMatchConfigBuilder AddInvitedPlayer(string playerId)
 {
     TurnBasedMatchConfigBuilder.TurnBasedMatchConfig_Builder_AddPlayerToInvite(base.SelfPtr(), playerId);
     return(this);
 }