Example #1
0
 public void Verwijder(Speler teVerwijderen)
 {
     if (teVerwijderen != null && BehoortSpelerToPloeg(teVerwijderen))
     {
         Spelers.Remove(teVerwijderen);
     }
     else
     {
         throw new Exception
                   ("Geef een geldige speler door om te verwijderen");
     }
 }
Example #2
0
        // TO DO
        // bug starpositie 9, isOpzGoozeBeland
        // cleanup Game.cs

        public void PlayNewRound()
        {
            _logger.LogInformationMessage($"RONDE: {Rondes.Count}");
            var ronde = _roundService.CreateRound(Rondes.Count);

            Rondes.Add(ronde);
            var dezeRondeGegooid = _roundService.PlayRound(Spelers.Count, ronde);


            for (int i = 0; i < dezeRondeGegooid.Length; i++)
            {
                if (Rondes.Count == 1)
                {
                    Spelers[i].Pion.Locatie = new CasualLocatie(0);
                }

                if (Spelers[i].turnsToSkip > 0)
                {
                    _logger.LogInformationMessage($"Speler { Spelers[i].Name} mag geen beurt maken");
                    Spelers[i].turnsToSkip = Spelers[i].turnsToSkip - 1;
                    continue;
                }

                if (Spelers[i].Pion.Locatie.SpelersVak == InnLocatie.InnLocation)
                {
                    if (!Spelers.Where(x => x.Pion.Locatie.SpelersVak == InnLocatie.InnLocation && x.Id != Spelers[i].Id).Any())
                    {
                        _logger.LogInformationMessage($"Speler { Spelers[i].Name} staat als enige op de well en mag geen beurt maken");
                        continue;
                    }
                }

                _logger.LogInformationMessage($"Speler { Spelers[i].Name} gooide { dezeRondeGegooid[i] }");
                _logger.LogInformationMessage($"Speler zijn vorige positie: {Spelers[i].Pion.Locatie.SpelersVak}");

                if (Spelers[i].Pion.Locatie.SpelersVak + dezeRondeGegooid[i] <= GanzenBoard.AantalValkjes)
                {
                    Spelers[i].Pion.Locatie = PlayerBoard.Spelboardvakjes.Where(x => x.SpelersVak == Spelers[i].Pion.Locatie.SpelersVak + dezeRondeGegooid[i]).First();
                }
                else
                {
                    var aantalTerug = Spelers[i].Pion.Locatie.SpelersVak + dezeRondeGegooid[i] - GanzenBoard.AantalValkjes;
                    Spelers[i].Pion.Locatie = PlayerBoard.Spelboardvakjes.Where(x => x.SpelersVak == GanzenBoard.AantalValkjes - aantalTerug).First();
                }

                _logger.LogInformationMessage($"Speler is aangekomen op vak:  {Spelers[i].Pion.Locatie.SpelersVak}");
                IsSpelerOpeenGoozeBeland(i, dezeRondeGegooid[i]);
                Spelers[i] = Spelers[i].Pion.Locatie.OpDezeSoortLocatieAangekomen(Spelers[i], PlayerBoard);
                _logger.LogInformationMessage("");
            }
        }
Example #3
0
 public void SlaOp(Speler opTeSlaan)
 {
     if (opTeSlaan == null)
     {
         throw new Exception("Geef een geldige speler door");
     }
     else if (!BehoortSpelerToPloeg(opTeSlaan))
     {
         Spelers.Add(opTeSlaan);
     }
     else
     {
         int indexSpeler = GeefIndexInPloeg(opTeSlaan);
         Spelers[indexSpeler] = opTeSlaan;
     }
 }
        public void MaakSpelers()
        {
            Speler speler;

            speler = new Speler("Dane");
            Spelers.Add(speler);

            speler = new Speler("Kyle");
            Spelers.Add(speler);

            speler = new Speler("Tom");
            Spelers.Add(speler);

            speler = new Speler("Slava");
            Spelers.Add(speler);
        }
        public void VoegSpelerToe(string naam, int highscore)
        {
            Speler speler = new Speler(naam, highscore);

            Spelers.Add(speler);
        }