private IEnumerator ShootingRoutine(EnemyMissileHandler handler, Enemy enemy, float intervalScale) { yield return(new WaitForSeconds(intervalScale * Random.Range(0f, enemy.ShotIntevalMax))); while (true) { Shoot(handler, -Mathf.Abs(enemy.MissileSpeed), enemy.MissileDamageHP); yield return(new WaitForSeconds(intervalScale * Random.Range(enemy.ShotIntevalMin, enemy.ShotIntevalMax))); } }
public void StartShooting(EnemyMissileHandler handler, Enemy enemy, float intervalScale) { StopShooting(); _shootingRoutine = StartCoroutine(ShootingRoutine(handler, enemy, intervalScale)); }