All pastes #1262995 Raw Edit

Stuff

public text v1 · immutable
#1262995 ·published 2008-11-20 21:14 UTC
rendered paste body


Dialog -l Connected { 
  Title "CloneX by Marko" 
  Size -1 -1 140 160 
  Option dbu 
  Box "", 1, 5 3 130 150 
  List 2, 12 13 115 125, Extsel Sort Size 
  Text "Connected", 3, 12 140 30 9 
  Text "0", 4, 50 140 20 9 
} 
On *:Dialog:Connected:Init:*:{ 
  Connected 
} 
Dialog -l Commands { 
  Title "CloneX by Marko" 
  Size -1 -1 200 200 
  Option dbu 
} 
Dialog -l Grabber { 
  Title "CloneX by Marko" 
  Size -1 -1 100 158 
  Option dbu 
  Box "", 1, 5 3 89 148 
  List 2, 12 13 75 100, Extsel Sort Size 
  Text "Site", 3, 12 120 20 9 
  Edit "", 4, 40 120 47 9, Autohs 
  Button "Search", 5, 12 133 75 11 
} 
On *:Sockopen:Grabber.*:{ 
  Sockwrite -nt $Sockname GET $Chr(47) $+ $Gettok($Remove($Did(Grabber,4),http://),2-,47) HTTP/1.0 
  Sockwrite -nt $Sockname Host: $Gettok($Regsubex($Did(Grabber,4),/http:///g,),1,47) 
  Sockwrite -nt $Sockname $Crlf 
} 
On *:Sockread:Grabber.*:{ 
  Sockread %Grabber 
  If ($Regex(%Grabber,/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}[: ]\d{1,5})/)) && (!$Didwm(Grabber,2,$Regml(1))) { 
    Did -a Grabber 2 $Regml(1) 
  } 
} 
On *:Dialog:Grabber:Sclick:5:{ 
  Sockopen Grabber. $+ $Ticks $Gettok($Remove($Did(Grabber,4),http://),1,47) 80 
} 
Menu * { 
  CloneX:CloneX 
} 
Alias CloneX { 
  If (!$Dialog(CloneX)) { 
    Dialog -md CloneX CloneX 
  } 
  Elseif ($Dialog(CloneX)) { 
    Dialog -v CloneX 
  } 
} 
Dialog -l CloneX { 
  Title "CloneX by Marko" 
  Size -1 -1 225 200 
  Option dbu 
  Tab "Configuration", 1, 5 5 215 175 
  Tab "Commands", 2 
  Tab "Status", 3 
  Box "", 4, 10 20 204 155, Tab 1 
  Text "Server", 5, 15 30 20 9, Tab 1 
  Edit "irc.swiftirc.net", 6, 50 29 50 9, Autohs Tab 1 
  Text "Port", 7, 15 41 20 9, Tab 1 
  Edit "6667", 8, 50 40 22 9, Limit 5 Number Tab 1 
  Text "Connections", 9, 15 52 30 9, Tab 1 
  Edit "1", 10, 50 51 22 9, Limit 3 Number Tab 1 
  Text "Protocol", 11, 15 74 20 9, Tab 1 
  Combo 12, 50 73 35 9, Drop Tab 1 
  Box "", 13, 15 85 90 42, Tab 1 
  Text "Identd", 14, 20 93 20 9, Tab 1 
  Edit "BoT", 15, 50 92 35 9, Autohs Limit 9 Tab 1 
  Text "Nick", 16, 20 104 20 9, Tab 1 
  Edit "BoT#####", 17, 50 103 50 9, Autohs Tab 1 
  Text "Realname", 18, 20 115 25 9, Tab 1 
  Edit "BoT", 19, 50 114 50 9, Autohs Limit 50 Tab 1 
  Text "Raw", 20, 52 134 33 9, Tab 1 
  Edit "Join #chan", 21, 20 143 80 23, Multi Return Autohs Vsbar Tab 1 
  Text "Delay", 22, 15 63 20 9, Tab 1 
  Edit "0", 23, 50 62 22 9, Number Limit 3 Tab 1 
  Box "", 24, 15 129 90 41, Tab 1 
  List 25, 128 44 75 100, Extsel Sort Size Tab 1 
  Box "", 26, 122 25 87 136, Tab 1 
  Button "&Import", 27, 130 32 35 11, Tab 1 
  Button "Export", 28, 166 32 35 11, Tab 1 
  Button "Copy", 29, 130 145 35 11, Tab 1 
  Button "Paste", 30, 166 145 35 11, Tab 1 
  Combo 31, 55 184 45 11, Drop 
  Button "Connect", 32, 5 184 45 11, Drop 
  Text "Connected", 33, 140 181 60 9 
  Text "0", 34, 180 181 30 9 
  Text "Connections", 35, 140 190 60 9 
  Text "0", 36, 180 190 30 9 
  Box "", 37, 10 20 87 128, Tab 2 
  List 38, 16 29 75 100, Extsel Sort Size Tab 2 
  Text "Command", 39, 16 133 25 9, Tab 2 
  Combo 40, 55 131 35 9, Drop Tab 2 
  Button "Raw", 41, 100 23 35 11, Tab 2 
  Edit "", 42, 142 24 70 9, Autohs Tab 2 
  Box "", 43, 10 20 204 155, Tab 3 
  Edit "", 44, 16 30 192 139, Multi Return Hsbar Vsbar Tab 3 
  Menu "Dialogs", 45 
  Item "&Connected", 46 
  Item "&Commands", 47 
  Item "&Grabber", 48 

  Text "CloneX by Marko", 50, 139 163 70 9, Disable Tab 1 
} 
On *:Dialog:CloneX:Init:*:{ 
  Did -a $Dname 12 Normal 
  Did -a $Dname 12 Proxy 
  Did -a $Dname 12 Sock 
  Did -c $Dname 12 1 
  Did -a $Dname 31 Connect 
  Did -a $Dname 31 Disconnect 
  Did -a $Dname 31 Close Sockets 
  Did -a $Dname 31 Exit 
  Did -a $Dname 31 All 
  Did -c $Dname 31 1 
  Did -a $Dname 40 All 
  Did -a $Dname 40 Selected 
  Did -c $Dname 40 1 
  Statistics 
} 
On *:Dialog:CloneX:Sclick:*:{ 
  If ($Did == 27) { 
    Var %h = $Sfile($Mircdir,$Dname,Import) 
    If (%h) { 
      Var %g = 1 
      While ($Read(%h,%g)) { 
        If ($Regex($Read(%h,%g),/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}[: ]\d{1,5})/)) && (!$Didwm(25,$Regml(1))) { 
          Did -a $Dname 25 $Replace($Regml(1),$Chr(32),$Chr(58)) 
        } 
        Inc %g = 1 
      } 
    } 
  } 
  Elseif ($Did == 28) { 
    If ($Did(25).Lines) { 
      Var %Input = $Input(Do you want to save the list before you clear it?,nv,$Dname) 
      If (%Input == $yes) { 
        Var %Savedir = $Mircdir $+ $Did(12) $+ $Chr(46) $+ $Replace($Date(mm dd yy),$Chr(32),$Chr(46)) $+ .ini 
        Var %i = 1 
        While ($Did(25,%i)) { 
          If (!$Read(%Savedir,w,$Did(25,%i))) { 
            Write %Savedir $Did(25,%i) 
            If (%i == $Did(25).Lines) { 
              Did -r $Dname 25 
            } 
          } 
          Inc %i = 1 
        } 
      } 
      Elseif (%Input == $no) { 
        Did -r $Dname 25 
      } 
    } 
  } 
  Elseif ($Did == 29) { 
    If ($Did(25).Lines) { 
      Clipboard 
      Var %j = 1 
      While ($Did(25,%j)) { 
        Clipboard -an $Did(25,%j) 
        Inc %j = 1 
      } 
    } 
  } 
  Elseif ($Did == 30) { 
    Var %f = 1 
    While (%f <= $Cb(0)) { 
      If ($Regex($Cb(%f),/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}[: ]\d{1,5})/)) && (!$Didwm(25,$Regml(1))) { 
        Did -a $Dname 25 $Replace($Regml(1),$Chr(32),$Chr(58)) 
      } 
      Inc %f = 1 
    } 
  } 
  Elseif ($Did == 31) { 
    If ($Did($Did) != All) { 
      Did -ra $Dname 32 $Did($Did) 
    } 
    If ($Did(32) == Connect) { 
      If (!$Did($Did,5)) && (!$Did($Did,6)) { 
        Did -a $Dname $Did All 
      } 
    } 
    Elseif ($Did(32) != Connect) { 
      If ($Did($Did,5)) { 
        Did -d $Dname $Did 5 
      } 
    } 
  } 
  Elseif ($Did == 32) { 
    If ($Did($Did) == Connect) { 
      If ($Did(8) !isnum 1-65535) { 
        Return $Error(Invalid port number.) 
      } 
      Elseif (*.*.* !iswm $Did(6)) { 
        Return $Error(Invalid server name.) 
      } 
      Elseif ($Left($Did(17),1) isnum) { 
        Return $Error(The first character of a nick cannot contain a number.) 
      } 
      Elseif ($Did(10) !isnum 1-999) { 
        Return $Error(Invalid amount of connections.) 
      } 
      Elseif ($Did(12) != Normal) && (!$Did(25).Lines) { 
        Return $Error(Enter a $Did(12) in the $Did(12) list.) 
      } 
      Elseif (*?.?* iswm $Did(17)) && (!$Isfile($Did(17))) { 
        Return $Error(The file $Qt($Did(17)) does not exist.) 
      } 
      Elseif (!$Longip($Did(6))) { 
        .Enable #Dns 
        .Dns -c $Did(6) 
      } 
      Else { 
        If ($Did(31) == All) && ($Did(12) != Normal) { 
          Var %All = 1 
          While ($Did(25,%All)) { 
            Sockopen $Dname $+ $Chr(46) $+ $Did(12) $+ $Chr(46) $+ $Ticks $Replace($Did(25,%All),$Chr(58),$Chr(32)) 
            Inc %All = 1 
          } 
        } 
        Else { 
          .Timer $+ $Dname $Did(10) $Did(23) Connect 
        } 
      } 
      Statistics 
    } 
    Elseif ($Did($Did) == Disconnect) { 
      If ($Sock($Dname $+ .*,0)) { 
        .Timers off 
        Sockwrite -nt $Dname $+ .* Quit $Dname 
        Sockclose $Dname $+ .* 
        Did -ra $Dname 34 0 
        Did -ra $Dname 36 0 
        Did -r $Dname 38 
      } 
    } 
    Elseif ($Did($Did) == Close Sockets) { 
      .Timers off 
      Var %c = 1 
      While ($Sock($Dname $+ .*,%c)) { 
        If (!$Sock($Dname $+ .*,%c).Mark) { 
          Sockclose $Sock($Dname $+ .*,%c) 
        } 
        Inc %c = 1 
      } 
      Statistics 
    } 
    Elseif ($Did($Did) == Exit) { 
      .Timers off 
      Sockclose $Dname $+ .* 
      Dialog -x $Dname 
    } 
  } 
  Elseif ($Did == 41) { 
    Command $Did(40) $Did(42) 
  } 
} 
On *:Dialog:CloneX:Dclick:*:{ 
  If ($Did == 25) { 
    If ($Did($Did,0).Sel) { 
      Did -d $Dname $Did $Did($Did,$Did($Did,0).Sel).Sel 
    } 
    Elseif (!$Did($Did,0).Sel) { 
      Return $Error(You have not selected any text to remove.) 
    } 
  } 
} 
On *:Dialog:CloneX:Menu:*:{ 
  If ($Did == 46) { 
    If (!$Dialog(Connected)) { 
      Dialog -md Connected Connected 
    } 
    Elseif ($Dialog(Connected)) { 
      Dialog -v Connected 
    } 
  } 
  Elseif ($Did == 47) { 
    If (!$Dialog(Commands)) { 
      Dialog -md Commands Commands 
    } 
    Elseif ($Dialog(Commands)) { 
      Dialog -v Commands 
    } 
  } 
  Elseif ($Did == 48) { 
    If (!$Dialog(Grabber)) { 
      Dialog -md Grabber Grabber 
    } 
    Elseif ($Dialog(Grabber)) { 
      Dialog -v Grabber 
    } 
  } 
} 
On *:Dialog:CloneX:Close:*:{ 
  If ($Dialog(Connected)) { 
    Dialog -c Connected 
  } 
  If ($Dialog(Commands)) { 
    Dialog -c Commands 
  } 
  If ($Dialog(Grabber)) { 
    Dialog -c Grabber 
  } 
} 
#Dns off
On *:Dns:{ 
  Var %Dname = CloneX 
  If ($Raddress) { 
    Did -ra %Dname 6 $Raddress 
    If ($Dialog(%Dname)) { 
      .Timer $+ %Dname $Did(%Dname,10) $Did(%Dname,23) Connect 
    } 
  } 
  Elseif (!$Raddress) { 
    Return $Error(Dns unable to resolve $Qt($Did(%Dname,6))) 
  } 
  .Disable #Dns 
} 
#Dns End 
On *:Sockopen:CloneX.*:{ 
  If ($Sockerr) { 
    Sockclose $Sockname 
  } 
  If ($Gettok($Sockname,2,46) == Normal) { 
    Info $Sockname 
  } 
  If ($Gettok($Sockname,2,46) == Proxy) { 
    Sockwrite $Sockname Connect $Did($Gettok($Sockname,1,46),6) $+ $Chr(58) $+ $Did($Gettok($Sockname,1,46),8) HTTP/1.0 
    Sockwrite $Sockname $Crlf $+ $Crlf $+ $Crlf 
    Info $Sockname 
  } 
  Elseif ($Gettok($Sockname,2,46) == Sock) { 
    Bset &Clone 1 5 1 0 
    Sockwrite $Sockname &Clone 
  } 
} 
On *:Sockread:CloneX.*:{ 
  If ($Sockerr) { 
    Sockclose $Sockname 
  } 
  If ($Gettok($Sockname,2,46) == Sock) && (!$Sock($Sockname).Mark) { 
    Sockread &Read 
    If ($Bvar(&Read,1,2) == 5 0) && ($Bvar(&Read,3)) { 
      Var %Server = $Replace($Did($Gettok($Sockname,1,46),6),$Chr(46),$Chr(32)) 
      Var %Port = $Gettok($Longip($Did($Gettok($Sockname,1,46),8)),3,46) $Gettok($Longip($Did($Gettok($Sockname,1,46),8)),4,46) 
      Bset &Clone.Send 1 5 1 0 1 %Server %Port 
      Sockwrite $Sockname &Clone.Send 
    } 
    If ($Bvar(&Read,1,3) == 5 0 0) { 
      Sockmark $Sockname 001 
      Info $Sockname 
    } 
  } 
  Sockread %CloneX 
  Tokenize 32 %CloneX 
  If ($1 == Ping) { 
    Sockwrite -nt $Sockname Pong : $+ $Gettok($2,1,58) 
  } 
  Elseif ($2 == Privmsg) { 
    If ($Count($4,$Chr(58)) == 1) { 
      If ($Gettok($4,2,1) == Ping) && ($5) { 
        Sockwrite -nt $Sockname Notice $Gettok($Gettok($1,1,33),1,58) $4 $5 
      } 
      Elseif ($Gettok($4,2,1) == Time) { 
        Sockwrite -nt $Sockname $2 $Gettok($Gettok($1,1,33),1,58) $Left($4,-1) $Asctime 
      } 
      Elseif ($Gettok($4,2,1) == Version) { 
        Sockwrite -nt $Sockname $2 $Gettok($Gettok($1,1,33),1,58) $Left($4,-1) $Gettok($Sockname,1,46) 
      } 
    } 
  } 
  Elseif ($2 == Nick) { 
    If ($Sock($Sockname).Mark == $Gettok($Gettok($1,1,33),1,58)) { 
      If ($Dialog($Gettok($Sockname,1,46))) { 
        Did -o $Gettok($Sockname,1,46) 38 $Didwm($Gettok($Sockname,1,46),38,$Sock($Sockname).Mark) $Gettok($Gettok($3,1,33),1,58) 
      } 
      Sockmark $Sockname $Gettok($Gettok($3,1,33),1,58) 
    } 
  } 
  Elseif ($2 == 001) { 
    If ($3) { 
      If ($Dialog($Gettok($Sockname,1,46))) { 
        Did -a $Gettok($Sockname,1,46) 38 $3 
      } 
      Var %b = 1 
      While ($Did($Gettok($Sockname,1,46),21,%b)) { 
        Command $Sockname $Replace($Gettok($Did($Gettok($Sockname,1,46),21,%b),1,47),$!Nick,$3) 
        Inc %b = 1 
      } 
      Sockmark $Sockname $3 
    } 
    Statistics 
    Connected 
  } 
  Elseif (43? iswm $2) { 
    If (!$Sock($Sockname).Mark) { 
      Var %Nick = $Regsubex($Str(-,10),/-/g,$Rand(a,z)) 
      If ($Did($Gettok($Sockname,1,46),17)) { 
        Var %Nick = $Regsubex($Regsubex($Did($Gettok($Sockname,1,46),17),/#/g,$Rand(0,9)),/&/g,$Rand(a,z)) $+ $Regsubex($Str(-,5),/-/g,$Rand(0,9)) 
      } 
      Elseif ($Isfile($Did($Gettok($Sockname,1,46),17))) { 
        Var %Nick = $Read($Did($Gettok($Sockname,1,46),17)) 
      } 
      Sockwrite -nt $Sockname Nick %Nick 
      Sockmark $Sockname $2 
    } 
    Elseif (43? iswm $Sock($Sockname).Mark) { 
      Sockwrite -nt $Sockname Nick $Regsubex($Str(-,10),/-/g,$Rand(a,z)) 
    } 
  } 
  If ($Dialog($Gettok($Sockname,1,46))) { 
    If (%CloneX) && ($Sock($Sockname).Mark !isnum) { 
      Did -i $Gettok($Sockname,1,46) 44 $Did($Gettok($Sockname,1,46),44).Lines %CloneX 
    } 
    Did -ra $Gettok($Sockname,1,46) 36 $Sock($Gettok($Sockname,1,46) $+ .*,0) 
  } 
  Unset %CloneX 
} 
On *:Sockclose:CloneX.*:{ 
  If ($Sock($Sockname).Mark !isnum) { 
    If ($Dialog($Gettok($Sockname,1,46))) && ($Didwm($Gettok($Sockname,1,46),38,$Sock($Sockname).Mark)) { 
      Did -d $Gettok($Sockname,1,46) 38 $Didwm($Gettok($Sockname,1,46),38,$Sock($Sockname).Mark) 
    } 
  } 
  Statistics 
  Connected 
} 
Alias -l Error { 
  Return $Input($1-,o,CloneX) 
} 
Alias -l Statistics { 
  If ($Dialog(CloneX)) { 
    Did -ra CloneX 36 $Sock(CloneX.*,0) 
    Did -r CloneX 38 
    Var %k = 1 
    While ($Sock(CloneX.*,%k)) { 
      If ($Sock(CloneX.*,%k).Mark) && ($Sock(CloneX.*,%k).Mark !isnum) { 
        If (!$Didwm(CloneX,38,$Sock(CloneX.*,%k).Mark)) { 
          Did -a CloneX 38 $Sock(CloneX.*,%k).Mark 
        } 
      } 
      Inc %k = 1 
    } 
    Did -ra CloneX 34 $Did(CloneX,38).Lines 
  } 
} 
Alias -l Connected { 
  If ($Dialog(Connected)) { 
    Did -r Connected 2 
    Var %Connected = 1 
    While ($Sock(CloneX.*,%Connected)) { 
      If ($Sock(CloneX.*,%Connected).Mark) && ($Sock(CloneX.*,%Connected).Mark !isnum) && ($Gettok($Sock(CloneX.*,%Connected),2,46) != Normal) { 
        If ($Didwm(Connected,2,$Sock(CloneX.*,%Connected).Ip $+ $Chr(58) $+ $Sock(CloneX.*,%Connected).Port $+ $Chr(42))) { 
          Did -o Connected 2 $V1 $Gettok($Did(Connected,2,$V1),1,1) $Chr(1) $Gettok($Sock(CloneX.*,%Connected),2,46) $Chr(1) $Calc($Gettok($Did(Connected,2,$V1),3,1) + 1) 
        } 
        Else { 
          Did -a Connected 2 $Sock(CloneX.*,%Connected).Ip $+ $Chr(58) $+ $Sock(CloneX.*,%Connected).Port $Chr(1) $Gettok($Sock(CloneX.*,%Connected),2,46) $Chr(1) 1 
        } 
      } 
      Inc %Connected = 1 
    } 
    Did -a Connected 4 $Did(Connected,2).Lines 
  } 
} 
Alias -l Connect { 
  Var %d = $Ticks 
  If ($Did(CloneX,12) == Normal) { 
    Sockopen CloneX $+ $Chr(46) $+ $Did(CloneX,12) $+ $Chr(46) $+ %d $Did(CloneX,6) $Did(CloneX,8) 
  } 
  Else { 
    If (!$Hget(List)) { 
      Hadd -m List 1 1 
    } 
    Elseif (!$Did(CloneX,25,$Hget(List,1))) { 
      Hadd List 1 1 
    } 
    Sockopen CloneX $+ $Chr(46) $+ $Did(CloneX,12) $+ $Chr(46) $+ %d $Replace($Did(CloneX,25,$Hget(List,1)),$Chr(58),$Chr(32)) 
    Hinc List 1 
  } 
} 
Alias -l Info { 
  Var %Nick = $Regsubex($Str(-,10),/-/g,$Rand(a,z)), %User = $Left(%Nick,9), %Name = %Nick 
  If ($Did($Gettok($1,1,46),17)) { 
    Var %Nick = $Regsubex($Regsubex($Did($Gettok($1,1,46),17),/#/g,$Rand(0,9)),/&/g,$Rand(a,z)) 
  } 
  Elseif ($Isfile($Did($Gettok($1,1,46),17))) { 
    Var %Nick = $Read($Did($Gettok($1,1,46),17)) 
  } 
  If ($Did($Gettok($1,1,46),15)) { 
    Var %User = $Regsubex($Regsubex($Did($Gettok($1,1,46),15),/#/g,$Rand(0,9)),/&/g,$Rand(a,z)) 
  } 
  If ($Did($Gettok($1,1,46),19)) { 
    Var %Name = $Did($Gettok($1,1,46),19) 
  } 
  Sockwrite -nt $1 User %User "" "" : $+ %Name 
  Sockwrite -nt $1 Nick %Nick 
} 
Alias -l Command { 
  Var %Command = 1 
  While ($Sock(CloneX.*,%Command)) { 
    If ($Sock(CloneX.*,%Command).Mark !isnum) { 
      If ($1 == All) { 
        Var %Sockname = $Sock(CloneX.*,%Command) 
      } 
      Elseif ($1 == Selected) { 
        Var %e = 1, %Dname = CloneX 
        While ($Did(%Dname,38,%e)) { 
          If ($Did(%Dname,38,%e).State == 1) && ($Did(%Dname,38,%e) == $Sock(CloneX.*,%Command).Mark) { 
            Var %Sockname = $Sock(CloneX.*,%Command) 
            Goto Command 
          } 
          Inc %e = 1 
        } 
      } 
    } 
    Elseif ($Gettok($1,1,46) == CloneX) { 
      Var %Sockname = $1 
    } 
    :Command 
    If (%Sockname) { 
      If ($Gettok($2,1,47) == Join) { 
        Sockwrite -nt %Sockname Join $3 
      } 
      Elseif ($Gettok($2,1,47) == Part) { 
        Sockwrite -nt %Sockname Part $3 : $+ $4- 
      } 
      Elseif ($Gettok($2,1,47) == Notice) { 
        Sockwrite -nt %Sockname Notice $3 : $+ $4- 
      } 
      Elseif ($Gettok($2,1,47) == Msg) { 
        Sockwrite -nt %Sockname Privmsg $3 : $+ $4- 
      } 
      Elseif ($Gettok($2,1,47) == Action) { 
        Sockwrite -nt %Sockname Privmsg $3 : $+ $Chr(1) $+ Action $4- 
      } 
      Elseif ($Gettok($2,1,47) == Ctcp) { 
        Sockwrite -nt %Sockname Privmsg $3 $Chr(1) $+ $4- $+ $Chr(1) 
      } 
      Elseif ($Gettok($2,1,47) == Dccsend) { 
        Sockwrite -nt %Sockname Privmsg $3 : $+ $Chr(1) $+ Dcc Send $4 ? 1024 
      } 
      Elseif ($Gettok($2,1,47) == Dccchat) { 
        Sockwrite -nt %Sockname Privmsg $3 : $+ $Chr(1) $+ Dcc Chat ? ? 1024 
      } 
      Elseif ($Gettok($2,1,47) == Hop) { 
        Sockwrite -nt %Sockname Join $3 
        Sockwrite -nt %Sockname Part $3 : $+ $4- 
      } 
      Elseif ($Gettok($2,1,47) == Nick) { 
        Var %Nick = $Regsubex($Str(-,10),/-/g,$Rand(a,z)) 
        If ($3) { 
          Var %Nick = $Regsubex($3,/#/g,$Rand(0,9)),/&/g,$Rand(a,z)) 
        } 
        Elseif ($Isfile($3)) { 
          Var %Nick = $Read($3) 
        } 
        Sockwrite -nt %Sockname Nick %Nick 
      } 
      Else { 
        Sockwrite -nt %Socklname $Gettok($2,1,47) $Replace($3-,$!Nick,$Sock(CloneX.*,%Command).Mark) 
      } 
    } 
    Inc %Command = 1 
  } 
}