Closing a sliding door without clipping

I’m trying to make a machine entity using a model created in hammer using propper and I need doors to slide closed from the inside the machine itself. I could simply set the door’s position closer and closer to the target and then stop it or lerp it there or whatever, but because it’s going to be a little difficult to tell if the thing being put into the device is entirely inside the enclosure, I’d rather not close the door if there’s something in the way. I’d do a simple hull trace for the door to double check it should move, but hull traces can’t take into account the object’s rotation so if this is at a 45 degree angle it’s not going to be an accurate trace and if it only works at right angles it’s probably not worth the effort. Aside from doing 10+ line traces upwards from the machine, is there a good way to check for door collisions as the door closes?

I’m also definitely open to putting an invisible, solid door in place to prevent new stuff getting in the way and using a client model to draw the door closing, but I still need to know about the trace.

if there’s no good way to do it I’m open to the concept of many line traces, but it’s real gross. I’m already doing that to make the conveyer belt portion work and I’d rather this entity not be a massive ball of traces all in ENT:Think()

"func_door"s make bsp doors look so easy.

The end goal looks something

Open state

Closed state

This should probably be in the mapping forum… I’m sure there’s a way to check if an entity is there before closing the door, can’t you use a trigger?

I can’t. It’s not a map object it’s an entity. It’s geometry from hammer exported as a .mdl rather than a .map using the propper hammer extension. It’s no different than any other model