You could change the even to just include '#' for all channels, then set an exception list in the nlcheck alias.

e.g.

Code:
on *:PART:#:{
  .timerpc $+ $ticks -m 1 100 nlcheck $chan
}

alias -l nlcheck {
  var %nopart = #Chan1 #Chan2 #Chan3
  if (!$istok(%nopart,$1,32)) && ($nick($1,0) == 1) {
    part $1
  }
}


%nopart are channels that it should not part from, separated by a space.