Entity Spawning Values

How would I make that the entity in question can only spawn on doors or walls?
Is this possible?

When making a trace to determine where to spawn the entity check the HitNormal attribute of the traceres. It will tell you what direction the surface hit is facing.

[editline]03:26PM[/editline]

Also, spawning things on doors might be very tricky if you expect the door to still be able to move after.

Mmk, How would I make the entity Noclip when its on the door, but still parent the door or is attatched.

Edit:
Also how would I call something from another weapon/entity, such as OnDoorLocked or something.
Would I just use the function in the other weapon/entity.