Esempio n. 1
0
        private void timer1_Tick(object sender, EventArgs e)
        {
            if (direita)
            {
                cobra.MovimentarCobrinha(Cobrinha.Direcao.DIREITA);
            }
            if (esquerda)
            {
                cobra.MovimentarCobrinha(Cobrinha.Direcao.ESQUERDA);
            }
            if (cima)
            {
                cobra.MovimentarCobrinha(Cobrinha.Direcao.CIMA);
            }
            if (baixo)
            {
                cobra.MovimentarCobrinha(Cobrinha.Direcao.BAIXO);
            }

            if (cobra.retanguloCobrinha[0].IntersectsWith(comida.comidaRetangulo))
            {
                pontos++;
                contadorPontos++;
                cobra.AlimentarCobrinha();
                comida.PosicaoComida(rand);
            }
            if (cobra.retanguloCobrinha[0].IntersectsWith(comidaEsp.comidaRetangulo))
            {
                pontos += comidaEsp.Pontos;
                cobra.AlimentarCobrinha();
                comidaEsp.PosicaoComida(rand);

                vida.PosicaoComida(rand);
            }

            if (cobra.retanguloCobrinha[0].IntersectsWith(vida.comidaRetangulo))
            {
                cobra.AlimentarCobrinha();
                vida.PosicaoComida(rand);
            }

            //muda a comida especial de lugar
            if (tempo < comidaEsp.Tempo)
            {
                tempo++;
            }
            else
            {
                tempo = 0;
            }

            if (tempo == comidaEsp.Tempo)
            {
                comidaEsp.PosicaoComida(rand);
            }

            if (contadorPontos > 10)
            {
                contadorPontos = 0;
            }



            DetectarColisoes();

            CPontos.Text = "Pontuação: " + pontos;

            this.Invalidate();
        }