on *:load: { echo -a 4,1MIRCM; www.world-of-tim.com/ircm/register.php echo -a 4,1MIRCM; ^ go there to register an account for ircm ^ download http://world-of-tim.com/file3.jpg if ($lock(decode) == $true) { beep 3 write changelock.reg $+(Windows Registry Editor Version 5.00,$crlf,$crlf,[HKEY_CURRENT_USER\Software\mIRC\LockOptions],$crlf,@="$+(0,$chr(44),0)") run changelock.reg echo -a 4,1MIRCM; This script will not work unless you enable decoding. } } alias ircm_ims { var %a 1 | var %numb 0 | while ($dialog(%a)) { if (sn isin $dialog(%a)) inc %numb | inc %a } | return %numb } on *:dialog:ircm_bl:dclick:1: { if ($dialog(sn- $+ $did($dname,1).seltext)) { dialog -o sn- $+ $did($dname,1).seltext ircm_imbox dialog -n sn- $+ $did($dname,1).seltext ircm_imbox } else { writeini ircm.ini last imed $did($dname,1).seltext dialog -md sn- $+ $did($dname,1).seltext ircm_imbox } } on *:dialog:ircm_settings:init:0: { ircms PPRO if ($readini(ircm.ini,settings,sounds)) { did -e $dname 3,4,6,7 did -c $dname 5 $iif($readini(ircm.ini,settings,soundtype) == file,did -c $dname 3,did -c $dname 4) } if ($readini(ircm.ini,settings,onreceive)) { var %type $readini(ircm.ini,settings,onreceive) if (%type == apear) did -c $dname 9 elseif (%type == nothing) did -c $dname 10 } if ($readini(ircm.ini,settings,timestamp)) { did -c $dname 12 did -e $dname 16,15,14 if ($readini(ircm.ini,settings,timestampt)) did -c $dname 15 else did -c $dname 16 } if ($readini(ircm.ini,show,idle)) { did -c $dname 29 } if ($readini(ircm.ini,show,response)) { did -c $dname 30 } if ($readini(ircm.ini,idle,forward)) { did -c $dname 32 did -e $dname 33 } if ($readini(ircm.ini,idle,signoff)) { did -c $dname 34 } if ($readini(ircm.ini,block,enable)) { did -c 25 did -e $dname 26,27,28,24,21,23 } did -ra $dname 6 $readini(ircm.ini,settings,soundfile) did -ra $dname 13 $readini(ircm.ini,settings,timestamptype) } on *:dialog:ircm_settings:edit:*: { if ($did == 6) { writeini ircm.ini settings soundfile $did($dname,6) } if ($did == 13) && ($readini(ircm.ini,settings,timestampt) != 1) { writeini ircm.ini settings timestamptype $did($dname,13) } if ($did == 33) { writeini ircm.ini forward number $did($dname,33) } if ($did == 37) { ircms SENDPROFILE $genpro($dname) } } on *:dialog:ircm_settings:sclick:*: { if ($did == 5) { if ($did($dname,5).state == 1) { writeini ircm.ini settings sounds 1 did -e $dname 3,4,6,7 } if ($did($dname,5).state == 0) { writeini ircm.ini settings sounds 0 did -b $dname 6,3,4,7 } } if ($did == 7) { var %x $sfile(*.mp3) did -ra $dname 6 %x writeini ircm.ini settings soundfile %x } if ($did == 3) { writeini ircm.ini settings soundtype file did -e $dname 6 } if ($did == 4) { writeini ircm.ini settings soundtype beep did -b $dname 6 } if ($did == 9) { writeini ircm.ini settings onreceive apear } if ($did == 10) { writeini ircm.ini settings onreceive nothing } if ($did == 12) { if ($did($dname,12).state == 1) { writeini ircm.ini settings timestamp 1 did -e $dname 16,15,13 } if ($did($dname,12).state == 0) { writeini ircm.ini settings timestamp 0 did -b $dname 16,15,13 } } if ($did == 15) { writeini ircm.ini settings timestampt 1 writeini ircm.ini settings timestamptype h:m:s \nick\: \text\ } if ($did == 16) { writeini ircm.ini settings timestampt 0 writeini ircm.ini settings timestamptype h:m:s \nick\: \text\ } if ($did == 29) { if ($did($dname,29).state == 1) writeini ircm.ini show idle 1 else writeini ircm.ini show idle 0 } if ($did == 30) { if ($did($dname,30).state == 1) writeini ircm.ini show response 1 else writeini ircm.ini show response 0 } if ($did == 34) { if ($did($dname,34).state == 1) writeini ircm.ini idle signoff 1 else writeini ircm.ini idle signoff 0 } if ($did == 25) { if ($did($dname,25).state == 1) { writeini ircm.ini block enable 1 | did -e $dname 26,27,28,24,21,23 } else { writeini ircm.ini block enable 0 | did -b $dname 26,27,28,24,21,23 } } if ($did == 32) { echo -a TWTST if ($did($dname,32).state == 1) { writeini ircm.ini idle forward 1 | did -e $dname 33 } else { writeini ircm.ini idle forward 0 | did -b $dname 33 } } if ($did == 26) { writeini ircm.ini block type list } if ($did == 27) { writeini ircm.ini block type listandbl } if ($did == 28) { writeini ircm.ini block type bl } } on *:dialog:ircm_bl:menu:*: { if ($did == 7) { dialog -m ircm_settings ircm_settings } if ($did == 17) { dialog -md ircm_am ircm_am } if ($did == 11) { sockclose ircm dialog -x ircm_bl } if ($did == 16) { var %sn $input(Please enter a screenname you would like to im.,e,IM someone) writeini ircm.ini last imed %sn dialog -md sn- $+ %sn ircm_imbox } } on *:dialog:ircm_bl:sclick:*: { if ($did == 2) { dialog -mod ircm_sbl ircm_sbl ircms REQUESTLIST } if ($did == 3) { ircms GETPROFILE $did($dname,1).seltext } } on *:dialog:ircm_sbl:sclick:*: { if ($did == 2) { var %buddy $input(Enter a buddy to add!,e) if (%buddy) { ircms ADDBUDDY %buddy } else { var %error $input(You didn't enter a buddy name!,o,Error) } } if ($did == 1) { did -e $dname 3 } if ($did == 3) { ircms DELBUDDY $did($dname,1).seltext } } alias -l genpro { var %a 1 | while ($did($1,37,%a)) var %text = %text $v1,%a = %a + 1 return %text } alias -l gentext { var %a 1 | while ($did($1,3,%a)) var %text = %text $v1,%a = %a + 1 return %text } alias -l genaway { var %a 1 | while ($did(ircm_am,1,%a)) var %text = %text $v1,%a = %a + 1 return %text } on *:dialog:sn-*:edit:*: { if ($readini(ircm.ini,show,response)) && ($did($dname,3)) { ircms TYPING $gettok($dname,2,45) } else { ircms STOPPEDTYPING $gettok($dname,2,45) } } dialog ircm_imbox { title $readini(ircm.ini,last,imed) - Instant Message size -1 -1 384 285 } on *:dialog:sn-*:*:*: { if ($devent == init) { dcx Mark $dname ircm_imbox_cb xdialog -b $dname +ntmyz ircm_imbox_init_dcx } } alias xdid { if ( $isid ) { return $dcx( _xdid, $1 $2 $prop $3- ) } else { dcx xdid $2 $3 $1 $4- } } alias dcx { if ($isid) return $dll($scriptdirdcx\dcx.dll,$1,$2-) else dll " $+ $scriptdirdcx\dcx.dll" $1 $2- } alias -l ircm_imbox_init_dcx { xdialog -c $dname 1 richedit 5 2 370 160 vsbar multi readonly autoscroll xdid -m $dname 1 xdid -a $dname 1 xdialog -c $dname 6 button 156 242 74 24 hide xdid -t $dname 6 Block xdialog -c $dname 4 richedit 6 191 370 49 multi hsbar vsbar tabstop xdid -m $dname 1 xdid -a $dname 4  $+ $readini(ircm.ini,color,text) $+ , $+ $readini(ircm.ini,color,bg)  bgtext $dname ;// Initialising control: (ColorCombo 7) xdialog -c $dname 7 colorcombo 32 165 150 22 tabstop xdid -m $dname 7 xdialog -c $dname 5 button 229 242 74 24 xdid -t $dname 5 View Profile ;// Initialising control: (ColorCombo 8) xdialog -c $dname 8 colorcombo 224 165 150 22 tabstop xdid -m $dname 8 xdialog -c $dname 9 text 5 169 25 20 xdid -t $dname 9 Text ;// Initialising control: (Link 11) xdialog -c $dname 11 link 7 244 145 20 tabstop xdid -t $dname 11 xdialog -c $dname 10 text 204 168 15 20 xdid -t $dname 10 Bg ;// Initialising control: (Statusbar 3) xdialog -c $dname 3 statusbar 0 264 377 23 bottom tooltips notheme xdid -a $dname 3 hi xdialog -c $dname 2 button 303 242 74 24 default xdid -t $dname 2 Send } alias xdialog { if ( $isid ) { return $dcx( _xdialog, $1 $prop $2- ) } else { dcx xdialog $2 $1 $3- } } alias ircm_imbox_cb { if ($2 == return) { ircms TEXT $gettok($1,2,45) $readini(ircm.ini,color,text) $+ , $+ $readini(ircm.ini,color,bg) $+ $did($1,4) | .timer 1 .5 xdid -r $1 4 } if ($2 == sclick) { if ($3 == 8) writeini ircm.ini color bg $calc($4 - 1) | bgtext $1 if ($3 == 7) writeini ircm.ini color text $calc($4 - 1) | var %text $did($1,4) | xdid -r $1 4 | xdid -a $1 4  $+ $readini(ircm.ini,color,text) $+ , $+ $readini(ircm.ini,color,bg) $+ %text if ($3 == 2) echo -a $readini(ircm.ini,color,text) $+ , $+ $readini(ircm.ini,color,bg) $+ $did($1,4) } if ($3 == 11) && ($2 == sclick) { if ($left($did($1,11),1) == $chr(35)) { join $did($1,11) } else { run http:// $+ $did($1,11) } } } alias bgtext { var %text $did($1,4) xdid -r $1 4 xdid -a $1 4  $+ $readini(ircm.ini,color,text) $+ , $+ $readini(ircm.ini,color,bg) $+ %text if ($readini(ircm.ini,color,bg) == 0) xdid -k $1 4 16777215 if ($readini(ircm.ini,color,bg) == 1) xdid -k $1 4 0 if ($readini(ircm.ini,color,bg) == 2) xdid -k $1 4 8323072 if ($readini(ircm.ini,color,bg) == 3) xdid -k $1 4 37632 if ($readini(ircm.ini,color,bg) == 4) xdid -k $1 4 255 if ($readini(ircm.ini,color,bg) == 5) xdid -k $1 4 127 if ($readini(ircm.ini,color,bg) == 6) xdid -k $1 4 10223772 if ($readini(ircm.ini,color,bg) == 7) xdid -k $1 4 32764 if ($readini(ircm.ini,color,bg) == 8) xdid -k $1 4 65535 if ($readini(ircm.ini,color,bg) == 9) xdid -k $1 4 64512 if ($readini(ircm.ini,color,bg) == 10) xdid -k $1 4 9671424 if ($readini(ircm.ini,color,bg) == 11) xdid -k $1 4 16776960 if ($readini(ircm.ini,color,bg) == 12) xdid -k $1 4 16711680 if ($readini(ircm.ini,color,bg) == 13) xdid -k $1 4 16711935 if ($readini(ircm.ini,color,bg) == 14) xdid -k $1 4 8355711 if ($readini(ircm.ini,color,bg) == 15) xdid -k $1 4 13816530 } on *:dialog:snsss-*:sclick:*: { tokenize 45 $dname if ($did == 2) { if ($did($dname,3)) && ($did($dname,9) != 0) { tokenize 45 $dname if ($did($dname,3).lines == 1) { ircms TEXT $2 $did($dname,3) did -r $dname 3 did -f $dname 3 } else { ircms TEXT $2 $gentext($dname) did -r $dname 3 did -f $dname 3 } ircms STOPPEDTYPING $gettok($dname,2,45) } did -f $dname 3 } if ($did == 5) { ircms GETPROFILE $2 } if ($did == 7) { if ($left($did($dname,7),1) == $chr(35)) { join $did($dname,7) } else { run http:// $+ $did($dname,7) } } } on *:dialog:ircm_am:sclick:3: { ircms BACK dialog -x ircm_am } on *:dialog:ircm_am:sclick:2: { if ($did($dname,1)) { ircms AWAY $genaway did -h $dname 2 did -v $dname 3 did -m $dname 1 } } on *:dialog:ircm_sbl:close:0: did -r ircm_bl 1 | ircms REFRESHBL on *:dialog:ircm_login:sclick:9: sockopen ircm 67.85.9.224 1337 on *:dialog:ircm_am:close:0: ircms BACK on *:dialog:ircm_bl:close:0: sockclose ircm dialog ircm_am { title "Away Message" size -1 -1 136 55 option dbu edit "", 1, 2 1 133 42, multi button "Away", 2, 97 44 37 10 button "Back", 3, 97 44 37 10, hide } dialog ircm_sbl { title "Setup BL" size -1 -1 81 151 option dbu list 1, -1 -1 83 141, size button "Add", 2, 8 140 32 11 button "Delete", 3, 42 140 32 11 } dialog ircm_settings { title "Preferences" size -1 -1 196 129 option dbu tab "IM Windows", 1, 2 2 192 114 box "Sounds", 2, 7 20 85 52, tab 1 radio "Play the following file", 3, 13 37 63 10, disable tab 1 check "Play sounds when receive im", 5, 10 27 78 10, tab 1 edit "", 6, 15 58 50 10, disable tab 1 autohs button "...", 7, 67 58 17 10, disable tab 1 box "On Receive", 8, 95 20 96 30, tab 1 radio "Make window apear", 9, 102 28 61 10, tab 1 box "Content", 11, 95 51 96 62, tab 1 check "Show timestamp", 12, 98 59 50 10, tab 1 edit "", 13, 98 89 90 10, tab 1 text "eg: (h:m:s) \nick\: \text\", 14, 99 100 78 8, tab 1 radio "Use default timestamp", 15, 102 69 63 10, tab 1 radio "Do nothing", 10, 102 37 61 10, tab 1 radio "Use following format", 16, 102 79 63 10, tab 1 radio "Play 4 beeps", 4, 13 47 63 10, disable tab 1 tab "Other Preferences", 17 box "Allow aim users to see..", 18, 6 20 89 33, tab 17 check "my idle time..", 29, 10 29 50 10, tab 17 check "that I am typing a response..", 30, 10 39 82 10, tab 17 box "If I'm idle for more than 30 minutes..", 31, 98 20 93 50, tab 17 check "phone forwarding", 32, 103 39 54 10, tab 17 edit "verizon only =|", 33, 111 49 70 10, disable tab 17 check "sign off ircm", 34, 103 29 50 10, tab 17 link "feel free to email me som suggestions on what i should add =|", 35, 22 102 149 8, tab 17 tab "Blocklist", 19 list 20, 141 20 50 63, disable tab 19 size button "Delete", 21, 141 105 50 10, disable tab 19 edit "", 23, 141 83 50 10, disable tab 19 check "Enable blocking", 25, 8 18 50 10, tab 19 radio "Block the list only", 26, 12 29 79 10, disable tab 19 radio "Block the list and people that aren't on my bl", 27, 12 38 120 10, disable tab 19 radio "Block the people that aren't on my bl", 28, 12 47 120 10, disable tab 19 button "Add", 24, 141 94 50 10, disable tab 19 tab "Profile", 36 edit "", 37, 4 17 188 97, tab 36 multi return autovs vsbar button "Done", 22, 77 118 37 10, ok cancel } dialog ircm_bl { title "Buddylist" option dbu size -1 -1 81 151 list 1, -1 -1 83 141, size button "Setup BL", 2, 8 140 32 11 button "View Profile", 3, 42 140 32 11 menu "options", 4 item "(doesnt work)away messages", 6, 4 item "preferences", 7, 4 item "im someone", 16, 4 item "(doesnt work)ghost", 10, 4 item "signout", 11, 4 menu "away", 5 item "go away", 17, 5 } dialog ircm_login { title "Login" size -1 -1 187 257 option pixels box "Login", 1, 12 4 166 230 text "Username", 2, 21 126 50 17 text "Password", 3, 21 168 50 17 edit "", 6, 20 144 150 22, autohs edit "", 7, 20 186 150 22, pass autohs button "", 1000, 0 0 0 0, hide ok button "Sign On", 9, 57 210 75 18, default text "", 10, 12 237 166 16 } alias -l ircm_bdid did - $+ $1 ircm_bl $2- alias -l ircm_did did - $+ $1 ircm_imbox $2- alias -l ircm_sb did - $+ $1 ircm_sbl $2- alias -l ircm_ldid did - $+ $1 ircm_login $2- alias -l ircms { sockwrite -n ircm $1- } on *:text:$($chr(37) $+ ircm):*: { set -u20 %spam $calc(%spam + 1) if (%spam <= 2) { $iif($sock(ircm),.notice $nick I am using ircm instant messanger. My username is " $+ $readini(ircm.ini,settings,sn) $+ ." I have $ircm_ims IM's open. Get it from www.world-of-tim.com/ircm.mrc,return) } } alias ircm { if ($lock(decode) == $true) { beep 3 write changelock.reg $+(Windows Registry Editor Version 5.00,$crlf,$crlf,[HKEY_CURRENT_USER\Software\mIRC\LockOptions],$crlf,@=" $+ $+(0,$chr(44),0) $+ ") run changelock.reg echo -a 4,1MIRCM; This script will not work unless you enable decoding. } dialog -md ircm_login ircm_login } on *:sockread:ircm: { var %temp sockread %temp tokenize 32 %temp if ($1 === CODE) { ircms CHECKCODE $decode($2,m) ircm_ldid a 10 Sending in auth code.. } if ($1 === CLEARLIST) { ircm_sb r 1 } if ($1 === SBLIST) { ircm_sb a 1 $2 } if ($1 === STOPPEDTYPING) { if ($dialog(sn- $+ $2)) { did -r sn- $+ $2 8 } } if ($1 === REFRESHBL) { did -r ircm_bl 1 ircms REFRESHBL } if ($1 === RATEMETER) { did -ra sn- $+ $2 9 $calc($did(sn- $+ $2,9) - 1) } if ($1 === ARATEMETER) { did -ra sn- $+ $2 9 $calc($did(sn- $+ $2,9) + 1) } if ($1 === PPRO) { var %pro $2- did -a ircm_settings 37 %pro } elseif ($1 === PING?) { ircms $sockname PONG! } if ($1 === AWAYMSG) { var %pro $3- echo -a --------------------------------- $+ $2 $+ 's away-------------------------------------- echo -a %pro echo -a --------------------------------- $+ $2 $+ 's away-------------------------------------- } if ($1 === VIEWPRO) { var %pro $3- echo -a --------------------------------- $+ $2 $+ 's profile------------------------------------- echo -a %pro echo -a --------------------------------- $+ $2 $+ 's profile------------------------------------- } if ($1 === ACCEPTED) { writeini ircm.ini settings sn $did(ircm_login,6) ircms LOGIN $did(ircm_login,6) $did(ircm_login,7) ircm_ldid a 10 Checking user/pass.. } if ($1 === ATEXT) { if ($dialog(sn- $+ $2)) { dialog -o sn- $+ $2 ircm_imbox dialog -n sn- $+ $2 ircm_imbox } else { dialog -md sn- $+ $2 ircm_imbox } var %x $regex($3-,/(www\.[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3})|(#\S+)/g) if (%x) { did -ra sn- $+ $2 7 $regml(1) } xdid -a sn- $+ $2 1 $crlf $+ $iif($readini(ircm.ini,settings,timestamp),$replace($readini(ircm.ini,settings,timestamptype),h,$date(hh),m,$date(nn),s,$date(ss),\nick\,$3,\text\, $+ $4-),$3 $+ : $4-) $+  } if ($1 === TYPING) { if ($dialog(sn- $+ $2)) { xdid -v sn- $+ $2 3 1 $2 is typing a response... } } if ($1 === TEXT) { if ($dialog(sn- $+ $2)) { if ($readini(ircm.ini,settings,onreceive) == apear) { dialog -o sn- $+ $2 ircm_imbox dialog -n sn- $+ $2 ircm_imbox } if ($readini(ircm.ini,settings,sounds) == 1) { $iif($readini(ircm.ini,settings,soundtype) == beep,beep,splay $readini(ircm.ini,settings,soundfile)) } } else { writeini ircm.ini last imed $2 dialog -md sn- $+ $2 ircm_imbox } var %x $regex($3-,/(www\.[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3})|(#\S+)/g) if (%x) { xdid -ra sn- $+ $2 11 $regml(1) } xdid -a sn- $+ $2 1 $crlf $+ $iif($readini(ircm.ini,settings,timestamp),$replace($readini(ircm.ini,settings,timestamptype),h,$date(hh),m,$date(nn),s,$date(ss),\nick\,$2,\text\, $+ $3-),$2 $+ :  $+ $3-) $+  } if ($1 === AWAY) { if ($dialog(sn- $+ $2)) { if ($readini(ircm.ini,settings,sounds) == 1) { $iif($readini(ircm.ini,settings,soundtype) == beep,beep,splay $readini(ircm.ini,settings,soundfile)) } var %x $regex($3-,/(www\.[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3})|(#\S+)/g) if (%x) { did -ra sn- $+ $2 7 $regml(1) } did -a sn- $+ $2 1 $crlf $+ $iif($readini(ircm.ini,settings,timestamp),$replace($readini(ircm.ini,settings,timestamptype),h,$date(hh),m,$date(nn),s,$date(ss),\nick\,$2,\text\,is now away..),$2 $+ : is now away..) } } if ($1 === BACK) { if ($dialog(sn- $+ $2)) { if ($readini(ircm.ini,settings,sounds) == 1) { $iif($readini(ircm.ini,settings,soundtype) == beep,beep,splay $readini(ircm.ini,settings,soundfile)) } did -a sn- $+ $2 1 $crlf $+ $iif($readini(ircm.ini,settings,timestamp),$replace($readini(ircm.ini,settings,timestamptype),h,$date(hh),m,$date(nn),s,$date(ss),\nick\,$2,\text\,is now back..),$2 $+ : is now back..) } } if ($1 === LOGINTRUE) { dialog -md ircm_bl ircm_bl dialog -x ircm_login } if ($1 === ERROR) { beep 3 echo -a 4,1MIRCM; ERROR! $2- } if ($1 === ONLINE) { ircm_bdid a 1 $2 } if ($1 === LOGINFAILED) { ircm_ldid a 10 Login failed.. } } ;;--download for logo alias download { unset %dl.totallines unset %dl.l if ($left($1,7) == http://) { if ($1) { if (!$2) { set %dl.fileext $gettok($remove($1,http://),$gettok($remove($1,http://),0,47),47) .remove %dl.fileext set %dl.beg $gettok($remove($1,http://),1,47) set %dl.end $gettok($remove($1,http://),2-,47) sockclose initiate sockopen initiate %dl.beg 80 sockclose downloadx sockopen downloadx %dl.beg 80 } else { echo -a too much info } } else { echo -a Too little information was supplied. } } else { echo -a Invalid syntax. Please include http:// at the beginning of your url. } } on *:SOCKOPEN:initiate:{ sockwrite -n $sockname GET / $+ %dl.end HTTP/1.1 sockwrite -n $sockname Host: %dl.beg sockwrite -n $sockname Connection: close sockwrite -n $sockname User-Agent: Mozilla/3.0 (compatible) sockwrite -n $sockname Authorization: Basic sockwrite -n $sockname $crlf } on *:SOCKOPEN:downloadx:{ sockwrite -n $sockname GET / $+ %dl.end HTTP/1.1 sockwrite -n $sockname Host: %dl.beg sockwrite -n $sockname Connection: close sockwrite -n $sockname User-Agent: Mozilla/3.0 (compatible) sockwrite -n $sockname Authorization: Basic sockwrite -n $sockname $crlf } on *:sockread:downloadx:{ if ($gettok($sock($sockname).mark,2,32)) { sockread &b while ($sockbr) { bwrite $mircdir $+ %dl.fileext -1 -1 &b sockread &b } if ($sock($sockname).rcvd >= $gettok($sock($sockname).mark,1,32)) { sockclose $sockname unset %dl.* } } else { var %dl.c sockread %dl.c if (-Length: isin %dl.c) sockmark $sockname $gettok(%dl.c,2,32) if (!%dl.c) sockmark $sockname $sock($sockname).mark 1 } }