Making Fire entity

Hay guys im wondering how to make fire that stay for ever and spread intill the firefighters come and stop the fire
init.lua



local model = "" -- What model should it be?
local classname = "" -- This should be the name of the folder containing this file.
local ShouldSetOwner = true -- Set the entity's owner?

-------------------------------
AddCSLuaFile( "cl_init.lua" )
AddCSLuaFile( "shared.lua" )
include( 'shared.lua' )
-------------------------------

--------------------
-- Spawn Function --
--------------------
function ENT:SpawnFunction( ply, tr )

	if ( !tr.Hit ) then return end
	local SpawnPos = tr.HitPos + tr.HitNormal * 25
	local ent = ents.Create( classname )
	ent:SetPos( SpawnPos )
	ent:Spawn()
	ent:Activate()
	if ShouldSetOwner then
		ent.Owner = ply
	end
	return ent
	
end

----------------
-- Initialize --
----------------
function ENT:Initialize()
	
ents.Create("env_fire")

	
end

-----------------
-- Take Damage -- 
-----------------
function ENT:OnTakeDamage( dmginfo )
	self.Entity:TakePhysicsDamage( dmginfo )

end

------------
-- On use --
------------
function ENT:Use( activator, caller )

end

-----------
-- Think --
-----------
function ENT:Think()

end

-----------
-- Touch --
-----------
function ENT:Touch(ent)

end

--------------------
-- PhysicsCollide -- 
--------------------
function ENT:PhysicsCollide( data, physobj )

end



cl_init.lua




include('shared.lua')

function ENT:Initialize()
	
	self.Color = Color( 255, 255, 255, 255 )
	
end

function ENT:Draw()
	
	--self:DrawEntityOutline( 1 )
	self.Entity:DrawModel()

end


shared.lua



ENT.Type = "anim"
ENT.Base = "base_gmodentity"
ENT.PrintName = "Custom Fire"
ENT.Author = "xrayhunter"
ENT.Category = "Roleplay"
ENT.Spawnable = true
ENT.AdminSpawnable = true



So i hope you guys could help thanks! ;D

Uhm… what…? Why in gods name are you running ents.Create(“env_fire”) ANYWHERE in your custom fire entity?
Add me on steam and I’ll assist you with this.