Пример #1
0
    internal void Disparar()
    {
        bool disparo;

        if (armaEquipada == null || !armaEquipada.TieneMunicion())
        {
            return;
        }



        if (objetivo)
        {
            disparo = arma.Disparar((objetivo.transform.position - arma.transform.position).normalized);
        }
        else
        {
            disparo = arma.Disparar(joystick.mirada);
        }

        if (disparo)
        {
            armaEquipada.municion--;
        }

        currentAmmo.variable = armaEquipada.municion;
        ActualizarMunicion.Raise();
    }
Пример #2
0
    private void SimpleFollow()
    {
        targetPosition = target.position;
        Vector3 dir;

        if (orbitando)
        {
            angle += Time.deltaTime * speed;

            float   offsetX = Mathf.Cos(angle) * radio;
            float   offsetY = Mathf.Sin(angle) * radio;
            Vector3 newPos  = new Vector3(offsetX + targetPosition.x, offsetY + targetPosition.y);
            transform.position = newPos;
            if (enCombate)
            {
                dir = targetPosition - transform.position;
                _arma.Disparar(dir);
            }
        }

        else
        {
            dir = targetPosition - transform.position;
            float sqrDist = Vector3.SqrMagnitude(dir);
            transform.position += dir.normalized * Time.deltaTime * speed;

            if (sqrDist < sqrRadio)
            {
                orbitando = true;
                dir       = transform.position - targetPosition;
                angle     = dir.Angulo() * Mathf.Deg2Rad;
            }
        }
    }
Пример #3
0
    // Update is called once per frame
    void Update()
    {
        if (ID == "Arriba" && moverse)
        {
            jugador.MoverseArriba();
        }

        if (ID == "Abajo" && moverse)
        {
            jugador.MoverseAbajo();
        }

        if (ID == "Derecha" && moverse)
        {
            jugador.MoverseDerecha();
        }

        if (ID == "Izquierda" && moverse)
        {
            jugador.MoverseIzquierda();
        }

        if (ID == "Arma" && moverse && arma != null)
        {
            arma.Disparar();
            moverse = false;
        }

        if (ID == "Escudo" && moverse && escudo != null)
        {
            escudo.Cambiar();
        }
    }
Пример #4
0
 private void Update()
 {
     /* si la verificacion de puede disparar y hayTarget se cumplen se activara el
      * metodo de disparo y se le hara llamado a la corrutina para darle el tiempo de disparo */
     if (puedeDisparar && hayTarget)
     {
         puedeDisparar = false;
         arma.Disparar();
         StartCoroutine(Recargar());
     }
 }
Пример #5
0
 //Llamando metodos de caminar, escudo y disparo
 private void Update()
 {
     //si se presiona click izquierdo se activara el metodo de disparo y el sonido
     if (Input.GetButtonDown("Fire1"))
     {
         arma.Disparar();
         activarSonidoAlDisparar.Play();
     }
     //llamando metodos de caminar y activar escudo
     Caminar();
     ActivarEscudo();
 }
Пример #6
0
    // Update is called once per frame
    void Update()
    {
        contador++;

        if (contador >= Cadencia && arma != null)
        {
            arma.Disparar();
            contador = 0;
        }

        if (vida <= 0)
        {
            arma = null;
            anim.SetInteger("Estado", 1);
            reproductor      = GetComponent <AudioSource>();
            reproductor.clip = sonido_explosion;
            reproductor.Play();
            vida = 1000000;
            Destroy(gameObject, 1);
        }

        Moverse();
    }