With ULX, you could create a AdminNoNoclip group, allow all the same ulx permissions as admin, except for the ulx noclip, and change the test to return true if they aren't an AdminNoNoclip
return !ply:IsUserGroup("AdminNoNoclip")
(Though, I could have sworn returning anything such as false breaks a hook for all others. Yet, the wiki says a boolean is returned...team, has this changed or is it different for this hook?)