예제 #1
0
            public static void UcitajTrupInfo(Dictionary <string, string> podaci)
            {
                string           naziv      = podaci["IME"];
                string           opis       = podaci["OPIS"];
                Image            slika      = Image.FromFile(podaci["SLIKA"]);
                List <Preduvjet> preduvjeti = Preduvjet.NaciniPreduvjete(podaci["PREDUVJETI"]);
                int maxNivo = int.Parse(podaci["MAX_NIVO"]);

                int     velicina             = int.Parse(podaci["VELICINA"]);
                Formula ometanje             = Formula.IzStringa(podaci["OMETANJE"]);
                Formula prikrivanje          = Formula.IzStringa(podaci["PRIKRIVANJE"]);
                Formula velicina_MZPogona_p  = Formula.IzStringa(podaci["VELICINA_MZPOGONA"]);
                Formula velicina_reaktora_p  = Formula.IzStringa(podaci["VELICINA_REAKTORA"]);
                Formula velicina_stita_p     = Formula.IzStringa(podaci["VELICINA_STITA"]);
                Formula nosivost             = Formula.IzStringa(podaci["NOSIVOST"]);
                Formula tromost              = Formula.IzStringa(podaci["TROMOST"]);
                Formula bazaOklopa           = Formula.IzStringa(podaci["BAZA_OKLOPA"]);
                Formula bazaOklopUblazavanja = Formula.IzStringa(podaci["BAZA_OKLOP_UBL"]);
                Formula bazaStita            = Formula.IzStringa(podaci["BAZA_STITA"]);
                Formula cijena     = Formula.IzStringa(podaci["CIJENA"]);
                Formula senzorPlus = Formula.IzStringa(podaci["SENZOR_PLUS"]);

                TrupInfo trupInfo = new TrupInfo(
                    naziv, opis, slika, preduvjeti, maxNivo,
                    velicina, ometanje, prikrivanje,
                    velicina_MZPogona_p, velicina_reaktora_p,
                    velicina_stita_p, nosivost, tromost,
                    bazaOklopa, bazaOklopUblazavanja, bazaStita,
                    senzorPlus, cijena
                    );

                Trupovi.Add(trupInfo);
                KodoviTrupova.Add(podaci["KOD"].Trim(), trupInfo);
            }
예제 #2
0
            public static void UcitajStitInfo(Dictionary <string, string> podaci)
            {
                string           naziv      = podaci["IME"];
                string           opis       = podaci["OPIS"];
                Image            slika      = Image.FromFile(podaci["SLIKA"]);
                List <Preduvjet> preduvjeti = Preduvjet.NaciniPreduvjete(podaci["PREDUVJETI"]);
                int maxNivo = int.Parse(podaci["MAX_NIVO"]);

                Formula izdrzljivost     = Formula.IzStringa(podaci["IZDRZLJIVOST"]);
                Formula debljina         = Formula.IzStringa(podaci["DEBLJINA"]);
                Formula ublazavanjeStete = Formula.IzStringa(podaci["UBLAZAVANJE"]);
                Formula obnavljanje      = Formula.IzStringa(podaci["OBNAVLJANJE"]);
                Formula potrosnjaSnage   = Formula.IzStringa(podaci["SNAGA"]);
                Formula prikrivanje      = Formula.IzStringa(podaci["PRIKRIVANJE"]);
                Formula ometanje         = Formula.IzStringa(podaci["OMETANJE"]);
                Formula cijena           = Formula.IzStringa(podaci["CIJENA"]);

                StitInfo info = new StitInfo(
                    naziv, opis, slika, preduvjeti, maxNivo,
                    izdrzljivost, debljina, ublazavanjeStete, obnavljanje,
                    potrosnjaSnage, prikrivanje, ometanje, cijena
                    );

                Stitovi.Add(info);
                Kodovi.Add(podaci["KOD"], info);
            }
예제 #3
0
            public static void UcitajSpecijalnaOpremaInfo(Dictionary <string, string> podaci)
            {
                string           naziv      = podaci["IME"];
                string           opis       = podaci["OPIS"];
                Image            slika      = Image.FromFile(podaci["SLIKA"]);
                List <Preduvjet> preduvjeti = Preduvjet.NaciniPreduvjete(podaci["PREDUVJETI"]);
                int maxNivo = int.Parse(podaci["MAX_NIVO"]);

                Dictionary <string, Formula> efekti = new Dictionary <string, Formula>();

                string[] naziviEfekata = podaci["EFEKTI"].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
                for (int i = 0; i < naziviEfekata.Length; i++)
                {
                    efekti.Add(naziviEfekata[i].Trim(), Formula.IzStringa(podaci["FORMULA" + i]));
                }

                SpecijalnaOpremaInfo info = new SpecijalnaOpremaInfo(
                    naziv, opis, slika, preduvjeti, maxNivo,
                    efekti,
                    Formula.IzStringa(podaci["CIJENA"]),
                    Formula.IzStringa(podaci["VELICINA"]),
                    Formula.IzStringa(podaci["MAX_KOLICINA"])
                    );

                SpecijalnaOprema.Add(info);
                Kodovi.Add(podaci["KOD"], info);
            }
예제 #4
0
            public static void UcitajSenzorInfo(Dictionary <string, string> podaci)
            {
                string           naziv      = podaci["IME"];
                string           opis       = podaci["OPIS"];
                Image            slika      = Image.FromFile(podaci["SLIKA"]);
                List <Preduvjet> preduvjeti = Preduvjet.NaciniPreduvjete(podaci["PREDUVJETI"]);
                int maxNivo = int.Parse(podaci["MAX_NIVO"]);

                Formula razlucivost = Formula.IzStringa(podaci["RAZLUCIVOST"]);

                Senzori.Add(new SenzorInfo(
                                naziv, opis, slika, preduvjeti, maxNivo,
                                razlucivost)
                            );
            }
예제 #5
0
            public static void UcitajPotisnikInfo(Dictionary <string, string> podaci)
            {
                string           naziv      = podaci["IME"];
                string           opis       = podaci["OPIS"];
                Image            slika      = Image.FromFile(podaci["SLIKA"]);
                List <Preduvjet> preduvjeti = Preduvjet.NaciniPreduvjete(podaci["PREDUVJETI"]);
                int maxNivo = int.Parse(podaci["MAX_NIVO"]);

                Formula brzina        = Formula.IzStringa(podaci["BRZINA"]);
                Formula pokretljivost = Formula.IzStringa(podaci["POKRETLJIVOST"]);

                Potisnici.Add(new PotisnikInfo(
                                  naziv, opis, slika, preduvjeti, maxNivo,
                                  brzina, pokretljivost)
                              );
            }
예제 #6
0
            public static void UcitajReaktorInfo(Dictionary <string, string> podaci)
            {
                string           naziv      = podaci["IME"];
                string           opis       = podaci["OPIS"];
                Image            slika      = Image.FromFile(podaci["SLIKA"]);
                List <Preduvjet> preduvjeti = Preduvjet.NaciniPreduvjete(podaci["PREDUVJETI"]);
                int maxNivo = int.Parse(podaci["MAX_NIVO"]);

                Formula minVelicina = Formula.IzStringa(podaci["VELICINA_MIN"]);
                Formula snaga       = Formula.IzStringa(podaci["SNAGA"]);

                Reaktori.Add(new ReaktorInfo(
                                 naziv, opis, slika, preduvjeti, maxNivo,
                                 snaga, minVelicina)
                             );
            }
예제 #7
0
            public static void UcitajOklopInfo(Dictionary <string, string> podaci)
            {
                string           naziv      = podaci["IME"];
                string           opis       = podaci["OPIS"];
                Image            slika      = Image.FromFile(podaci["SLIKA"]);
                List <Preduvjet> preduvjeti = Preduvjet.NaciniPreduvjete(podaci["PREDUVJETI"]);
                int maxNivo = int.Parse(podaci["MAX_NIVO"]);

                Formula izdrzljivost         = Formula.IzStringa(podaci["IZDRZLJIVOST"]);
                Formula ublazavanjeSteteKoef = Formula.IzStringa(podaci["UBLAZAVANJE_KOEF"]);
                Formula ublazavanjeSteteMax  = Formula.IzStringa(podaci["UBLAZAVANJE_MAX"]);

                Oklopi.Add(new OklopInfo(
                               naziv, opis, slika, preduvjeti, maxNivo,
                               izdrzljivost, ublazavanjeSteteKoef, ublazavanjeSteteMax)
                           );
            }
예제 #8
0
            public static void UcitajOruzjeInfo(Dictionary <string, string> podaci)
            {
                string           naziv      = podaci["IME"];
                string           opis       = podaci["OPIS"];
                Image            slika      = Image.FromFile(podaci["SLIKA"]);
                List <Preduvjet> preduvjeti = Preduvjet.NaciniPreduvjete(podaci["PREDUVJETI"]);
                int maxNivo = int.Parse(podaci["MAX_NIVO"]);

                Misija.Tip misijaTip = Misija.StringUMisiju[podaci["MISIJA"]];

                Misija misija = Misija.Opisnici[misijaTip];

                Formula[] parametri = new Formula[misija.brParametara];
                for (int i = 0; i < misija.brParametara; i++)
                {
                    parametri[i] = Formula.IzStringa(podaci[misija.parametri[i].kod]);
                }

                Ciljanje ciljanje = Ciljanje.Normalno;

                if (misija.imaCiljanje)
                {
                    ciljanje = StringUCiljanje[podaci["CILJANJE"]];
                }

                if (!Oruzja.ContainsKey(misijaTip))
                {
                    Oruzja.Add(misijaTip, new List <OruzjeInfo>());
                }

                OruzjeInfo info = new OruzjeInfo(
                    naziv, opis, slika, preduvjeti, maxNivo,
                    misijaTip, ciljanje,
                    parametri,
                    Formula.IzStringa(podaci["CIJENA"]),
                    Formula.IzStringa(podaci["SNAGA"]),
                    Formula.IzStringa(podaci["VELICINA"])
                    );

                Oruzja[misijaTip].Add(info);
                KodoviOruzja.Add(podaci["KOD"], info);
            }
        public static void Dodaj(Dictionary <string, string> podaci)
        {
            Dictionary <SpecijalnaOprema.SpecijalnaOpremaInfo, int> specijalnaOprema = new Dictionary <SpecijalnaOprema.SpecijalnaOpremaInfo, int>();

            string[] specOpremaPodaci = podaci["SPEC_OPREMA"].Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
            foreach (string str in specOpremaPodaci)
            {
                string[] soPodatak = str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
                specijalnaOprema.Add(SpecijalnaOprema.SpecijalnaOpremaInfo.Kodovi[soPodatak[0]], int.Parse(soPodatak[1]));
            }

            List <Preduvjet> preduvjeti = Preduvjet.NaciniPreduvjete(podaci["PREDUVJETI"]);

            Oruzje.OruzjeInfo primOruzje = null;
            Oruzje.OruzjeInfo sekOruzje  = null;
            if (podaci["PRIM_ORUZJE"].Length != 0)
            {
                primOruzje = Oruzje.OruzjeInfo.KodoviOruzja[podaci["PRIM_ORUZJE"]];
            }
            if (podaci["SEK_ORUZJE"].Length != 0)
            {
                sekOruzje = Oruzje.OruzjeInfo.KodoviOruzja[podaci["SEK_ORUZJE"]];
            }

            Stit.StitInfo stit = null;
            if (podaci["STIT"].Length != 0)
            {
                stit = Stit.StitInfo.Kodovi[podaci["STIT"]];
            }

            dizajnovi.Add(new PredefiniraniDizajn(
                              podaci["NAZIV"],
                              preduvjeti,
                              Trup.TrupInfo.KodoviTrupova[podaci["TRUP"]],
                              primOruzje,
                              sekOruzje,
                              stit,
                              specijalnaOprema,
                              double.Parse(podaci["UDIO_PRIM_ORUZJA"]),
                              podaci.ContainsKey("MZ_POGON"),
                              int.Parse(podaci["POZICIJA"])));
        }
예제 #10
0
 private void postaviPreduvjete(string preduvjetiString)
 {
     postaviPreduvjete(Preduvjet.NaciniPreduvjete(preduvjetiString, false));
 }