Example #1
0
    private void BurnTarget(Transform enemy)
    {
        EnemyBase e = enemy.GetComponent <EnemyBase>();

        e.TakeDamage(damage * Time.deltaTime, piercingValue, fire);
        e.ActivateDebuff(damage, duration, fire);
    }
 private void Start()
 {
     FindTargets();
     foreach (GameObject target in enemies)
     {
         EnemyBase enemy = target.GetComponent <EnemyBase>();
         enemy.ActivateDebuff(debuffIntensity, Mathf.Infinity, debuffElement);
     }
 }
Example #3
0
    private void OnTriggerExit(Collider col)
    {
        EnemyBase enemy = col.GetComponent <EnemyBase>();

        if (enemy != null)
        {
            enemy.ActivateDebuff(debuffIntensity, debuffDuration, element);
        }
    }
Example #4
0
    private void Damage(Transform enemy)
    {
        EnemyBase e = enemy.GetComponent <EnemyBase>();

        e.TakeDamage(damage, penetration, debuffElement);
        if (debuffElement != Enums.Element.none)
        {
            e.ActivateDebuff(debuffIntensity, debuffDuration, debuffElement);
        }
    }
Example #5
0
    private void OnTriggerEnter(Collider col)
    {
        EnemyBase enemy = col.GetComponent <EnemyBase>();

        if (enemy != null)
        {
            enemy.ActivateDebuff(debuffIntensity, Mathf.Infinity, element);
            print("debuff enter");
        }
    }
Example #6
0
    private void OnTriggerExit(Collider col)
    {
        if (col.tag != enemyTag)
        {
            return;
        }

        EnemyBase e = col.GetComponent <EnemyBase>();

        e.ActivateDebuff(debuffIntensity, debuffDuration, element);
    }
Example #7
0
    private void OnTriggerEnter(Collider col)
    {
        if (col.tag != enemyTag)
        {
            return;
        }

        EnemyBase e = col.GetComponent <EnemyBase>();

        e.ActivateDebuff(debuffIntensity, Mathf.Infinity, element);
    }
Example #8
0
    private void OnTriggerExit(Collider col)
    {
        if (col.tag != enemyTag || placed == false)
        {
            return;
        }

        EnemyBase e = col.GetComponent <EnemyBase>();

        e.ActivateDebuff(debuffIntensity, debuffDuration, debuffType);
    }
Example #9
0
    private void OnTriggerEnter(Collider col)
    {
        if (col.tag != enemyTag || !placed || disappear)
        {
            return;
        }

        EnemyBase e = col.GetComponent <EnemyBase>();

        e.ActivateDebuff(debuffIntensity, Mathf.Infinity, debuffType);
    }
Example #10
0
    private void OnTriggerStay(Collider col)
    {
        if (col.tag != "Enemy")
        {
            return;
        }
        EnemyBase e = col.GetComponent <EnemyBase>();

        if (e != null)
        {
            e.ActivateDebuff(debuffIntensity, debuffDuration, debuffType);
        }
    }
Example #11
0
 private void Disappear()
 {
     disappear = true;
     Collider[] colliders = Physics.OverlapSphere(transform.position, 2.5f);
     foreach (Collider col in colliders)
     {
         if (col.tag == enemyTag)
         {
             EnemyBase e = col.GetComponent <EnemyBase>();
             e.ActivateDebuff(debuffIntensity, debuffDuration, debuffType);
         }
     }
     Destroy(gameObject);
 }
Example #12
0
    private void FreezeTarget(Transform enemy)
    {
        EnemyBase e = enemy.GetComponent <EnemyBase>();

        e.TakeDamage(freezeDamage * Time.deltaTime, piercing, ice);
        e.ActivateDebuff(100 * e.freezeStatus, duration, ice);
        if (e.freezeStatus > 1)
        {
            e.freezeStatus = 1;
        }
        else
        {
            e.freezeStatus += .01f;
        }
    }
Example #13
0
    protected void Damage(Transform enemy)
    {
        EnemyBase e = enemy.GetComponent <EnemyBase>();

        //e could be null since now Hit() passes only the transform of where it hit
        if (e != null)
        {
            e.TakeDamage(damage, penetration, debuffElement);

            if (debuffElement != Enums.Element.none)
            {
                e.ActivateDebuff(debuffIntensity, debuffDuration, debuffElement);
            }
        }
    }
Example #14
0
 void Debuff()
 {
     foreach (GameObject e in WaveSpawner.EnemiesAlive)
     {
         EnemyBase enemy = e.GetComponent <EnemyBase>();
         if (seesInvisible || (!seesInvisible && !enemy.GetInvisibleState()))
         {
             if (enemy.element != element)
             {
                 float distToEnemy = Vector3.Distance(transform.position, e.transform.position);
                 if (distToEnemy <= range)
                 {
                     enemy.ActivateDebuff(debuffIntensity, debuffDuration, element);
                 }
             }
         }
     }
 }
    private void OnTriggerEnter(Collider col)
    {
        EnemyBase enemy = col.GetComponent <EnemyBase>();

        enemy.ActivateDebuff(debuffIntensity, Mathf.Infinity, debuffElement);
    }