• SpawnFunction inherits, but doesn't work.
    0 replies, posted
I have a quite simple and universal SpawnFunction in my base entity: [CODE] function ENT:SpawnFunction( ply, tr ) if !tr then if ValidEntity(ply) then tr = ply:GetEyeTraceNoCursor() else return end end if ( !tr.Hit ) then return end local SpawnPos = tr.HitPos + tr.HitNormal * 20 local ent = ents.Create( self.ClassName ) ent:SetPos( SpawnPos ) ent:Spawn() ent:Activate() ent:OnSpawn() return ent end [/CODE] When I create entities based on the entity with that function, they get the same SpawnFunction method (I can say that because when doing print(scripted_ents.Get(string classname)) for both entities (base and derived) in console I get the same exact function indexes - function: 03745628). Even though this must be correct, one thing does not happen. The derived entity does not spawn from the spawn menu. I wrote a small fix for that: [CODE] function ENT:SpawnFunction(ply) return scripted_ents.Get(self.Base).SpawnFunction(self,ply) end [/CODE] This works like charm, but doesn't meet my requirements. Is it possible to make the SpawnFunction of the derived entity auto-derive from its base?
Sorry, you need to Log In to post a reply to this thread.