private PredefiniraniDizajn(string naziv, List <Preduvjet> preduvjeti,
                             Trup.TrupInfo trup, Oruzje.OruzjeInfo primarnoOruzje,
                             Oruzje.OruzjeInfo sekundarnoOruzje, Stit.StitInfo stit,
                             Dictionary <SpecijalnaOprema.SpecijalnaOpremaInfo, int> specijalnaOprema,
                             double udioPrimarnogOruzja, bool mzPogon, int pozeljnaPozicija)
 {
     this.naziv               = naziv;
     this.preduvjeti          = preduvjeti;
     this.trup                = trup;
     this.primarnoOruzje      = primarnoOruzje;
     this.sekundarnoOruzje    = sekundarnoOruzje;
     this.stit                = stit;
     this.specijalnaOprema    = specijalnaOprema;
     this.udioPrimarnogOruzja = udioPrimarnogOruzja;
     this.mzPogon             = mzPogon;
     this.pozeljnaPozicija    = pozeljnaPozicija;
 }
        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"])));
        }