예제 #1
0
        public static Kolonija Ucitaj(PodaciCitac ulaz, List <Igrac> igraci,
                                      Dictionary <int, Zvijezda> zvijezde,
                                      Dictionary <int, Zgrada.ZgradaInfo> zgradeInfoID)
        {
            Igrac  igrac  = igraci[ulaz.podatakInt(PohIgrac)];
            Planet planet = zvijezde[ulaz.podatakInt(PohZvijezda)].
                            planeti[ulaz.podatakInt(PohPlanet)];
            long   populacija  = ulaz.podatakLong(PohPopulacija);
            long   radnaMjesta = ulaz.podatakLong(PohRadnaMj);
            double civilnaInd  = ulaz.podatakDouble(PohCivGradUdio);
            Dictionary <string, double> ostatakGradnje = ulaz.podatakDoubleRjecnik(PohCivGradOst);

            int           brZgrada = ulaz.podatakInt(PohZgrada);
            List <Zgrada> zgrade   = new List <Zgrada>();

            for (int i = 0; i < brZgrada; i++)
            {
                zgrade.Add(Zgrada.Ucitaj(ulaz[PohZgrada + i]));
            }

            int[] zgradeID = ulaz.podatakIntPolje(PohCivGrad);
            LinkedList <Zgrada.ZgradaInfo> redCivilneGradnje = new LinkedList <Zgrada.ZgradaInfo>();

            for (int i = 0; i < zgradeID.Length; i++)
            {
                redCivilneGradnje.AddLast(zgradeInfoID[zgradeID[i]]);
            }

            return(new Kolonija(igrac, planet, populacija, radnaMjesta, civilnaInd,
                                zgrade, ostatakGradnje, redCivilneGradnje));
        }
예제 #2
0
        public static Zgrada Ucitaj(PodaciCitac ulaz)
        {
            ZgradaInfo tip      = ZgradaInfoID[ulaz.podatakInt(PohTip)];
            long       kolicina = ulaz.podatakLong(PohKolicina);

            return(new Zgrada(tip, kolicina));
        }
예제 #3
0
 public static Kolonizacija Ucitaj(PodaciCitac ulaz, Dictionary <int, Dizajn> dizajnovi, Flota flota)
 {
     return(new Kolonizacija(
                ulaz.podatakInt(PohPlanet),
                flota[dizajnovi[ulaz.podatakInt(PohBrodovi)]],
                ulaz.podatakLong(PohBrBrodova)));
 }
예제 #4
0
        public new static Poruka Ucitaj(PodaciCitac ulaz, Dictionary <int, Zvijezda> zvijezdeID, Dictionary <int, Dizajn> dizajnID)
        {
            Zvijezda zvj      = zvijezdeID[ulaz.podatakInt(PohIzvor)];
            Dizajn   dizajn   = dizajnID[ulaz.podatakInt(PohDizajn)];
            long     kolicina = ulaz.podatakLong(PohKolicina);

            return(new PorukaBrod(zvj, dizajn, kolicina));
        }
예제 #5
0
        public static Brod Ucitaj(PodaciCitac ulaz, Dictionary <int, Dizajn> dizajnovi)
        {
            Dizajn dizajn             = dizajnovi[ulaz.podatakInt(PohDizajn)];
            long   kolicina           = ulaz.podatakLong(PohKolicina);
            double izdrzljivostOklopa = ulaz.podatakDouble(PohIzdrzljivost);

            return(new Brod(dizajn, kolicina, izdrzljivostOklopa));
        }
예제 #6
0
        public static Tehnologija Ucitaj(PodaciCitac ulaz)
        {
            Kategorija kategorija = (Kategorija)ulaz.podatakInt(PohKategorija);

            TechInfo info = null;
            int      id   = ulaz.podatakInt(PohId);

            if (kategorija == Kategorija.ISTRAZIVANJE)
            {
                info = TechInfo.tehnologijeIstrazivanje[id];
            }
            else
            {
                info = TechInfo.tehnologijeRazvoj[id];
            }

            long nivo    = ulaz.podatakLong(PohNivo);
            long ulozeno = ulaz.podatakLong(PohUlozeno);

            return(new Tehnologija(info, nivo, ulozeno));
        }