Example #1
0
        /// <summary>
        /// Instantiate a new raid egg filter class.
        /// </summary>
        public FilterEggObject()
        {
            MinimumLevel = 1;
            MaximumLevel = 6;

            Team = PokemonTeam.All;
        }
    public void test()
    {
        int score = 0;

        foreach (PokemonTeam t in pD.getEvalTeams())
        {
            Console.Write("\nBattling against a team with: ");
            foreach (Pokemon p in t.getMembers())
            {
                Console.Write(p.getName() + " ");
            }
            float[] testDNA = pD.createDnaUsingPkmn(t);
            input = testDNA;


            fillNetwork(bestDNA);

            calculate();

            PokemonTeam attacker = pD.createTeamUsingDNA(output);

            score += b.battle(attacker.getMembers(), t.getMembers());
        }

        Console.Write("\nA score of " + score + " was achieved against the evaluation teams! (FF)");
    }
        public IActionResult EditPokemon(PokemonTeamDetail pokemonTeamDetail)
        {
            PokemonTeam pokemonTeam = this.dataService.GetPokemonTeamFromPokemon(pokemonTeamDetail.Id);

            if (!this.ModelState.IsValid)
            {
                List <Pokemon> pokemonList = this.FillPokemonList(pokemonTeam);

                UpdateTeamPokemonViewModel model = new UpdateTeamPokemonViewModel()
                {
                    PokemonTeamDetail = pokemonTeamDetail,
                    AllPokemon        = pokemonList,
                    AllNatures        = this.dataService.GetObjects <Nature>("Name"),
                    AllAbilities      = this.dataService.GetObjects <Ability>("Name"),
                    AllBattleItems    = this.dataService.GetBattleItems().OrderBy(x => x.Name).ToList(),
                    GameId            = pokemonTeam.GameId,
                };

                return(this.View(model));
            }

            Pokemon pokemon = this.dataService.GetPokemonById(pokemonTeamDetail.PokemonId);

            if (pokemon.GenderRatioId == 10)
            {
                pokemonTeamDetail.Gender = null;
            }

            this.dataService.UpdatePokemonTeamDetail(pokemonTeamDetail);

            return(this.RedirectToAction("PokemonTeams", "User"));
        }
Example #4
0
    public PokemonTeam createTeamUsingDNA(float[] pD)
    {
        PokemonTeam pT = new PokemonTeam();
        Pokemon     p1, p2, p3;

        int no1 = 0, no2 = 1, no3 = 2;

        for (int i = 0; i < pD.Length; i++)
        {
            if (pD[i] > pD[no1])
            {
                no1 = i;
            }
            else if (pD[i] > pD[no2])
            {
                no2 = i;
            }
            else if (pD[i] > pD[no3])
            {
                no3 = i;
            }
        }

        p1 = pokeDex[no1];
        p2 = pokeDex[no2];
        p3 = pokeDex[no3];

        pT.setMembers(p1, p2, p3);

        return(pT);
    }
 public async Task SetBasicInfo(
     [Summary("Zvolený team (roli).")] PokemonTeam team,
     [Summary("Aktuální level (1-40).")] int level)
 {
     await SetTeam(team);
     await SetLevel(level);
 }
        public IActionResult EditTeam(PokemonTeam newPokemonTeam)
        {
            PokemonTeam originalPokemonTeam = this.dataService.GetObjectByPropertyValue <PokemonTeam>("Id", newPokemonTeam.Id);

            if (!this.ModelState.IsValid)
            {
                UpdatePokemonTeamViewModel model = new UpdatePokemonTeamViewModel()
                {
                    Id = originalPokemonTeam.Id,
                    PokemonTeamName = originalPokemonTeam.PokemonTeamName,
                    GameId          = originalPokemonTeam.GameId,
                    UserId          = originalPokemonTeam.UserId,
                    AllGames        = this.dataService.GetAvailableGames(newPokemonTeam.Id),
                };

                return(this.View(model));
            }

            if (originalPokemonTeam.PokemonTeamName != newPokemonTeam.PokemonTeamName)
            {
                originalPokemonTeam.PokemonTeamName = newPokemonTeam.PokemonTeamName;
            }

            if (originalPokemonTeam.GameId != newPokemonTeam.GameId)
            {
                originalPokemonTeam.GameId = newPokemonTeam.GameId;
            }

            this.dataService.UpdatePokemonTeam(originalPokemonTeam);

            return(this.RedirectToAction("PokemonTeams", "User"));
        }
Example #7
0
    private List <PokemonTeam> loadEvalTeams()
    {
        List <PokemonTeam> et = new List <PokemonTeam>();

        Console.Write("\nSetting up evaluation teams");
        string[] setupString;
        setupString = System.IO.File.ReadAllText("configfiles/evalTeams.txt").Split('\n');

        for (int i = 0; i < setupString.Length; i++)
        {
            PokemonTeam pt = new PokemonTeam();
            Pokemon[]   p  = new Pokemon[3];

            string[] substring = setupString[i].Split(';');
            for (int j = 0; j < substring.Length; j++)
            {
                foreach (Pokemon pN in pokeDex)
                {
                    if (pN.getName() == substring[j])
                    {
                        p[j] = pN;
                    }
                }
            }
            pt.setMembers(p[0], p[1], p[2]);
            et.Add(pt);
        }
        return(et);
    }
        public IActionResult DeleteTeam(int pokemonTeamId)
        {
            this.UpdatePokemonTeamList();
            if (pokemonTeams.Count < pokemonTeamId)
            {
                return(this.RedirectToAction("PokemonTeams", "User"));
            }
            else
            {
                PokemonTeam          pokemonTeam = pokemonTeams[pokemonTeamId - 1];
                PokemonTeamViewModel model       = new PokemonTeamViewModel()
                {
                    Id = pokemonTeam.Id,
                    PokemonTeamName = pokemonTeam.PokemonTeamName,
                    FirstPokemon    = pokemonTeam.FirstPokemon,
                    SecondPokemon   = pokemonTeam.SecondPokemon,
                    ThirdPokemon    = pokemonTeam.ThirdPokemon,
                    FourthPokemon   = pokemonTeam.FourthPokemon,
                    FifthPokemon    = pokemonTeam.FifthPokemon,
                    SixthPokemon    = pokemonTeam.SixthPokemon,
                    AppConfig       = this.appConfig,
                };

                return(this.View(model));
            }
        }
        public IActionResult EditPokemon(int pokemonTeamId, int pokemonTeamDetailId)
        {
            this.UpdatePokemonTeamList();
            if (pokemonTeams.Count < pokemonTeamId)
            {
                return(this.RedirectToAction("PokemonTeams", "User"));
            }
            else
            {
                PokemonTeam       pokemonTeam       = pokemonTeams[pokemonTeamId - 1];
                PokemonTeamDetail pokemonTeamDetail = this.dataService.GetPokemonTeamDetail(pokemonTeam.GrabPokemonTeamDetailIds()[pokemonTeamDetailId - 1]);

                if (pokemonTeamDetail.Nature == null)
                {
                    pokemonTeamDetail.NatureId = this.dataService.GetObjectByPropertyValue <Nature>("Name", "Serious").Id;
                }

                List <Pokemon>             pokemonList = this.FillPokemonList(pokemonTeam);
                UpdateTeamPokemonViewModel model       = new UpdateTeamPokemonViewModel()
                {
                    PokemonTeamDetail = pokemonTeamDetail,
                    AllPokemon        = pokemonList,
                    AllNatures        = this.dataService.GetObjects <Nature>("Name"),
                    AllAbilities      = this.dataService.GetObjects <Ability>("Name"),
                    AllBattleItems    = this.dataService.GetBattleItems().OrderBy(x => x.Name).ToList(),
                    GameId            = pokemonTeam.GameId,
                };

                return(this.View(model));
            }
        }
        public IActionResult CreatePokemon(CreateTeamPokemonViewModel pokemonTeamDetail, int pokemonTeamId)
        {
            if (!this.ModelState.IsValid)
            {
                CreateTeamPokemonViewModel model = new CreateTeamPokemonViewModel()
                {
                    AllPokemon = this.FillPokemonList(pokemonTeams[pokemonTeamId - 1]),
                    AllNatures = this.dataService.GetObjects <Nature>("Name"),
                    NatureId   = this.dataService.GetObjectByPropertyValue <Nature>("Name", "Serious").Id,
                    GameId     = pokemonTeamDetail.GameId,
                    Level      = 100,
                    Happiness  = 255,
                };

                return(this.View(model));
            }

            PokemonTeam pokemonTeam = pokemonTeams[pokemonTeamId - 1];

            Pokemon pokemon = this.dataService.GetPokemonById(pokemonTeamDetail.PokemonId);

            if (pokemon.GenderRatioId == 10)
            {
                pokemonTeamDetail.Gender = null;
            }

            int pokemonTeamDetailId = this.dataService.AddPokemonTeamDetail(pokemonTeamDetail);

            pokemonTeam.InsertPokemon(this.dataService.GetPokemonTeamDetail(pokemonTeamDetailId));

            this.dataService.UpdatePokemonTeam(pokemonTeam);

            return(this.RedirectToAction("PokemonTeams", "User"));
        }
Example #11
0
        public void SetPokemonAsFainted(IPokemon pokemon)
        {
            var foundPokemon = PokemonTeam.FirstOrDefault(fd => fd.Pokemon == pokemon);

            if (foundPokemon != null)
            {
                foundPokemon.Fainted = true;
            }
        }
Example #12
0
    public void test()
    {
        PokemonExperiment test = new PokemonExperiment(pD);

        config.Load("configfiles/NEATConfig.config.xml");

        test.Initialize("Pokemon", config.DocumentElement);


        var           genomeDecoder = test.CreateGenomeDecoder();
        IBlackBox     box           = genomeDecoder.Decode(bestGenome);
        BattleHandler b             = new BattleHandler();

        int score = 0;

        List <PokemonTeam> evalTeams = pD.getEvalTeams();

        foreach (PokemonTeam t in pD.getEvalTeams())
        {
            string debug = "\nBattling against a team with: ";

            foreach (Pokemon p in t.getMembers())
            {
                debug += p.getName() + " ";
            }
            Console.Write(debug);

            box.ResetState();
            ISignalArray inputArray;
            inputArray = box.InputSignalArray;
            float[] pkmnDnaIn = pD.createDnaUsingPkmn(t);

            for (int j = 0; j < t.getMembers().Length; j++)
            {
                inputArray[j] = pkmnDnaIn[j];
            }

            box.Activate();

            ISignalArray outputArray;
            outputArray = box.OutputSignalArray;
            float[] pkmnDnaOut = new float[outputArray.Length];
            for (int j = 0; j < pkmnDnaOut.Length; j++)
            {
                pkmnDnaOut[j] = (float)outputArray[j];
            }

            PokemonTeam attacker = pD.createTeamUsingDNA(pkmnDnaOut);

            score += b.battle(attacker.getMembers(), t.getMembers());
        }

        Console.Write("\nA Score of " + score + " was achieved agains the evaluation teams! (NEAT)");
        Console.Write("\nThe NEAT has a complexity of " + bestGenome.Complexity);
    }
Example #13
0
        public IPokemon GetNextAvailablePokemon()
        {
            IPokemon firstAvailablePokemon = PokemonTeam.FirstOrDefault(pkmn => !pkmn.Fainted)?.Pokemon;

            if (firstAvailablePokemon != null)
            {
                SetPokemonAsCurrent(firstAvailablePokemon);
            }

            return(firstAvailablePokemon);
        }
        private void mNewTeamNameBtn_Click(object sender, RoutedEventArgs e)
        {
            // Create a new PokemonTeam with the specified name.
            PokemonTeam t = new PokemonTeam()
            {
                Title = mNewTeamText.Text
            };

            // Add the team to the context.
            mContext.PokemonTeams.Add(t);
            // Save the staged changes.
            mContext.SaveChanges();
        }
Example #15
0
 public RaidData(int pokemonId, PokemonTeam team, string level, string cp, string move1, string move2, double lat, double lng, DateTime startTime, DateTime endTime)
 {
     PokemonId  = pokemonId;
     Team       = team;
     Level      = level;
     CP         = cp;
     FastMove   = move1;
     ChargeMove = move2;
     Latitude   = lat;
     Longitude  = lng;
     StartTime  = startTime;
     EndTime    = endTime;
 }
Example #16
0
 public TeamVM(PokemonTeam model)
 {
     Model = model;
     raw   = new PokemonVM[6];
     for (int i = 0; i < 6; ++i)
     {
         raw[i] = new PokemonVM(this, i);
     }
     if (model.CanBattle)
     {
         EditorVM.Current.BattleTeams.Add(this);
     }
 }
Example #17
0
    public FitnessInfo Evaluate(IBlackBox box)
    {
        int fitness = 0;

        List <PokemonTeam> testTeams = pD.getTestTeams();

        for (int i = 0; i < triesPerTest; i++)
        {
            foreach (PokemonTeam t in testTeams)
            {
                string debug = "\nTraining against a team with: ";

                foreach (Pokemon p in t.getMembers())
                {
                    debug += p.getName() + " ";
                }
                // Console.Write(debug);

                box.ResetState();
                ISignalArray inputArray;
                inputArray = box.InputSignalArray;
                float[] pkmnDnaIn = pD.createDnaUsingPkmn(t);

                for (int j = 0; j < t.getMembers().Length; j++)
                {
                    inputArray[j] = pkmnDnaIn[j];
                }

                box.Activate();

                ISignalArray outputArray;
                outputArray = box.OutputSignalArray;
                float[] pkmnDnaOut = new float[outputArray.Length];
                for (int j = 0; j < pkmnDnaOut.Length; j++)
                {
                    pkmnDnaOut[j] = (float)outputArray[j];
                }

                PokemonTeam attacker = pD.createTeamUsingDNA(pkmnDnaOut);

                fitness += b.battle(attacker.getMembers(), t.getMembers());

                evaluations++;
                //Console.Write("\nEvaluations = " + evaluations);

                //Console.Write("\nCurrent Neat Fitness: " + fitness);
            }
        }
        return(new FitnessInfo(fitness, fitness));
    }
        public IActionResult EditTeam(int pokemonTeamId)
        {
            this.UpdatePokemonTeamList();

            PokemonTeam pokemonTeam = pokemonTeams[pokemonTeamId - 1];

            UpdatePokemonTeamViewModel model = new UpdatePokemonTeamViewModel()
            {
                Id = pokemonTeam.Id,
                PokemonTeamName = pokemonTeam.PokemonTeamName,
                GameId          = pokemonTeam.GameId,
                UserId          = pokemonTeam.UserId,
                AllGames        = this.dataService.GetAvailableGames(pokemonTeam.Id),
            };

            return(this.View(model));
        }
Example #19
0
        async Task <IRole> GetOrCreateRole(IGuild guild, PokemonTeam pokemonTeam)
        {
            var role = guild.Roles.FirstOrDefault(t => Enum.TryParse <PokemonTeam>(t.Name, out var team) && pokemonTeam == team);

            if (role == null)
            {
                logger.LogInformation($"Creating new role for team {pokemonTeam}");
                role = await guild.CreateRoleAsync(pokemonTeam.ToString(), color : TeamRoleColors.GetColor(pokemonTeam), isHoisted : true);

                await role.ModifyAsync(t =>
                {
                    t.Mentionable = true;
                });
            }

            return(role);
        }
Example #20
0
        public static Color GetColor(PokemonTeam team)
        {
            switch (team)
            {
            case PokemonTeam.Mystic:
                return(new Color(0x00, 0xb8, 0xff));

            case PokemonTeam.Instinct:
                return(new Color(0xff, 0xf5, 0x00));

            case PokemonTeam.Valor:
                return(new Color(0xff, 0x19, 0x05));

            default:
                throw new Exception("Unknown team");
            }
        }
    private int individualTrain()
    {
        int genBestFitness = 0;
        int totalTeamBest  = 0;

        foreach (PokemonTeam t in testTeams)
        {
            Console.Write("\nTraining against a team with: ");
            foreach (Pokemon p in t.getMembers())
            {
                Console.Write(p.getName());
            }
            float[] testDNA = pD.createDnaUsingPkmn(t);
            input = testDNA;

            for (int j = 0; j < DNA.Count; j++)
            {
                fillNetwork(DNA[j]);

                calculate();

                PokemonTeam attacker = pD.createTeamUsingDNA(output);

                string debug;
                debug = "\nAttacking team: ";
                foreach (Pokemon p in attacker.getMembers())
                {
                    debug = debug + p.getName() + " ";
                }
                //Console.Write(debug);

                int fitness = b.battle(attacker.getMembers(), t.getMembers());
                fitnesses[j] = fitness;
                //Console.Write("\nFeedForward Fitness = " + fitness);
                if (fitness > genBestFitness)
                {
                    genBestFitness = fitness;
                }
            }
            totalTeamBest += genBestFitness;
            evolve();
        }
        Console.Write("\nCurrent total: " + totalTeamBest);
        return(totalTeamBest);
    }
        /// <summary>
        /// Creates a pokemon list from a selected pokemon team.
        /// </summary>
        /// <returns>The pokemon list.</returns>
        private List <Pokemon> FillPokemonList(PokemonTeam pokemonTeam)
        {
            List <Pokemon> pokemonList = this.dataService.GetAllPokemon().ToList();

            if (pokemonTeam.GameId != null)
            {
                List <PokemonGameDetail> pokemonGameDetails = this.dataService.GetPokemonGameDetailsByGame((int)pokemonTeam.GameId);
                pokemonList = pokemonList.Where(x => pokemonGameDetails.Any(y => y.PokemonId == x.Id)).ToList();
            }

            List <Pokemon> altForms = this.dataService.GetAllAltForms().ConvertAll(x => x.AltFormPokemon);

            foreach (var p in pokemonList.Where(x => altForms.Any(y => y.Id == x.Id)).ToList())
            {
                p.Name = this.dataService.GetAltFormWithFormName(p.Id).Name;
            }

            return(pokemonList.OrderBy(x => x.Name).ToList());
        }
        public IActionResult DeletePokemon(int pokemonTeamId, int pokemonTeamDetailId)
        {
            this.UpdatePokemonTeamList();
            if (pokemonTeams.Count < pokemonTeamId)
            {
                return(this.RedirectToAction("PokemonTeams", "User"));
            }
            else
            {
                PokemonTeam                pokemonTeam       = pokemonTeams[pokemonTeamId - 1];
                PokemonTeamDetail          pokemonTeamDetail = this.dataService.GetPokemonTeamDetail(pokemonTeam.GrabPokemonTeamDetailIds()[pokemonTeamDetailId - 1]);
                PokemonTeamDetailViewModel model             = new PokemonTeamDetailViewModel()
                {
                    Id        = pokemonTeamDetail.Id,
                    Pokemon   = pokemonTeamDetail.Pokemon,
                    AppConfig = this.appConfig,
                };

                return(this.View(model));
            }
        }
Example #24
0
    //Conversion Functions


    public float[] createDnaUsingPkmn(PokemonTeam pT)
    {
        float[] pkmnDNA = new float[pokeDex.Count];
        for (int i = 0; i < pkmnDNA.Length; i++)
        {
            pkmnDNA[i] = 0;
        }
        foreach (Pokemon p in pT.getMembers())
        {
            int place = -1;
            foreach (Pokemon pN in pokeDex)
            {
                if (pN.getName() == p.getName())
                {
                    place = pokeDex.IndexOf(pN);
                }
            }
            pkmnDNA[place] = 1;
        }
        return(pkmnDNA);
    }
        public async Task SetTeam(
            [Summary("Zvolený team (roli).")] PokemonTeam team)
        {
            var contextUser = Context.User;
            var user        = contextUser as SocketGuildUser;

            if (user == null)
            {
                return;
            }

            var userTeam = userService.GetTeam(user);

            if (userTeam != null)
            {
                await ReplyAsync("Už jsi v teamu.");

                return;
            }

            var role = teamService.GuildTeamRoles[Context.Guild.Id].TeamRoles[team];
            await user.AddRoleAsync(role);
        }
        public IActionResult CreatePokemon(int pokemonTeamId)
        {
            this.UpdatePokemonTeamList();
            if (pokemonTeams.Count < pokemonTeamId || pokemonTeams[pokemonTeamId - 1].SixthPokemonId != null)
            {
                return(this.RedirectToAction("PokemonTeams", "User"));
            }
            else
            {
                PokemonTeam                pokemonTeam = pokemonTeams[pokemonTeamId - 1];
                List <Pokemon>             pokemonList = this.FillPokemonList(pokemonTeam);
                CreateTeamPokemonViewModel model       = new CreateTeamPokemonViewModel()
                {
                    AllPokemon = pokemonList,
                    AllNatures = this.dataService.GetObjects <Nature>("Name"),
                    NatureId   = this.dataService.GetObjectByPropertyValue <Nature>("Name", "Serious").Id,
                    GameId     = pokemonTeam.GameId,
                    Level      = 100,
                    Happiness  = 255,
                };

                return(this.View(model));
            }
        }
        /// <summary>
        /// Creates a pokemon team from a string in Pokemon Showndown's export format.
        /// </summary>
        /// <param name="importedTeam">The pokemon string in Pokemon Showdown's export format.</param>
        /// <param name="userId">The id of the user.</param>
        private void CreateTeamFromImport(string importedTeam, int userId)
        {
            string teamName = importedTeam.Split("===\r\n")[0];
            string pokemonString;

            if (teamName.IndexOf("===") != -1)
            {
                teamName = string.Concat(teamName, "===");
                int teamNameStart = teamName.IndexOf("] ");
                if (teamNameStart == -1)
                {
                    teamNameStart = 4;
                }
                else
                {
                    teamNameStart += 2;
                }

                int teamNameTo = teamName.LastIndexOf(" ===");
                teamName      = teamName.Substring(teamNameStart, teamNameTo - teamNameStart);
                pokemonString = string.Concat("\r\n", importedTeam.Split("===\r\n")[1]);
            }
            else
            {
                teamName      = "Import From Pokemon Showdown";
                pokemonString = importedTeam;
            }

            PokemonTeam pokemonTeam = new PokemonTeam()
            {
                PokemonTeamName = teamName,
                UserId          = userId,
            };
            List <string> pokemonList         = pokemonString.Split("\r\n\r\n").ToList();
            List <string> filteredPokemonList = new List <string>();

            foreach (var p in pokemonList)
            {
                if (!string.IsNullOrEmpty(p) && filteredPokemonList.Count < 6)
                {
                    filteredPokemonList.Add(p);
                }
            }

            // Used to ensure that there are no issues when creating the pokemon detail.
            List <PokemonTeamDetailViewModel> pokemonDetailList = new List <PokemonTeamDetailViewModel>();

            foreach (var p in filteredPokemonList)
            {
                pokemonDetailList.Add(this.CreatePokemonDetailFromImport(p));
            }

            foreach (var p in pokemonDetailList)
            {
                if (p.EVs != null)
                {
                    p.PokemonTeamEVId = this.dataService.AddPokemonTeamEV(p.EVs);
                }

                if (p.IVs != null)
                {
                    p.PokemonTeamIVId = this.dataService.AddPokemonTeamIV(p.IVs);
                }

                if (p.Moveset != null)
                {
                    p.PokemonTeamMovesetId = this.dataService.AddPokemonTeamMoveset(p.Moveset);
                }

                int pokemonId = this.dataService.AddPokemonTeamDetail(p);
                pokemonTeam.InsertPokemon(this.dataService.GetPokemonTeamDetail(pokemonId));
            }

            string generationId = importedTeam.Split("===\r\n")[0];

            this.dataService.FillPokemonTeam(pokemonTeam);
            List <Game> availableGames = this.dataService.GetAvailableGames(pokemonTeam);

            if (generationId.IndexOf("[gen") != -1)
            {
                int generationStart = generationId.IndexOf(" [");
                int generationEnd   = generationId.IndexOf("] ");
                generationId = generationId.Substring(generationStart, generationEnd - generationStart);
                int genId = Convert.ToInt32(System.Text.RegularExpressions.Regex.Replace(generationId, "[^0-9]+", string.Empty));
                if (availableGames.Find(x => x.Id == genId) != null)
                {
                    pokemonTeam.GameId = availableGames.Last(x => x.GenerationId == genId).Id;
                }
                else
                {
                    pokemonTeam.GameId = availableGames.Last().Id;
                }
            }
            else
            {
                Game newestGame = availableGames.Last();
                pokemonTeam.GameId = newestGame.Id;
            }

            if (pokemonTeam.FirstPokemon != null)
            {
                pokemonTeam.FirstPokemon = null;
            }

            if (pokemonTeam.SecondPokemon != null)
            {
                pokemonTeam.SecondPokemon = null;
            }

            if (pokemonTeam.ThirdPokemon != null)
            {
                pokemonTeam.ThirdPokemon = null;
            }

            if (pokemonTeam.FourthPokemon != null)
            {
                pokemonTeam.FourthPokemon = null;
            }

            if (pokemonTeam.FifthPokemon != null)
            {
                pokemonTeam.FifthPokemon = null;
            }

            if (pokemonTeam.SixthPokemon != null)
            {
                pokemonTeam.SixthPokemon = null;
            }

            this.dataService.AddPokemonTeam(pokemonTeam);
        }
Example #28
0
 public bool HasAvailablePokemon() => PokemonTeam
 .Where(w => !w.Fainted).Any();
Example #29
0
 public IPokemon GetCurrentPokemon() => PokemonTeam.FirstOrDefault(pkmn => pkmn.Current)?.Pokemon;
Example #30
0
    private List <PokemonTeam> loadTestTeams()
    {
        List <PokemonTeam> tt = new List <PokemonTeam>();

        #region oldSetup

        /*
         * PokemonTeam t1 = new PokemonTeam();
         * PokemonTeam t2 = new PokemonTeam();
         * PokemonTeam t3 = new PokemonTeam();
         * PokemonTeam t4 = new PokemonTeam();
         * PokemonTeam t5 = new PokemonTeam();
         * PokemonTeam t6 = new PokemonTeam();
         * Pokemon p1 = new Pokemon();
         * Pokemon p2 = new Pokemon();
         * Pokemon p3 = new Pokemon();
         * p1.setUp("Salazzle;Fire,Poison;Fire,Dragon,Bug,Poison");
         * p2.setUp("Arcanine;Fire;Normal,Fire,Electric,Dark");
         * p3.setUp("Delphox;Fire,Psychic;Ghost,Fire,Psychic,Fairy");
         * t1.setMembers(p1, p2, p3);
         * p1.setUp("Charizard;Fire,Flying;Fire,Dragon,Flying,Dark");
         * p2.setUp("Typhlosion;Fire;Fire,Normal,Electric,Psychic");
         * p3.setUp("Rapidash;Fire;Bug,Fire,Flying,Normal");
         * t2.setMembers(p1, p2, p3);
         * p1.setUp("Infernape;Fire,Fight;Fire,Fight,Ground,Rock");
         * p2.setUp("Houndoom;Fire,Dark;Fire,Dark,Ghost,Poison");
         * p3.setUp("Lycanroc;Rock;Dark,Normal,Rock");
         * t3.setMembers(p1, p2, p3);
         * p1.setUp("Krookodile;Ground,Dark;Dark,Ground,Poison,Fight");
         * p2.setUp("Archeops;Rock,Flying;Dragon,Ground,Rock,Flying");
         * p3.setUp("Rapidash;Fire;Bug,Fire,Flying,Normal");
         * t4.setMembers(p1, p2, p3);
         * p1.setUp("Chandelure;Ghost,Fire;Psychic,Ghost,Fire,Dark");
         * p2.setUp("Nidoking;Poison,Ground;Ground,Ice,Electric,Poison");
         * p3.setUp("Magmortar;Fire;Fire,Psychic,Normal,Steel");
         * t5.setMembers(p1, p2, p3);
         * p1.setUp("Porygon-Z;Normal;Electric,Normal,Ghost,Dark");
         * p2.setUp("Pyroar;Fire,Normal;Normal,Fire,Electric,Dark");
         * p3.setUp("Gardevoir;Psychic,Fairy;Fairy,Psychic,Ghost,Fight");
         * t6.setMembers(p1, p2, p3);
         * tt.Add(t6);
         * tt.Add(t5);
         * tt.Add(t4);
         * tt.Add(t3);
         * tt.Add(t2);
         * tt.Add(t1);
         */
        #endregion

        Console.Write("\nSetting up test teams");
        string[] setupString;
        setupString = System.IO.File.ReadAllText("configfiles/testTeams.txt").Split('\n');

        for (int i = 0; i < setupString.Length; i++)
        {
            PokemonTeam pt = new PokemonTeam();
            Pokemon[]   p  = new Pokemon[3];


            string[] substring = setupString[i].Split(';');
            for (int j = 0; j < substring.Length; j++)
            {
                foreach (Pokemon pN in pokeDex)
                {
                    if (pN.getName() == substring[j])
                    {
                        p[j] = pN;
                    }
                }
            }
            pt.setMembers(p[0], p[1], p[2]);
            tt.Add(pt);
            // Console.Write("\nAdded: " + p[0].getName() + " " + p[1].getName() + " " + p[2].getName() + " to test teams!");
        }
        return(tt);
    }