[DarkRP] There is a PlayerSpawn, but what about entitySPawn?

When I can create a job in DarkRP, I can set a custom playerSpawn that calls up some functions and stuff when you become that job, in this case, I can use it to set the run speed/walk speed/health:


 TEAM_ADMIN = DarkRP.createJob("Admin on Duty", {
        color = Color(255, 0, 0, 255),
        model = "models/player/skeleton.mdl",
        description = [[You are an almighty Administrator! They bow before you, but keep watch! There may be trouble afoot in the great land of Tethys!]],
        weapons = {"m9k_damascus", "stun_stick"},
        command = "admin",
        max = 10,
        salary = 200,
        level = 1,
        admin = 1,
        vote = false,
        hasLicense = true,
        PlayerSpawn = function(ply) ply:SetHealth(9999) ply:SetRunSpeed(400) ply:SetWalkSpeed(250) end,
        customCheck = function(ply) return ply:GetNWString("usergroup") == "admin" or ply:GetNWString("usergroup") == "superadmin" end
     })

My question, is there anything that I can do to do this, but for entities? Such as run a function when an entity is spawned, basically having the same effect as spawning it from the q menu.

To be more specific, I am attempting to spawn a few entities from the amazing Stargate Carter Pack, but a lot of the entities have more than one ‘part’ to them, for instance, the MALP has wheels on it that do not spawn when created from the F4 menu, basically it spawns a prop that does nothing. I’ve noticed that a function is called when it is spawned from the q menu:



function ENT:SpawnFunction(pl,tr)
	if(pl:GetCount("malp")>0) then return end
	local e = ents.Create("malp");
	e:SetPos(tr.HitPos + Vector(0,0,20));
	e:SetAngles(Angle(0,pl:GetAimVector():Angle().Yaw,0))
	e:Spawn();
	e:Activate();
	e:SetVar("Owner",pl)
	e.Owner = pl;

	e:SpawnWheels() -- Spawn the wheels
	e:SpawnCamera() -- Spawn the camera prop
	e:SpawnCamStand() -- Spawn the camera stand
	e:SpawnRTCam()

	pl:Give("weapon_malp_remote")
	pl:SelectWeapon("weapon_malp_remote")
	pl:AddCount("malp",e)
	return e;
end



I can see pretty clearly this is exactly what I need to do on the spawn of the entity, but I cannot glean how to od it, because


 EntitySpawn = function(ent) whatever end

obviously does nothing. Is there a way to do what I am trying to do?

[editline]1st June 2014[/editline]

Essentially, all my problems would be fixed if there was some magical way to spawn entities from the F4 as if it were spawned the exact same way as it is spawned from the q menu.

Here you go: http://wiki.garrysmod.com/page/GM/OnEntityCreated

You are a god amongst men