Procházet zdrojové kódy

Still not really tested behavior, but close to being testable in playmode (should run to player during day and do nothing during night)

DasGewehr před 9 roky
rodič
revize
37873b6fde

+ 1 - 1
game/Assets/Scripts/Enemy/BehaviorController.cs

@@ -17,7 +17,7 @@ namespace EnemyAI
 
         public void Update()
         {
-            EnemyAI.Result result = currentBehavior.Run(ref blackboard);	
+            EnemyAI.Result result = currentBehavior.Run(ref blackboard);
         }
     }
 }

+ 4 - 2
game/Assets/Scripts/Enemy/PersonalBlackboard.cs

@@ -1,7 +1,5 @@
 using System.Collections;
 using System.Collections.Generic;
-using UnityEngine;
-
 
 namespace EnemyAI
 {
@@ -12,5 +10,9 @@ namespace EnemyAI
             get; 
             set; 
         }
+
+        public UnityEngine.AI.NavMeshAgent navMeshAgent;
+
+        public UnityEngine.Vector3 PlayerPosition;
     }
 }

game/Assets/Scripts/Enemy/PersonalBlackboard.cs.meta → game/Assets/Scripts/Enemy/Blackboard.cs.meta


+ 21 - 0
game/Assets/Scripts/Enemy/ChaseBehavior.cs

@@ -0,0 +1,21 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+namespace EnemyAI
+{
+    internal class ChaseBehavior : Behavior
+    {
+        internal override Result Run(ref Blackboard blackboard)
+        {
+            blackboard.navMeshAgent.destination = blackboard.PlayerPosition;
+
+            if (!blackboard.Night)
+            {
+                return Result.Success;
+            }
+
+            return Result.Running;
+        }
+    }
+}

+ 12 - 0
game/Assets/Scripts/Enemy/ChaseBehavior.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 0f51372775b4ade4097160ae7e987f21
+timeCreated: 1501346905
+licenseType: Free
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 1
game/Assets/Scripts/Enemy/RechargeBehavior.cs

@@ -1,6 +1,5 @@
 using System.Collections;
 using System.Collections.Generic;
-using UnityEngine;
 
 namespace EnemyAI
 {