Пример #1
0
        public void PoslatPodporu()
        {
            ZobrazInformace();

            if (Hra.AktualniHrac.SeznamProvincii.Count > 1)
            {
                Console.WriteLine("Poslat podporu do:\n");

                List <Provincie> vlastneneProvincie = Hra.VratListVlastnenychProvinciiKromAktualni();

                volba = Hra.VyberZnabidky(vlastneneProvincie.Count + 1);

                if (volba != vlastneneProvincie.Count + 1)
                {
                    Hra.Player.VyberJednotkyProPodporu(vlastneneProvincie[volba - 1]);
                }
                else
                {
                    Nahled();
                }
            }
            else
            {
                Console.WriteLine("Nejsou dostupné žadné jiné provincie");
                Console.WriteLine("\n1 -> Zpět");
                volba = Hra.VyberZnabidky(1);
                Nahled();
            }
        }
Пример #2
0
        public void Obchod()
        {
            ZobrazInformace();

            if (Level != 0)
            {
                Console.WriteLine("1 -> Prodat rýži");
                Console.WriteLine("2 -> Prodat dřevo\n");
                Console.WriteLine("3 -> Koupit rýži");
                Console.WriteLine("4 -> Koupit dřevo\n");
                Console.WriteLine("5 -> Zpět");

                volba = Hra.VyberZnabidky(5);

                switch (volba)
                {
                case 1: Hra.Player.VyberSurovinyKProdeji("ryze"); break;

                case 2: Hra.Player.VyberSurovinyKProdeji("drevo"); break;

                case 3: Hra.Player.VbyerSurovinyKeKoupi("ryze"); break;

                case 4: Hra.Player.VbyerSurovinyKeKoupi("drevo"); break;

                case 5: Nahled(); break;
                }
            }
            else
            {
                Console.WriteLine("Budova dosud nebyla postavena");
                Console.WriteLine("\n1 -> Zpět");
                volba = Hra.VyberZnabidky(1);
                Nahled();
            }
        }
Пример #3
0
        public void VyberAkci()
        {
            //Výběr akce
            ZobrazInformace();

            Console.WriteLine("{0}  {1}\n", souper.Jmeno, vybranaProvincie.JmenoProvincie);

            Console.WriteLine("1 -> Útok");
            Console.WriteLine("2 -> Špehovat");
            Console.WriteLine("3 -> Informace");
            Console.WriteLine("\n4 -> Zpět");

            volba = Hra.VyberZnabidky(4);

            switch (volba)
            {
            case 1: Hra.Player.VyberJednoktyDoBoje(vybranaProvincie); break;

            case 2: Hra.Player.VyslatNinju(vybranaProvincie); break;

            case 3: Hra.Player.VyberZpravu(vybranaProvincie, false); break;

            case 4: VyberNepratelskouProvincii(); break;
            }
        }
Пример #4
0
        private void NastavProdaniRyze()
        {
            if (Level != 0)
            {
                if (AutomatickeProdaniRyze)
                {
                    AutomatickeProdaniRyze = false;
                }
                else
                {
                    AutomatickeProdaniRyze = true;
                }
            }
            else
            {
                ZobrazInformace();

                Console.WriteLine("Budova ještě nebyla postavena\n");
                Console.WriteLine("1 -> Zpět");

                volba = Hra.VyberZnabidky(1);
            }

            Nahled();
        }
Пример #5
0
        public override void Nahled()
        {
            base.Nahled();

            Console.WriteLine("Produkce: {0} Zlata\n", produkce);

            Console.Write("1 -> Rozšířit "); VypisDostupnostSurovin();
            Console.WriteLine("2 -> Rekrutovat jednotky");
            Console.WriteLine("3 -> Jednotky v provincii\n");
            Console.WriteLine("4 -> Naplánovat akci");
            Console.WriteLine("5 -> Poslat podporu\n");
            Console.WriteLine("6 -> Zpět");

            volba = Hra.VyberZnabidky(6);

            switch (volba)
            {
            case 1: RozsirBudovu(); break;

            case 2: RekrutujJednotky(); break;

            case 3: ZobrazJednotky(); break;

            case 4: NaplanujUtok(); break;

            case 5: PoslatPodporu(); break;

            case 6: break;
            }
        }
Пример #6
0
        public virtual void RozsirBudovu(Budova budovaKRozsireni)
        {
            budovaKRozsireni.ZobrazInformace();

            if (budovaKRozsireni.Level != budovaKRozsireni.MaxLevel)
            {
                if (budovaKRozsireni.JsouSurovinyNaRozsireni())
                {
                    Console.WriteLine("Budova byla rozšířena na level " + (budovaKRozsireni.Level + 1));
                    budovaKRozsireni.ZvysLevelBudovy();
                }
                else
                {
                    Console.WriteLine("Nejsou dostupné suroviny na rozšíření budovy");
                }
            }
            else
            {
                Console.WriteLine("Budova dosáhla maximální úrovně");
            }

            Console.WriteLine("\n1 -> Zpět");

            int volba = Hra.VyberZnabidky(1);

            budovaKRozsireni.Nahled();
        }
Пример #7
0
        private void NaplanujUtok()
        {
            //Výběr soupeře
            ZobrazInformace();

            Console.WriteLine("Soupeři:\n");
            for (int i = 0; i < Hra.Player.Souperi.Count; i++)
            {
                Console.WriteLine("{0} {1}", i + 1, Hra.Player.Souperi[i].Jmeno);
                Console.WriteLine("   {0}\n", Hra.Player.Souperi[i].VypisVlastniciProvincie());
            }

            Console.WriteLine("\n{0} -> Zpět", Hra.Player.Souperi.Count + 1);

            volba = Hra.VyberZnabidky(Hra.Player.Souperi.Count + 1);

            if (volba != Hra.Player.Souperi.Count + 1)
            {
                souper = Hra.Player.Souperi[volba - 1];
                VyberNepratelskouProvincii();
            }
            else
            {
                Nahled();
            }
        }
Пример #8
0
        private void ZobrazJednotky()
        {
            ZobrazInformace();

            Hra.AktualniProvincie.ZobrazJednotky();

            Console.WriteLine("\n1 -> Zpět");

            volba = Hra.VyberZnabidky(1);

            Nahled();
        }
Пример #9
0
        public override void Nahled()
        {
            base.Nahled();

            Console.Write("1 -> Rozšířit "); VypisDostupnostSurovin();
            Console.WriteLine("2 -> Zpět");

            volba = Hra.VyberZnabidky(2);

            switch (volba)
            {
            case 1: RozsirBudovu(); break;

            case 2: break;
            }
        }
Пример #10
0
        public virtual void VyslatNinju(Provincie nepratelskaProvincie)
        {
            Hra.AktualniBudova.ZobrazInformace();
            Console.WriteLine("Vyslat ninju do: {1}, {0}\n", nepratelskaProvincie.Vlastnik.Jmeno, nepratelskaProvincie.JmenoProvincie);

            if (Hra.AktualniProvincie.Ninjove.Pocet == 0)
            {
                Console.WriteLine("Nejsou dostupní žádní ninjové\n");

                Console.WriteLine("1 -> Zpět");

                int volba = Hra.VyberZnabidky(1);

                ((Hrad)Hra.AktualniBudova).VyberAkci();
            }
            else
            {
                Console.WriteLine("Ninjové: {0}\n", Hra.AktualniProvincie.Ninjove.Pocet);

                Console.WriteLine("1 -> Vyslat ninju!");
                Console.WriteLine("2 -> Zpět");

                int volba = Hra.VyberZnabidky(2);

                switch (volba)
                {
                case 1:
                    Hra.AktualniBudova.ZobrazInformace();
                    Hra.AktualniProvincie.PridejProvinciiProSpehovani(nepratelskaProvincie);

                    Hra.AktualniProvincie.PridejNinjyMimoProvicnii(1);
                    Hra.AktualniProvincie.Ninjove.PridejPocet(-1);

                    Console.WriteLine("Ninja byl poslán do provincie {1} - {0}", nepratelskaProvincie.Vlastnik.Jmeno, nepratelskaProvincie.JmenoProvincie);

                    Console.WriteLine("\n1 -> Zpět");
                    volba = Hra.VyberZnabidky(1);

                    ((Hrad)Hra.AktualniProvincie.Budovy[0]).VyberAkci();
                    break;

                case 2: ((Hrad)Hra.AktualniBudova).VyberAkci(); break;
                }
            }
        }
Пример #11
0
        private void VyberSurovinyProProvincii(Provincie vybranaProvincie)
        {
            int[]    suroviny    = new int[3];
            string[] jmenaSurovn = { "Zlato: ", "Dřevo: ", "Rýže: " };
            int[]    surovinyMax = { Hra.AktualniProvincie.Zlato, Hra.AktualniProvincie.Drevo, Hra.AktualniProvincie.Ryze };

            for (int i = 0; i <= suroviny.Length; i++)
            {
                ZobrazInformace();

                Console.WriteLine("Poslat suroviny do {0}", vybranaProvincie.JmenoProvincie);
                Console.WriteLine("Vybrané suroviny: Zlato: {0}  Dřevo: {1}  Rýže: {2}", suroviny[0], suroviny[1], suroviny[2]);

                if (i < suroviny.Length)
                {
                    suroviny[i] = Hra.CtiCislo(jmenaSurovn[i], surovinyMax[i]);
                }
            }

            Console.WriteLine("\n1 -> Polsat suroviny");
            Console.WriteLine("2 -> Zpět");

            volba = Hra.VyberZnabidky(2);

            switch (volba)
            {
            case 1:
                Hra.AktualniProvincie.PridejProvinciiProDovozSurovin(vybranaProvincie);
                Hra.AktualniProvincie.PridejSurovinyProDovoz(suroviny);
                Hra.AktualniProvincie.PrepoctiSuroviny(-suroviny[0], -suroviny[1], -suroviny[2]);

                ZobrazInformace();
                Console.WriteLine("Suroviny jsou na cestě do provincie {0}\n", vybranaProvincie.JmenoProvincie);
                Console.WriteLine("1 -> Zpět");

                volba = Hra.VyberZnabidky(1);

                PoslatSuroviny();
                break;

            case 2: PoslatSuroviny(); break;
            }
        }
Пример #12
0
        public void VyberZpravu(Provincie vybranaProvincie, bool lokaceCelaMapa)
        {
            if (lokaceCelaMapa)
            {
                Console.Clear();
                Hra.ZobrazPrehled(Hra.Player, true);
            }
            else
            {
                ((Hrad)Hra.AktualniProvincie.Budovy[0]).ZobrazInformace();
            }
            ////////////////////////////////////////////////////////////////////

            bool je = false;

            foreach (Zprava zprava in ZpravyNinju)
            {
                if (zprava.JmenoProvincie == vybranaProvincie.JmenoProvincie)
                {
                    ZobrazVybranouZpravu(zprava);
                    je = true;
                    break;
                }
            }

            ///////////////////////////////////////////////////////////////////////

            if (je == false)
            {
                Console.WriteLine("Provincie nebyla špehována - vyšli do ni Ninju aby o ní poskytl informace");
            }

            Console.WriteLine("\n1 -> Zpět");

            int volba = Hra.VyberZnabidky(1);


            if (!lokaceCelaMapa)
            {
                ((Hrad)Hra.AktualniProvincie.Budovy[0]).VyberAkci();
            }
            // else = Hra -> ZobrazNabidku(vNepratelskeProvincii)
        }
Пример #13
0
        public override void Nahled()
        {
            base.Nahled();

            string prodaniRyze = "Vypnuto";

            if (AutomatickeProdaniRyze)
            {
                prodaniRyze = "Zapnuto";
            }

            Console.Write("1 -> Rozšířit "); VypisDostupnostSurovin();
            Console.WriteLine("2 -> Obchod");
            Console.WriteLine("3 -> Poslat suroviny");
            Console.Write("4 -> Automatické prodání rýže [", prodaniRyze);

            if (AutomatickeProdaniRyze)
            {
                Hra.ObarviAVypisText("green", prodaniRyze);
            }
            else
            {
                Hra.ObarviAVypisText("red", prodaniRyze);
            }
            Console.WriteLine("]\n");

            Console.WriteLine("5 -> Zpět");

            volba = Hra.VyberZnabidky(5);

            switch (volba)
            {
            case 1: RozsirBudovu(); break;

            case 2: Obchod(); break;

            case 3: PoslatSuroviny(); break;

            case 4: NastavProdaniRyze(); break;

            case 5: break;
            }
        }
Пример #14
0
        private void VyberNepratelskouProvincii()
        {
            //Výběr nepřátelské provincie
            ZobrazInformace();

            Console.WriteLine("{0} \n", souper.Jmeno);

            souper.VypisProvincieProNabidku();
            Console.WriteLine("\n{0} -> Zpět", souper.SeznamProvincii.Count + 1);

            volba = Hra.VyberZnabidky(souper.SeznamProvincii.Count + 1);

            if (volba == souper.SeznamProvincii.Count + 1)
            {
                NaplanujUtok();
            }
            else
            {
                vybranaProvincie = souper.SeznamProvincii[volba - 1];
                VyberAkci();
            }
        }
Пример #15
0
        public void PoslatSuroviny()
        {
            ZobrazInformace();

            if (Level != 0)
            {
                if (Hra.AktualniHrac.SeznamProvincii.Count > 1)
                {
                    List <Provincie> listProvincii = Hra.VratListVlastnenychProvinciiKromAktualni();

                    volba = Hra.VyberZnabidky(listProvincii.Count + 1);

                    if (volba != listProvincii.Count + 1)
                    {
                        VyberSurovinyProProvincii(listProvincii[volba - 1]);
                    }
                    else
                    {
                        Nahled();
                    }
                }
                else
                {
                    Console.WriteLine("Nejsou dostupné žadné jiné provincie");
                    Console.WriteLine("\n1 -> Zpět");
                    volba = Hra.VyberZnabidky(1);
                    Nahled();
                }
            }
            else
            {
                Console.WriteLine("Budova dosud nebyla postavena");
                Console.WriteLine("\n1 -> Zpět");
                volba = Hra.VyberZnabidky(1);
                Nahled();
            }
        }
Пример #16
0
        public virtual void VyberJednotkyProPodporu(Provincie cilovaProvincie)
        {
            Hra.AktualniBudova.ZobrazInformace();
            string inforamce = string.Format("Poslat jednotky do {0}", cilovaProvincie.JmenoProvincie);

            List <Jednotka> armada = VyberJednotky(inforamce);

            if (armada != null)
            {
                if (armada.Count != 0)
                {
                    Console.WriteLine("\n\n1 -> Poslat podporu");
                    Console.WriteLine("2 -> Zpět");

                    int volba = Hra.VyberZnabidky(2);

                    switch (volba)
                    {
                    case 1:
                    {
                        Hra.AktualniProvincie.PridejJednotkyProPodporu(armada.ToArray());
                        Hra.AktualniProvincie.PridejProvincieProPodporu(cilovaProvincie);
                        Hra.AktualniBudova.ZobrazInformace();

                        Console.WriteLine("Armáda byla vyslána do provincie {0}", cilovaProvincie.JmenoProvincie);
                        Hra.VypisArmadu(armada);

                        Console.WriteLine("\n\n1 -> Zpět");
                        volba = Hra.VyberZnabidky(1);

                        ((Hrad)Hra.AktualniBudova).PoslatPodporu();

                        break;
                    }

                    case 2:
                    {
                        //Vrácení jednotek
                        Hra.AktualniProvincie.PrijmiJednotky(armada.ToArray());
                        ((Hrad)Hra.AktualniBudova).PoslatPodporu();
                        break;
                    }
                    }
                }
                else
                {
                    Hra.AktualniBudova.ZobrazInformace();
                    Console.WriteLine("Nebyly vybrány žádné jednotky");
                    Console.WriteLine("\n1 -> Zpět");

                    int volba = Hra.VyberZnabidky(1);
                    ((Hrad)Hra.AktualniBudova).Nahled();
                }
            }
            else
            {
                Console.WriteLine("\nV provincii se nenacházejí žádné jednotky\n");
                Console.WriteLine("1 - > Zpět");
                int volba = Hra.VyberZnabidky(1);
                ((Hrad)Hra.AktualniBudova).Nahled();
            }
        }
Пример #17
0
        protected virtual void RekrutujJednotky()
        {
            Console.Clear();
            Hra.ZobrazPrehled(Hra.Player, true);

            ZobrazInformace();

            VypisDostupnostPopulace();

            int max;

            if (Level == 0)
            {
                Console.WriteLine("Budova dosud nebyla postavena");
                max = 1;
            }
            else
            {
                if (Jednotky.Count == 0)
                {
                    Console.WriteLine("V budově zatím nejsou dostupné žádné jednotky");
                    max = 1;
                }
                else
                {
                    for (int i = 0; i < Jednotky.Count; i++)
                    {
                        Console.WriteLine("{0} -> {1}", i + 1, Jednotky[i].Jmeno);
                    }

                    max = Jednotky.Count + 1;
                }
            }

            Console.WriteLine("\n{0} -> Zpět", max);
            volba = Hra.VyberZnabidky(max);

            if (volba != max)
            {
                ZobrazInformace();
                VypisDostupnostPopulace();

                if (Hra.AktualniProvincie.Populace >= Hra.AktualniProvincie.MaxPopulace)
                {
                    Console.WriteLine("Nelze rekrutovat nové jednotky - nedostatek volných obyvatel");
                    Console.WriteLine("\n{0} -> Zpět", 1);
                    volba = Hra.VyberZnabidky(1);
                    RekrutujJednotky();
                }
                else
                {
                    if (!(Jednotky[volba - 1] is Ninja)) //výběr obyčejných jednotek
                    {
                        int index = 0;                   //index jednotky v provincii je jinačí než index jednotky v budově
                        for (int i = 0; i < Hra.AktualniProvincie.Jednotky.Length; i++)
                        {
                            if (Hra.AktualniProvincie.Jednotky[i].Jmeno == Jednotky[volba - 1].Jmeno)
                            {
                                index = i;
                            }
                        }

                        Hra.AktualniProvincie.Jednotky[index].NaverbujJednotky();
                    }
                    else
                    {
                        Hra.AktualniProvincie.Ninjove.NaverbujJednotky();  // výběr ninjy (není v provincie.Jednotky)
                    }
                    RekrutujJednotky();
                }
            }
            else
            {
                Nahled();
            }
        }
Пример #18
0
        public static void VypisMenu(string lokace)
        {
            Console.Clear();
            Console.WriteLine("\n                Japan Conquer");
            Console.WriteLine("-------------------------------------------------\n");

            switch (lokace)
            {
            case "menu":
            {
                string[] polozkyMenu =
                {
                    "Nová hra",
                    "O hře",
                    "Historie",
                    "Simulátor bitvy",
                    "Ukončit"
                };

                volba = VypisPolozkyAVratIndex(polozkyMenu);

                switch (volba)
                {
                case 0: ZahajHru(); break;

                case 1: VypisMenu("oHre"); break;

                case 2: VypisMenu("historie"); break;

                case 3: Hra.SpustExecko("Simulator bitvy.exe"); break;

                case 4: Environment.Exit(0); break;
                }

                break;
            }

            case "oHre":
            {
                Hra.VypisTextZeSouboru("JakHrat.txt");

                Console.WriteLine("\n1 -> Zpět");

                volba = Hra.VyberZnabidky(1);
                VypisMenu("menu");

                break;
            }

            case "historie":
            {
                Hra.VypisTextZeSouboru("Historie.txt");

                Console.WriteLine("\n1 -> Zpět");

                volba = Hra.VyberZnabidky(1);
                VypisMenu("menu");

                break;
            }
            }
        }
Пример #19
0
        public virtual void VyberJednoktyDoBoje(Provincie nepratelskaProvincie)
        {
            Hra.AktualniBudova.ZobrazInformace();
            string informace = string.Format("Útok na: {1}, {0}", nepratelskaProvincie.Vlastnik.Jmeno, nepratelskaProvincie.JmenoProvincie);

            List <Jednotka> armada = VyberJednotky(informace);

            if (armada != null)
            {
                if (armada.Count != 0)
                {
                    Console.WriteLine("\n\n1 -> Zaútočit!");
                    Console.WriteLine("2 -> Zpět");

                    int volba = Hra.VyberZnabidky(2);

                    switch (volba)
                    {
                    case 1:
                    {
                        Hra.AktualniProvincie.PridejJednotkyDoUtoku(armada.ToArray());
                        Hra.AktualniProvincie.PridejProvincieProUtok(nepratelskaProvincie);
                        Hra.AktualniBudova.ZobrazInformace();

                        Console.WriteLine("Armáda byla vyslána do provincie {0}", nepratelskaProvincie.JmenoProvincie);
                        Hra.VypisArmadu(armada);

                        Console.WriteLine("\n\n1 -> Zpět");
                        volba = Hra.VyberZnabidky(1);

                        ((Hrad)Hra.AktualniBudova).VyberAkci();
                        break;
                    }

                    case 2:
                    {
                        //Vrátit vybrané vojáky zpět
                        Hra.AktualniProvincie.PrijmiJednotky(armada.ToArray());

                        ((Hrad)Hra.AktualniBudova).VyberAkci(); break;
                    }
                    }
                }
                else
                {
                    Hra.AktualniBudova.ZobrazInformace();
                    Console.WriteLine("Nebyly vybrány žádné jednotky");
                    Console.WriteLine("\n1 -> Zpět");

                    int volba = Hra.VyberZnabidky(1);
                    ((Hrad)Hra.AktualniBudova).VyberAkci();
                }
            }
            else
            {
                Console.WriteLine("\nV provincii se nenacházejí žádné jednotky pro útok\n");

                Console.WriteLine("1 -> Zpět");

                int volba = Hra.VyberZnabidky(1);

                ((Hrad)Hra.AktualniBudova).VyberAkci();
            }
        }