Thanks but for some reason it shows 2 whois's every time, I do have another script that whois's when people enter to check for bad channels, maybe it would be easier to modify that code to echo the whois in addition to its original purpose instead of adding a new script just to show the whois.

Here is that script:

Code:
menu channel { 

  -

  Badchan Checker 

  .$iif($group(#badchans) == off,$style(2)) $iif($istok(%protchans,#,44),Remove,Add) protection for #:{ 

    if $istok(%protchans,#,44) { 

      %protchans = $remtok(%protchans,#,1,44) 

      echo -ac info * Removed # from the list of protected channels 

    } 

    else { 

      %protchans = $addtok(%protchans,#,44) 

      echo -ac info * Added # to the list of protected channels 

    } 

  } 

  .-

  .$iif($group(#badchans) == on,Disable,Enable):{ 

    if $group(#badchans) == on { .disable #badchans | chans_unload } 

    else { .enable #badchans | chans_load  } 

  } 

} 



#badchans on

on @*:JOIN:%protchans:{

  hinc -mu2 chancheck $+($cid,#)

  if $hget(chancheck,$+($cid,#)) < 5 {

    hadd chancheck $nick 1 

    .enable #chancheck 

    whois $nick 

  }

}

on *:START: chans_load 

on *:EXIT: chans_unload

#badchans end 



#chancheck on

raw 318:*:{

  if $hget(chancheck,$2) {

    haltdef

    hdel chancheck $2

    if !$hget(chancheck,0).item { .disable #chancheck }

  }

}

raw 319:*: if $hget(chancheck,$2) { haltdef | chans_check $2-  }

raw *:*: if $hget(chancheck,$2) && $istok(301 307 310 311 312 313 317 320 330,$numeric,32) { haltdef } 

#chancheck end



alias chans_noprefix var %a, %b = $regsub($1-,/(?:^|\s)([^#]+)/g,$chr(32),%a) | return %a 



alias chans_check { 

  var %chans = $chans_noprefix($2-), %a = 1 

  while $gettok(%chans,%a,32) { 

    if $hfind(chans,$v1,1,W) { chans_comkick $1 | return } 

    inc %a 

  } 

} 



alias chans_comkick { 

  var %a = $comchan($1,0), %b 

  while $comchan($1,%a) { 

    %b = $v1 

    if $istok(%protchans,%b,44) && $me isop %b && $1 !isop %b { 

      ban -ku180 %b $1 2 You cannot join while in a banned or offensive room.

    } 

    dec %a 

  } 

} 



alias chans_load { 

  if !$isfile(chans.txt) { 

    echo -asc info * Could not find chans.txt. Creating new file...Done. 

    write chans.txt 

  } 

  hmake chans 

  hload chans chans.txt 

  echo -ac info Bad channel kicker loaded.

} 



alias chans_unload {

  chans_save

  if $hget(chancheck) { hfree chancheck }

  hfree chans

  echo -ac info Bad channel kicker unloaded.

}



alias chans_save hsave -o chans chans.txt 



alias chans_add { 

  hadd chans $$1 1 

  chans_save

  echo -ac info * Added $1 to list of bad channels 

} 



alias chans_rem { 

  hdel chans $$1 

  chans_save

  echo -ac info * Deleted $1 from list of bad channels 

} 



alias chans_list { 

  var %a = 1 

  echo -asc info ### Listing bad channels ### 

  while $hget(chans,%a).item { 

    echo -as * $v1 

    inc %a 

  } 

}