示例#1
0
        public void ComerChalaDuplicaVelocidadDelComedor()
        {
            float velocidad = unBombita.Movimiento.Velocidad;
            Articulo unArticulo = new Chala();
            unBombita.Comer(unArticulo);

            Assert.AreEqual(2*velocidad, unBombita.Movimiento.Velocidad);
        }
示例#2
0
        public void CuandoLosLopezReggaeSeParaArribaDeUnPasilloConChalaNOComeElItem()
        {
            Punto posDestino = new Punto(1, 1);
            Punto posOrigen = new Punto(0, 1);
            Casilla destino = FabricaDeCasillas.FabricarPasillo(posDestino);
            Casilla origen = FabricaDeCasillas.FabricarPasillo(posOrigen);
            Articulo unArticulo = new Chala();
            destino.ArticuloContenido = unArticulo;
            Personaje unEnemigo = new LosLopezReggae(posOrigen);
            float velocidad = unEnemigo.Movimiento.Velocidad;

            destino.Transitar(unEnemigo);

            Assert.AreEqual(velocidad, unEnemigo.Movimiento.Velocidad);
        }
示例#3
0
        public void CuandoBombitaSeParaArribaDeUnPasilloConChalaOcultaNOComeElItem()
        {
            Punto posDestino = new Punto(1, 1);
            Punto posOrigen = new Punto(0, 1);
            Casilla destino = FabricaDeCasillas.FabricarPasillo(posDestino);
            Casilla origen = FabricaDeCasillas.FabricarPasillo(posOrigen);
            Articulo unArticulo = new Chala();
            unArticulo.EstaOculto = true;
            destino.ArticuloContenido = unArticulo;
            Personaje unBombita = new Bombita(posOrigen);
            float velocidad = unBombita.Movimiento.Velocidad;

            destino.Transitar(unBombita);

            Assert.AreEqual(velocidad, unBombita.Movimiento.Velocidad);
        }
示例#4
0
        public void AgregarChalaNoMeDejaAgregarEnPasillo()
        {
            Punto unPunto = new Punto(1, 1);
            Casilla unaCasilla = FabricaDeCasillas.FabricarPasillo(unPunto);
            Articulo unArticulo = new Chala();
            unaCasilla.agregarArticulo(unArticulo);

            Assert.IsNull(unaCasilla.ArticuloContenido);
        }
示例#5
0
        public void AgregarChalaMeDejaAgregarEnBloqueLadrillos()
        {
            Punto unPunto = new Punto(1, 1);
            Casilla unaCasilla = FabricaDeCasillas.FabricarCasillaConBloqueLadrillos(unPunto);
            Articulo unArticulo = new Chala();
            unaCasilla.agregarArticulo(unArticulo);

            Assert.AreEqual(unArticulo, unaCasilla.ArticuloContenido);
        }
示例#6
0
        public void ExplotoUnObstaculoQueContieneUnaChalaYLuegoLoComeBombita()
        {
            int AnchoYLargo = 5;

            Tablero unMapa = new Tablero(AnchoYLargo, AnchoYLargo);
            Punto posInicio = new Punto(0, 0);
            Punto posFinal = new Punto(1, 1);
            Personaje unBombita = new Bombita(posInicio);

            //Pongo un BombaToleTole en el pasillo para agarrarlo con bombita y poder romper el bloque de acero donde esta la Chala
            Punto posicionCasillaArt = new Punto(0, 1);
            Casilla CasillaConArticulo = Juego.Instancia().Ambiente.ObtenerCasilla(posicionCasillaArt);
            Articulo unArticulo = new ArticuloBombaToleTole();
            CasillaConArticulo.ArticuloContenido = unArticulo;

            //Agrego articulo
            posicionCasillaArt = new Punto(1, 1);
            CasillaConArticulo = this.unJuego.Ambiente.ObtenerCasilla(posicionCasillaArt);
            unArticulo = new Chala();
            CasillaConArticulo.agregarArticulo(unArticulo);

            //Muevo a bombita para dejarlo cerca de un Bloque y explotarlo.
            this.unJuego.Ambiente.AgregarPersonaje(unBombita);
            float velocidad = unBombita.Movimiento.Velocidad;

            unBombita.Movimiento.CambiarAArriba();
            unBombita.Mover();//fue a 0,1
            unBombita.LanzarExplosivo();

            //Pongo a bombita lejos de la explosion
            unBombita.Movimiento.CambiarAAbajo();
            unBombita.Mover();//fue a 0,0
            unBombita.Movimiento.CambiarADerecha();
            unBombita.Mover(); //fue a 0,1

            System.Threading.Thread.Sleep(5000);//Pasan 5 segundos
            unJuego.AvanzarElTiempo();

            unBombita.Movimiento.CambiarAArriba();
            unBombita.Mover(); //fue a 1,1; come item.

            Assert.AreEqual(2 * velocidad, unBombita.Movimiento.Velocidad);
        }