Pulling from my greetings thing since I have it in a on/off state as well.

This should give a general idea.
Code:
on *:notice:*:#: {
  var %file = data\Greetings\greetings_ [ $+ [ $mid(#,2) ] ] $+ .ini
  var %check = $ini(%file,$nick)
  var %greeting = $readini(%file,n,$nick,greeting)
  if (!%check) { halt }
  if (%greeting_ [ $+ [ $mid(#,2) ] $+ _ [ $+ [ $nick ] ] ]) { halt }
  if ((%check) && (!%global. [ $+ [ $mid(#,2) ] ])) {
    var %greet = $replace(%greeting, @game, $followGame($nick))
    set %greeting_ $+ $mid(#,2) $+ _ $+ $nick On
    msg # /me %greet
  }
}

This shows the on/off switch implemented. I also have the same with an ON TEXT event since /me is considered a NOTICE.

This is my on/off code.
Code:
on *:text:!greet*:#: {
  if (!$2) { msg # /me - To enable greetings use <!greet on>. To disable greetings use <!greet off>. }
  if (($nick != $mid(#,2)) && ($nick != fonic_artes)) { halt }
  if ($2 == on) { 
    msg # /me - Greetings are enabled.
    unset %global. $+ $mid(#,2) 
  }
  if ($2 == off) {
    msg # /me - Greetings are disabled, un-used greetings won't trigger.
    set %global. $+ $mid(#,2) On
  } 

This sets a global on/off for greetings. (This is just from something I made a while back.)