private static List <NamedAPIResource> GetMoves(EFTypes type) { return(type .Moves .Select(x => x.ToNamedApiResource()) .ToList()); }
private static List <Name> GetNames(EFTypes type) { return(type .TypeNames .Select(x => new Name(x.Name, x.LocalLanguage.ToNamedApiResource())) .ToList()); }
private static List <TypePokemon> GetPokemon(EFTypes type) { return(type .PokemonTypes .Select(x => new TypePokemon(x.Slot, x.Pokemon.ToNamedApiResource())) .ToList()); }
private static List <GenerationGameIndex> GetGameIndices(EFTypes type) { return(type .TypeGameIndices .Select(x => new GenerationGameIndex(x.GameIndex, x.Generation.ToNamedApiResource())) .ToList()); }
private static List <NamedAPIResource> DamageFrom(EFTypes type, Func <EFTypeEfficacy, bool> predicate) { return(type .TypeEfficacyTargetType .Where(predicate) .Select(x => x.DamageType.ToNamedApiResource()) .ToList()); }
private static TypeRelations GetDamageRelations(EFTypes type) { return(new TypeRelations { NoDamageTo = DamageTo(type, x => x.DamageTypeId == type.Id && x.DamageFactor == 0), HalfDamageTo = DamageTo(type, x => x.DamageTypeId == type.Id && x.DamageFactor == 50), NormalDamageTo = DamageTo(type, x => x.DamageTypeId == type.Id && x.DamageFactor == 100), DoubleDamageTo = DamageTo(type, x => x.DamageTypeId == type.Id && x.DamageFactor == 200), NoDamageFrom = DamageFrom(type, x => x.TargetTypeId == type.Id && x.DamageFactor == 0), HalfDamageFrom = DamageFrom(type, x => x.TargetTypeId == type.Id && x.DamageFactor == 50), NormalDamageFrom = DamageFrom(type, x => x.TargetTypeId == type.Id && x.DamageFactor == 100), DoubleDamageFrom = DamageFrom(type, x => x.TargetTypeId == type.Id && x.DamageFactor == 200) }); }
private static NamedAPIResource GetMoveDamageClass(EFTypes type) { return(type .DamageClass .ToNamedApiResource()); }
private static NamedAPIResource GetGeneration(EFTypes type) { return(type .Generation .ToNamedApiResource()); }
internal static NamedAPIResource ToNamedApiResource(this EFTypes src) => src.ToNamedApiResource <TypesController>();