Forráskód Böngészése

狼伏击动作尽量避免原地掉头

lvjincheng 4 éve
szülő
commit
c4133d2bfa
1 módosított fájl, 10 hozzáadás és 5 törlés
  1. 10 5
      Assets/BowArrow/Scenes/GameChallengeScene/Wolf.cs

+ 10 - 5
Assets/BowArrow/Scenes/GameChallengeScene/Wolf.cs

@@ -247,18 +247,23 @@ public class Wolf : TargetAnimal
             Quaternion ambushQuaStart = transform.rotation;
             Vector3 rotateDir = hunterPos - transform.position; rotateDir.y = 0;
             Quaternion ambushQuaEnd = Quaternion.FromToRotation(Vector3.forward, rotateDir);
+            float needRotateAngle = Quaternion.Angle(ambushQuaStart, ambushQuaEnd);
             this.agent.avoidancePriority = 0;
-            state.ambushRotating = true;
-            seq.Append(DOTween.To(() => 0f, value => {
-                transform.rotation = Quaternion.Lerp(ambushQuaStart, ambushQuaEnd, value);
-            }, 1f, Quaternion.Angle(ambushQuaStart, ambushQuaEnd) / 180f * 0.5f));
+            if (needRotateAngle > 20) {
+                state.ambushRotating = true;
+                seq.Append(DOTween.To(() => 0f, value => {
+                    transform.rotation = Quaternion.Lerp(ambushQuaStart, ambushQuaEnd, value);
+                }, 1f, needRotateAngle / 180f * 0.5f));
+            } else {
+                ambushQuaEnd = ambushQuaStart;
+            }
             seq.AppendCallback(delegate() {
                 state.ambushRotating = false;
                 if (needAmbush) state.ambushing = true;
             });
             if (needAmbush) {
                 seq.Append(DOTween.To(() => 0f, value => {
-                    LookAtHunter();
+                    this.transform.rotation = ambushQuaEnd;
                 }, 1f, 2f));
             }
             seq.AppendCallback(delegate() {