async Task <EncounterResponse> Encounter() { WildPokemonViewModel pokemonEncounter = null; PokemonData pokemonData = null; if (!isPokemonFromLure) { var encounterPokemonResponse = await session.EncounterPokemon(EncounterId, SpawnPointId); if (encounterPokemonResponse.Status == POGOProtos.Networking.Responses.EncounterResponse.Types.Status.EncounterSuccess) { pokemonEncounter = new WildPokemonViewModel(encounterPokemonResponse.WildPokemon, settings); pokemonData = encounterPokemonResponse.WildPokemon.PokemonData; } } else { var encounterPokemonResponse = await session.EncounterDiskPokemon(EncounterId, SpawnPointId); if (encounterPokemonResponse.Result == DiskEncounterResponse.Types.Result.Success) { pokemonEncounter = new WildPokemonViewModel(encounterPokemonResponse.PokemonData, fort, settings); pokemonData = encounterPokemonResponse.PokemonData; } } return(new EncounterResponse(pokemonEncounter, pokemonData)); }
public EncounterResponse(WildPokemonViewModel pokemon, PokemonData pokemonData) { IsSuccess = pokemon != null; Pokemon = pokemon; PokemonData = pokemonData; }