예제 #1
0
        private void promjeniNDspecOpremu(bool dodaj, int soIndeks)
        {
            SpecijalnaOprema so = dizajner.trupKomponente.specijalnaOprema[soIndeks];
            int n;

            if (dodaj)
            {
                n = dizajner.dodajSpecOpremu(so);
            }
            else
            {
                n = dizajner.makniSpecOpremu(so);
            }

            if (n > 0)
            {
                lstvNDspecOprema.Items[soIndeks].SubItems[0].Text = n + "x";
            }
            else
            {
                lstvNDspecOprema.Items[soIndeks].SubItems[0].Text = "";
            }

            specijalnaOpremaZaOpis = so;

            osvjeziNDstatistike();
            prebaciNDopis(InfoStranice.SpecijalnaOprema);
        }
예제 #2
0
        private void cbNDvelicina_SelectedIndexChanged(object sender, EventArgs e)
        {
            Trup trup = (Trup)cbNDvelicina.SelectedItem;

            dizajner.odabranTrup = trup;

            if (dizajner.komponente[trup].mzPogon == null)
            {
                chNDMZpogon.Checked = false;
                chNDMZpogon.Enabled = false;
            }
            else
            {
                chNDMZpogon.Enabled = true;
            }

            foreach (ListViewItem item in lstvNDspecOprema.Items)
            {
                int indeks = (int)item.Tag;
                item.SubItems[2].Text = dizajner.trupKomponente.specijalnaOprema[indeks].velicina.ToString();
            }

            if (lstvNDspecOprema.SelectedItems.Count != 0)
            {
                SpecijalnaOprema so = dizajner.trupKomponente.specijalnaOprema[lstvNDspecOprema.SelectedIndices[0]];
                specijalnaOpremaZaOpis = so;
            }

            osvjeziNDstatistike();
            prebaciNDopis(InfoStranice.Pokretljivost);
        }
예제 #3
0
        private void promjeniNDspecOpremu(bool dodaj, int soIndeks)
        {
            SpecijalnaOprema so = dizajner.trupKomponente.specijalnaOprema[soIndeks];
            int n;

            if (dodaj)
            {
                n = dizajner.dodajSpecOpremu(so);
            }
            else
            {
                n = dizajner.makniSpecOpremu(so);
            }

            if (n > 0)
            {
                lstvSpecOprema.Items[soIndeks].SubItems[0].Text = n + "x";
            }
            else
            {
                lstvSpecOprema.Items[soIndeks].SubItems[0].Text = "";
            }

            osvjeziStatistike();
        }
예제 #4
0
        private void lstvDizajnovi_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (lstvDizajnovi.SelectedItems.Count == 0)
            {
                return;
            }
            Dizajn dizajn = (Dizajn)lstvDizajnovi.SelectedItems[0].Tag;

            picSlikaDizajna.Image = dizajn.slika;

            List <string> opisDizajna = new List <string>();

            opisDizajna.Add(dizajn.ime);
            opisDizajna.Add(dizajn.trup.naziv);
            opisDizajna.Add("");

            Dictionary <string, ITekst> jezik = Postavke.Jezik[Kontekst.FormFlote];

            foreach (InfoStranice stranica in Enum.GetValues(typeof(InfoStranice)))
            {
                Trace.WriteLine(stranica.ToString());

                if (stranica == InfoStranice.SpecijalnaOprema)
                {
                    foreach (SpecijalnaOprema so in dizajn.specijalnaOprema.Keys)
                    {
                        specijalnaOpremaZaOpis = so;
                        opisDizajna.AddRange(opis(stranica, dizajn, false));
                        opisDizajna.Add("");
                    }
                }
                else
                {
                    opisDizajna.AddRange(opis(stranica, dizajn, false));
                    opisDizajna.Add("");
                }

                if (stranica == InfoStranice.SekundarnaMisija)
                {
                    opisDizajna.Add(jezik["opisOklop"].tekst() + ":");
                    opisDizajna.Add("");
                    opisDizajna.Add(dizajn.oklop.naziv);
                    opisDizajna.Add(jezik["opisOklopIzd"].tekst() + ": " + dizajn.izdrzljivostOklopa);
                    opisDizajna.Add("");
                }
            }

            txtDizajnInfo.Lines = opisDizajna.ToArray();

            if (dizajn.brojBrodova == 0)
            {
                btnUkloniDizajn.Enabled = true;
            }
            else
            {
                btnUkloniDizajn.Enabled = false;
            }
        }
예제 #5
0
        private void lstvNDspecOprema_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (lstvNDspecOprema.SelectedItems.Count == 0)
            {
                return;
            }

            SpecijalnaOprema so = dizajner.trupKomponente.specijalnaOprema[lstvNDspecOprema.SelectedIndices[0]];

            specijalnaOpremaZaOpis = so;
            prebaciNDopis(InfoStranice.SpecijalnaOprema);
        }
예제 #6
0
        public int makniSpecOpremu(SpecijalnaOprema so)
        {
            if (!dizajnSpecOprema.ContainsKey(so))
            {
                return(0);
            }

            dizajnSpecOprema[so]--;
            promjenjenDizajn = true;

            if (dizajnSpecOprema[so] <= 0)
            {
                dizajnSpecOprema.Remove(so);
                return(0);
            }
            else
            {
                return(dizajnSpecOprema[so]);
            }
        }
예제 #7
0
        private void prikazSpecOp(IKomponenta komponentaObj)
        {
            Trup             trup = ((TagTekst <Trup>)cbOpVelicine.SelectedItem).tag;
            SpecijalnaOprema so   = (SpecijalnaOprema)komponentaObj;

            so = so.info.naciniKomponentu(so.nivo, trup.velicina);
            Dictionary <string, ITekst> jezik = Postavke.Jezik[Kontekst.FormFlote];

            StringBuilder sb = new StringBuilder(txtOpOpis.Text);

            sb.AppendLine();
            sb.AppendLine();
            foreach (string efekt in so.opisEfekata)
            {
                sb.AppendLine(efekt);
            }
            sb.AppendLine();
            jezik = Postavke.Jezik[Kontekst.FormTech];
            sb.AppendLine(jezik["opCijena"].tekst() + ": " + Fje.PrefiksFormater(so.cijena));
            sb.AppendLine(jezik["opVelicina"].tekst() + ": " + Fje.PrefiksFormater(so.velicina));
            txtOpOpis.Text = sb.ToString();
        }
예제 #8
0
        public int dodajSpecOpremu(SpecijalnaOprema so)
        {
            if (!dizajnSpecOprema.ContainsKey(so) && so.maxKolicina > 0)
            {
                dizajnSpecOprema.Add(so, 0);
            }

            if (dizajnSpecOprema[so] < so.maxKolicina)
            {
                dizajnSpecOprema[so]++;
                promjenjenDizajn = true;
            }

            if (dizajnSpecOprema.ContainsKey(so))
            {
                return(dizajnSpecOprema[so]);
            }
            else
            {
                return(0);
            }
        }