just needed a "return" which actls like a "soft halt"

also you had some / in the code which I removed/replaced

Code:
on *:TEXT:!8ball*:#:{
  if ($2 == on && $nick isop $chan) { set %8ball.status true | msg $chan 8Ball now active | return }
  elseif ($2 == off && $nick isop $chan) { unset %8ball.status | msg $chan 8Ball now off | return  }
  if (%8ball.status) {
    set %8ball $r(1,6)
    if (%8ball == 1) .msg $chan 10No
    if (%8ball == 2) .msg $chan 10Yes
    if (%8ball == 3) .msg $chan 10Maybe
    if (%8ball == 4) .msg $chan 10Of course
    if (%8ball == 5) .msg $chan 10Not sure
    if (%8ball == 6) .msg $chan 10How should I know?
  }
  else { notice $nick Unfortunently 8Ball is off }
}