public async Task <PokedexModel> GetSpeciesInfo(PokedexModel pkm, string pkmID) { try { PokemonSpecies species = await pokeApi.GetResourceAsync <PokemonSpecies>(pkmID); //pkm.species = new Species(); //pkm.species.Bio = Regex.Replace(species.FlavorTextEntries[0].Language , @"\n+", " "); pkm.species.Bio1 = GetFlavourText(species, "en", "red"); pkm.species.Bio2 = GetFlavourText(species, "en", "gold"); pkm.species.CaptureRate = species.CaptureRate; pkm.species.Colour = species.Color.Name; pkm.species.EggGroups = GetEggGroups(pkm.species.EggGroups, species); pkm.species.Generation = species.Generation.Name; pkm.species.Genus = species.Genera[7].Genus; pkm.species.GrowthRate = species.GrowthRate.Name; pkm.species.Habitat = species.Habitat.Name; pkm.species.Shape = species.Shape.Name; } catch (Exception ex) { throw new Exception($"!! ERROR !! \n{ex.Message} \n{ex.InnerException} \n{ex.StackTrace} \n{ex.Source}"); } return(pkm); }
//TEST public async Task <PokedexModel> CreatePkm(string pkmID) { try { pkm = new PokedexModel(); Pokemon pokemon = await pokeApi.GetResourceAsync <Pokemon>(pkmID); pkm.Name = pokemon.Name; pkm.ID = pokemon.Id; pkm.Types = GetTypes(pkm.Types, pokemon); pkm.Weight = pokemon.Weight; pkm.Height = pokemon.Height; pkm.Abilities = GetAbilities(pkm.Abilities, pokemon); pkm.BaseXP = pokemon.BaseExperience; pkm.HP = pokemon.Stats[0].BaseStat; pkm.Attack = pokemon.Stats[1].BaseStat; pkm.Defence = pokemon.Stats[2].BaseStat; pkm.SpecialAttack = pokemon.Stats[3].BaseStat; pkm.SpecialDefence = pokemon.Stats[4].BaseStat; pkm.Speed = pokemon.Stats[5].BaseStat; //pkm.LowResImageSource = pokemon.Sprites.FrontDefault; pkm.RemasteredThumbImageSource = $"Data/RemasteredThumbs/{pokemon.Id}.png"; pkm.ModernThumbImageSource = $"Data/ModernThumbs/{pokemon.Id}.png"; pkm.FootprintsImageSource = $"Data/Footprints/{pokemon.Id}.png";; pkm.GreenArtImageSource = $"Data/GreenArt/{pokemon.Id}.png"; pkm.BlueArtImageSource = $"Data/BlueArt/{pokemon.Id}.png"; pkm.ModernArtImageSource = $"Data/ModernArt/{pokemon.Id}.png"; await GetSpeciesInfo(pkm, pkmID); } catch (Exception ex) { throw new Exception($"!! ERROR !! \n{ex.Message} \n{ex.InnerException} \n{ex.StackTrace} \n{ex.Source}"); } return(pkm); }
public async Task <PokedexModel> GetSinglePokemonSpecies(PokedexModel pkm) { return(await GetSpeciesInfo(pkm, pkm.ID.ToString())); }