Ver código fonte

野鸡碰撞大小,狼转头优化,狼生产机制调整,补充场景中需要碰撞的树

lvjincheng 4 anos atrás
pai
commit
6f050f29e2

+ 2 - 2
Assets/ArtAsset/Hunter/Models/Yeji/Yeji.prefab

@@ -1736,7 +1736,7 @@ NavMeshAgent:
   m_GameObject: {fileID: 3640209499596699500}
   m_Enabled: 1
   m_AgentTypeID: 0
-  m_Radius: 0.5
+  m_Radius: 0.28
   m_Speed: 1.5
   m_Acceleration: 100
   avoidancePriority: 50
@@ -1745,7 +1745,7 @@ NavMeshAgent:
   m_AutoTraverseOffMeshLink: 1
   m_AutoBraking: 1
   m_AutoRepath: 1
-  m_Height: 0.88
+  m_Height: 0.44
   m_BaseOffset: 0
   m_WalkableMask: 4294967295
   m_ObstacleAvoidanceType: 4

+ 103 - 5
Assets/BowArrow/Scenes/GameChallengeScene/GameChallenge.unity

@@ -1355,7 +1355,7 @@ GameObject:
   - component: {fileID: 63191686}
   - component: {fileID: 63191687}
   m_Layer: 0
-  m_Name: TreeAreaRecorder
+  m_Name: "TreeAreaRecorder\uFF08Nav\u70D8\u57F9\u65F6\u9700\u8981\u5148\u6FC0\u6D3B\u4EE5\u4E0B\u6240\u6709MeshRender\uFF09"
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
@@ -1378,6 +1378,7 @@ Transform:
   - {fileID: 72051718}
   - {fileID: 1451008304}
   - {fileID: 293987504}
+  - {fileID: 1306490500}
   m_Father: {fileID: 279869869}
   m_RootOrder: 6
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -10689,7 +10690,7 @@ GameObject:
   - component: {fileID: 486316122}
   - component: {fileID: 486316121}
   m_Layer: 0
-  m_Name: FlyPlane
+  m_Name: "FlyPlane\uFF08Nav\u70D8\u57F9\u65F6\u9700\u8981\u5148\u6FC0\u6D3BMeshRender\uFF09"
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
@@ -20377,7 +20378,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 0}
   m_AnchorMax: {x: 0, y: 0}
-  m_AnchoredPosition: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 29.683897, y: 0}
   m_SizeDelta: {x: 0, y: 33}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &1047161075
@@ -23698,7 +23699,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 0}
   m_AnchorMax: {x: 0, y: 0}
-  m_AnchoredPosition: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 29.683897, y: 0}
   m_SizeDelta: {x: 0, y: 33}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &1203594963
@@ -25468,6 +25469,103 @@ RectTransform:
   m_AnchoredPosition: {x: 0, y: -0.5}
   m_SizeDelta: {x: -20, y: -13}
   m_Pivot: {x: 0.5, y: 0.5}
+--- !u!1 &1306490499
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1306490500}
+  - component: {fileID: 1306490503}
+  - component: {fileID: 1306490502}
+  - component: {fileID: 1306490501}
+  m_Layer: 0
+  m_Name: Cylinder (6)
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 1
+  m_StaticEditorFlags: 8
+  m_IsActive: 1
+--- !u!4 &1306490500
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1306490499}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 1.86, y: 0, z: 27.14}
+  m_LocalScale: {x: 0.6670203, y: 6.97, z: 0.72}
+  m_Children: []
+  m_Father: {fileID: 63191686}
+  m_RootOrder: 6
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!136 &1306490501
+CapsuleCollider:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1306490499}
+  m_Material: {fileID: 0}
+  m_IsTrigger: 0
+  m_Enabled: 1
+  m_Radius: 0.5000001
+  m_Height: 2
+  m_Direction: 1
+  m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697}
+--- !u!23 &1306490502
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1306490499}
+  m_Enabled: 0
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
+  m_StaticBatchInfo:
+    firstSubMesh: 0
+    subMeshCount: 0
+  m_StaticBatchRoot: {fileID: 0}
+  m_ProbeAnchor: {fileID: 0}
+  m_LightProbeVolumeOverride: {fileID: 0}
+  m_ScaleInLightmap: 1
+  m_ReceiveGI: 1
+  m_PreserveUVs: 0
+  m_IgnoreNormalsForChartDetection: 0
+  m_ImportantGI: 0
+  m_StitchLightmapSeams: 1
+  m_SelectedEditorRenderState: 3
+  m_MinimumChartSize: 4
+  m_AutoUVMaxDistance: 0.5
+  m_AutoUVMaxAngle: 89
+  m_LightmapParameters: {fileID: 0}
+  m_SortingLayerID: 0
+  m_SortingLayer: 0
+  m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
+--- !u!33 &1306490503
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1306490499}
+  m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0}
 --- !u!1 &1310389973
 GameObject:
   m_ObjectHideFlags: 0
@@ -41785,7 +41883,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 0}
   m_AnchorMax: {x: 0, y: 0}
-  m_AnchoredPosition: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 49.367794, y: 0}
   m_SizeDelta: {x: 0, y: 33}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &2142579590

BIN
Assets/BowArrow/Scenes/GameChallengeScene/GameChallenge/NavMesh.asset


+ 1 - 3
Assets/BowArrow/Scenes/GameChallengeScene/Wolf.cs

@@ -249,7 +249,7 @@ public class Wolf : TargetAnimal
             state.ambushRotating = true;
             seq.Append(DOTween.To(() => 0f, value => {
                 transform.rotation = Quaternion.Lerp(ambushQuaStart, ambushQuaEnd, value);
-            }, 1f, 0.5f));
+            }, 1f, Quaternion.Angle(ambushQuaStart, ambushQuaEnd) / 180f * 0.5f));
             seq.AppendCallback(delegate() {
                 state.ambushRotating = false;
                 state.ambushing = true;
@@ -402,8 +402,6 @@ public class Wolf : TargetAnimal
     void Stay() {
         if (state.moving) {
             this.agent.destination = this.agent.nextPosition;
-            this.agent.velocity = Vector3.zero;
-            this.agent.isStopped = true;
         }
         state.ResetActionState();
         state.staying = true;

+ 14 - 4
Assets/BowArrow/Scenes/GameChallengeScene/WolfHuntGameMode.cs

@@ -82,23 +82,33 @@ public class WolfHuntGameMode : ChallengeGameMode
         wolf.onDie += delegate(Wolf wf) {
             animalCount--;
             animalSet.Remove(wf);
+            CreateAnimalIgnoreAndClearCountDown();
         };
         wolf.onAttack += OnAttacked;
         animalSet.Add(wolf);
     }
 
-    bool canStartCreateAniaml = false;
-    float timeForCreateAnimal = 0;
+    bool canStartCreateAniaml = false; //等选完关卡才能开始倒计时
+    float createAnimalCountDown = 0; //生产动物的倒计时
     public override void Update()
     {
         base.Update();
+        //固定时间间隔生成一头狼
         if (!gameMgr.gameOver && canStartCreateAniaml) {
-            timeForCreateAnimal += Time.deltaTime;
-            if ((int)(timeForCreateAnimal / 6) >= animalCreateIndex) {
+            createAnimalCountDown -= Time.deltaTime;
+            if (createAnimalCountDown <= 0) {
+                createAnimalCountDown = 20;
                 CreateAnimal();
             }
         }
     }
+    //当动物死亡后,如果场上没有活着的动物,就立即生成一头狼,并清空生产动物的倒计时
+    void CreateAnimalIgnoreAndClearCountDown() {
+        if (animalSet.Count == 0) {
+            createAnimalCountDown = 0;
+            CreateAnimal();
+        }
+    }
 
     public int hp = 20;
     public int hpMax = 20;