/// <summary> /// Create een nieuwe fices bak. /// initialiseer de tafel. /// Voeg een dealer toe. /// Voeg een speler toe. /// vraag de speler om fiches te kopen. /// </summary> public void Initialiseer() { // fiches // de hoofdbak met fiches Fiches cassiereFiches = FicheFactory.CreateFiches(5000); // tafel this.Tafel = Tafel.CreateBlackJackTafel(cassiereFiches.GeefMeFischesTerWaardeVan(2500, 50, false)); // dealer // dealer aanmaken en toewijzen aan een tafel Dealer dealer = new Dealer("Dealer"); dealer.GaAanTafelZitten(this.Tafel); // spelers, komen binnen en kopen bij het cassiere fiches. this.communicator.TellPersoon(Meldingen.Welkom); bool isLetters = false; Speler speler = null; string naamSpeler = string.Empty; while (!isLetters) { int charIsNotLetter = 0; naamSpeler = this.communicator.AskPersoon(Meldingen.DeNaam); char[] lettersOfName = naamSpeler.ToCharArray(); naamSpeler.ToCharArray(); for (int i = 0; i < naamSpeler.Length; i++) { if (!char.IsLetter(lettersOfName[i])) { charIsNotLetter++; break; } } if (charIsNotLetter == 0 && naamSpeler.Length != 0 && naamSpeler.Length <= 15) { isLetters = true; } else { if (naamSpeler.Length == 0) { this.communicator.TellPersoon(Meldingen.Fout); naamSpeler = this.communicator.AskPersoon(Meldingen.DeNaam); } } } speler = new Speler(naamSpeler); this.communicator.TellPlayer(speler, Meldingen.Welkom); if (!speler.GaatAanTafelZitten(this.Tafel, 1)) { throw new ArgumentOutOfRangeException("Het plek is niet meer beschikbaar."); } speler.Fiches.Add(this.Tafel.Fiches.GeefMeFischesTerWaardeVan(100, 50, true)); this.communicator.TellPlayer(speler, Meldingen.Verdienen); }
/// <summary> /// fubnctuie om de fiches te printen. /// </summary> /// <param name="fiches"> de fiches die ik wil printen.</param> public static void PrintFiches(Fiches fiches) { foreach (Fiche fiche in fiches.ReadOnlyFiches) { Console.WriteLine($"{fiche.Kleur} € {fiche.Waarde}"); } }
/// <summary> /// Het creat nieuw spel. /// </summary> private void NewGame() { // fiches // de hoofdbak met fiches Fiches cassiereFiches = FicheFactory.CreateFiches(1000); // tafel this.Tafel = Tafel.CreateBlackJackTafel(cassiereFiches.GeefMeFischesTerWaardeVan(500, 50, true)); blackjackController = new BlackjackController(this.Tafel, new WinFormCommunicator()); // is de waarde vban de fiches nu 500? // dealer // dealer aanmaken en toewijzen aan een tafel Dealer dealer = new Dealer("Dealer"); dealer.GaAanTafelZitten(Tafel); // spelers, komen binnen en kopen bij het cassiere fiches Console.WriteLine("Speler: A"); string naamSpelerA = "Speler1"; Speler spelerA = new Speler(naamSpelerA); if (!spelerA.GaatAanTafelZitten(this.Tafel, 1)) { throw new ArgumentOutOfRangeException("Het plek is niet meer beschikbaar."); } spelerA.Fiches.Add(cassiereFiches.GeefMeFischesTerWaardeVan(90, 100, true)); this.AddSpelerBoxToArray(); }
public FicheClientsViewModel() { fiches = new ObservableCollection <Client>(); FicheSelectionnee = new Client() { Nom = "Dupont", Prenom = "Pierre", Age = 32, Sexe = "M" }; Fiches.Add(FicheSelectionnee); }
/// <summary> /// De speler zet een fiche in bij de hand in. /// </summary> /// <param name="hand">De hand van de speler.</param> /// <param name="waarde">De waarde die de speler wil bij de hand .</param> /// <returns>Heeft fiches of niet.<returns> public bool ZetFichesBijHandIn(SpelerHand hand, int waarde) { Fiches fiches = hand.Speler.Fiches.GeefMeFischesTerWaardeVan(waarde, 50, true); if (fiches == null) { return(false); } else { hand.Inzet.Add(fiches); return(true); } }
/// <summary> /// Create nieuwe fiches. /// </summary> /// <param name="waarde">De waarde van een fiche.</param> /// <returns>De fiche.</returns> public static Fiches CreateFiches(int waarde) { Fiches returnFiches = new Fiches(); while (returnFiches.WaardeVanDeFiches < waarde) { if (returnFiches.WaardeVanDeFiches < waarde) { FichesKleur kleur = FichesKleur.IsDefined; int[] lijstVanWaardeVanDeFiches = new int[] { 1, 5, 10, 20, 100 }; Random random = new Random(); int randomWaarde = random.Next(lijstVanWaardeVanDeFiches.Length - 1); int waardeVanFiche = lijstVanWaardeVanDeFiches[randomWaarde]; switch (waardeVanFiche) { case 1: kleur = FichesKleur.Wit; break; case 5: kleur = FichesKleur.Groen; break; case 10: kleur = FichesKleur.Blue; break; case 20: kleur = FichesKleur.Geel; break; case 100: kleur = FichesKleur.Rood; break; default: break; } returnFiches.Add(CreateFiche(kleur, waardeVanFiche, false)); } } return(returnFiches); }
/// <summary> /// Printe de waarde van de fiche. /// </summary> /// <param name="fiches">De fiche.</param> public static void PrintWaardeFiches(Fiches fiches) { Console.WriteLine($"De waarde is € {fiches.WaardeVanDeFiches}"); }
/// <summary> /// Main method. /// </summary> /// <param name="args">args.</param> public static void Main(string[] args) { // fiches // de hoofdbak met fiches Fiches cassiereFiches = FicheFactory.CreateFiches(5000); // FichesConsolePrinter.PrintWaardeFiches(cassiereFiches); // tafel Tafel tafel = Tafel.CreateBlackJackTafel(cassiereFiches.GeefMeFischesTerWaardeVan(2500, 50, false)); // FichesConsolePrinter.PrintWaardeFiches(tafel.Fiches); // is de waarde vban de fiches nu 500? // FichesConsolePrinter.PrintWaardeFiches(cassiereFiches); // dealer // dealer aanmaken en toewijzen aan een tafel Dealer dealer = new Dealer("Dealer"); dealer.GaAanTafelZitten(tafel); // spelers, komen binnen en kopen bij het cassiere fiches Console.WriteLine(); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine("Leuk dat je Black Jack komt spelen. Wat is je naam?"); bool isLetters = false; Speler spelerA = null; while (!isLetters) { Console.WriteLine("Je mag alleen letters typen."); int chetIsNotLetter = 0; string naamSpelerA = Console.ReadLine(); spelerA = new Speler(naamSpelerA); char[] lettersOfName = naamSpelerA.ToCharArray(); naamSpelerA.ToCharArray(); for (int i = 0; i < naamSpelerA.Length; i++) { if (!char.IsLetter(lettersOfName[i])) { chetIsNotLetter++; break; } } if (chetIsNotLetter == 0 && naamSpelerA.Length != 0 && naamSpelerA.Length <= 15) { isLetters = true; } else { if (naamSpelerA.Length == 0) { Console.WriteLine("Mag niet zonder naam spelen."); Console.WriteLine("Wat is je naam?"); Console.WriteLine(); } else if (naamSpelerA.Length > 15) { Console.WriteLine("Je mag t/m 15 letters gebruiken."); Console.WriteLine(); Console.WriteLine("Je mag geen nummers gebruiken."); } else { Console.WriteLine("Je hebt fout gedaan!"); Console.WriteLine("Je mag geen nummers gebruiken."); } } } Console.ResetColor(); Console.WriteLine(); /* Console.ForegroundColor = ConsoleColor.Green; * Console.WriteLine("Speler: B"); * Console.ResetColor(); * Console.WriteLine("Leuk je komt Black Jack spelen. Wilt je me je naam vertelen?"); * * // string naamSpelerB = Console.ReadLine(); * Speler spelerB = new Speler("B"); */ // koopt fiches vbij de cassiere Console.WriteLine("Wat zou je de waarde van fiches kopen?"); Console.WriteLine($"Mag alleen tussen 1 en {tafel.Fiches.WaardeVanDeFiches}"); string waardeFiches = Console.ReadLine(); int waarde; while (!int.TryParse(waardeFiches, out waarde) || waarde > tafel.Fiches.WaardeVanDeFiches || waarde <= 0) { Console.WriteLine(); Console.WriteLine($"Type maar alleen nummers tussen 1 en {tafel.Fiches.WaardeVanDeFiches} gebruiken."); if (!int.TryParse(waardeFiches, out waarde)) { Console.WriteLine("Je mag geen letters gebruiken."); } waardeFiches = Console.ReadLine(); } spelerA.Fiches.Add(cassiereFiches.GeefMeFischesTerWaardeVan(waarde, 50, true)); /* spelerB.Fiches.Add(cassiereFiches.GeefMeFischesTerWaardeVan(90, 20, true));*/ Console.WriteLine(); Console.WriteLine(spelerA.Naam + " Je hebt gekocht"); FichesConsolePrinter.PrintWaardeFiches(spelerA.Fiches); FichesConsolePrinter.PrintFiches(spelerA.Fiches); Console.WriteLine(); /* Console.WriteLine(spelerB.Naam + " Je hebt gekocht"); * FichesConsolePrinter.PrintWaardeFiches(spelerB.Fiches); * FichesConsolePrinter.PrintFiches(spelerB.Fiches);*/ // FichesConsolePrinter.PrintWaardeFiches(cassiereFiches); if (!spelerA.GaatAanTafelZitten(tafel, 1)) { throw new ArgumentOutOfRangeException("Het plek is niet meer beschikbaar."); } /* else if (!spelerB.GaatAanTafelZitten(tafel, 2)) * { * throw new ArgumentOutOfRangeException("Het plek is niet meer beschikbaar."); * }*/ BlackjackController blackJackController = new BlackjackController(tafel, new ConsoleCommunicatorBehandelen()); Console.WriteLine("Er is een fout gegaan."); // blackJackController.Start(); }