Esempio n. 1
0
    void OnTriggerStay2D(Collider2D col)
    {
        GameObject enemigo = col.gameObject;

        if (enemigo.CompareTag("Enemy"))
        {
            VidaEnemigo v = enemigo.GetComponent <VidaEnemigo>();
            v.Damage();
        }
    }
Esempio n. 2
0
    public void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.tag == "Player")
        {
            cogerObjeto = true;
        }

        vd = other.GetComponent <VidaEnemigo>();

        if (vd != null)
        {
            vd.PerderVida(1);
        }
    }
Esempio n. 3
0
    private void Atacar()
    {
        //Calculamos la distancia entre la posicion del Enemigo y la del jugador
        float distanciaObjetivo = Vector3.Distance(objetivo.transform.position, transform.position);

        //Calculamos el vector normal entre el Objetivo y el Jugador
        Vector3 dir = (objetivo.transform.position - transform.position).normalized;
        //Calculamos la direccion, si el jugador no esta en la direccion del Enemigo, no se le restara vida
        //Dot->Para vectores normalizados, devuelve:
        //		 1: si estan en la misma direccion
        //		-1: si estan en posicion contraria
        //		 0: si son perpendiculares
        float direccion = Vector3.Dot(dir, transform.forward);

        //Solo le restamos vida si esta a una distancia menor a 2.5
        if (distanciaObjetivo < 2.5f && direccion > 0)
        {
            VidaEnemigo vidaEnem = (VidaEnemigo)objetivo.GetComponent("VidaEnemigo");
            vidaEnem.ajustarVida(-10);
        }
    }
Esempio n. 4
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.gameObject.tag == "Player")
        {
            // TRACKER EVENT
            string[] param = { collision.transform.position.x.ToString(), collision.transform.position.y.ToString() };
            GameManager.instance_Tracker.RegisterEvent(Tracker.BTR_Tracker.EventType.DAMAGE_FREQUENCY, param);

            string[] arg = { enemy };
            GameManager.instance_Tracker.RegisterEvent(Tracker.BTR_Tracker.EventType.HIT_FREQUENCY, arg);

            GameManager.instance.TakeDamage(explosionDamage);
        }
        if (collision.gameObject.tag == "Enemigo")
        {
            VidaEnemigo enemigo = collision.gameObject.GetComponent <VidaEnemigo>();
            enemigo.TakeDamage(explosionDamage);
        }
        if (collision.gameObject.tag == "Caja" || collision.gameObject.tag == "NPC")
        {
            Destroy(collision.gameObject);
        }
    }
Esempio n. 5
0
 // Start is called before the first frame update
 void Start()
 {
     gameController = GameObject.FindWithTag("GameController").GetComponent <GameController>();
     EnemigoVida    = GetComponent <VidaEnemigo>();
 }