on $*:TEXT:/^[!@]Translate/Si:#: { if ($sock(Translate)) { .sockclose Translate } if ($2 != $chr(49)) && ($2 != $chr(50)) { $iif($left($1,1) == @,msg $chan,.notice $nick) 10You did not specify a language. 041 10for Dutch-English, 042 10for English-Dutch. (04!Translate 110/042 Text10) | halt } if (!$3) { $iif($left($1,1) == @,msg $chan,.notice $nick) 10Invalid command. Use: 04!Translate 110/042 Text 10- Choose 041 10for Dutch-English, 042 for English-Dutch. | halt } set %Tr.Lan $iif($2 == $chr(49),nl_en,en_nl) set %Tr.O $chr(3) $+ $chr(48) $+ $chr(52) $+ $chr(91) $+ $chr(3) $+ $chr(49) $+ $chr(48) $+ $chr(66) $+ $chr(111) $+ $chr(117) $+ $chr(110) $+ $chr(99) $+ $chr(101) $+ $chr(3) $+ $chr(48) $+ $chr(52) $+ $chr(93) set %Tr.Chan $iif($left($1,1) == @,msg $chan,.notice $nick) set %Tr.nick $nick set %Tr.Temp $3- sockopen Translate www.babelfish.altavista.com 80 } on *:SOCKOPEN:Translate: { sockwrite -nt $sockname GET /tr?lp= $+ %Tr.Lan $+ &trtext= [ $+ [ $replace(%Tr.Temp,$chr(32),%20,$chr(44),%20) ] ] HTTP/1.1 sockwrite -nt $sockname Host: www.babelfish.altavista.com $+ $crlf $+ $crlf } on *:SOCKREAD:Translate: { if ($sockerr) { %Tr.chan 10Error. Please inform %Tr.O 10of this bug. halt } else { var %sockreader sockread %sockreader if (*Yahoo! - 400 Bad Request* iswm %sockreader ) { msg %Tr.Chan 10Error. Please try again. %Tr.O sockclose Translate } if (** iswm %sockreader && %Tr.Goon == on) { %Tr.Chan 04Translation:10 %Tr.Incomplete $remove(%sockreader,) %Tr.O unset %Tr.* sockclose Translate } if (*