예제 #1
0
파일: Form1.cs 프로젝트: MWSW/BigTycoon
        private void SelezionaCella(object sender, EventArgs e)
        {
            Reset();

            PictureBox cellaSelezionata = (PictureBox)sender;

            //estraggo il numero della cella
            int indice = int.Parse(cellaSelezionata.Name.Substring(4));

            indice--; //perchè i nomi sono conteggiati partendo da 1

            //calcolo le coordinate
            c_selezionato = indice % mappa.Colon;
            r_selezionato = (indice - c_selezionato) / mappa.Colon;

            prec_c_selezionato = c_selezionato;
            prec_r_selezionato = r_selezionato;

            if (CellaVuota(cellaSelezionata))
            {
                //rendi visibile il pannello
                crea_edificio_panel.Visible = true;

                cellaSelezionata_label.Text = "CELLA SELEZIONATA: " + mappa.CelleNomi[r_selezionato, c_selezionato];
            }
            else
            {
                //rendi visibile il pannello
                gestioneEdificio_panel.Visible = true;

                edificioSelezionato_label.Text = "";

                //Tipo di edificio
                edificioSelezionato = mappa.CelleEdifici[r_selezionato, c_selezionato];
                if (edificioSelezionato.GetType() == typeof(Industria))
                {
                    edificioSelezionato_label.Text += "Industria di ";
                }
                else if (edificioSelezionato.GetType() == typeof(Fabbrica))
                {
                    edificioSelezionato_label.Text += "Fabbrica di ";
                }
                else if (edificioSelezionato.GetType() == typeof(Negozio))
                {
                    edificioSelezionato_label.Text += "Negozio di ";
                }

                //Nome edificio
                edificioSelezionato_label.Text += mappa.CelleNomi[r_selezionato, c_selezionato];

                AggiornaInfoGrafiche();
            }
        }
예제 #2
0
파일: Form1.cs 프로젝트: MWSW/BigTycoon
        private void AvvioViaggio(object sender, EventArgs e)
        {
            PictureBox cellaSelezionata = (PictureBox)sender;

            //estraggo il numero della cella
            int indice = int.Parse(cellaSelezionata.Name.Substring(4));

            indice--; //perchè i nomi sono conteggiati partendo da 1

            //calcolo le coordinate
            int c_sel = indice % mappa.Colon;
            int r_sel = (indice - c_selezionato) / mappa.Colon;

            Edificio destinatario = mappa.CelleEdifici[r_sel, c_sel];

            if (destinatario == null)
            {
                return;
            }
            if (edificioSelezionato.GetType() == typeof(Industria) && destinatario.GetType() == typeof(Fabbrica) || edificioSelezionato.GetType() == typeof(Fabbrica) && destinatario.GetType() == typeof(Negozio))
            {
                menuViaggio.UpdateDirezione(luoghi[prec_r_selezionato, prec_c_selezionato].Text, luoghi[r_sel, c_sel].Text);
                menuViaggio.Mittente     = edificioSelezionato;
                menuViaggio.Destinatario = destinatario;
                menuViaggio.Show();
            }
        }
예제 #3
0
파일: Form1.cs 프로젝트: MWSW/BigTycoon
        void AggiornaInfoGrafiche()
        {
            LordoTotale.Text         = "Lordo: " + giocatore.portafogli.Reddito + "$";
            SpeseTotali.Text         = "Spese: " + giocatore.portafogli.Spese + "$";
            GuadagnoGiornaliero.Text = "Guadagno giornaliero: " + giocatore.portafogli.Bilancio + "$";

            portafoglio_label.Text = "Portafoglio: " + giocatore.portafogli.Soldi + "$";

            immagineAzienda_label.Text = "Immagine azienda: " + giocatore.FamaAziendale + "/10";

            richiesteLavoro_label.Text = "Richieste lavoro: " + giocatore.DipendentiDisponibili;

            if (edificioSelezionato != null)
            {
                indicatoreDipendenti.Text = edificioSelezionato.Dipendenti.Quantita + "/" + edificioSelezionato.Dipendenti.MassimoDipendenti;
                indicatoreFelicita.Text   = "+" + edificioSelezionato.Dipendenti.Felicita;

                gestione_button.BackgroundImage = Properties.Resources.ingranaggio;

                if (gestioneEdificio_panel.Visible)
                {
                    stipendiPerc_label.Text = edificioSelezionato.Dipendenti.StipendiPerc + "%";

                    guadagnoEdificio.Text = "GUADAGNO " + edificioSelezionato.Bilancio + "$";
                    lordoEdificio.Text    = "LORDO " + edificioSelezionato.Reddito + "$";

                    puntiProduzione.Text = "+" + edificioSelezionato.PuntiProduzione;

                    minimoDipendenti_label.Text = "(min " + edificioSelezionato.Dipendenti.MinimoDipendenti + ")";

                    //Magazzino (GUI)
                    if (edificioSelezionato.GetType() == typeof(Industria))
                    {
                        Industria industria = (Industria)edificioSelezionato;
                        materiali_comuni.Text   = industria.SlotMateriali.GetElemento("MaterialeComune").Quantita.ToString();
                        materiali_rari.Text     = industria.SlotMateriali.GetElemento("MaterialeRaro").Quantita.ToString();
                        materiali_preziosi.Text = industria.SlotMateriali.GetElemento("MaterialePrezioso").Quantita.ToString();

                        prodotti_comuni.Text   = "--";
                        prodotti_rari.Text     = "--";
                        prodotti_preziosi.Text = "--";

                        prodotti_comuniRari.Text     = "--";
                        prodotti_comuniPreziosi.Text = "--";
                        prodotti_rariPreziosi.Text   = "--";

                        //BottoneProduzione
                        if (((Industria)edificioSelezionato).RisorsaTerreno == "MaterialeComune")
                        {
                            gestione_button.BackgroundImage = Properties.Resources.comuni;
                        }
                        else if (((Industria)edificioSelezionato).RisorsaTerreno == "MaterialeRaro")
                        {
                            gestione_button.BackgroundImage = Properties.Resources.rari;
                        }
                        else if (((Industria)edificioSelezionato).RisorsaTerreno == "MaterialePrezioso")
                        {
                            gestione_button.BackgroundImage = Properties.Resources.preziosi;
                        }
                    }
                    else if (edificioSelezionato.GetType() == typeof(Fabbrica))
                    {
                        Fabbrica fabbrica = (Fabbrica)edificioSelezionato;
                        materiali_comuni.Text   = fabbrica.SlotMateriali.GetElemento("MaterialeComune").Quantita.ToString();
                        materiali_rari.Text     = fabbrica.SlotMateriali.GetElemento("MaterialeRaro").Quantita.ToString();
                        materiali_preziosi.Text = fabbrica.SlotMateriali.GetElemento("MaterialePrezioso").Quantita.ToString();

                        prodotti_comuni.Text   = fabbrica.SlotProdotti.GetElemento("ProdottoComune").Quantita.ToString();
                        prodotti_rari.Text     = fabbrica.SlotProdotti.GetElemento("ProdottoRaro").Quantita.ToString();
                        prodotti_preziosi.Text = fabbrica.SlotProdotti.GetElemento("ProdottoPrezioso").Quantita.ToString();

                        prodotti_comuniRari.Text     = fabbrica.SlotProdotti.GetElemento("ProdottoComuneRaro").Quantita.ToString();
                        prodotti_comuniPreziosi.Text = fabbrica.SlotProdotti.GetElemento("ProdottoComunePrezioso").Quantita.ToString();
                        prodotti_rariPreziosi.Text   = fabbrica.SlotProdotti.GetElemento("ProdottoRaroPrezioso").Quantita.ToString();
                    }
                    else if (edificioSelezionato.GetType() == typeof(Negozio))
                    {
                        Negozio negozio = (Negozio)edificioSelezionato;
                        materiali_comuni.Text   = "--";
                        materiali_rari.Text     = "--";
                        materiali_preziosi.Text = "--";

                        prodotti_comuni.Text   = negozio.SlotProdotti.GetElemento("ProdottoComune").Quantita.ToString();
                        prodotti_rari.Text     = negozio.SlotProdotti.GetElemento("ProdottoRaro").Quantita.ToString();
                        prodotti_preziosi.Text = negozio.SlotProdotti.GetElemento("ProdottoPrezioso").Quantita.ToString();

                        prodotti_comuniRari.Text     = negozio.SlotProdotti.GetElemento("ProdottoComuneRaro").Quantita.ToString();
                        prodotti_comuniPreziosi.Text = negozio.SlotProdotti.GetElemento("ProdottoComunePrezioso").Quantita.ToString();
                        prodotti_rariPreziosi.Text   = negozio.SlotProdotti.GetElemento("ProdottoRaroPrezioso").Quantita.ToString();
                    }
                }
            }

            //Punti esclamativi
            for (int r = 0; r < mappa.Righe; r++)
            {
                for (int c = 0; c < mappa.Colon; c++)
                {
                    if (mappa.CelleEdifici[r, c] != null)
                    {
                        if (!mappa.CelleEdifici[r, c].EdificioAttivo)
                        {
                            attenzione[r, c].Visible = true;
                        }
                        else
                        {
                            attenzione[r, c].Visible = false;
                        }
                    }
                }
            }
        }
예제 #4
0
        private void conferma_button_Click(object sender, EventArgs e)
        {
            Fabbrica fab = null;
            Negozio  neg = null;


            //Una soluzione orrenda ma è comunque una soluzione
            if (edificio.GetType() == typeof(Fabbrica))
            {
                fab = (Fabbrica)edificio;

                switch (indice)
                {
                case 0:
                    fab.CambiaProduzione("ProdottoComune");
                    break;

                case 1:
                    fab.CambiaProduzione("ProdottoRaro");
                    break;

                case 2:
                    fab.CambiaProduzione("ProdottoPrezioso");
                    break;

                case 3:
                    fab.CambiaProduzione("ProdottoComuneRaro");
                    break;

                case 4:
                    fab.CambiaProduzione("ProdottoComunePrezioso");
                    break;

                case 5:
                    fab.CambiaProduzione("ProdottoRaroPrezioso");
                    break;
                }
            }
            else if (edificio.GetType() == typeof(Negozio))
            {
                neg = (Negozio)edificio;

                switch (indice)
                {
                case 0:
                    neg.CambiaProdottiVendita("ProdottoComune");
                    break;

                case 1:
                    neg.CambiaProdottiVendita("ProdottoRaro");
                    break;

                case 2:
                    neg.CambiaProdottiVendita("ProdottoPrezioso");
                    break;

                case 3:
                    neg.CambiaProdottiVendita("ProdottoComuneRaro");
                    break;

                case 4:
                    neg.CambiaProdottiVendita("ProdottoComunePrezioso");
                    break;

                case 5:
                    neg.CambiaProdottiVendita("ProdottoRaroPrezioso");
                    break;
                }
            }

            //Chiusura del form
            this.Close();
        }