Code:
#help on
on *:text:!help:*:{
  if (%i != on) { 
    play -t!help $nick help.txt 2000 
    set -su5 %i on
  }
}

on *:text:!help !*:*:{
  if ((%i != on) && ($ini(help.txt,$2))) { 
    play -t $+ $2 $nick help.txt 2000
    set -su5 %i on
  }
}
#help end

2nd on uses the HELP.TXT file to make sure u have help for that topic, then displays it
you could incoperate the 1st event into it, but i think it would make the code more complexe than its worth.

Thanks for $ini Iori

/me looks around sheepishly becuase he couldn't think of the indentifier for INI file data