u had tht part almost .. i take it u just want to rejoin to get ops and reset modes and topic...

easy easy
Code:
on 1:PART:#channame: {
  if (($nick != $me) && ($nick($chan,0) == 2) && ($me !isop $chan)) {
    %pchan = $chan
    %pchan.mode = $chan($chan).mode
    %pchan.topic = $chan($chan).topic
  }
}
on 1:JOIN:#: {
  if (($nick == $me) && ($chan == %pchan)) {
    if ($nick($chan,0) == 1) {
      topic $chan %pchan.topic
      mode $chan %pchan.mode
    }
  }
}


i didnt test that.. but should work.. similar to what u had...

hope thats what u were lookin for

Cobra^