Esempio n. 1
0
        /// <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();
            }
        }
Esempio n. 2
0
 /// <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();
 }