(FindSurface ?!? I even didn't know this exists, does it?)
Anyway, the way using GetsurfaceBrush, GetBrushTexture and TexureName is th eway to go, but there is one thing you should consider: these function will create copies of the things you are checking, so you need to free the resources after usage. (texture and brush)
You could write a function that takes a texturename as a string and returns the number of the surface that is using the texture, or eg. -1 when the texture is not used.
Anyway, the way using GetsurfaceBrush, GetBrushTexture and TexureName is th eway to go, but there is one thing you should consider: these function will create copies of the things you are checking, so you need to free the resources after usage. (texture and brush)
You could write a function that takes a texturename as a string and returns the number of the surface that is using the texture, or eg. -1 when the texture is not used.