Here's an auto-click macro that I like to use. It's really useful for when you're GS macroing on people and stuff like that. This is pretty much a stock macro I found online, but I added the ability to pause and terminate it via hotkey. Pushing ' will pause the macro and the Del key will terminate the macro.
#RequireAdmin
HotKeySet("'", "TogglePause")
HotKeySet("{DEL}", "Terminate")
Global $Paused
$random = MsgBox(36, RandomStr(), "Do you want to click after a random value (between a min and max value)? If not, you'll be able to set a fixed value.")
If $random == 6 Then
$min = InputBox(RandomStr(), "Min random seconds to click?")
$max = InputBox(RandomStr(), "Max random seconds to click?")
If $min == "" OR $max == "" OR IsNumber($min) == False OR IsNumber($max) == False Then
Exit
EndIf
Else
$time = InputBox(RandomStr(), "After howmany seconds do you want to click?")
If $time == "" OR IsNumber($time) == False Then
Exit
EndIf
EndIf
While 1
If $random == 6 Then
$time = Random($min, $max)
EndIf
Sleep($time * 1000)
MouseClick("left")
WEnd
Func RandomStr($length = 0)
If $length == 0 Then
$length = Random(2, 8, 1)
EndIf
$seed = ""
Do
If Random() < 0.5 Then
If Random(0, 1, 1) = 0 Then $seed = $seed & Random(5, 10, 1)
If Random(0, 1, 1) = 1 Then $seed = $seed & Random(0, 4, 1)
$Letter = Chr(Random(Asc("A"), Asc("Z"), 1))
$seed = $seed & $Letter
Else
If Random(0, 1, 1) = 1 Then $seed = $seed & Random(5, 10, 1)
If Random(0, 1, 1) = 0 Then $seed = $seed & Random(0, 4, 1)
$Letter = Chr(Random(Asc("a"), Asc("z"), 1))
$seed = $seed & $Letter
EndIf
Until (StringLen($seed) > $length)
Return $seed
EndFunc ;==>RandomStr
Func TogglePause()
$Paused = NOT $Paused
While $Paused
Sleep(100)
ToolTip('Script is "Paused"', 0, 0)
WEnd
ToolTip("")
EndFunc
Func Terminate()
Exit 0
EndFunc