How do I know when an entity is no longer colliding?

So I know that ENT:PhysicsCollide gets called when an entity collides when something else. But what if I want to know when an object is no longer colliding? For example, what if something on the ground is no-longer on the ground?

Better yet, is there some sort of repeating hook that can be called while an entity is touching something else?

ENT:Touch ?

I’m not making a bursh entity, man.



Whops, I thought it said that the entity had to be a brush AND have the trigger set to “true”
Getting closer! However, those touch functions seem to not work for worldspawn.

What about making a hull trace in the entity’s think hook?

edit I wrote this for a player spawn thing not too long ago and it seems to work fine:

function meta:IsStuckInSomething(maponly)
local t = {
start = self:GetPos(),
endpos = self:GetPos() + Vector(0, 0, self:Crouching() and 36 or 72),
filter = self,
mins = Vector(-16, -16, 0),
maxs = Vector(16, 16, 0),
if (maponly) then
t.filter = player.GetAll()
local tr = util.TraceHull(t)

return tr.Entity ~= NULL