Usually when people ask about broadcasting they want to send all key events (press and releases) to various windows. But I'm not sure if that's what you're asking because your script seems to be more concerned with turning hotkeys on and off. Since I'm not sure I'll answer both questions.

The easiest way to broadcast many key combinations (it won't be all of them) is like this:

Code:
<MovementHotkey AllMainKeys; Alt AllMainKeys; Ctrl AllMainKeys>
   <SendLabel ....>
      <Key %Trigger%>
That definition creates about three hundred hotkeys for almost all unmodified keys and Ctrl and Alt combinations. I used MovementHotkey for this definition because a movement hotkey sends presses and releases separately. In contrast, regular hotkeys send a press and release immediately when you press a trigger. MovementHotkeys are closer to what I understand to be "broadcasting."

If you're asking the other question -- how to turn this sort of thing off and on -- the program gives you many choices.

Instead of creating a variable like you're doing in the script, you can simply do this:

Code:
<Hotkey Pause>
   <ToggleHotkeys>
The method used in the sample scripts is to add "ScrollLockOn" to all the definitions. This turns the scroll lock key into a toggle, and the scroll lock light on the keyboard becomes an indicator of whether hotkeys are on.

You can also make two separate hotkeys with <TurnHotkeysOff> and <TurnHotkeysOn>.

You can also define hotkeys so they only work when a certain application is in the foreground, which in a sense turns them on and off automatically.