That looks good! Simple and should do the job. Only comment is that if the touch isn't detected in the 30mm the touch plate will get squashed. A refinement is to probe down at say 50mm/min until touch, then withdraw say .5mm, then probe slowly at say 5mm/min.
When you say you copied the code into the "Auto Tool Zero" script, do you mean that you pasted it into the button script? That should be fine, though for historical reasons my script is in a macro (M900) which is called from the button script.