UnityのCoroutineは次のような感じで使います。
void Start()
{
StartCoroutine(Example());
}
IEnumerator Example()
{
// 処理したい内容1
yield return null;
// 処理したい内容2
yield return null;
// 処理したい内容3
}
何かエラーがあった場合などCoroutineを抜けたい場合はyield break
を使って次のような感じで実装できるみたいです。
IEnumerator Example()
{
// 処理したい内容1
if (error) yield break;
yield return null;
// 処理したい内容2
if (error) yield break;
yield return null;
// 処理したい内容3
}
Coroutine内では普通のreturn
では終了できないので、代わりにyield break
を使うみたいです。
リンク
Exiting a coroutine – Unity Forum
https://forum.unity.com/threads/exiting-a-coroutine.113897/