/// <summary> /// Egy játékos köre. Ebben a körben dönthet minden kézben lévő lapról, hogy lerakja-e vagy sem. /// </summary> /// <param name="jatekos">A soron következő játékos.</param> /// <param name="elhelyezettLapjai">Az őáltala lerakott lapok helye a csatamezőn.</param> private void JatekosKore(Jatekos jatekos, MezonyLap[] elhelyezettLapjai) { for (int i = 0; i < jatekos.KezbenLevoLapok.Length; i++) { string bemenet; Console.Clear(); Grafika.CsatamezotKirajzol(Csatamezo, Jatekos1, Jatekos2); Grafika.KezbenLevoLapokatKirajzol(jatekos, i); Console.SetCursorPosition(0, 32); Console.WriteLine($"{jatekos.Nev} köre.\nLerakod a kijelölt {jatekos.KezbenLevoLapok[i].Tipus.ToString()} lapot? (I/N)"); do { Console.SetCursorPosition(0, 35); bemenet = Console.ReadLine(); } while (bemenet.ToLower() != "i" && bemenet.ToLower() != "n"); if (bemenet.ToLower() == "i") { if (jatekos.KezbenLevoLapok[i] is MezonyLap) { int x = Csatamezo.ElhelyezettLapokTipusbol(jatekos.KezbenLevoLapok[i].Tipus); if (x < 5) { elhelyezettLapjai[i] = (MezonyLap)jatekos.KezbenLevoLapok[i]; jatekos.KezbenLevoLapok[i] = null; } else { Console.SetCursorPosition(0, 35); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine($"Nem helyezhetsz el több {jatekos.KezbenLevoLapok[i].Tipus} lapot."); Thread.Sleep(1000); } } else { int x = Csatamezo.SzabadIdojarasKoordinata(); if (x < 5) { Csatamezo.IdojarasLapok[x] = (IdojarasLap)jatekos.KezbenLevoLapok[i]; jatekos.KezbenLevoLapok[i] = null; } else { Console.SetCursorPosition(0, 35); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Nem helyezhetsz el több időjárás lapot."); Thread.Sleep(1000); } } } Csatamezo.IdojarasLapokatAktival(); } }
/// <summary> /// Kiértékeli a kör végén, mely játékos nyert és kiírja az eredményt. /// </summary> private void KorvegiKiertekeles() { Console.Clear(); Grafika.CsatamezotKirajzol(Csatamezo, Jatekos1, Jatekos2); Console.SetCursorPosition(0, 32); if (Csatamezo.Jatekos1Pontjai == Csatamezo.Jatekos2Pontjai) { if (Jatekos1.Nev.ToLower() == "nilfgaardian") { Console.WriteLine($"{Jatekos1.Nev} nyerte ezt a csatát {Csatamezo.Jatekos1Pontjai} ponttal, mert ő nilfgaardi."); Jatekos2.EletekSzama--; } else if (Jatekos2.Nev.ToLower() == "nilfgaardian") { Console.WriteLine($"{Jatekos2.Nev} nyerte ezt a csatát {Csatamezo.Jatekos2Pontjai} ponttal, mert ő nilfgaardi."); Jatekos1.EletekSzama--; } else { Console.WriteLine($"Ebben az ütközetben mindkét sereg odaveszett."); Jatekos1.EletekSzama--; Jatekos2.EletekSzama--; } } else if (Csatamezo.Jatekos1Pontjai < Csatamezo.Jatekos2Pontjai) { Console.WriteLine($"{Jatekos2.Nev} nyerte ezt a csatát {Csatamezo.Jatekos2Pontjai} ponttal."); Jatekos1.EletekSzama--; } else { Console.WriteLine($"{Jatekos1.Nev} nyerte ezt a csatát {Csatamezo.Jatekos1Pontjai} ponttal."); Jatekos2.EletekSzama--; } Console.ReadLine(); }