private new void RemoveTarget(EnemyScript target)
 {
     if (TargetsInRange.Contains(target))
     {
         TargetsInRange.Remove(target);
         if (target == _target)
         {
             AquireNewTarget();
         }
     }
 }
Exemplo n.º 2
0
        private void OnTriggerEnter(Collider other)
        {
            var enemy = other.GetComponent <EnemyScript>();

            if (enemy != null && !Tower.IgnoredEnemies.Contains(enemy.Type))
            {
                TargetsInRange.Add(enemy);

                enemy.SetSpeed(ReduceSpeed(enemy.Speed, _slowAmount));
            }
        }
        private void OnTriggerEnter(Collider other)
        {
            var enemy = other.GetComponent <EnemyScript>();

            if (enemy != null && !Tower.IgnoredEnemies.Contains(enemy.Type))
            {
                TargetsInRange.Add(enemy);

                if (_target == null)
                {
                    _target = enemy;
                }
            }
        }
Exemplo n.º 4
0
 protected override bool OnTargetStay()
 {
     if (TargetsInRange.Contains(_target))
     {
         RotateToTarget();
         if (_angleWithTarget <= _minimalShootAngle)
         {
             _lineRenderer.SetPosition(1, _target.transform.position);
             _lineRenderer.enabled = true;
             TickDamage();
         }
         return(true);
     }
     return(false);
 }