The code is running in mIRC (is oped) and I'm testing it using two other clients. One is oped and the other is not.

I've used !on and !off successfully and confirmed the variables were set and unset however it ignores the state of the off variable upon the trigger. There are no error messages.