初めはcoroutineを用いてジャンプの遅らせを実装していましたが,スコア(羊の数)が多くなるにつれて動作が重くなる問題があったため,Updateメソッドで統括して遅らせフレームをカウントする方式に変更しました.
Baaボタンを押すと,鳴き声とともに羊が一匹増えます.このとき,羊の生成位置は一定の座標からランダムに選ばれます.先頭の羊からの距離を一定の計算式でフレーム数に変換し,遅らせるフレーム数を決定します.生成位置の決定時に小数が含まれる場合,このタイミングで小数点以下を切り捨てます.
ジャンプキーの入力を受け取ったら,ジャンプ待ちのフラグを立て,Updateでカウントが開始されます.
このとき,遅らせる方法をフレーム数のままにしてしまうと,フレームレートの変化によって遅らせるタイミングが変化し,意図した動作ができなくなってしまいます.そのため,フレーム数を秒数に変換し,フレームレートの変化によって動作に影響が出ないように工夫しています.