/// <summary>
        /// Kirajzol egy lapot a megadott x,y koordinátákra.
        /// </summary>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="lapGrafika">Megjelenítéshez használt lapgrafika.</param>
        public static void LapotKirajzol(int x, int y, Grafika lapGrafika)
        {
            Console.BackgroundColor = lapGrafika.lapSzin;
            for (int i = 0; i < magassag; i++)
            {
                Console.SetCursorPosition(x, y + i);
                for (int j = 0; j < szelesseg; j++)
                {
                    Console.Write(" ");
                }
                Console.SetCursorPosition(x + szelesseg, y + i);
            }

            // Kártya adatai
            Console.ForegroundColor = ConsoleColor.Black;
            Console.BackgroundColor = lapGrafika.lapSzin;
            Console.SetCursorPosition(x + 1, y);
            Console.Write((lapGrafika.ertek > 0) ? lapGrafika.ertek.ToString() : "");
            Console.SetCursorPosition(x + 1, y + 2);
            Console.Write(lapGrafika.tipus);
            Console.ForegroundColor = ConsoleColor.White;
            Console.BackgroundColor = ConsoleColor.Black;

            Console.SetCursorPosition(0, 0);
        }
Exemple #2
0
        /// <summary>
        /// Játék indítása.
        /// </summary>
        public void Start()
        {
            Console.Clear();
            Console.WriteLine(
                @"
                                                   {}
                                   ,   A           {}
                                  / \, | ,        .--.
                                 |    =|= >      /.--.\
                                  \ /` | `       |====|
                                   `   |         |`::`|  
                                       |     .-;`\..../`;_.-^-._
                                      /\\/  /  |...::..|`   :   `|
                                      |:'\ |   /'''::''|   .:.   |
                                       \ /\;-,/\   ::  |..GWENT..|
                                       |\ <` >  >._::_.| ':   :' |
                                       | `""""`  /   ^^  |   ':'   |
                                       |       |       \    :    /
                                       |       |        \   :   / 
                                       |       |___/\___|`-.:.-`
                                       |        \_ || _/    `
                                       |        <_ >< _>
                                       |        |  ||  |
                                       |        |  ||  |
                                       |       _\.:||:./_
                                       |      /____/\____\");
            Console.WriteLine();
            Console.WriteLine();

            Console.WriteLine("\t\t\t\t\t   - EASY GWENT -\n\n");
            Console.WriteLine("\t\t\t\t\t   1 - Új játék");
            Console.WriteLine("\t\t\t\t\t   2 - Ismertető");
            Console.WriteLine("\t\t\t\t\t   3 - Kilépés\n\n");
            string valasztas;

            do
            {
                Console.Write("Válassz egy opciót: ");
                valasztas = Console.ReadLine();
            }while (valasztas == null || valasztas == "" || (valasztas != "1" && valasztas != "2" && valasztas != "3"));
            if (valasztas == "2")
            {
                Grafika.Szabalyok();
                Console.ReadLine();
                Start();
            }
            else if (valasztas == "3")
            {
                Kilepes();
            }
            else
            {
                JatekLoop();
            }
        }
Exemple #3
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();
            }
        }
Exemple #4
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();
 }