diff options
| author | Alexander Pickering <Alexander.Pickering@anondomain.site90.net> | 2016-01-02 22:35:29 -0500 |
|---|---|---|
| committer | Alexander Pickering <Alexander.Pickering@anondomain.site90.net> | 2016-01-02 22:35:29 -0500 |
| commit | 958ccc93f9339a232cc761f0842a85d14e2865b8 (patch) | |
| tree | 76a8ec28ea2c902009e591575180ccfbb1a0755b /gamemode/npcsystem/npcs | |
| parent | f11d53ab5eca356b2eadb0e75b7c1ae94870e033 (diff) | |
| download | wintersurvival2-958ccc93f9339a232cc761f0842a85d14e2865b8.tar.gz wintersurvival2-958ccc93f9339a232cc761f0842a85d14e2865b8.tar.bz2 wintersurvival2-958ccc93f9339a232cc761f0842a85d14e2865b8.zip | |
Added more documentation on ai overhaul
Diffstat (limited to 'gamemode/npcsystem/npcs')
| -rw-r--r-- | gamemode/npcsystem/npcs/base.lua | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/gamemode/npcsystem/npcs/base.lua b/gamemode/npcsystem/npcs/base.lua index 0e8ea53..880e4a5 100644 --- a/gamemode/npcsystem/npcs/base.lua +++ b/gamemode/npcsystem/npcs/base.lua @@ -17,7 +17,9 @@ NPC.Stats = { }
--Some npc's like birds have diffent names for their idle sequence
-NPC.IdleSequence = "Idle"
+NPC.IdleSequences = {
+ [0] = "Idle",
+}
--Drops should be formated as [index]={["item name"], percent_drop} where percent_drop is a number from 0 to 100
NPC.Drops = nil
@@ -25,11 +27,16 @@ NPC.Drops = nil --Attacks should be formated as [i]={function attackpriority() = function doattack()}
NPC.Attacks = nil
---Attack priority should be formated as [i] = func tion(return int priority) attackpriority
-NPC.AttackPriority = nil
+--Attack priority is a fucntion that takes a player, and returns an int describing it's prority to attack (higher = more important) NPC will always attack the player with the highest priority
+function NPC:AttackPriority(ply)
+ local dist = ply:GetPos():Distance(self:GetPos())
+ return self.Stats["AwareDist"] - dist
+end
--A function that takes a position and returns true if this is an acceptable place to spawn
-NPC.SpawnLocations = nil
+function NPC:SpawnLocations(pos)
+ return true
+end
--The entity that is this npc's current target, if it has one
NPC.Target = nil
|
