示例#1
0
        public async Task GetCharacterForManagement(AuthorizationTokenContainer tokenContainer, CharacterForManagementRequest characterForManagementRequest)
        {
            var result = new GetCharacterForManagementResult();
            GetPlayerByAccessTokenResponse playerByAccessTokenResponse = _authService.GetPlayerByAccessToken(tokenContainer.Token);

            if (playerByAccessTokenResponse.Success)
            {
                GetCharacterByPlayerIdAndCharacterIdResponse retrievedCharacter = _gameService.GetCharacterByPlayerIdAndCharacter(playerByAccessTokenResponse.Player.Id, characterForManagementRequest.CharacterId);
                if (retrievedCharacter.Success)
                {
                    result.Success   = true;
                    result.Character = retrievedCharacter.Character;
                    result.Error     = null;
                    await Clients.Caller.ReceiveCharacterForManagement(result);
                }
            }
        }
示例#2
0
        public GetCharacterByPlayerIdAndCharacterIdResponse GetCharacterByPlayerIdAndCharacter(Guid playerId, Guid characterId)
        {
            var       result    = new GetCharacterByPlayerIdAndCharacterIdResponse();
            Character character = _wrapper.CharacterRepository.GetOne <Character>(f => f.Id == characterId && f.PlayerId == playerId);

            if (character != null)
            {
                result.Character   = character;
                result.Success     = true;
                result.CharacterId = character.Id;
                result.PlayerId    = character.PlayerId;
            }
            else
            {
                result.Success = false;
            }
            return(result);
        }