IEnumerator BossPattern() { boss.Activate(); for (var i = 0; i < pattern_type.Length; i += 1) { boss.MakeMove(pattern_type[i]); while (boss.makingMove) { if (lives == 0) { yield break; } yield return(null); } } yield return(new WaitForSeconds(5.0f)); cam.rising = false; cam.FadeDark(2.0f); player.canControl = false; player.AutoMove(0, 0.5f); yield return(new WaitForSeconds(2.0f)); player.AutoMove(0, 0); source.Stop(); _isDone = true; yield return(null); }