All pastes #622057 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-07-16 16:47 UTC
rendered paste body
; ––––––––––––––––––––––––––––––––––––––––
; autorejoin - coded by Phreak
; Don't edit anything in here unless you REALLY know what you're doing!
; ––––––––––––––––––––––––––––––––––––––––
; Version history
; v0.2 (12.04.2006)
;  - added enable/disable functionality per network
;  - now joins only 5 channels at once instead of all
; v0.1 (11.04.2006)
;  - initial release
; ––––––––––––––––––––––––––––––––––––––––

on *:join:#:{ if ($nick == $me && $setrejoin) { rejoin.add $chan } }
on *:part:#:{ if ($nick == $me && $setrejoin) { rejoin.rem $chan } }
on *:kick:#:{ if ($knick == $me && $setrejoin) { rejoin.rem $chan } }

on *:CONNECT:{
  if (%rejoinchannels. [ $+ [ $network ] ] && $setrejoin) {
    tokenize 44 %rejoinchannels. [ $+ [ $network ] ]
    var %c = $1-
    while (%c) {
      tokenize 32 %c
      join $replace($1-5,$chr(32),$chr(44))
      var %c = $6-
    }
  }
}

on *:load:{
  echo -at Autorejoin script by Phreak loaded
  echo -at Rightclick on the status window to enable it
}
on *:unload:unset %rejoinchannels*

alias -l rejoin.add set %rejoinchannels. [ $+ [ $network ] ] $addtok(%rejoinchannels. [ $+ [ $network ] ],$1,44)
alias -l rejoin.rem set %rejoinchannels. [ $+ [ $network ] ] $remtok(%rejoinchannels. [ $+ [ $network ] ],$1,44)
alias -l setrejoin {
  if ($isid) {
    return $istok(%rejoinchannels.enable,$network,32)
  }
  else {
    if ($1 == -a) {
      set %rejoinchannels.enable $addtok(%rejoinchannels.enable,$network,32)
      var %i $chan(0)
      while (%i) {
        rejoin.add $chan(%i)
        dec %i
      }
      echo -st Added $network with $chan(0) channels to the autorejoin list
    }
    else {
      set %rejoinchannels.enable $remtok(%rejoinchannels.enable,$network,32)
      unset %rejoinchannels. [ $+ [ $network ] ]
      echo -st Removed $network from the autorejoin list
    }
  }
}

menu status {
  $iif($network,$iif($setrejoin,$style(1)),$style(2)) Autorejoin channels:setrejoin $iif($setrejoin,-r,-a)
}

; ––––––––––––––––––––––––––––––––––––––––
; End of file
; ––––––––––––––––––––––––––––––––––––––––