/// <summary> /// 指定した秒数の間、 FixedUpdate のたびに実行します。 /// </summary> /// <returns>Coroutine.</returns> /// <param name="seconds">Seconds.</param> /// <param name="update">Update action.引数に(繰り返し回数,経過秒数)を持ちます。</param> /// <param name="finish">Finish action.引数に繰り返し回数を持ちます。</param> public static Coroutine DoOnEveryFixedUpdate(this MonoBehaviour self, float seconds, Action <float> update, Action finish = null) { if (seconds <= 0) { if (finish != null) { finish(); } return(null); } else if (update == null) { return(self.DoAfterSecondsOnFixedUpdate(seconds, finish)); } else { return(self.StartCoroutine(DoOnEveryFixedUpdateWithSecondsCoroutine(seconds, update, finish))); } }