Administrators chain Posted July 18, 2022 Administrators Report Share Posted July 18, 2022 alias calc { echo -a 12Calculation: $calc($1-) } ;;;;; ################# SHOW UPTIME --------------------------------------------------------------------------------------- menu channel,nicklist { System Uptime://echo -a 12Uptime:7 $uptime(system,1) | .timerUPTIME 0 3 /uptdate } alias uptdate { titlebar UP: $uptime(system,1) } ;;;;; ################# GET NICK BACK ---------------k-------------------------------------------- on *:UNOTIFY:{ if ($nick == Eneerge) { /nick Eneerge } } alias bw { if ($1 == $NULL) { echo -a No Input! | haltdef } if ($me ison $1) { if ($2 == $NULL) { echo -a No Input! | haltdef } else { var %currentword_index = $numtok($2-,32) var %inv_word = $NULL while (%currentword_index > 0) { var %currentword = $gettok($2-,%currentword_index,32) var %inv_word while ($len(%currentword) > 0) { var %inv_word = %inv_word $+ $right(%currentword,1) var %currentword = $left(%currentword,-1) } var %inv_msg = %inv_msg $+ $chr(32) $+ %inv_word dec %currentword_index } /msg $1 %inv_msg } } else { var %currentword_index = $numtok($1-,32) var %inv_word = $NULL while (%currentword_index > 0) { var %currentword = $gettok($1-,%currentword_index,32) var %inv_word while ($len(%currentword) > 0) { var %inv_word = %inv_word $+ $right(%currentword,1) var %currentword = $left(%currentword,-1) } var %inv_msg = %inv_msg $+ $chr(32) $+ %inv_word dec %currentword_index } /msg $chan %inv_msg } } ;;;;; ################# Safe Rejoin After Kick ----------------------------------------------------------- on *:KICK:#:{ if ($knick == $me) { .timer 1 5 hop # } } ;;;;; ################# CHECK FOR UN-USED SERVERS --------------------------------------------------------------------- alias check { var %disconnect = $?!="Would you like to disconnect and close the window? ( $+ $server $+ )" if (%disconnect = $true) { /scid $cid window -c "Status Window" } } on me:*:PART:#:{ if ($chan(0) <= 1) { .timerCHECK 1 1 check } } ;;;; ################# HEX URL CONVERSION -------------------------------------------------------------------------------- on 1:DNS:{ var %n = $dns(0) echo -a -=4 Found %n addresses - $dns(%n).nick while (%n > 0) { var %quad1 = $gettok($dns(%n).ip,1,46) var %hex1 = $base(%quad1,10,16) var %quad2 = $gettok($dns(%n).ip,2,46) var %hex2 = $base(%quad2,10,16) var %quad3 = $gettok($dns(%n).ip,3,46) var %hex3 = $base(%quad3,10,16) var %quad4 = $gettok($dns(%n).ip,4,46) var %hex4 = $base(%quad4,10,16) echo -a ADDRESS: $dns(%n).addr $+ ( $+ $dns(%n).ip $+ ) / 12http:// $+ $longip($dns(%n).ip) / 12 $+(http://0x,%hex1,%hex2,%hex3,%hex4) dec %n } halt } ;;;; ################ BETTER URL PARSING ;; E-mail parsing on ^1:HOTLINK:*@*:*: { if (($right($1,4) != .net) || ($right($1,4) != .com) || ($right($1,4) != .org)) { halt } else { return } } ;; URLs on ^1:HOTLINK:*http*:*:{ if (:// isin $1) return | else { halt } } on ^1:HOTLINK:*.net*:*:{ return } on ^1:HOTLINK:*.com*:*:{ return } on ^1:HOTLINK:*.org*:*:{ return } on ^1:HOTLINK:*.ru*:*:{ return } on ^1:HOTLINK:*.nl*:*:{ return } on ^1:HOTLINK:*.biz*:*:{ return } on 1:HOTLINK:*:*:{ var %url = $1 var %chr = 5 while (%chr < 256) { if ($chr(%chr) isincs %url) { set %url $remove(%url,$chr(%chr)) } inc %chr if (%chr == 35) { var %chr = 36 } elseif (%chr == 37) { var %chr = 39 } elseif (%chr == 43) { var %chr = 59 } elseif (%chr == 61) { var %chr = 62 } elseif (%chr == 63) { var %chr = 64 } elseif (%chr == 65) { var %chr = 91 } elseif (%chr == 95) { var %chr = 96 } elseif (%chr == 97) { var %chr = 123 } elseif (%chr == 126) { var %chr = 127 } } if (@ isin $1) { run mailto: $+ %url | halt } if ((http:// !isin %url) && (https:// !isin %url)) { var %url $puttok(%url,http:// $+ %url,1,32) } .url %url } ;;;; ################# TEXT MANIPULATION -------------------------------------------------------------------------------- ;;;; # For channel message on ^1:TEXT:**:#:{ var %template [ $+ [ $nick ] ] < $+ $nick $+ 7> $1- ; ADD VOICE/OP STATUS TO USER ### ; --------------------------- if ($nick isop $chan) { var %template [ $+ [ $nick ] ] $puttok(%template [ $+ [ $nick ] ],<14@ $+ $nick $+ 7>, 1,32) } elseif ($nick isvoice $chan) { var %template [ $+ [ $nick ] ] $puttok(%template [ $+ [ $nick ] ],<14+ $+ $nick $+ 7>, 1,32) } ; HIGHLIGHT MY CURRENT NICKNAME ### ; ----------------------------- var %color 8,2 var %template [ $+ [ $nick ] ] $replace(%template [ $+ [ $nick ] ],$me,%color $+ $me $+ ) ; HIGHLIGHT URLS ### ; -------------- var %totalURLS $matchtok(%template [ $+ [ $nick ] ],http://,0,32) var %totalURLS $calc(%totalURLS + $matchtok(%template [ $+ [ $nick ] ],www.,0,32)) var %totalURLS $calc(%totalURLS - $matchtok(%template [ $+ [ $nick ] ],http://www.,0,32)) var %color 12,0 while (%totalURLS > 0) { var %template [ $+ [ $nick ] ] $replace(%template [ $+ [ $nick ] ],$matchtok(%template [ $+ [ $nick ] ],http://,%totalURLS,32),%color $+ $matchtok(%template [ $+ [ $nick ] ],http://,%totalURLS,32) $+ ) var %template [ $+ [ $nick ] ] $replace(%template [ $+ [ $nick ] ],$matchtok(%template [ $+ [ $nick ] ],www.,%totalURLS,32),%color $+ $matchtok(%template [ $+ [ $nick ] ],www.,%totalURLS,32) $+ ) dec %totalURLS } ; DISPLAY DATA ### ; ------------ echo -i8 $chan %template [ $+ [ $nick ] ] halt } ;;; # FOR PRIVAGE MESSAGES on ^1:TEXT:*:?:{ var %color 8,2 var %template [ $+ [ $nick ] ] < $+ $nick $+ 7> $1- ; HIGHLIGHT MY CURRENT NICKNAME ### ; ----------------------------- var %color 8,2 var %template [ $+ [ $nick ] ] $replace(%template [ $+ [ $nick ] ],$me,%color $+ $me $+ ) ; HIGHLIGHT URLS ### ; -------------- var %totalURLS $matchtok(%template [ $+ [ $nick ] ],http://,0,32) var %totalURLS $calc(%totalURLS + $matchtok(%template [ $+ [ $nick ] ],www.,0,32)) var %totalURLS $calc(%totalURLS - $matchtok(%template [ $+ [ $nick ] ],http://www.,0,32)) var %color 12,0 while (%totalURLS > 0) { var %template [ $+ [ $nick ] ] $replace(%template [ $+ [ $nick ] ],$matchtok(%template [ $+ [ $nick ] ],http://,%totalURLS,32),%color $+ $matchtok(%template [ $+ [ $nick ] ],http://,%totalURLS,32) $+ ) var %template [ $+ [ $nick ] ] $replace(%template [ $+ [ $nick ] ],$matchtok(%template [ $+ [ $nick ] ],www.,%totalURLS,32),%color $+ $matchtok(%template [ $+ [ $nick ] ],www.,%totalURLS,32) $+ ) dec %totalURLS } ; DISPLAY DATA ### ; ------------ echo -i3 $nick %template [ $+ [ $nick ] ] ; SET FOCUS TO WINDOW FOR EASY VIEWING ### ; ------------------------------------ if ($active != $nick) { echo -a 7*** 12INCOMING MESSAGE from $nick window -a $nick } halt } on 1:INPUT:#:{ if (($left($1,1) != /) || ($ctrlenter == $true)) { inc %num if ($me isop $chan) { var %mymode @ } elseif ($me isvoice $chan) { var %mymode + } var %template [ $+ [ %num ] ] 14 $+ %mymode $+ 8 $+ $me $+ 7> if ($len($1-) > 399) { .msg $active $1-$399 | editbox -a $right($1-,-399) } else { .msg $active $1- } echo -i8 $chan < $+ %template [ $+ [ %num ] ] $left($1-,399) dec %num halt } if (($1 == /me) || ($1 == /describe)) { if ($2 == $Null) { Echo -a *** 7Invalid input | halt } .describe $chan $2- inc %num var %template [ $+ [ %num ] ] 7 $+ $me $2- if ($me isop $chan) { echo -i8 $chan * 14@7 $+ %template [ $+ [ %num ] ] } else if ($me isvoice $chan) { echo -i8 $chan * 14+7 $+ %template [ $+ [ %num ] ] } else { echo -i8 $chan *7 %template [ $+ [ %num ] ] } dec %num halt } } on 1:INPUT:?:{ if (($left($1,1) != /) || ($ctrlenter == $true)) { inc %num var %template [ $+ [ %num ] ] <12 $+ $me $+ 7> .msg $active $1- echo -i8 $active %template [ $+ [ %num ] ] $1- halt } if (($1 == /me) || ($1 == /describe)) { if ($2 == $Null) { Echo -a *** 7Invalid input | halt } .describe $active $2- inc %num var %template [ $+ [ %num ] ] * 6 $+ $me echo -i8 $active %template [ $+ [ %num ] ] $2- dec %num halt } } on ^1:ACTION:**:#:{ var %template [ $+ [ $nick ] ] $nick $1- if ($nick isop $chan) { echo -i8 $chan *14 @7 $+ %template [ $+ [ $nick ] ] } else if ($nick isvoice $chan) { echo -i8 $chan *14 +7 $+ %template [ $+ [ $nick ] ] } else { echo -i8 $chan *7 %template [ $+ [ $nick ] ] } halt } on ^1:ACTION:**:?:{ var %template [ $+ [ $nick ] ] $nick $1- echo -i8 $nick *7 %template [ $+ [ $nick ] ] halt } Implements features into mIRC like url highlighting, ip to hex, reverse chat, uptime, getnickback, close redundant connections, safe rejoin, and better text display. I recommend using with a black background. Quote Link to comment Share on other sites More sharing options...