private void MenuArquera_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor2(new Arquera()));
            Actualizar();
        }
        private void MenuBallesta_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor(new Ballestas()));
            Actualizar();
        }
        private void toolStripMenuItem22_Click(object sender, EventArgs e) //Comprar mina de oro
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor(new MinaOro()));
            Actualizar();
        }
        private void MenuAlmacenamientoCampamento_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor(new Campamento()));
            Actualizar();
        }
        private void MenuTorreInfierno_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor(new TorreInfierno()));
            Actualizar();
        }
        private void MenuCuartelOscuro_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor(new CuartelOscuro()));
            Actualizar();
        }
        private void MenuAlmacenamientoElixirOscuro_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor(new AlmacenElixirN()));
            Actualizar();
        }
        private void toolStripMenuItem_Cañon_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor(new Cañones()));
            Actualizar();
        }
        private void MenuRecolectorElixirOscuro_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor(new RecolectoraElixirN()));
            Actualizar();
        }
        private void MenuMontaPuerco_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            MessageBox.Show(a.Constructor2(new Montapuercos()));
            Actualizar();
        }
예제 #11
0
        /// <summary>
        /// Metodo singleton que se asegura que siempre exista una instancia de Aldea en cualquier parte del programa
        /// </summary>
        /// <returns>Retorna una instancia de Aldea</returns>

        public static Aldea GetInstancia()
        {
            if (instancia == null)
            {
                instancia = new Aldea();
            }
            return(instancia);
        }
        public Form2(String player)
        {
            InitializeComponent();
            Aldea a = Aldea.GetInstancia();

            a.Nombre    = player;
            label1.Text = a.Nombre;

            Ayuntamiento ay = new Ayuntamiento();

            a.Constructor(ay);
            Actualizar();
        }
        private void btnRecElixirN_Click(object sender, EventArgs e)
        {
            Aldea a = Aldea.GetInstancia();

            if (a.CantidadElixirN + 100 <= a.CapacidadElixirN)
            {
                a.CantidadElixirN += 100;
                Actualizar();
            }
            else
            {
                a.CantidadElixirN = a.CapacidadElixirN;
                Actualizar();
            }
        }
        private void btnRecOro_Click(object sender, EventArgs e)

        {
            Aldea a = Aldea.GetInstancia();

            if (a.CantidadOro + 100 <= a.CapacidadOro)
            {
                a.CantidadOro += 100;
                Actualizar();
            }
            else
            {
                a.CantidadOro = a.CapacidadOro;
                Actualizar();
            }
        }
        private void Actualizar()
        {
            Aldea a = Aldea.GetInstancia();

            a.ActualizarTopesRecursos();
            // Cantidades
            lblOro.Text         = Convert.ToString(a.CantidadOro);
            lblElixir.Text      = Convert.ToString(a.CantidadElixir);
            lblElixirN.Text     = Convert.ToString(a.CantidadElixirN);
            labelCantTropa.Text = Convert.ToString(a.CantidadTropas);
            // Capacidades
            lblOroMax.Text     = Convert.ToString("/" + a.CapacidadOro);
            lblElixirMax.Text  = Convert.ToString("/" + a.CapacidadElixir);
            lblElixirNMax.Text = Convert.ToString("/" + a.CapacidadElixirN);
            labelMaxTropa.Text = Convert.ToString("/" + a.CapacidadTropas);

            dataGridEdificios.DataSource = null;
            dataGridEdificios.DataSource = a.listaEdificiosAldea;
            // Si hay un cuartel, muestra en el menú, el botón de crear tropas y el datagrid de las tropas
            if (a.HayCuartel)
            {
                toolStripMenuItem30.Visible = true;
                dataGridTropas.Visible      = true;
                labelTropas.Visible         = true;
            }
            dataGridTropas.DataSource = null;
            dataGridTropas.DataSource = a.listaTropasAldea;
            // Se muestra el botón para poder crear tropas oscuras, sólo si existe un cuartel oscuro.
            if (a.HayCuartelOscuro)
            {
                toolStripMenuItem44.Visible = true;
            }

            if (a.HayRecolectorOro)
            {
                btnRecOro.Visible = true;
            }
            if (a.HayRecolectorElixir)
            {
                btnRecElixir.Visible = true;
            }

            if (a.HayRecolectorElixirN)
            {
                btnRecElixirN.Visible = true;
            }
        }