All pastes #453187 Raw Edit

Someone

public text v1 · immutable
·published 2007-04-22 20:29 UTC
rendered paste body
;connection
on *:connect:{
  set %serv $addtok(%serv,$server,64)
  set %cid $addtok(%cid,$cid,64)
}
on *:disconnect:{
  if ($istok(%serv,$server,64)) && ($istok(%cid,$cid,64)) {
    set %serv $remtok(%serv,$server,64)
    set %cid $remtok(%cid,$cid,64)
  }
}
on *:exit:{ unset %serv | unset %cid }
;startup menu
;error and info dialogs
#relay on
dialog info {
  title "Chat Relay by tank59"
  size -1 -1 100 60
  option dbu
  text "INFO:", 1, 45 2 15 10 
  text "", 2, 2 9 95 33  
  button "Close", 3, 10 45 20 10, cancel flat  
  link "papabear@dcdi.net", 4, 40 45 50 10
}
dialog error {
  title "Chat Relay by tank59"
  size 200 200 100 60
  option dbu
  text "ERROR:", 1, 40 6 25 10
  text "", 2, 5 15 90 25
  button "Close", 3, 10 45 20 10, cancel flat  
  link "papabear@dcdi.net", 4, 40 45 50 10
}
dialog men {
  title "Chat Relay by tank59"
  size -1 -1 100 110
  option dbu
  button "Set", 1, 30 95 20 10, ok flat 
  button "Cancel", 2, 50 95 20 10, cancel flat 
  text "Select the type of relay you would like to use.", 3, 5 5 80 25 
  check "Single Channel Relay", 4, 5 20 75 10 
  check "Multi Channel Relay", 5, 5 30 60 10
  link "papabear@dcdi.net", 7, 5 62 50 10
  text "Any bugs, comments, suggestions, send to:", 8, 5 50 90 13
  text "Visit", 10, 5 70 10 10
  text "for the best scripting resource online.", 11, 5 77 90 10
  link "http://www.hawkee.com/", 9, 16 70 62 10
  check "Nick Relay", 12, 5 40 40 10
}
;Menu dialogs
on *:dialog:men:sclick:2:{
  .disable #relay
}
on *:dialog:men:sclick:1:{
  if ($did(4).state == 0) && ($did(5).state == 0) && ($did(12).state == 0) {
    dialog -m error error
    did -ra error 2 Error:You need to select one of the three options.
    halt  
  }
  elseif ($did(4).state == 1) {
    .enable #srel
    dialog -m nrelay nrelay
  }
  elseif ($did(5).state == 1) {
    .enable #mcevent
    dialog -m mclay mclay  
  }
  elseif ($did(12).state == 1) {    
    .enable #nnsr
    dialog -m nicklay nicklay
  }
}
on *:dialog:men:sclick:*:{
  if ($did == 4) {
    did -e men 5,12
    if ($did(4).state == 1) {
      did -b men 5,12
    }
  }    
  if ($did == 5) {
    did -e men 4,12
    if ($did(5).state == 1) {
      did -b men 4,12
    }
  }      
  if ($did == 12) {
    did -e men 5,4
    if ($did(12).state == 1) {
      did -b men 5,4
    }
  }
} 
#relay end
#srel on
;nrelay dialog
dialog nrelay {
  title "Chat Relay by tank59"
  size -1 -1 120 130
  option dbu
  button "Set", 6, 55 110 20 10, ok flat 
  button "Cancel", 7, 78 110 20 10, cancel flat 
  text "To Room:", 1, 5 51 40 10
  text "From Room:", 2, 5 67 30 20
  check "Multiple-Server", 3, 5 110 50 10
  combo 4, 45 50 70 50, size drop 
  combo 5, 45 66 70 50, size drop   
  text "To Network:", 8, 5 19 70 10
  text "From Network:", 9, 5 35 45 10
  combo 10, 45 18 70 50, size drop
  combo 11, 45 34 70 50, size drop
  button "Info", 24, 5 90 15 10
  box "Single Channel Relay", 12, 2 2 116 126
}
;channel relay dialogs
on *:dialog:nrelay:sclick:7:{
  .disable #srel #relay
  unset %tc1
  unset %fc1  
  unset %channelto.cid
  unset %channelfrom.cid
}
on *:dialog:nrelay:init:0:{
  chantok
}
on *:dialog:nrelay:sclick:6:{
  if ($did(4) == $null) || ($did(5) == $null) || ($did(10) == $null) || ($did(11) == $null) {
    dialog -m error error
    did -ra error 2 Error:You need to fill in all the fields.
    halt 
  } 
  elseif (%tc1 != %fc1) && ($did(3).state == 0) {
    dialog -m error error
    did -ra error 2 Error:You have it set for multiple server. You need to select the "Multiple-Server" box.
    halt 
  }
  else {
    unset %fc1
    unset %tc1
    set %channel.to $did(4)
    set %channel.from $did(5)
    set %multi.serv $did(3).state  
  }
} 
on *:dialog:nrelay:sclick:10:{
  set %tc1 $findtok(%serv,$did(10),1,64) 
  set %channelto.cid $gettok(%cid,%tc1,64)
  did -r nrelay 4  
  scid %channelto.cid chansto
  if (%fc1 == %tc1) {
    did -b nrelay 3 
  }
  else {
    did -e nrelay 3
  }
}
on *:dialog:nrelay:sclick:11:{
  set %fc1 $findtok(%serv,$did(11),1,64)
  set %channelfrom.cid $gettok(%cid,%fc1,64)
  did -r nrelay 5  
  scid %channelfrom.cid chansfrom
  if (%fc1 == %tc1) {
    did -b nrelay 3 
  }
  else {
    did -e nrelay 3
  }
}
on *:dialog:nrelay:sclick:24:{
  dialog -m info info
  did -ra info 2 The chan relay is a function to relay everything that is happening in a certain channel to another room on the same or different server.
}
;Channel Relay Commands
on *:TEXT:*:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  < $+ $nick $+ > $1- }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  < $+ $nick $+ > $1- }
}  
on *:ACTION:*:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  6* $nick $1-  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  6* $nick $1-  }
}   
on *:JOIN:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick ( $+ $mask($address,3) $+ ) has joined %channel.from  } 
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to $+  3* $nick ( $+ $mask($address,3) $+ ) has joined %channel.from  }
}  
on *:PART:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick ( $+ $mask($address,3) $+ ) has left %channel.from ( $1- ) }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick ( $+ $mask($address,3) $+ ) has left %channel.from ( $1- ) }
}
on *:KICK:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $knick was kicked by $nick ( $+ $1- $+ ) }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $knick was kicked by $nick ( $+ $1- $+ ) }
}
on *:OP:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick sets mode: +o $opnick  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick sets mode: +o $opnick  }
}
on *:DEOP:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick sets mode: -o $opnick  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick sets mode: -o $opnick  }
}
on *:HELP:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick sets mode: +h $hnick  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick sets mode: +h $hnick  }
}
on *:DEHELP:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick sets mode: -h $hnick  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick sets mode: -h $hnick  }
}
on *:VOICE:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick sets mode: +v $vnick  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick sets mode: +v $vnick  }
}
on *:DEVOICE:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick sets mode: -v $vnick  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick sets mode: -v $vnick  }
}
on *:BAN:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick sets mode: +b $banmask  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick sets mode: +b $banmask  }
}
on *:UNBAN:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick sets mode: -b $banmask  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick sets mode: -b $banmask  }
}
on *:TOPIC:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick changes topic to ' $+ $chan(%channel.from).topic ' }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick changes topic to ' $+ $chan(%channel.from).topic ' }
}
on *:MODE:%channel.from:{
  if (%multi.serv == 0) { msg %channel.to 4 %channel.from $+  3* $nick sets mode: $1-  }
  elseif (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick sets mode: $1-  }
}
on *:QUIT:{ 
  if (%multi.serv == 0) && ($nick ison %channel.from) { msg %channel.to 4 %channel.from $+  2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) }
  elseif (%multi.serv == 1) && ($nick ison %channel.from) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) }
}  
on *:NICK:{ 
  if (%multi.serv == 0) && ($comchan($newnick,0) > 0) { msg %channel.to 4 %channel.from $+  3* $nick is now known as $newnick  }
  elseif (%multi.serv == 1) && ($comchan($newnick,0) > 0) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 %channel.from $+  3* $nick is now known as $newnick  }
}
#srel end
#nnsr off
dialog nicklay {
  title "Chat Relay by tank59"
  size -1 -1 120 130
  option dbu
  button "Set", 6, 55 110 20 10, ok flat 
  button "Cancel", 7, 78 110 20 10, cancel flat  
  text "From Network:", 14, 5 54 40 10
  text "To Network:", 15, 5 36 40 10
  edit "", 16, 45 19 70 10
  combo 17, 45 35 70 50, size drop
  combo 18, 45 53 70 50, size drop
  text "Nick to watch:", 19, 5 20 35 10
  text "To Channel:", 20, 5 71 30 10
  combo 21, 45 71 70 50, size drop
  button "Info", 22, 5 90 15 10
  check "Multiple-Server", 25, 5 110 50 10
  box "Single Nick Relay", 12, 2 2 116 126
}
;Nick relay dialogs
on *:dialog:nicklay:init:0:{
  nicktok
}
on *:dialog:nicklay:sclick:6:{
  if ($did(16) == $null) || ($did(17) == $null) || ($did(18) == $null) || ($did(21) == $null) {
    dialog -m error error
    did -ra error 2 Error:You need to fill in all the fields.
    halt 
  } 
  elseif (%tc2 != %fc2) && ($did(25).state == 0) {
    dialog -m error error
    did -ra error 2 Error:You have it set for multiple server. You need to select the "Multiple-Server" box.
    halt 
  }
  else {
    unset %fc2
    unset %tc2
    set %nickr on
    set %vic $did(16)
    set %channel.to $did(21)
    set %multi.serv $did(25).state  
  }
} 
;Nick relay dialogs
on *:dialog:nicklay:sclick:22:{
  dialog -m info info
  did -ra info 2 The nick relay is a function to relay what a paticular person is saying/doing in all channels on a server that you and him are both in to another room on the same or different server.
}
on *:dialog:nicklay:sclick:17:{
  set %tc2 $findtok(%serv,$did(17),1,64) 
  set %channelto.cid $gettok(%cid,%tc2,64)
  did -r nicklay 21  
  scid %channelto.cid nickto
  if (%fc2 == %tc2) {
    did -b nicklay 25 
  }
  else {
    did -e nicklay 25
  }
}
on *:dialog:nicklay:sclick:18:{
  set %fc2 $findtok(%serv,$did(18),1,64)
  set %channelfrom.cid $gettok(%cid,%fc2,64)
  if (%fc2 == %tc2) {
    did -b nicklay 25 
  }
  else {
    did -e nicklay 25
  }
}
on *:dialog:nicklay:sclick:7:{
  .disable #nnsr #relay
  unset %tc2
  unset %fc2  
  unset %channelto.cid
  unset %channelfrom.cid
}

;Nick Relay commands
on *:TEXT:*:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  < $+ $nick $+ > $1- }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  < $+ $nick $+ > $1- }
}  
on *:ACTION:*:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  6* $nick $1-  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  6* $nick $1-  }
}   
on *:JOIN:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has joined $chan  } 
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has joined $chan  }
}  
on *:PART:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has left $chan ( $1- ) }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has left $chan ( $1- ) }
}
on *:KICK:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $knick was kicked by $nick ( $+ $1- $+ ) }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $knick was kicked by $nick ( $+ $1- $+ ) }
}
on *:OP:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick sets mode: +o $opnick  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick sets mode: +o $opnick  }
}
on *:DEOP:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick sets mode: -o $opnick  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick sets mode: -o $opnick  }
}
on *:HELP:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick sets mode: +h $hnick  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick sets mode: +h $hnick  }
}
on *:DEHELP:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick sets mode: -h $hnick  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick sets mode: -h $hnick  }
}
on *:VOICE:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick sets mode: +v $vnick  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick sets mode: +v $vnick  }
}
on *:DEVOICE:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick sets mode: -v $vnick  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick sets mode: -v $vnick  }
}
on *:BAN:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick sets mode: +b $banmask  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick sets mode: +b $banmask  }
}
on *:UNBAN:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick sets mode: -b $banmask  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick sets mode: -b $banmask  }
}
on *:TOPIC:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick changes topic to ' $+ $chan($chan).topic ' }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick changes topic to ' $+ $chan($chan).topic ' }
}
on *:MODE:#:{
  if (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 4 $+ $chan $+  3* $nick sets mode: $1-  }
  elseif (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 4 $+ $chan $+  3* $nick sets mode: $1-  }
}
on *:QUIT:{ 
  if ($comchan($nick,0) > 0) && (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) }
  elseif ($comchan($nick,0) > 0) && (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) }
}  
on *:NICK:{
  if ($comchan($newnick,0) > 0) && (%nickr == on) && ($nick == %vic) && (%multi.serv == 0) { msg %channel.to 3* $nick is now known as $newnick  | set %vic $newnick }
  elseif ($comchan($newnick,0) > 0) && (%nickr == on) && ($nick == %vic) && (%multi.serv == 1) && (%channelfrom.cid) { scid %channelto.cid msg %channel.to 3* $nick is now known as $newnick  | set %vic $newnick }
}
#nnsr end
#mcevent off
dialog mclay {
  title "Chat Relay by tank59"
  size -1 -1 180 150
  option dbu
  button "Set", 1, 75 125 30 20, ok flat
  button "Cancel", 2, 110 125 30 20, cancel flat
  check "Multiple-Server", 3, 5 135 45 10
  combo 4, 10 10 70 50, size drop
  combo 7, 102 10 70 50, size drop
  combo 10, 10 68 70 50, size drop
  combo 11, 10 83 70 50, size drop
  combo 12, 10 98 70 50, size drop
  combo 13, 102 68 70 50, size drop
  combo 14, 102 83 70 50, size drop
  combo 15, 102 98 70 50, size drop
  box "To Network", 16, 2 2 83 25
  box "From Network", 17, 94 2 83 25
  box "To Channels", 18, 2 60 83 55 
  box "From Channels", 19, 94 60 83 55
  button "Info", 20, 5 120 12 10
  text "1.", 27, 5 69 5 10
  text "2.", 28, 5 84 5 10
  text "3.", 29, 5 99 5 10
  text "1.", 30, 97 69 5 10 
  text "2.", 31, 97 84 5 10 
  text "3.", 32, 97 99 5 10
}
;multiple channel dialogs
on *:dialog:mclay:sclick:2:{
  .disable #mcevent #relay
  unset %channelto.cid
  unset %channelfrom.cid
  unset %tc3
  unset %fc3
}
on *:dialog:mclay:init:0:{
  mulchan
}
on *:dialog:mclay:sclick:20:{
  dialog -m info info
  did -ra info 2 The multi channel relay is to relay what is said in up to three rooms into three other rooms on the same or different server.
}
on *:dialog:mclay:sclick:1:{
  if ($did(4) == $null) && ($did(7) == $null) && ($did(10) == $null) && ($did(11) == $null) && ($did(12) == $null) && ($did(13) == $null) && ($did(14) == $null) && ($did(15) == $null) {
    dialog -m error error
    did -ra error 2 Error:You need to fill in the required fields.
    halt 
  } 
  elseif ($did(4) == $null) || ($did(7) == $null) {
    dialog -m error error    
    did -ra error 2 Error:You need to fill in the required fields.
    halt 
  }
  elseif ($did(10) == $null) && ($did(11) == $null) && ($did(12) == $null) {
    dialog -m error error    
    did -ra error 2 Error:You need to fill in at least one To Channel.
    halt 
  }
  elseif ($did(13) == $null) && ($did(14) == $null) && ($did(15) == $null) {
    dialog -m error error    
    did -ra error 2 Error:You need to fill in at least one From Channel.
    halt 
  }
  elseif (%tc3 != %fc3) && ($did(3).state == 0) {
    dialog -m error error
    did -ra error 2 Error:You need to check the "Multiple-Server" option as you have it set for multiple server relaying.
    halt 
  }
  else {
    unset %fc3
    unset %tc3
    set %channel.to1 $did(10)
    set %channel.to2 $did(11)
    set %channel.to3 $did(12)
    set %channel.from1 $did(13)
    set %channel.from2 $did(14)
    set %channel.from3 $did(15)
    set %multi.serv $did(3).state  
  }
} 
on *:dialog:mclay:sclick:*:{
  if ($did == 4) {  
    set %tc3 $findtok(%serv,$did(4),1,64) 
    set %channelto.cid $gettok(%cid,%tc3,64)    
    did -r mclay 10,11,12  
    scid %channelto.cid mulchanto
  }
  elseif ($did == 7) {  
    set %fc3 $findtok(%serv,$did(7),1,64) 
    set %channelfrom.cid $gettok(%cid,%fc3,64)
    did -r mclay 13,14,15  
    scid %channelfrom.cid mulchanfrom
  }
}
;multiple channel events
on *:TEXT:*:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  < $+ $nick $+ > $1- }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  < $+ $nick $+ > $1- }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  < $+ $nick $+ > $1- }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  < $+ $nick $+ > $1- } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  < $+ $nick $+ > $1- }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  < $+ $nick $+ > $1- }
}  
on *:ACTION:*:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  6* $nick $1-  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  6* $nick $1-  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  6* $nick $1-  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  6* $nick $1-  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  6* $nick $1-  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  6* $nick $1-  }
}  
on *:JOIN:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has joined $chan  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has joined $chan  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has joined $chan  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has joined $chan  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has joined $chan  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has joined $chan  }
}  
on *:PART:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has left $chan ( $1- ) }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has left $chan ( $1- ) }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has left $chan ( $1- ) }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has left $chan ( $1- ) } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has left $chan ( $1- ) }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick ( $+ $mask($address,3) $+ ) has left $chan ( $1- ) }
}  
on *:KICK:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $knick was kicked by $nick ( $+ $1- $+ ) }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $knick was kicked by $nick ( $+ $1- $+ ) }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $knick was kicked by $nick ( $+ $1- $+ ) }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $knick was kicked by $nick ( $+ $1- $+ ) } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $knick was kicked by $nick ( $+ $1- $+ ) }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $knick was kicked by $nick ( $+ $1- $+ ) }
}  
on *:OP:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: +o $opnick  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: +o $opnick  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: +o $opnick  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: +o $opnick  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: +o $opnick  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: +o $opnick  }
}  
on *:DEOP:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: -o $opnick  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: -o $opnick  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: -o $opnick  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: -o $opnick  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: -o $opnick  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: -o $opnick  }
}  
on *:HELP:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: +h $hnick  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: +h $hnick  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: +h $hnick  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: +h $hnick  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: +h $hnick  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: +h $hnick  }
}  
on *:DEHELP:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: -h $hnick  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: -h $hnick  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: +h $hnick  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: -h $hnick  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: -h $hnick  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: -h $hnick  }
}  
on *:VOICE:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: +v $vnick  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: +v $vnick  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: +v $vnick  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: +v $vnick  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: +v $vnick  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: +v $vnick  }
}  
on *:DEVOICE:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: -v $vnick  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: -v $vnick  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: -v $vnick  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: -v $vnick  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: -v $vnick  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: -v $vnick  }
}  
on *:BAN:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: +b $banmask  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: +b $banmask  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: +b $banmask  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: +b $banmask  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: +b $banmask  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: +b $banmask  }
}  
on *:UNBAN:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: -b $banmask  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: -b $banmask  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: -b $banmask  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: -b $banmask  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: -b $banmask  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: -b $banmask  }
}  
on *:TOPIC:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick changes topic to ' $+ $chan($chan).topic ' }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick changes topic to ' $+ $chan($chan).topic ' }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick changes topic to ' $+ $chan($chan).topic ' }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick changes topic to ' $+ $chan($chan).topic ' } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick changes topic to ' $+ $chan($chan).topic ' }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick changes topic to ' $+ $chan($chan).topic ' }
}  
on *:MODE:%channel.from1,%channel.from2,%channel.from3:{
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: $1-  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: $1-  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: $1-  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick sets mode: $1-  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick sets mode: $1-  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick sets mode: $1-  }
}  
on *:QUIT:{ 
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  2* $nick ( $+ $mask($address,3) $+ ) Quit ( $+ $1- $+ ) }
}  
on *:NICK:{ 
  if (%multi.serv == 0) && (%channel.to2 == $null) && (%channel.to3 == $null) { msg %channel.to1 4 $+ $chan $+  3* $nick is now known as $newnick  }
  elseif (%multi.serv == 0) && (%channel.to3 == $null) { msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick is now known as $newnick  }
  elseif (%multi.serv == 0) { msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick is now known as $newnick  }
  elseif (%multi.serv == 1) && (%channel.to2 == $null) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 4 $+ $chan $+  3* $nick is now known as $newnick  } 
  elseif (%multi.serv == 1) && (%channel.to3 == $null) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 4 $+ $chan $+  3* $nick is now known as $newnick  }
  elseif (%multi.serv == 1) { scid %channelto.cid msg %channel.to1 $+ , $+ %channel.to2 $+ , $+ %channel.to3 4 $+ $chan $+  3* $nick is now known as $newnick  }
}  
#mcevent end
;alias's used in dialogs
alias mulchanto {
  var %c 1
  while (%c <= $chan(0)) {
    did -a mclay 10,11,12 $chan(%c)
    inc %c
  }
}
alias mulchanfrom {
  var %c 1
  while (%c <= $chan(0)) {
    did -a mclay 13,14,15 $chan(%c)
    inc %c
  }
}
alias mulchan {
  var %t 1
  while (%t <= $numtok(%serv,64)) {
    did -a mclay 4,7 $gettok(%serv,%t,64)
    inc %t    
  }
}
alias nicktok {
  var %t 1
  while (%t <= $numtok(%serv,64)) {
    did -a nicklay 17,18 $gettok(%serv,%t,64)
    inc %t    
  }
}
alias chantok {
  var %t 1
  while (%t <= $numtok(%serv,64)) {
    did -a nrelay 10,11 $gettok(%serv,%t,64)
    inc %t    
  }
}
alias nickto {
  var %c 1
  while (%c <= $chan(0)) {
    did -a nicklay 21 $chan(%c)
    inc %c
  }
}
alias chansto {
  var %c 1
  while (%c <= $chan(0)) {
    did -a nrelay 4  $chan(%c)
    inc %c
  }
}
alias chansfrom {
  var %c 1
  while (%c <= $chan(0)) {
    did -a nrelay 5 $chan(%c)
    inc %c
  }
}

menu * {
  Turn Relay $iif($group(#relay) == on,Off,On) { 
    if ($group(#relay) == on) { 
      .disable #relay #srel #mcevent #nnsr | echo -a *Relay Script Disabled | unset %channel.to | unset %channel.from | unset %multi.serv | unset %channelto.cid | unset %channelfrom.cid | unset %vic | unset %nickr | unset %channel.to1 | unset %channel.to2 | unset %channel.to3 | unset %channel.from1 | unset %channel.from2 | unset %channel.from3  
    }  
    else { .enable #relay | dialog -m men men } 
  }
}