コード例 #1
0
        void disparoEnemigo(GameTime gameTime, Jugador jugador)
        {
            try
            {
                if (gameTime.TotalGameTime - tiempoDisparosEnemigos > tiempoMaximoProyectilesEnemigos)
                {
                    foreach (Enemigo enemigo in enemigos)
                    {
                        enemigo.yaDisparo = sobrepasoAlJugador(enemigo, jugador);

                        if (enemigo.disparar && !enemigo.yaDisparo)
                        {
                            tiempoDisparosEnemigos = gameTime.TotalGameTime;
                            Proyectil proyectil = new Proyectil();
                            proyectil.inicializar("Imagenes/laser", contenedor, new Vector2(enemigo.posicion.X + animacionEnemigo.FrameWidth / 2, enemigo.posicion.Y + (animacionEnemigo.FrameHeight * 2)), velocidadProyectilEnemigo, true);
                            proyectil.rotacion = (float)calcularRotacion(enemigo, jugador);

                            if (!(nivelActual == (int)nivel.facil))
                            {
                                proyectil.danio = 5;
                            }

                            proyectilesEnemigos.Add(proyectil);
                        }
                    }
                }
            }
            catch (Exception) { }
        }
コード例 #2
0
        void agregarProyectil()
        {
            try
            {
                Proyectil proyectil = new Proyectil();

                //se dividio entre ocho porque son 4 imagenes que conforman la animacion
                proyectil.inicializar("Imagenes/laser", contenedor, new Vector2(posicion.X + animacion.FrameWidth / (animacion.frameCount * 2),
                                                                                posicion.Y - animacion.FrameHeight / 2), velocidadProyectil);

                proyectiles.Add(proyectil);
            }
            catch (Exception) { }
        }