Beispiel #1
0
        /// <summary>
        /// Vypocita nam celkovu vysku utoku a zautoci na supera
        /// </summary>
        /// <param name="super"></param>
        public virtual void Utok(Bojovnik super)
        {
            int uder = utok + kocka.Hod();

            NastavSpravu(String.Format("{0} utoci s uderom za {1} hp", meno, uder));
            super.BranSa(uder);
        }
Beispiel #2
0
        /// <summary>
        /// metoda pro utok
        /// </summary>
        /// <param name="souper"></param>
        public virtual void Utoc(Bojovnik souper)
        {
            int uder = utok + kostka.Hod();

            NastavZpravu(string.Format("{0} utoci s uderem {1}.", jmeno, uder));
            souper.BranSe(uder);
        }
Beispiel #3
0
        static void Main(string[] args)
        {
            // Vytvorenie kociek
            Kocka sestStenna  = new Kocka();
            Kocka desatStenna = new Kocka(10);

            /*
             * // Hod 6stennou
             * Console.WriteLine(sestStenna);
             * for (int i = 0; i < 10; i++)
             * {
             *  Console.Write(sestStenna.Hod() + " ");
             * }
             * Console.WriteLine();
             * // Hod 10stennou
             * Console.WriteLine(desatStenna);
             * for (int i = 0; i < 10; i++)
             * {
             *  Console.Write(desatStenna.Hod() + " ");
             * }
             */

            // vytvorenie bojovnika
            Bojovnik bojovnik = new Bojovnik("Martin", 100, 20, 10, desatStenna);
            //Console.WriteLine("Bojovnik: " + bojovnik);  // test ToString();
            //Console.WriteLine("Nazivo: " + bojovnik.Nazivo());  // test Nazivo();
            //Console.WriteLine("Zivot: " + bojovnik.GrafickyZivot()); // test GrafickyZivot();
            //Console.WriteLine();

            // vytvorenie supera
            Bojovnik super = new Bojovnik("Clone", 70, 17, 13, desatStenna);
            //Console.WriteLine("Bojovnik: " + super);  // test ToString();
            //Console.WriteLine("Nazivo: " + super.Nazivo());  // test Nazivo();
            //Console.WriteLine("Zivot: " + super.GrafickyZivot()); // test GrafickyZivot();
            //Console.WriteLine();

            //// test utok na bojovnika
            //super.Utok(bojovnik);
            //Console.WriteLine(super.VratPosleduSpravu());
            //Console.WriteLine(bojovnik.VratPosleduSpravu());
            //Console.WriteLine("Zivot Martin: {0}", bojovnik.GrafickyZivot());
            //Console.WriteLine("Zivot Super: {0}", super.GrafickyZivot());

            // vytvorenie maga
            Bojovnik carodej = new Mag("Gandalf", 60, 15, 12, desatStenna, 30, 45);



            // vytvorenie areny
            Arena arena = new Arena(bojovnik, carodej, desatStenna);

            // zapas
            arena.Zapas();


            Console.ReadLine();
        }
 private void VypisBojovnika(Bojovnik b)
 {
     Console.WriteLine(b);
     Console.Write("Zivot: ");
     Console.WriteLine(b.GrafickyZivot());
     if (b is Mag)
     {
         Console.Write("Mana:  ");
         Console.WriteLine(((Mag)b).GrafickaMana());
     }
 }
Beispiel #5
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!!!");
            }
        }
 static void Main(string[] args)
 {
     // vytvoření objektů
     Kostka kostka = new Kostka(10);
     Bojovnik zalgoren = new Bojovnik("Zalgoren", 100, 20, 10, kostka);
     Bojovnik gandalf = new Mag("Gandalf", 60, 15, 12, kostka, 30, 45);
     Arena arena = new Arena(zalgoren, gandalf, kostka);
     // zápas
     arena.Zapas();
     Console.ReadKey();
 }
Beispiel #7
0
        static void Main(string[] args)
        {
            //vytvoření objektů
            Kostka   kostka = new Kostka(10);
            Bojovnik deemon = new Bojovnik("Deemon", 100, 20, 10, kostka);
            Bojovnik mage   = new Mag("Mage", 100, 20, 10, kostka, 55, 25);
            Arena    arena  = new Arena(deemon, mage, kostka);

            arena.Zapas();

            Console.ReadKey();
        }
Beispiel #8
0
 public void VypisBojovnika(Bojovnik b)
 {
     Console.WriteLine(b);
     Console.Write("Zivot: ");
     Console.ForegroundColor = ConsoleColor.Red;
     Console.WriteLine(b.Grafickyzivot());
     if (b is Mag)
     {
         Console.ForegroundColor = ConsoleColor.White;
         Console.Write("Mana: ");
         Console.ForegroundColor = ConsoleColor.Blue;
         Console.WriteLine(((Mag)b).GrafickaMana());
     }
     Console.ForegroundColor = ConsoleColor.White;
 }
Beispiel #9
0
        private void SoubojDvojice(Bojovnik bojovnik1, Bojovnik bojovnik2)
        {
            while (bojovnik1.JeZivy && bojovnik2.JeZivy)
            {
                bojovnik1.UtocNa(bojovnik2);
                bojovnik2.UtocNa(bojovnik1);
            }

            if (!bojovnik2.JeZivy)
            {
                ZiviBojovnici.Remove(ZiviBojovnici.Find(item => item.Jmeno == bojovnik2.Jmeno));
            }

            else if (!bojovnik1.JeZivy)
            {
                ZiviBojovnici.Remove(ZiviBojovnici.Find(item => item.Jmeno == bojovnik1.Jmeno));
            }
        }
 public override void Utoc(Bojovnik souper)
 {
     int uder = 0;
     // Mana není naplněna
     if (mana < maxMana)
     {
         mana += 10;
         if (mana > maxMana)
             mana = maxMana;
         base.Utoc(souper);
     }
     else // Magický útok
     {
         uder = magickyUtok + kostka.hod();
         NastavZpravu(String.Format("{0} použil magii za {1} hp", Jmeno, uder));
         mana = 0;
     }
     souper.BranSe(uder);
 }
Beispiel #11
0
        public override void Utoc(Bojovnik souper)
        {
            int uder = 0;

            //mana neni plná
            if (mana < maxMana)
            {
                mana += 10;
                if (mana > maxMana)
                {
                    mana = maxMana;
                }
                base.Utoc(souper);
            }
            else
            //mana je plna
            {
                uder = magickyUtok + kostka.Hod();
                NastavZpravu(String.Format("{0} použil magii za {1} hp", jmeno, uder));
                souper.BranSe(uder);
                mana = 0;
            }
        }
Beispiel #12
0
        /// <summary>
        /// Vypocita nam celkovu vysku aj Magickeho utoku a zautoci na supera
        /// </summary>
        /// <param name="super"></param>
        public override void Utok(Bojovnik super)
        {
            int uder = 0;

            // Mana nieje plna
            if (mana < maxMana)
            {
                mana += 10;
                if (mana > maxMana)
                {
                    mana = maxMana;
                }
                uder = utok + kocka.Hod();
                NastavSpravu(string.Format("{0} utoci s uderem za {1}Hp", meno, uder));
            }
            else // magic attack
            {
                uder = magicUtok + kocka.Hod();
                NastavSpravu(String.Format("{0} pouzil magiu za {1}Hp", meno, uder));
                mana = 0;
            }
            super.BranSa(uder);
        }
Beispiel #13
0
 public void UtocNa(Bojovnik obet)
 {
     if (Zbran == Zbrane.Mec)
     {
         if (obet.Brneni == 0)
         {
             obet.Zivot -= this.Sila;
         }
         else if (obet.Brneni > 0)
         {
             obet.Zivot  = obet.Zivot - this.Sila + obet.Brneni;
             obet.Brneni = obet.Brneni - (this.Sila / 10);
         }
     }
     else if (Zbran == Zbrane.Palcat)
     {
         obet.Zivot = obet.Zivot - (this.Sila / 4);
         if (obet.Brneni != 0)
         {
             obet.Brneni = obet.Brneni - (this.Sila / 4);
         }
     }
 }
Beispiel #14
0
        public void Boj()
        {
            Console.WriteLine("\nZAČÍNÁ BOJ");
            bool     jeCekatel = false;
            Bojovnik cekatel   = ZiviBojovnici.Last();

            while (ZiviBojovnici.Count > 1)
            {
                Console.WriteLine("\nStav bojovníků před bojem");
                ZobrazStavBojovniku(ZiviBojovnici.OrderBy(o => o.Jmeno).ToList());

                if (ZiviBojovnici.Count % 2 == 0)
                {
                    Rivalove  = VytvorDvojice(ZiviBojovnici);
                    jeCekatel = false;
                }
                else
                {
                    cekatel   = ZiviBojovnici.Last();
                    jeCekatel = true;
                    ZiviBojovnici.RemoveAt(ZiviBojovnici.Count - 1);
                    Rivalove = VytvorDvojice(ZiviBojovnici);
                }

                foreach (Bojovnik utocnik in Rivalove.Keys)
                {
                    SoubojDvojice(utocnik, Rivalove[utocnik]);
                }

                if (jeCekatel)
                {
                    ZiviBojovnici.Insert(0, cekatel);
                }
            }
            Console.WriteLine("\nVÍTĚZNÝM BOJOVNÍKEM SE STÁVÁ");
            ZobrazStavBojovniku(ZiviBojovnici);
        }
Beispiel #15
0
        public void UtocNa(Bojovnik obet)
        {
            switch (Zbran)
            {
            case Zbran.Mec:

                obet.Brneni -= (obet.Brneni - (Sila / 10)) >= 0 ? (Sila / 10) : obet.Brneni;
                obet.Zivot  -= obet.Brneni == 0 ? Sila : (Sila - obet.Brneni) >= 0 ? (Sila - obet.Brneni) : 0;
                break;

            case Zbran.Palcat:
                obet.Brneni -= (obet.Brneni - (Sila / 4)) >= 0 ? (Sila / 4) : obet.Brneni;
                obet.Zivot  -= obet.Brneni == 0 ? (Sila / 4) : 0;
                break;

            case Zbran.Sekera:
                obet.Brneni -= (obet.Brneni - (Sila / 8)) >= 0 ? (Sila / 8) : obet.Brneni;
                obet.Zivot  -= obet.Brneni == 0 ? Sila : (Sila - obet.Brneni) >= 0 ? (Sila - obet.Brneni) : 0;
                break;

            default:
                break;
            }
        }
 public virtual void Utoc(Bojovnik souper)
 {
     int uder = Utok + kostka.hod();
     NastavZpravu(String.Format("{0} útočí s úderem za {1} hp", Jmeno, uder));
     souper.BranSe(uder);
 }
 public Arena(Bojovnik bojovnik1, Bojovnik bojovnik2, Kostka kostka)
 {
     this.bojovnik1 = bojovnik1;
     this.bojovnik2 = bojovnik2;
     this.kostka = kostka;
 }
Beispiel #18
0
 /// <summary>
 /// konstruktor areny (inicializace)
 /// </summary>
 /// <param name="bojovnik_1"></param>
 /// <param name="bojovnik_2"></param>
 /// <param name="kostka"></param>
 public Arena(Bojovnik bojovnik_1, Bojovnik bojovnik_2, Kostka kostka)
 {
     this.bojovnik_1 = bojovnik_1;
     this.bojovnik_2 = bojovnik_2;
     this.kostka     = kostka;
 }
Beispiel #19
0
 /// <summary>
 /// Konstruktor areny
 /// </summary>
 /// <param name="bojovnik1"></param>
 /// <param name="bojovnik2"></param>
 /// <param name="kocka"></param>
 public Arena(Bojovnik bojovnik1, Bojovnik bojovnik2, Kocka kocka)
 {
     this.bojovnik1 = bojovnik1;
     this.bojovnik2 = bojovnik2;
     this.kocka     = kocka;
 }