Untested, but should work.
Function RangePick(srcX#,srcY#,srcZ#,lenX#,lenY#,lenZ#,radius#)
LinePick(srcX#,srcY#,srcZ#,lenX#,lenY#,lenZ#,radius#)
If PickedEntity()<>0
xd#=PickedX#()-srcX#
yd#=PickedY#()-srcY#
zd#=PickedZ#()-srcZ#
Return Sqr(xd*xd + yd*yd + zd*zd)
End If
End Function