Exemple #1
0
 protected void damageEnemy(Collider enemy)
 {
     turretDamageable = enemy.GetComponent <ITurretDamage>();
     if (turretDamageable != null)
     {
         turretDamageable.OnTurretHit(turret, (int)turretStats.SearchStatValue(StatType.DAMAGE), enemyDamageHandler);
     }
 }
 protected override void initializate()
 {
     damageTimer    = 0f;
     lifeTimer      = 0f;
     damage         = turretStats.GetStatValue(StatType.DAMAGE);
     damageInterval = damage > 20 ? 1 / 20 : 1 / damage;
     damagePerTick  = damage > 20 ? Mathf.RoundToInt(damage / 20) : 1;
     lifeTime       = turretStats.GetStatValue(StatType.EFFECTDURATION);
     blending       = 0f;
     turretDamage   = target.GetComponent <ITurretDamage>();
     material.SetFloat("Grow", blending);
     target.GetComponent <IStunnable>().Stun(turretStats.GetStatValue(StatType.EFFECTDURATION));
 }
Exemple #3
0
    void doDamage()
    {
        if (ReferenceEquals(targetDetection, null))
        {
            return;
        }

        foreach (Transform target in targetDetection.CurrentTargets)
        {
            ITurretDamage turretDamageable = target.GetComponent <ITurretDamage>();
            if (turretDamageable != null)
            {
                turretDamageable.OnTurretHit(transform.parent, damagePerTick, enemyDamageHandler);
            }
        }
    }
Exemple #4
0
    void doDamage()
    {
        if (ReferenceEquals(targetDetection, null))
        {
            return;
        }
        playParticles();
        playSound();

        int damage = (int)turretStats.GetStatValue(StatType.DAMAGE);

        foreach (Transform target in targetDetection.CurrentTargets)
        {
            ITurretDamage turretDamageable = target.GetComponent <ITurretDamage>();
            if (turretDamageable != null)
            {
                turretDamageable.OnTurretHit(transform, damage, enemyDamageHandler);
            }
        }
        timer = 0f;
    }