Example #1
0
        public static void Walka(Przeciwnik rywal)
        {
            Random ramdom = new Random();
            int    runda  = 0;



            while (true)
            {
                int ZadaneObrazenia = 0;
                int nastepna        = 0;
                Console.Clear();
                if (rywal.ikona == "O")
                {
                    foreach (string line in Grafiki.ork)
                    {
                        Console.WriteLine(line);
                        System.Threading.Thread.Sleep(30);
                    }
                }
                else if (rywal.ikona == "?")
                {
                    foreach (string line in Grafiki.smok)
                    {
                        Console.WriteLine(line);
                        System.Threading.Thread.Sleep(30);
                    }
                }
                else
                {
                    {
                        foreach (string line in Grafiki.goblin)
                        {
                            Console.WriteLine(line);
                            System.Threading.Thread.Sleep(30);
                        }
                    }
                }
                Console.Write("\n\n");
                Console.Write(Obiekty.glowny.imie + "                                                                   " + "\n");
                Console.WriteLine("HP:                  " + Obiekty.glowny.zycie + "/" + Obiekty.glowny.maksHP + "                                           " + rywal.nazwa);
                Console.WriteLine("Dodatkowe obrazenia:    " + Obiekty.glowny.atak + "                    vs                     HP:" + rywal.zycie);
                Console.Write("\n");
                if (runda % 2 == 0)
                {
                    Console.Write("Kliknij spacje lub enter aby rozpocząć turę przeciwnika!\n");
                }
                else
                {
                    Console.Write("Kliknij spacje lub enter aby rozpocząć Twoją turę!\n");
                }

                while (nastepna == 0)
                {
                    ConsoleKeyInfo decyzja = Console.ReadKey();
                    if (decyzja.Key == ConsoleKey.Enter || decyzja.Key == ConsoleKey.Spacebar)
                    {
                        nastepna++;
                    }
                    else
                    {
                        Console.Write("\b");
                    }
                }
                Console.ReadKey();
                Console.Clear();

                if (runda % 2 == 0)
                {
                    int konkurencja = ramdom.Next(0, 101);
                    if (konkurencja >= 0 && konkurencja < 20)
                    {
                        ZadaneObrazenia       = AtakHang.Wisielec(Obiekty.glowny.poziomtrudnosci);
                        Obiekty.glowny.zycie -= ZadaneObrazenia;
                    }
                    else if (konkurencja >= 20 && konkurencja < 60)
                    {
                        ZadaneObrazenia       = AtakQte.Qte(rywal.obrazenia);
                        Obiekty.glowny.zycie -= ZadaneObrazenia;
                    }
                    else
                    {
                        ZadaneObrazenia       = AtakJeden.WylosujZdanko(Obiekty.glowny.poziomtrudnosci, rywal.obrazenia);
                        Obiekty.glowny.zycie -= ZadaneObrazenia;
                    }
                }
                else
                {
                    ZadaneObrazenia  = AtakPta.Pta(Obiekty.glowny.poziomtrudnosci);
                    ZadaneObrazenia += Obiekty.glowny.atak;
                    rywal.zycie     -= ZadaneObrazenia;
                }
                Console.Clear();
                if (runda % 2 == 0)
                {
                    Console.WriteLine("Otrzymałeś " + ZadaneObrazenia + " dmg");
                }
                else
                {
                    Console.WriteLine("Zadałeś " + ZadaneObrazenia + " dmg");
                }

                System.Threading.Thread.Sleep(3000);
                if (Obiekty.glowny.zycie <= 0)
                {
                    Grafiki.WydrukujKoniec();
                    break;
                }
                if (rywal.zycie <= 0)
                {
                    if (rywal.nazwa == "Smok")
                    {
                        Grafiki.WydrukujWygranie();
                        break;
                    }
                    Obiekty.przeciwnicy.Remove(rywal);
                    Obiekty.wszystkieObiekty.Remove(rywal);
                    break;
                }
                runda++;
            }
        }