Beispiel #1
0
        public void Zapas()
        {
            // deklaracia bojovnikov
            Bojovnik b1 = bojovnik1;
            Bojovnik b2 = bojovnik2;

            // volba prveho utoku
            bool prvyUtociB2 = (kocka.Hod() <= kocka.VratPocetStien() / 2);

            // v pripade ak zacina bojovnik2, len prehodi doklaraciu bojovnikov
            if (prvyUtociB2)
            {
                b1 = bojovnik2;
                b2 = bojovnik1;
            }

            Console.WriteLine("Vitajte v Arene!");
            Console.WriteLine("V zapase sa stretne {0} s {1}.", bojovnik1, bojovnik2);
            Console.WriteLine("Zacinat bude {0}.Zapas moze zacat...", b1);
            Console.ReadKey();

            // Bojovy cyklus
            while (b1.Nazivo() && b2.Nazivo())
            {
                b1.Utok(b2);
                Vykresli();
                VypisSpravu(b1.VratPosleduSpravu()); // sprava o utoku
                VypisSpravu(b2.VratPosleduSpravu()); // sprava o obrane
                Console.ReadKey();
                if (b2.Nazivo())                     // kontrola ci je bojovnik nazivo po predchadzajucom utoku.
                {
                    b2.Utok(b1);
                    Vykresli();
                    VypisSpravu(b2.VratPosleduSpravu()); // sprava o utoku
                    VypisSpravu(b1.VratPosleduSpravu()); // sprava o obrane
                }
                Console.WriteLine();
                Console.ReadKey();
            }
            if (b1.Nazivo())
            {
                Console.WriteLine("{0} porazil {1}...", b1, b2);
                Console.WriteLine("Hail to the {0}!", b1);
                Console.WriteLine("HAIL!!!");
            }
            else
            {
                Console.WriteLine("{0} porazil {1}...", b2, b1);
                Thread.Sleep(500);
                Console.WriteLine("Hail to the {0}!", b2);
                Thread.Sleep(750);
                Console.WriteLine("HAIL!!!");
            }
        }