どうもありがとうございます。
無事にコルーチンを作ることが出来ました!
何かの不具合でフラグが立たなかった時の為にupdate関数で時間を計測して、
while文の中にif文を作って時間が経ったらbreakで抜けるようにしておいた方がいいでしょうか?

それと右クリックするまでコルーチンの中で止めておく処理を作りたい場合

private void Update()
{
右クリックフラグ = false;

if (Input.GetMouseButtonDown(0))
{
右クリックフラグ = true;
}

}


IEnumerator コルーチン関数()
{
while (右クリックフラグ == false) //右クリックが押されると下に抜ける
{
yield return null;
}
}

このように書いて、コルーチンの中で何回も止めても大丈夫なのでしょうか?