Help with AHK script

HI,
I’ve been using macros from this site for about a year now. I cant play without them anymore lol. I’ve always had an issue with the modifier keys not working at all. From what I have figured out, its due to my ahk script as it doesn’t allow for modifiers. Here is my script. It’s a simple repeat script, nothing more.

SetTimer sF, 100

$XButton1:: Toggle := !Toggle

sF:
If (!Toggle)
Return

Send, q

return

I think I am a script noob. But i believe it’s this script that prohibits my use of modifier keys in the macros. Any help would be appreciated. Thanks.

Here is a simple 3 button AHK I got from Deadly Hunters Camp on Discord:

;; by Hadronox / Rezel

#MaxThreadsPerHotkey 2
#IfWinActive World of Warcraft	;; enabled only in WoW
Toggle1 := 0
Toggle2 := 0
Toggle3 := 0

$1::
Toggle1 := !Toggle1
While Toggle1 {
    Send, {Blind}1	;; blind mode to send modifiers
    Sleep, 100
}
return

$2::
Toggle2 := !Toggle2
While Toggle2 {
    Send, {Blind}2	;; blind mode to send modifiers
    Sleep, 100
}
return

$3::
Toggle3 := !Toggle3
While Toggle3 {
    Send, {Blind}3	;; blind mode to send modifiers
    Sleep, 100
}
return
#IfWinActive	;; disable WoW context sensitivity

^PgDn::Suspend	;; Ctrl + PageDown to suspend script (if you want to chat)
^PgUp::Reload	;; Ctrl + PageUP to reload script
^End::ExitApp	;; Ctrl + End to terminate script

Just need to change the “Sleep” to what you want.