From 9f68b88436d7514df847486163433fb87e06f770 Mon Sep 17 00:00:00 2001 From: Alexander Pickering Date: Sun, 3 Jan 2016 23:56:18 -0500 Subject: Adjustements to antlion pouncer --- entities/entities/ws_npc_ambient/init.lua | 3 ++- gamemode/npcsystem/aidirector.lua | 3 +++ gamemode/npcsystem/npcs/antlion1.lua | 2 +- gamemode/npcsystem/npcs/antlion2.lua | 18 ++++++++++++++---- 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/entities/entities/ws_npc_ambient/init.lua b/entities/entities/ws_npc_ambient/init.lua index b896726..523333c 100644 --- a/entities/entities/ws_npc_ambient/init.lua +++ b/entities/entities/ws_npc_ambient/init.lua @@ -7,7 +7,7 @@ include('shared.lua') function ENT:Initialize() --print("NPC spawned!") --self:SetMoveType(MOVETYPE_STEP) - --self:SetSolid(SOLID_OBB) + self:SetSolid(SOLID_NONE) --self:SetCollisionGroup(COLLISION_GROUP_INTERACTIVE) if(self.Model) then self:SetModel(self.Model) @@ -19,6 +19,7 @@ function ENT:Initialize() if(self.Stats["Accel"]) then self.loco:SetAcceleration(self.Stats["Accel"])end if(self.Stats["Decel"]) then self.loco:SetDeceleration(self.Stats["Decel"]) end if(self.Stats["Step"]) then self.loco:SetJumpHeight(self.Stats["Step"]) end + if(self.OnSpawn) then self:OnSpawn() end --self:SetModel( "models/Humans/Group01/Female_01.mdl" ) --[[ self:SetHullType( HULL_HUMAN ); diff --git a/gamemode/npcsystem/aidirector.lua b/gamemode/npcsystem/aidirector.lua index f9f7203..04e645d 100644 --- a/gamemode/npcsystem/aidirector.lua +++ b/gamemode/npcsystem/aidirector.lua @@ -58,6 +58,9 @@ function SpawnNpcByName(name, position) if(entdata.AwareEnemies) then ent.AwareEnemies = entdata.AwareEnemies end + if(entdata.OnSpawn) then + ent.OnSpawn = entdata.OnSpawn + end ent:Spawn() end diff --git a/gamemode/npcsystem/npcs/antlion1.lua b/gamemode/npcsystem/npcs/antlion1.lua index 5c5ccab..1b0a38f 100644 --- a/gamemode/npcsystem/npcs/antlion1.lua +++ b/gamemode/npcsystem/npcs/antlion1.lua @@ -57,7 +57,7 @@ local checkrun = function(self, ply) return 0 end local dorun = function(self, ply) local navarea = navmesh.GetNavArea(self:GetPos(), 100) - self.loco:SetDesiredSpeed( 50 ) + self.loco:SetDesiredSpeed(self.Stats["Speed"] ) if navarea:IsValid() then local moveop = {} moveop.tolerance = 50 diff --git a/gamemode/npcsystem/npcs/antlion2.lua b/gamemode/npcsystem/npcs/antlion2.lua index c232b22..738bb7e 100644 --- a/gamemode/npcsystem/npcs/antlion2.lua +++ b/gamemode/npcsystem/npcs/antlion2.lua @@ -59,19 +59,24 @@ local checkpounce = function(self, ply) end local dopounce = function(self,ply) - self:StartActivity(ACT_MELEE_ATTACK2) - coroutine.wait(0.5) + local randanim = math.Round(math.Rand(0,1)) + if(randanim) then + self:SetSequence("pounce") + else + self:SetSequence("pounce2") + end + coroutine.wait(0.23) if(ply:GetPos():Distance(self:GetPos()) < 200) then ply:TakeDamage(15) end - coroutine.wait(0.25) + coroutine.wait(0.15) end local checkrun = function(self, ply) return 0 end local dorun = function(self, ply) local navarea = navmesh.GetNavArea(self:GetPos(), 100) - self.loco:SetDesiredSpeed( 50 ) + self.loco:SetDesiredSpeed(self.Stats["Speed"]) if navarea:IsValid() then local moveop = {} moveop.tolerance = 50 @@ -129,6 +134,11 @@ function NPC:Stuck() end --These are just here to tell the editors/develoeprs what functions are available.. dont un-comment them out, as this could affect all the items. + +function NPC:OnSpawn() + self:SetSkin(2) +end + /* function NPC:OnSpawn() end -- cgit v1.2.3-70-g09d2