예제 #1
0
        private IEnumerator CreateGroup(string groupName)
        {
            ApplicationModel.ConnectedToLobby = false;
            var sharedGroupHandler = new SharedGroupHandler(ApplicationModel.CurrentPlayer);

            yield return(StartCoroutine(sharedGroupHandler.Create(groupName)));

            if (!string.IsNullOrWhiteSpace(sharedGroupHandler.SharedGroupId))
            {
                var matchLobbyHandler = new MatchLobbyHandler(ApplicationModel.CurrentPlayer);
                yield return(StartCoroutine(matchLobbyHandler.CreateMatchLobby(sharedGroupHandler.SharedGroupId)));

                ApplicationModel.CurrentSharedGroupData = matchLobbyHandler.TicTacToeSharedGroupData;
                ApplicationModel.ConnectedToLobby       = ApplicationModel.CurrentMatch.playerOneId == ApplicationModel.CurrentPlayer.PlayFabId;
            }
        }
예제 #2
0
        private IEnumerator CreateMatchLobby(string groupName, bool locked)
        {
            yield return(StartCoroutine(partyNetworkHandler.CreateAndJoinToNetwork()));

            ApplicationModel.NetworkCreatorId = ApplicationModel.CurrentPlayer.Entity.Id;

            if (string.IsNullOrWhiteSpace(partyNetworkHandler.NetworkId))
            {
                yield return(null);
            }

            var matchLobbyHandler = new MatchLobbyHandler(ApplicationModel.CurrentPlayer);

            yield return(StartCoroutine(matchLobbyHandler.CreateMatchLobby(groupName, partyNetworkHandler.NetworkId, locked)));

            ApplicationModel.CurrentMatchLobby = matchLobbyHandler.MatchLobby;
        }