static int CheckVoorVierOpeenRij(char[,] SpeelBord, SpelerInfo HudigeSpeler) { char XO; int win; XO = HudigeSpeler.SpelerID; win = 0; for (int i = 8; i >= 1; --i) { for (int ix = 9; ix >= 1; --ix) { if (SpeelBord[i, ix] == XO && SpeelBord[i - 1, ix - 1] == XO && SpeelBord[i - 2, ix - 2] == XO && SpeelBord[i - 3, ix - 3] == XO) { win = 1; } if (SpeelBord[i, ix] == XO && SpeelBord[i, ix - 1] == XO && SpeelBord[i, ix - 2] == XO && SpeelBord[i, ix - 3] == XO) { win = 1; } if (SpeelBord[i, ix] == XO && SpeelBord[i - 1, ix] == XO && SpeelBord[i - 2, ix] == XO && SpeelBord[i - 3, ix] == XO) { win = 1; } if (SpeelBord[i, ix] == XO && SpeelBord[i - 1, ix + 1] == XO && SpeelBord[i - 2, ix + 2] == XO && SpeelBord[i - 3, ix + 3] == XO) { win = 1; } if (SpeelBord[i, ix] == XO && SpeelBord[i, ix + 1] == XO && SpeelBord[i, ix + 2] == XO && SpeelBord[i, ix + 3] == XO) { win = 1; } } } return(win); }
static int SpelerDrop(char[,] SpeelBord, SpelerInfo HudigeSpeler) { int DropKeuze; Console.WriteLine(HudigeSpeler.SpelerNaam + "'s Beurt "); do { Console.WriteLine("Selecteer een nummer tussen 1 en 7: "); DropKeuze = Convert.ToInt32(Console.ReadLine()); } while (DropKeuze < 1 || DropKeuze > 7); while (SpeelBord[1, DropKeuze] == 'X' || SpeelBord[1, DropKeuze] == 'O') { Console.WriteLine("Dat rij is vol, Voeg AUB een nieuwe rij in: "); DropKeuze = Convert.ToInt32(Console.ReadLine()); } return(DropKeuze); }
static void CheckOnder(char[,] SpeelBord, SpelerInfo HudigeSpeler, int dropKeuze) { int length, turn; length = 6; turn = 0; do { if (SpeelBord[length, dropKeuze] != 'X' && SpeelBord[length, dropKeuze] != 'O') { SpeelBord[length, dropKeuze] = HudigeSpeler.SpelerID; turn = 1; } else { --length; } } while (turn != 1); }
public static void Spel1() { Console.Clear(); SpelerInfo SpelerEen = new SpelerInfo(); SpelerInfo SpelerTwee = new SpelerInfo(); char[,] Bord = new char[9, 10]; int DropKeuze, win, vol, opnieuw; Console.WriteLine("###########################"); Console.WriteLine("# Vier op een rij Spelen! #"); Console.WriteLine("###########################"); Console.WriteLine(); Console.WriteLine("# Speler een geef je naam: #"); SpelerEen.SpelerNaam = Console.ReadLine(); SpelerEen.SpelerID = 'X'; Console.Clear(); Console.WriteLine("###########################"); Console.WriteLine("# Vier op een rij Spelen! #"); Console.WriteLine("###########################"); Console.WriteLine(); Console.WriteLine("# Speler twee geef je naam: #"); SpelerTwee.SpelerNaam = Console.ReadLine(); SpelerTwee.SpelerID = 'O'; Console.Clear(); vol = 0; win = 0; opnieuw = 0; GeefSpeelbordAan(Bord); do { DropKeuze = SpelerDrop(Bord, SpelerEen); CheckOnder(Bord, SpelerEen, DropKeuze); GeefSpeelbordAan(Bord); win = CheckVoorVierOpeenRij(Bord, SpelerEen); if (win == 1) { SpelerWint(SpelerEen); opnieuw = restart(Bord); if (opnieuw == 2) { break; } } DropKeuze = SpelerDrop(Bord, SpelerTwee); CheckOnder(Bord, SpelerTwee, DropKeuze); GeefSpeelbordAan(Bord); win = CheckVoorVierOpeenRij(Bord, SpelerTwee); if (win == 1) { SpelerWint(SpelerTwee); opnieuw = restart(Bord); if (opnieuw == 2) { break; } } vol = VolSpeelbord(Bord); if (vol == 7) { Console.WriteLine("Het bord is vol, Het is een gelijkspel!"); opnieuw = restart(Bord); } } while (opnieuw != 2); }
static void SpelerWint(SpelerInfo activePlayer) { Console.WriteLine(activePlayer.SpelerNaam + " Connected Four, You Win!"); }