Example #1
0
        public ActionResult PridatKontakt(String prezdivkaUzivatele)
        {
            using (ModelContainer db = new ModelContainer())
            {
                //existuje hledány uživatel?
                bool existujeUzivatel = db.Uzivatele.Any(x => x.Prezdivka == prezdivkaUzivatele);

                if (existujeUzivatel)
                {
                    //pokud uživatel existuje
                    Uzivatel hledanyUzivatel = db.Uzivatele.Where(x => x.Prezdivka == prezdivkaUzivatele).First();

                    //zašlu první oznamovací zprávu - tím se mi zobrazí v kontaktech
                    Zprava prvniZprava = new Zprava();
                    prvniZprava.Text           = "Pozdravte uživatele " + hledanyUzivatel.Prezdivka + "!";
                    prvniZprava.UzivatelKomuId = int.Parse(Session["uzivatelID"].ToString());
                    prvniZprava.UzivatelOdId   = hledanyUzivatel.Id;
                    prvniZprava.CasOdeslani    = DateTime.Now;

                    //vložím první zprávu
                    db.Zpravy.Add(prvniZprava);

                    //uložím změny
                    db.SaveChanges();

                    return(Json(new { success = true }, JsonRequestBehavior.AllowGet));
                }
                else //uživatel s danou přezdívkou neexistuje
                {
                    //vrátím informaci o neúspěšné operaci přidání kontaktu
                    return(Json(new { success = false, responseText = "Uživatel se zadanou přezdívkou neexistuje!" }, JsonRequestBehavior.AllowGet));
                }
                //return View("Index", new RouteValueDictionary(new { controller = "Zprava", action = "Index", idUzivatele = int.Parse(Session["aktualniKontakt"].ToString()) }));
            }
        }
Example #2
0
        public static IZpracovavac VratZpracovavac(Zprava aZprava, Hra aHra)
        {
            Type         t           = Assembly.GetExecutingAssembly().GetType(aZprava.TypZpravy);
            IZpracovavac zpracovavac = (IZpracovavac)Activator.CreateInstance(t);

            zpracovavac.Hra = aHra;
            return(zpracovavac);
        }
Example #3
0
 public void ZpracujZpravu(Zprava aZprava)
 {
     Hra.JeHracBily = !Convert.ToBoolean(aZprava.Parametr("Barva"));
     if (Hra.MuzeHrat)
     {
         Hra.SpustTimer();
     }
 }
Example #4
0
        public ActionResult VlozitKomentar(String textZpravy)
        {
            using (ModelContainer db = new ModelContainer())
            {
                Zprava novaZprava = new Zprava();

                //naplním hodnoty
                novaZprava.Text           = textZpravy;
                novaZprava.UzivatelKomuId = int.Parse(Session["aktualniKontakt"].ToString());
                novaZprava.UzivatelOdId   = int.Parse(Session["uzivatelID"].ToString());
                novaZprava.CasOdeslani    = DateTime.Now;

                //vložím novou zprávu a uložím změny
                db.Zpravy.Add(novaZprava);
                db.SaveChanges();

                //předám parametr ID uživatele kterému zprávu posílám aby se model mohl naplnit správnými daty
                return(RedirectToAction("Index", new RouteValueDictionary(new { controller = "Zprava", action = "Index", idUzivatele = novaZprava.UzivatelKomuId })));
            }
        }
Example #5
0
 /// <summary>
 /// Metoda zpracuje vstupní zprávu
 /// </summary>
 /// <param name="aZprava">Přijatá zpráva</param>
 public void ZpracujZpravu(Zprava aZprava)
 {
     //metoda ze zprávy zpracuje souřadnice a ty pošle do metody KlikSoupere()
     Hra.KlikSoupere(Convert.ToInt32(aZprava.Parametr("X")), Convert.ToInt32(aZprava.Parametr("Y")));
 }
Example #6
0
        private void ZagrajUtocneKolco()
        {
            Budova dojo = Hra.AktualniProvincie.Budovy[5];

            if (dojo.Level == 0)
            {
                int postavit = Hra.NahodnyGenerator.Next(0, 2);

                if (postavit == 1)
                {
                    while (dojo.Level != 3 && dojo.JsouSurovinyNaRozsireni())
                    {
                        RozsirBudovu(dojo);
                    }
                }
            }


            PostavJednotky();

            List <Hrac> souperiSnejvyssiPrioritou = new List <Hrac>();

            int nejvyssiPrioritaSouperu = PrioritySouperu.Max();

            //Do pole souepriSnejvysiiBlabla přida soupeře se stejnou prioritou ktera je nejvyssi
            for (int i = 0; i < Souperi.Count; i++)
            {
                if (PrioritySouperu[i] == nejvyssiPrioritaSouperu)
                {
                    souperiSnejvyssiPrioritou.Add(Souperi[i]);
                }
            }

            int  indexVybranehoSoupere = Hra.NahodnyGenerator.Next(0, souperiSnejvyssiPrioritou.Count);
            Hrac vybranySouper         = souperiSnejvyssiPrioritou[indexVybranehoSoupere];

            int indexVybranehoSoupereVkolekci = Souperi.IndexOf(vybranySouper);


            //Do poleProvincieSnejvyssiPrioritou přidá provincie s prioritou té nejvyšší
            int nejvyssiPrioritaProvincie = PriorityProvinciiSouperu[indexVybranehoSoupereVkolekci].Max();

            List <Provincie> provincieSnejvyssiPrioritou = new List <Provincie>();

            for (int i = 0; i < vybranySouper.SeznamProvincii.Count; i++)
            {
                if (PriorityProvinciiSouperu[indexVybranehoSoupereVkolekci][i] == nejvyssiPrioritaProvincie)
                {
                    provincieSnejvyssiPrioritou.Add(vybranySouper.SeznamProvincii[i]);
                }
            }


            int       indexVybraneProvincie         = Hra.NahodnyGenerator.Next(0, provincieSnejvyssiPrioritou.Count);
            Provincie vybranaProvincie              = provincieSnejvyssiPrioritou[indexVybraneProvincie];
            int       indexVybraneProvincieVkolekci = vybranySouper.SeznamProvincii.IndexOf(vybranaProvincie);



            //Kontrola zda byla provincie špehována
            Zprava zpravaOSpehovani = null;

            bool bylaSpehovana = false;

            foreach (Zprava z in ZpravyNinju)
            {
                if (vybranaProvincie.JmenoProvincie == z.JmenoProvincie)
                {
                    bylaSpehovana    = true;
                    zpravaOSpehovani = z;
                }
            }

            if (bylaSpehovana && zpravaOSpehovani.Stari < 4)
            {
                if (Hra.AktualniProvincie.Populace <= zpravaOSpehovani.PocetObyvatel)
                {
                    PriorityProvinciiSouperu[indexVybranehoSoupereVkolekci][indexVybraneProvincieVkolekci]++;
                }
                int priorita = PriorityProvinciiSouperu[indexVybranehoSoupereVkolekci][indexVybraneProvincieVkolekci];

                if (Hra.AktualniProvincie.Populace >= zpravaOSpehovani.PocetObyvatel || priorita > 30)
                {
                    VyberJednoktyDoBoje(vybranaProvincie);
                }
            }
            else
            {
                Jednotka ninjove = Hra.AktualniProvincie.Ninjove;
                if (ninjove.Pocet != 0)
                {
                    VyslatNinju(vybranaProvincie);
                }
                else
                {
                    if (ninjove.JeOdemknutaVbudove() == false) //dojo
                    {
                        RozsirBudovu(ninjove.VlastnenaBudova);
                    }

                    if (ninjove.JeOdemknutaVbudove() == true)
                    {
                        ninjove.NaverbujJednotky();
                        if (ninjove.Pocet != 0)
                        {
                            VyslatNinju(vybranaProvincie);
                        }
                    }
                }
            }

            //Vyšpehuje ostatní vesnice
            if (Hra.AktualniProvincie.Ninjove.Pocet != 0)
            {
                List <Provincie> dalsiProvincieKeSpehovani = new List <Provincie>();
                foreach (Provincie p in Hra.SeznamProvincii)
                {
                    if (p.Vlastnik != this && Hra.AktualniProvincie.NepratelskeProvincieProSpehovani.IndexOf(p) == -1)
                    {
                        dalsiProvincieKeSpehovani.Add(p);
                    }
                }

                for (int i = 0; i < Hra.AktualniProvincie.Ninjove.Pocet; i++)
                {
                    if (dalsiProvincieKeSpehovani.Count == 0)
                    {
                        break;
                    }

                    int nahodnyIndexProvincie = Hra.NahodnyGenerator.Next(0, dalsiProvincieKeSpehovani.Count);

                    Provincie provincieKeSpehovani = dalsiProvincieKeSpehovani[nahodnyIndexProvincie];

                    VyslatNinju(vybranaProvincie);

                    dalsiProvincieKeSpehovani.RemoveAt(nahodnyIndexProvincie);
                }
            }
        }
Example #7
0
 public void ZobrazVybranouZpravu(Zprava zprava)
 {
     Console.WriteLine("Provincie: {0}  Vladce: {1}      Den: {2}\n", zprava.JmenoProvincie, zprava.JmenoVladce, zprava.DenSpehovani);
     Console.WriteLine("Počet obyvatel: {0}", zprava.PocetObyvatel);
     Console.WriteLine("Hradby: {0}", zprava.LevelHradeb);
 }