Example #1
0
 // Start is called before the first frame update
 void Start()
 {
     if (lightningAnimator == null)
     {
         lightningAnimator = Instantiate(chainLightning, targets[0].transform.position, Quaternion.identity).GetComponent <LightningAnimator>();
     }
     lightningAnimator.SetTargets(targets);
 }
Example #2
0
    protected override void OnTriggerEnter(Collider other)
    {
        base.OnTriggerEnter(other);

        foreach (var enemy in hitTargets)
        {
            StartCoroutine(enemy.GetComponent <EnemyBase>().AltFireEnemySlowed(_slowModifier, _slowDuration));
        }

        LightningAnimator animator = Instantiate(_chainLightning, transform.position, transform.rotation).GetComponent <LightningAnimator>();

        animator.SetTargets(hitTargets);
        StartCoroutine(DestroyLightning(animator));
    }
Example #3
0
    IEnumerator DestroyLightning(LightningAnimator animator)
    {
        yield return(new WaitForSeconds(_lightningDuration));

        animator.DestroyLightning();
    }