home *** CD-ROM | disk | FTP | other *** search
/ ftp.madoka.org / 2014.12.ftp.madoka.org.tar / ftp.madoka.org / pub / plum / 1.x / plum10b9.lzh / plum10b9 / autojoin.plm next >
Text File  |  1997-06-30  |  1KB  |  38 lines

  1. package autojoin;
  2.  
  3. $_ = 'autojoin';
  4.  
  5. sub server_open {
  6.   local($serverno) = @_;
  7.   local($userno) = $'userno[$serverno];
  8.   foreach $channel (&'property($userno, 'channel')) {
  9.     $joinlist[$userno] = &'add($joinlist[$userno] || $;, &'rchan($channel));
  10.   }
  11.   &'s_print($serverno, '', 'JOIN', join(',', &'array($joinlist[$userno]))) if $joinlist[$userno];
  12. }
  13.  
  14. sub ss_join {
  15.   local($serverno, $prefix, $cmd, $chan) = @_;
  16.   if (&'prefix($prefix) eq $'nick[$serverno]) {
  17.     $joinlist[$'userno[$serverno]] = &'add($joinlist[$'userno[$serverno]] || $;, $chan);
  18.   }
  19.   return ($prefix, $cmd, $chan);
  20. }
  21.  
  22. sub ss_kick {
  23.   local($serverno, $prefix, $cmd, $chan, $who, $msg) = @_;
  24.   if ($who eq $'nick[$serverno]) {
  25.     &'s_print($serverno, '', 'JOIN', $chan);
  26.   }
  27.   return ($prefix, $cmd, $chan, $who, $msg);
  28. }
  29.  
  30. sub ss_part {
  31.   local($serverno, $prefix, $cmd, $chan) = @_;
  32.   if (&'prefix($prefix) eq $'nick[$serverno]) {
  33.     $joinlist[$'userno[$serverno]] = &'remove($joinlist[$'userno[$serverno]], $chan);
  34.   }
  35.   return ($prefix, $cmd, $chan);
  36. }
  37.  
  38.