IEnumerator _Coro_FollowRotate(float angle) { float waitTime = DistanceToLeader / mSwimmer.Speed; float elapse = 0F; while (elapse < waitTime) { if (!mIsPause) { elapse += Time.deltaTime; } yield return(0); } //yield return new WaitForSeconds(waitTime); mSwimmer.Rotate(angle); }
void Update() { if (mIsPause) { return; } if (mElapse > mTimeRotate) { mSwimmer.Rotate(Random.Range(-RotateAngleRndRange, RotateAngleRndRange)); mElapse = 0F; mTimeRotate = RotateInterval + Random.Range(-RotateIntervalRndRange, RotateIntervalRndRange); } else { mElapse += Time.deltaTime; } }