Multiple Model spawn

Hey all Im trying to make an addon basically i am trying to make it spawn multiple models in the same spot like part 1 is a floor part 2 is walls and doors and part 3, 4 are deco. im still learning lua so this may be an easy thing to do i just dont know so any help would be appreciated Cheers!

On initialize do something like

self.doorB = ents.Create(“prop_physics”)
self.doorB:SetPos(self:GetPos())
self.doorB:Spawn()

But don’t forget to remove these entities on ENT:OnRemove()

This is what the lua is so far


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

ENT.Models = {
	Part1="models/Coreylz/Mcgann/Windows.mdl",
	Part2="models/Coreylz/Mcgann/Windows 2.mdl",
	Console="models/Coreylz/Mcgann/Console.mdl",
	Buttons="models/Coreylz/Mcgann/Console Panels.mdl",
}
function ENT:Initialize()
	util.PrecacheModel(self.Models.Part1); -- Precache so clients can see models if they join while one is spawned.
	util.PrecacheModel(self.Models.Part2);
	util.PrecacheModel(self.Models.Console);
	util.PrecacheModel(self.Models.Buttons);
	self.Entity:SetModel(self.Models.Part1);
	self.Entity:PhysicsInit(SOLID_VPHYSICS);
	self.Entity:SetMoveType(MOVETYPE_VPHYSICS);
	self.Entity:SetSolid(SOLID_VPHYSICS);
	self.BaseClass.Initialize(self); -- BaseClass Initialize call
	self:AddPart1();
	self:AddPart2();
	self:AddConsole();
	self:AddButtons();
end
function ENT:AddPart2()
	local pos = self.Entity:GetPos();
	local e = ents.Create("prop_dynamic");
	e:SetModel(self.Models.Part2);
	e:SetKeyValue("solid",0);
	e:SetPos(pos);
	e:SetParent(self.Part2);
	e:SetDerive(self.Entity); -- Derive Material/Color from "Parent"
	e:DrawShadow(false);
	e:Spawn();
	e:Activate();
end
function ENT:AddConsole()
	local pos = self.Entity:GetPos();
	local e = ents.Create("prop_dynamic");
	e:SetModel(self.Models.Console);
	e:SetKeyValue("solid",0);
	e:SetPos(pos);
	e:SetParent(self.Console);
	e:SetDerive(self.Entity); -- Derive Material/Color from "Parent"
	e:DrawShadow(false);
	e:Spawn();
	e:Activate();
end
function ENT:AddButtons()
	local pos = self.Entity:GetPos();
	local e = ents.Create("prop_dynamic");
	e:SetModel(self.Models.Buttons);
	e:SetKeyValue("solid",0);
	e:SetPos(pos);
	e:SetParent(self.Buttons);
	e:SetDerive(self.Entity); -- Derive Material/Color from "Parent"
	e:DrawShadow(false);
	e:Spawn();
	e:Activate();
end


Is this sorta what i should be going for