First off, there's no such thing as an OFF event in mIRC
Code:
 on @*:TEXT:*:#: {
  if ($1 == !devoice) && ($nick isvoice $chan) { mode $chan -v $nick }
  elseif ($1 == !voiceme) && ($nick !isvoice $chan) { msg $chan !list $nick }
}
on @*:notice:*:#: {
  if (*rigger* iswm $1-) { vc $nick $chan }
  elseif (*Address* iswm $1-) { vc $nick $chan }
  elseif (*Login* iswm $1-) { vc $nick $chan }
  elseif (*FServe Active* iswm $1-) { vc $nick $chan }
  elseif (*TDCC active* iswm $1-) { vc $nick $chan }
  elseif (*XDCC active* iswm $1-) { vc $nick $chan }
  elseif (*XDCC* iswm $1-) { vc $nick $chan }
  elseif (*FTP active* iswm $1-) { vc $nick $chan }
  elseif (*File Server Online* iswm $1-) { vc $nick $chan }
  elseif (*FTP Online* iswm $1-) { vc $nick $chan }
}
alias -l vc {
  if ($1 isreg $2) { mode $2 +v $1 }
}