Esempio n. 1
0
 public override void Colidir(IBloco Colisor)
 {
     if (Colisor is IJogador jogador)
     {
         jogador.Mover(Saida);
     }
 }
Esempio n. 2
0
 public virtual void Colidir(IBloco Colisor)
 {
     if (Colisor is IMovel movel)
     {
         Colidir(movel);
     }
 }
Esempio n. 3
0
 public override void Colidir(IBloco Colisor)
 {
     base.Colidir(Colisor);
     if (Colisor is IJogador)
     {
         ((IJogador)Colisor).Dano(1);
     }
 }
Esempio n. 4
0
        protected Vetor CalcularDirecao(IBloco Colisor)
        {
            Vetor DirecaoColisao = new Vetor(0, 0);

            if ((Esquerda < Colisor.Esquerda && Colisor.Esquerda < Direita ||
                 Esquerda < Colisor.Direita && Colisor.Direita < Direita) &&
                (Cima > Colisor.Posicao.y || Colisor.Posicao.y > Baixo))
            {
                DirecaoColisao.y = -1;
            }
            else if ((Cima < Colisor.Cima && Colisor.Cima < Baixo ||
                      Cima < Colisor.Baixo && Colisor.Baixo < Baixo) &&
                     (Esquerda > Colisor.Posicao.x || Colisor.Posicao.x > Direita))
            {
                DirecaoColisao.x = -1;
            }
            return(DirecaoColisao);
        }
Esempio n. 5
0
        public void DesenharBloco(IBloco bloco)
        {
            if (!Desenhando)
            {
                throw new Exception("Não Está Desenhando");
            }
            Texture2D _texture;

            _texture = new Texture2D(GraphicsDevice, 1, 1);
            var AuxCor = bloco.Estilo.Cor;
            var Cor    = new Color(AuxCor.R, AuxCor.G, AuxCor.B, AuxCor.A);

            _texture.SetData(new Color[] { Cor });
            var Pos = new Point(
                (int)(bloco.Posicao.x - bloco.Largura / 2),
                (int)(bloco.Posicao.y - bloco.Altura / 2));
            var Tam = new Point((int)bloco.Largura, (int)bloco.Altura);

            SpriteBatch.Draw(_texture, new Rectangle(Pos, Tam), Color.White);
        }