示例#1
0
        private void btnCarta_Click(object sender, EventArgs e)
        {
            bool cabeCarta = false;

            gera = new Random();
            for (int i = 0; i < 10; i++)
            {
                if (cartas[i].IsDisposed == true)
                {
                    cabeCarta = true;
                    if (ptsMagicos >= 2)
                    {
                        ptsMagicos -= 2;
                        cartas[i]   = new FrmCarta();

                        cartas[i].codigoDaCarta = GeraCartaNaoRepetida();

                        cartas[i].Show();
                        cartas[i].Top  += 250;
                        cartas[i].Left += (5 - i) * 50;
                    }
                    else
                    {
                        MessageBox.Show("Pontos insuficientes");
                    }

                    break;
                }
            }

            if (!cabeCarta)
            {
                MessageBox.Show("Número máximo de cartas atingido");
            }
        }
示例#2
0
        private void AtivaCarta(FrmCarta cart)
        {
            int    codigo   = cart.codigoDaCarta;
            string pastaEXE = Path.GetDirectoryName(Application.ExecutablePath);

            string[] valores = File.ReadAllLines(Path.Combine(pastaEXE, "Cartas.txt"), Encoding.UTF7)[codigo].Split('|');
            if (ptsMagicos - Convert.ToInt32(valores[3]) >= 0)
            {
                cartasJaJogadas++;
                ptsMagicos -= Convert.ToInt32(valores[3]);
                cart.Close();
                cart.Location = new Point(0, 0);

                if (DadosOpcoes.audio == 2)
                {
                    var p2 = new System.Windows.Media.MediaPlayer();
                    p2.Open(new Uri(Path.Combine(Directory.GetCurrentDirectory(),
                                                 "efeitos sonoros", "ativa.wav")));
                    p2.Play();
                }

                FazEfeitoDaCarta(codigo);
            }
            else
            {
                cart.Location = new Point(cart.Location.X - 50, cart.Location.Y + 250);
                MessageBox.Show("Pontos insuficientes");
            }
        }
示例#3
0
        private void FrmControle_Load(object sender, EventArgs e)
        {
            momentoInicio = DateTime.Now;

            if (DadosOpcoes.tester)
            {
                FazEfeitoDaCarta(4);
                FazEfeitoDaCarta(5);
                FazEfeitoDaCarta(6);
                FazEfeitoDaCarta(7);
                ptsMagicos += 100;
            }

            if (DadosOpcoes.dificuldade == 0)
            {
                vidaDoInimigo = 9000;
            }
            else if (DadosOpcoes.dificuldade == 1)
            {
                vidaDoInimigo = 12000;
            }
            else if (DadosOpcoes.dificuldade == 2)
            {
                vidaDoInimigo = 18000;
            }

            pbInimigo.Maximum = vidaDoInimigo;
            pbInimigo.Value   = vidaDoInimigo;
            lblInimigo.Text   = pbInimigo.Value.ToString() + "/" + vidaDoInimigo.ToString();

            for (int i = 0; i < 10; i++)
            {
                cartas[i] = new FrmCarta();
                cartas[i].Dispose();
            }

            jaForam = new bool[25];

            for (int i = 0; i < jaForam.Length; i++)
            {
                jaForam[i] = false;
            }

            Top        -= 120;
            ptsMagicos -= DadosOpcoes.dificuldade * 2;
            for (int i = 0; i < 5 - DadosOpcoes.dificuldade; i++)
            {
                btnCarta_Click(this, e);
            }

            SoundPlayer som = new SoundPlayer("NO 190.wav");

            if (DadosOpcoes.dificuldade == 2)
            {
                som = new SoundPlayer("hard.wav");
            }
            if (DadosOpcoes.audio != 0)
            {
                som.PlayLooping();
            }
        }