; You have loaded: ; Kurt2's MP3 playing mIRC add-on Version 1.5 (A.K.A. "Best DAMN mp3 script you will EVER see!...") ; Not to mention, but this is also my very first mIRC script ever. ; First things first. ; 1) You MUST Select your mp3 file directory in mirc Options, that is in File/Options/Sounds/Requests/Sound Folders ; 2) ALSO, if you want people to be able to get songs from you using '!your_nick song_name.mp3' then you must go to ; File/Options/Sounds/Requests and put a check in the "Listen for '!nick file' get requests" BOX. ; 3) Now Just Right-click in channel and you should see some additions to your menu ; After all that you should be good to go, and if you ask me, it is a pretty simple procedure, unless you are a complete DOLT! ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;THE MENUS FOR STATUS, CHANNEL, AND QUERY WINDOW;;;;; menu status,channel,query { K2-MP3 .$iif($dialog(k2mp3) == $null,Open K2-MP3 Player) { k2mp3 } .- .CHANGE PLAY MODE ..$iif(%k2mp3.chan.or.self == chan,$style(1) Playing to CHANNEL,Playing to CHANNEL) { set %k2mp3.chan.or.self chan | if ($dialog(k2mp3) == k2mp3) { did -e k2mp3 98,102,103,104,105,106,107,108,109 | did -c k2mp3 100 | did -u k2mp3 101 | did -r k2mp3 5 } } ..$iif(%k2mp3.chan.or.self == self || %k2mp3.chan.or.self == $null,$style(1) Playing to SELF,Playing to SELF) { set %k2mp3.chan.or.self self | if ($dialog(k2mp3) == k2mp3) { did -b k2mp3 98,102,103,104,105,106,107,108,109 | did -c k2mp3 101 | did -u k2mp3 100 | did -r k2mp3 5 } } ..- ..$iif(%k2mp3.continuous.play == on && $dialog(k2mp3) == k2mp3,$style(1) Continous Play is on) { if (%k2mp3.folder.play == on) { HALT } | set %k2mp3.continuous.play off | set %k2mp3.shuffle.mode off | if ($dialog(k2mp3) == k2mp3) { did -u k2mp3 25,26 | did -h k2mp3 26 } } ..$iif((%k2mp3.continuous.play == off || %k2mp3.continuous.play == $null) && $dialog(k2mp3) == k2mp3, Continous Play is off) { set %k2mp3.continuous.play on | if ($dialog(k2mp3) == k2mp3) { did -c k2mp3 25 | did -v k2mp3 26 } } ..$iif(%k2mp3.shuffle.mode == on,$style(1) Shuffle/Random is on) { set %k2mp3.shuffle.mode off | if ($dialog(k2mp3) == k2mp3) { did -u k2mp3 26 } } ..$iif(%k2mp3.shuffle.mode == off || %k2mp3.shuffle.mode == $null, Shuffle/Random is off) { set %k2mp3.continuous.play on | set %k2mp3.shuffle.mode on | if ($dialog(k2mp3) == k2mp3) { did -cv k2mp3 25,26 } } .Folder Play ..$iif(%k2mp3.folder.play == off || %k2mp3.folder.play == $null,Start) { k2.folderPlay } .- .Kill and Remove K2-MP3 ..Are You Sure? ...OK Click here: echo 2 -a *** I can't believe you did that, Oh well, You'll be back, they always come back! | if ($dialog(k2mp3) == k2mp3) { .dialog -k k2mp3 } | .remove $scriptdirlister.bat | .remove $scriptdirmp3.txt | unset %k2mp3.play.to | unset %k2mp3.play.msg | unset %k2mp3.refresh.method | unset %k2mp3.chan.or.self | unset %k2mp3.folder.play | unset %k2mp3.continuous.play | unset %k2mp3.shuffle.mode | unset %k2mp3.did.user.select.new.line | unload -rs $script .Your Script is...: say I am using, Kurt2's MP3 playing mIRC add-on Version 1.5 (A.K.A. K2-MP3), Created By Kurt2, on mIRC $version $+ . Get it here -> http://www3.mb.sympatico.ca/~auser/k2mp3/ (Only use this thing with mIRC 5.9 or above.) $iif(%k2mp3.folder.play == on,Folder Play is ON) .$iif(%k2mp3.folder.play == on,$style(1) -= Playing $nofile($inmp3.fname) =-) { } .$iif(%k2mp3.folder.play == on && %k2mp3.chan.or.self == chan,$style(1) -= Playing To %k2mp3.play.to =-) { } .$iif(%k2mp3.folder.play == on && %k2mp3.chan.or.self == chan && $active != Status Window,Change the Play Channel to $active ) { set %k2mp3.play.to $active | if ($dialog(k2mp3) == k2mp3) { did -ra k2mp3 98 $active } } .- .$iif(%k2mp3.folder.play == on,Next Song...) { k2.jump.to.next.file } .$iif(%k2mp3.folder.play == on,Previous Song...) { k2.jump.to.previous.file } .- .$iif(%k2mp3.folder.play == on,Stop Folder/Directory Play) { k2.stopmp3 } $iif($dialog(k2mp3) == k2mp3 && (%k2mp3.folder.play == off || %k2mp3.folder.play == $null) && %k2mp3.chan.or.self == chan && $active != Status Window,Set Play Chan to $active) { did -ra k2mp3 98 $active } $iif($dialog(k2mp3) == k2mp3 && $did(k2mp3,98) != $null && (%k2mp3.folder.play == off || %k2mp3.folder.play == $null) && %k2mp3.chan.or.self == chan && $active != Status Window,UNSET Play Chan) { did -r k2mp3 98 } $iif($inmp3 && %k2mp3.folder.play == off || %k2mp3.folder.play == $null,Stop MP3) { k2.stopmp3 } Play an MP3: { if (%k2mp3.folder.play == on) { echo 2 -a *** Folder play has been stopped | set %k2mp3.folder.play off | unset %k2mp3.play.to | window -c @k2mp3 } | k2.playmp3 $active $k2.get.mp3file | set %k2mp3.played.file.from.menu yes } } ;;;;;THE ALIASES/FUNCTIONS;;;;; alias k2.get.mp3file { return $$sfile($mp3dir*.mp3,Select the song you wish to play,Play it!) } alias k2.playmp3 { if (%k2mp3.folder.play == off || %k2mp3.folder.play == $null) { if (($server == $null) && (%k2mp3.chan.or.self == chan)) { echo 2 -a *** What the hell are you doing man, you are not on a Server, how do you expect to play an mp3 to a channel like that?!? | k2.stopmp3 | HALT } if (($active == Status Window) && (%k2mp3.chan.or.self == chan) && ($did(k2mp3,98) == $null)) { echo 2 -a *** You CANNOT play an mp3 to the status window if you have K2mp3 set to "play to channel" | k2.stopmp3 | HALT } } set %offer ! $+ $me $nopath($2-) set %mp3 $nopath($2-) set %br $mp3($2-).bitrate $+ kbit/s set %hz $mp3($2-).sample $+ hz set %time $duration($calc($mp3($2-).length / 1000)) set %mode $mp3($2-).mode if ( %k2mp3.chan.or.self == chan && $dialog(k2mp3) == k2mp3 && $did(k2mp3,98).enabled && ( %k2mp3.folder.play == off || %k2mp3.folder.play == $null )) { if ($did(k2mp3,98) != $null) { var %channel.to.play.to $did(k2mp3,98) } else { var %channel.to.play.to $active } sound %channel.to.play.to " $+ $2- $+ " if (%k2mp3.play.msg != $null) { msg %channel.to.play.to $show.play.msg } } elseif ( %k2mp3.chan.or.self == chan ) { if ($1 != $null) { var %channel.to.play.to $1 } else { var %channel.to.play.to $active } sound %channel.to.play.to " $+ $2- $+ " if (%k2mp3.play.msg != $null) { msg %channel.to.play.to $show.play.msg } } else { splay $2- } if ($dialog(k2mp3) == k2mp3) { .timerMP3.TIMER 0 1 k2.start.mp3.timer did -c k2mp3 1 $didwm(k2mp3,1,$inmp3.fname) k2.mp3properties $inmp3.fname did -ra k2mp3 30 $nopath($2-) did -e k2mp3 6,7,8,9 did -h k2mp3 6 did -v k2mp3 7 did -v k2mp3 8 did -h k2mp3 9 did -ra k2mp3 72 $asctime($calc($ctime($date) + ($mp3($inmp3.fname).length / 1000)), nn:ss) } unset %offer | unset %mp3 | unset %br | unset %hz | unset %time | unset %mode } alias -l k2.start.mp3.timer { did -ra k2mp3 70 $asctime($calc($ctime($date) + ($inmp3.pos / 1000)), nn:ss) } alias -l k2.folderplay { window -c @k2mp3 if ((%k2mp3.chan.or.self == chan && $active == Status Window) && ($dialog(k2mp3) == k2mp3 && $did(k2mp3,98) == $null)) { echo 2 -a *** Hold on a second there! You CANNOT play a FOLDER to the STATUS WINDOW if you have "Play to channel" turned on, in K2-MP3. | k2.stopmp3 | halt } var %play.folder $$sdir($mp3dir,Choose Folder Containing MP3 files) k2.stopmp3 echo 2 -a *** Folder play has BEGUN! set %k2mp3.continuous.play on if ($dialog(k2mp3) == k2mp3) { did -cb k2mp3 25 did -v k2mp3 26 did -c k2mp3 27 did -ra k2mp3 98 $active } var %number.of.files $findfile(%play.folder,*.mp3,0,var %uselessCommand) if ( %number.of.files == 0 ) { echo 2 -a *** THERE ARE NO MP3s IN THAT DIRECTORY! | echo 2 -a *** Folder play has been stopped | k2.stopmp3 | HALT } window -slh @k2mp3 | var %holder = $findfile(%play.folder,*.mp3,0,@k2mp3) set %k2mp3.play.to $active if (%k2mp3.shuffle.mode == on) { sline @k2mp3 $rand(1,$line(@k2mp3,0)) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) .timerWait.for.list.to.load.then.select.line 1 2 sline @k2mp3 $fline(@k2mp3,$inmp3.fname) } else { k2.playmp3 %k2mp3.play.to $line(@k2mp3,1) } set %k2mp3.folder.play on sline @k2mp3 1 } alias -l k2.jump.to.next.file { if ($sline(@k2mp3,1).ln == $line(@k2mp3,0) && (%k2mp3.shuffle.mode == off || %k2mp3.shuffle.mode == $null)) { echo 2 -a *** You are at the last file, you can't skip forward anymore. } else { if (%k2mp3.play.to == $null) { set %k2mp3.play.to $active } if ($dialog(k2mp3) == k2mp3 && $did(k2mp3,98) != $null) { set %k2mp3.play.to $did(k2mp3,98) } if (%k2mp3.shuffle.mode == on) { sline @k2mp3 $rand(1,$line(@k2mp3,0)) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) } else { sline @k2mp3 $calc( $sline(@k2mp3,1).ln + 1 ) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) set %k2mp3.folder.play on } } } alias -l k2.jump.to.previous.file { if ($sline(@k2mp3,1).ln == 1 && (%k2mp3.shuffle.mode == off || %k2mp3.shuffle.mode == $null)) { echo 2 -a *** You are at the first file, you can't jump backward anymore. } else { if (%k2mp3.play.to == $null) { set %k2mp3.play.to $active } if ($dialog(k2mp3) == k2mp3 && $did(k2mp3,98) != $null) { set %k2mp3.play.to $did(k2mp3,98) } if (%k2mp3.shuffle.mode == on) { sline @k2mp3 $rand(1,$line(@k2mp3,0)) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) } else { sline @k2mp3 $calc( $sline(@k2mp3,1).ln - 1 ) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) set %k2mp3.folder.play on } } } alias -l k2.continuous.play.mode { if (%k2mp3.played.file.from.menu == yes) { k2.stopmp3 unset %k2mp3.played.file.from.menu } elseif (%k2mp3.shuffle.mode == on) { if (%k2mp3.chan.or.self == chan && $active == Status Window && $did(k2mp3,98) == $null) { echo 2 -a *** You CANNOT play an mp3 to the status window if you have K2mp3 set to "play to channel" | k2.stopmp3 | halt } did -c k2mp3 1 $rand(1,$did(k2mp3,1).lines) k2.playmp3 $active $did(k2mp3,1).seltext } else { if (%k2mp3.did.user.select.new.line == yes) { unset %k2mp3.did.user.select.new.line k2.playmp3 $active $did(k2mp3,1).seltext } elseif ($did(k2mp3,1).lines == $didwm(k2mp3,1,$did(k2mp3,1).seltext)) { if (%k2mp3.chan.or.self == chan && $active == Status Window && $did(k2mp3,98) == $null) { echo 2 -a *** You CANNOT play an mp3 to the status window if you have K2mp3 set to "play to channel" | k2.stopmp3 | halt } did -c k2mp3 1 1 k2.playmp3 $active $did(k2mp3,1).seltext } else { if (%k2mp3.chan.or.self == chan && $active == Status Window && $did(k2mp3,98) == $null) { echo 2 -a *** You CANNOT play an mp3 to the status window if you have K2mp3 set to "play to channel" | k2.stopmp3 | halt } did -c k2mp3 1 $calc($didwm(k2mp3,1,$did(k2mp3,1).seltext) +1) k2.playmp3 $active $did(k2mp3,1).seltext } } } alias -l k2.folder.play.mode { if ($window(@k2mp3) != $null && $sline(@k2mp3,1).ln == $line(@k2mp3,0) && (%k2mp3.shuffle.mode == $null || %k2mp3.shuffle.mode == off)) { set %k2mp3.folder.play off | unset %k2mp3.play.to | window -c @k2mp3 | k2.stopmp3 | echo 2 -a *** Folder Play has Completed } if (%k2mp3.folder.play == on) { if (%k2mp3.play.to == $null) { set %k2mp3.play.to $active } if ($dialog(k2mp3) == k2mp3 && $did(k2mp3,98) != $null) { set %k2mp3.play.to $did(k2mp3,98) } if (%k2mp3.chan.or.self == chan && %k2mp3.play.to == Status Window || $server == $null) { echo 2 -a *** Hold on a second there! You CANNOT play a FOLDER to the STATUS WINDOW if you have "Play to channel" turned on, in K2-MP3. | k2.stopmp3 | halt } if (%k2mp3.shuffle.mode == on) { sline @k2mp3 $rand(1,$line(@k2mp3,0)) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) } else { sline @k2mp3 $calc( $sline(@k2mp3,1).ln + 1 ) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) } } } alias -l k2.do.this.at.end.of.mp3 { if (%k2mp3.folder.play == off && $dialog(k2mp3) == k2mp3 && %k2mp3.continuous.play == on) { k2.continuous.play.mode } elseif (%k2mp3.folder.play == on) { k2.folder.play.mode } else { k2.stopmp3 } } alias -l k2.stopmp3 { if (%k2mp3.folder.play == on) { echo 2 -a *** Folder play has been stopped } splay stop set %k2mp3.folder.play off unset %k2mp3.play.to window -c @k2mp3 if ($dialog(k2mp3) == k2mp3) { did -u k2mp3 27 did -e k2mp3 25 did -r k2mp3 30 did -v k2mp3 6 did -h k2mp3 7 did -v k2mp3 8 did -h k2mp3 9 did -ra k2mp3 70 00:00 .timerMP3.TIMER off unset %offer | unset %mp3 | unset %br | unset %hz | unset %time | unset %mode } } alias -l show.play.msg { var %i = 0, %show.msg while (%i < $numtok(%k2mp3.play.msg,32)) { inc %i %show.msg = %show.msg [ [ $gettok(%k2mp3.play.msg,%i,32) ] ] } return %show.msg } alias -l k2mp3 { dialog -md k2mp3 k2mp3 } alias -l k2.mp3properties { var %holder $1- did -ra k2mp3 530 $iif($mp3(%holder).artist,$mp3(%holder).artist,N/A) did -ra k2mp3 531 $iif($mp3(%holder).title,$mp3(%holder).title,N/A) did -ra k2mp3 532 $iif($mp3(%holder).album,$mp3(%holder).album,N/A) did -ra k2mp3 533 $iif($mp3(%holder).track,$mp3(%holder).track,N/A) did -ra k2mp3 534 $iif($mp3(%holder).year,$mp3(%holder).year,N/A) did -ra k2mp3 535 $iif($mp3(%holder).genre,$mp3(%holder).genre,N/A) did -ra k2mp3 536 $iif($mp3(%holder).comment,$mp3(%holder).comment,N/A) did -ra k2mp3 537 $iif($mp3(%holder).length,$duration($calc($mp3(%holder).length / 1000)),N/A) did -ra k2mp3 538 $iif($mp3(%holder).version,$mp3(%holder).version,N/A) did -ra k2mp3 539 $iif($mp3(%holder).bitrate,$mp3(%holder).bitrate kbit/s,N/A) did -ra k2mp3 540 $iif($mp3(%holder).vbr,$mp3(%holder).vbr,File is Not VBR) did -ra k2mp3 541 $iif($mp3(%holder).sample,$mp3(%holder).sample hz,N/A) did -ra k2mp3 542 $iif($mp3(%holder).mode,$mp3(%holder).mode,N/A) did -ra k2mp3 543 $iif($mp3(%holder).crc,Yes,No) did -ra k2mp3 544 $iif($mp3(%holder).copyright,Yes,No) did -ra k2mp3 545 $iif($mp3(%holder).private,Yes,No) if ($inmp3 == $false) { did -ra k2mp3 72 $asctime($calc($ctime($date) + ($mp3(%holder).length / 1000)), nn:ss) } } alias -l k2.makelist { write -c $scriptdirlister.bat dir $mp3dir*.mp3 /b /o:n /s > $scriptdirmp3.txt run -n command.com /c $scriptdirlister.bat } alias -l k2.fill.dialog.list { if ( %k2mp3.refresh.method == external ) { ;; THIS IS THE EXTERNAL METHOD OF FILLING THE LARGE LIST BOX loadbuf 1- $+ $lines($scriptdirmp3.txt) -o k2mp3 1 $scriptdirmp3.txt did -f k2mp3 1 ;; The next 3 lines of code(after this comment) are a great method of eliminating a stupid ass thing the windows dir ;; command does when there are too many files in a directory, that is, it will display a retard message in the output var %holder $read -w"*(Too many files, directory not sorted)*" $scriptdirmp3.txt if ($readn > 0) { did -d k2mp3 1 $readn } ;; The next line will diplay the number of mp3 just above the large list box thing. did -ra k2mp3 3 $did(k2mp3,1).lines MP3 if ($inmp3) { did -c k2mp3 1 $didwm(k2mp3,1,$inmp3.fname) k2.mp3properties $did(k2mp3,1).seltext } } else { ;; THIS IS THE INTERNAL METHOD OF FILLING THE LARGE LIST BOX var %holder $findfile($mp3dir,*.mp3,0,did -a k2mp3 1 $1-) did -f k2mp3 1 ;; The next line will diplay the number of mp3 just above the large list box thing. did -ra k2mp3 3 $did(k2mp3,1).lines MP3 if ($inmp3) { did -c k2mp3 1 $didwm(k2mp3,1,$inmp3.fname) k2.mp3properties $inmp3.fname } } } alias -l k2.set.dialog.buttons.and.stuff { did -z k2mp3 1 did -ra k2mp3 13 $int($calc($vol(master) / 4095)) did -a k2mp3 103 %k2mp3.play.msg if (%k2mp3.chan.or.self == chan) { did -e k2mp3 98,102,103,104,105,106,107,108,109 | did -c k2mp3 100 } else { did -b k2mp3 98,102,103,104,105,106,107,108,109 | did -c k2mp3 101 } if (%k2mp3.refresh.method == external) { did -c k2mp3 43 } else { did -c k2mp3 42 } if ( %k2mp3.folder.play == on ) { set %k2mp3.continuous.play on | did -b k2mp3 25 | did -c k2mp3 27 } else { did -e k2mp3 25 } if (%k2mp3.continuous.play == on) { did -c k2mp3 25 | did -v k2mp3 26 if (%k2mp3.shuffle.mode == on) { did -c k2mp3 26 } else { did -u k2mp3 26 } } else { did -h k2mp3 26 } if ( $inmp3 && $k2.is.mp3.paused ) { .timerMP3.TIMER 0 1 k2.start.mp3.timer did -ra k2mp3 72 $asctime($calc($ctime($date) + ($mp3($inmp3.fname).length / 1000)), nn:ss) did -c k2mp3 1 $didwm(k2mp3,1,$inmp3.fname) k2.mp3properties $inmp3.fname did -ra k2mp3 30 $nopath($inmp3.fname) did -h k2mp3 6 did -v k2mp3 7 did -h k2mp3 8 did -v k2mp3 9 } elseif ($inmp3) { .timerMP3.TIMER 0 1 k2.start.mp3.timer did -ra k2mp3 72 $asctime($calc($ctime($date) + ($mp3($inmp3.fname).length / 1000)), nn:ss) did -c k2mp3 1 $didwm(k2mp3,1,$inmp3.fname) k2.mp3properties $inmp3.fname did -ra k2mp3 30 $nopath($inmp3.fname) did -h k2mp3 6 did -v k2mp3 7 did -v k2mp3 8 did -h k2mp3 9 } else { did -b k2mp3 6,7,8,9 did -h k2mp3 7 did -h k2mp3 9 did -r k2mp3 530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545 } } alias -l k2.is.mp3.paused { var %startpos $inmp3.pos var %i = 1 while (%i <= 10) { inc %i var %endpos $inmp3.pos } if ( %startpos == %endpos ) { return $true } else { return $false } } ;;;;;THE EVENTS/REMOTES;;;;; on 1:load: { if ( $version < 5.9 ) { echo 2 -a *** Are You Crazy? This Script, K2-MP3, requires mIRC version 5.9 or later! unload -rs $scriptdirk2mp3.mrc } else { var %startupholder $right(%,1) $+ $left(mp3,3) set %k2mp3.play.msg %startupholder k2.makelist } } on 1:start: { set %k2mp3.folder.play off | unset %k2mp3.played.file.from.menu } on 1:dialog:k2mp3:init:0: { k2.fill.dialog.list k2.set.dialog.buttons.and.stuff } on 1:dialog:k2mp3:rclick:0:{ did -f k2mp3 1 | did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:1:{ did -r k2mp3 5 if ($inmp3 && %k2mp3.continuous.play == on && %k2mp3.shuffle.mode == off && $didwm(k2mp3,1,$inmp3.fname) != $did(k2mp3,1).sel) { set %k2mp3.did.user.select.new.line yes } else { unset %k2mp3.did.user.select.new.line } did -e k2mp3 6,7,8,9 | did -z k2mp3 1 | k2.mp3properties $did(k2mp3,1).seltext } on 1:dialog:k2mp3:dclick:1:{ k2.stopmp3 | did -r k2mp3 5 | k2.playmp3 $active $did(k2mp3,1).seltext | unset %k2mp3.did.user.select.new.line | if (%k2mp3.folder.play == on) { echo 2 -a *** Folder play has been stopped | set %k2mp3.folder.play off } } on 1:dialog:k2mp3:sclick:5:{ did -r k2mp3 5 } on 1:dialog:k2mp3:edit:5:{ var %holder * $+ $did(k2mp3,5) $+ * did -c k2mp3 1 $didwm(k2mp3,1,%holder,0) k2.mp3properties $did(k2mp3,1).seltext did -e k2mp3 6,7,8,9 } on 1:dialog:k2mp3:sclick:6:{ did -r k2mp3 5 | k2.playmp3 $active $did(k2mp3,1).seltext | unset %k2mp3.did.user.select.new.line | if (%k2mp3.folder.play == on) { echo 2 -a *** Folder play has been stopped | set %k2mp3.folder.play off } } on 1:dialog:k2mp3:sclick:7:{ did -r k2mp3 5 | k2.stopmp3 } on 1:dialog:k2mp3:sclick:8:{ did -r k2mp3 5 if ($inmp3 == $false) { halt } else { splay pause | did -h k2mp3 8 | did -v k2mp3 9 } } on 1:dialog:k2mp3:sclick:9:{ splay resume | did -v k2mp3 8 | did -h k2mp3 9 | did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:10:{ if ($vol(master) > 0) { vol -wmpv $calc($vol(master) - 4095) did -ra k2mp3 13 $int($calc($vol(master) / 4095)) } did -f k2mp3 1 did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:11:{ if ($vol(master) < 65535) { vol -wmpv $calc($vol(master) + 4095) did -ra k2mp3 13 $int($calc($vol(master) / 4095)) } did -f k2mp3 1 did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:14: { .timerMP3.TIMER off } on 1:dialog:k2mp3:sclick:15: { .timerMP3.TIMER off } on 1:dialog:k2mp3:dclick:30: { did -r k2mp3 5 did -f k2mp3 1 did -c k2mp3 1 $didwm(k2mp3,1,$inmp3.fname) unset %k2mp3.did.user.select.new.line k2.mp3properties $did(k2mp3,1).seltext } on 1:dialog:k2mp3:sclick:41:{ did -r k2mp3 5 did -f k2mp3 1 did -r k2mp3 1 if (%k2mp3.refresh.method == external) { k2.makelist .timerWaiting.for.makelist.to.finish -m 1 3800 k2.fill.dialog.list } else { k2.fill.dialog.list } } on 1:dialog:k2mp3:sclick:42:{ set %k2mp3.refresh.method internal did -r k2mp3 1 did -r k2mp3 5 k2.fill.dialog.list } on 1:dialog:k2mp3:sclick:43:{ set %k2mp3.refresh.method external did -r k2mp3 1 did -r k2mp3 5 k2.fill.dialog.list } on 1:dialog:k2mp3:sclick:100:{ set %k2mp3.chan.or.self chan did -e k2mp3 98,102,103,104,105,106,107,108,109 did -r k2mp3 5 did -f k2mp3 1 } on 1:dialog:k2mp3:sclick:101:{ set %k2mp3.chan.or.self self did -b k2mp3 98,102,103,104,105,106,107,108,109 did -r k2mp3 5 did -f k2mp3 1 } on 1:dialog:k2mp3:edit:103:{ set %k2mp3.play.msg $did(k2mp3,103) did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:20:{ if ($inmp3) splay seek $calc($inmp3.pos - 10000) did -f k2mp3 1 did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:21:{ if ($inmp3) splay seek $calc($inmp3.pos + 20000) did -f k2mp3 1 did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:25:{ if (%k2mp3.continuous.play == on) { set %k2mp3.continuous.play off did -h k2mp3 26 set %k2mp3.shuffle.mode off } else { set %k2mp3.continuous.play on did -u k2mp3 26 did -v k2mp3 26 } did -f k2mp3 1 did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:26:{ if (%k2mp3.shuffle.mode == on) { set %k2mp3.shuffle.mode off } else { set %k2mp3.shuffle.mode on } unset %k2mp3.did.user.select.new.line did -f k2mp3 1 did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:27:{ did -u k2mp3 27 if ( %k2mp3.folder.play == off || %k2mp3.folder.play == $null ) { k2.folderplay } else { k2.stopmp3 } if ( $active != Status Window ) { did -ra k2mp3 98 $active } did -f k2mp3 1 did -r k2mp3 5 } on 1:dialog:k2mp3:sclick:16:{ did -f k2mp3 1 did -r k2mp3 5 if (%k2mp3.folder.play == on) { if ($sline(@k2mp3,1).ln == 1) { echo 2 -a *** You are at the first file, you can't jump backward anymore. } else { if (%k2mp3.play.to == $null) { set %k2mp3.play.to $active } if (%k2mp3.shuffle.mode == on) { sline @k2mp3 $rand(1,$line(@k2mp3,0)) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) } else { sline @k2mp3 $calc( $sline(@k2mp3,1).ln - 1 ) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) set %k2mp3.folder.play on } } } elseif (%k2mp3.shuffle.mode == on) { did -c k2mp3 1 $rand(1,$did(k2mp3,1).lines) k2.playmp3 $active $did(k2mp3,1).seltext } else { did -c k2mp3 1 $calc( $didwm(k2mp3,1,$did(k2mp3,1).seltext) - 1 ) k2.playmp3 $active $did(k2mp3,1).seltext } } on 1:dialog:k2mp3:sclick:17:{ did -f k2mp3 1 did -r k2mp3 5 if (%k2mp3.folder.play == on) { if ($sline(@k2mp3,1).ln == $line(@k2mp3,0)) { echo 2 -a *** You are at the last file, you can't skip forward anymore. } else { if (%k2mp3.play.to == $null) { set %k2mp3.play.to $active } if (%k2mp3.shuffle.mode == on) { sline @k2mp3 $rand(1,$line(@k2mp3,0)) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) } else { sline @k2mp3 $calc( $sline(@k2mp3,1).ln + 1 ) k2.playmp3 %k2mp3.play.to $sline(@k2mp3,1) set %k2mp3.folder.play on } } } elseif (%k2mp3.shuffle.mode == on) { did -c k2mp3 1 $rand(1,$did(k2mp3,1).lines) k2.playmp3 $active $did(k2mp3,1).seltext } else { did -c k2mp3 1 $calc( $didwm(k2mp3,1,$did(k2mp3,1).seltext) + 1 ) k2.playmp3 $active $did(k2mp3,1).seltext } } on 1:mp3end: { k2.do.this.at.end.of.mp3 | if ($dialog(k2mp3) == k2mp3) { did -r k2mp3 5 } } ;;;;;THE DIALOG TABLE;;;;; dialog k2mp3 { title "K2-MP3 Version 1.5" size -1 -1 330 210 option dbu list 1, 5 10 190 162, vsbar, hsbar text "The Songs in mIRC's mp3 Directory" 2, -1 2 190 7,center text "number of files", 3, 164 2 30 7, right text "Quick Search", 4, 45 164 50 6 edit "", 5, 44 170 57 10, autohs button "Play", 6, 26 194 25 15 button "Stop", 7, 26 194 25 15 button "Pause", 8, 51 194 25 15 button "Resume", 9, 51 194 25 15 button "Back", 16, 1 194 25 15 button "Next", 17, 76 194 25 15 button "-10s",20, 144 200 15 8 button "+20s",21, 162 200 15 8 text "Seek",22, 154 193 13 6 button "<",10, 106 200 10 8 button ">",11, 129 200 10 8 text "Volume",12, 113 193 20 6, center text "",13, 117 200 11 7, center button "ok", 14, 301 197 25 10, ok button "cancel", 15, 301 197 0 0, cancel check "Continuous Play", 25, 182 197 43 10, push check "Shuffle", 26, 225 197 20 10, push check "Folder Play", 27, 245 197 30 10, push link "", 30, 8 184 400 13 box "Refresh List Method", 40, 104 164 91 17 button "Refresh list", 41, 162 170 30 8 radio "Internal", 42, 106 171 26 8,left, group radio "External", 43, 133 171 27 8,left text "00:00", 70, 8 172 15 6 text "/", 71, 23 172 3 6 text "00:00", 72, 27 172 15 6 text "Time", 73, 19 165 12 6,center text "Play To:", 97, 200 134 20 8 edit "", 98, 284 134 40 10, autohs radio "Channel", 100, 250 134 30 8, group radio "Self", 101, 225 134 19 8, box "Enter a Custom Play Message", 102, 200 142 126 40 edit "", 103, 202 149 122 10, return, autohs text "%offer = '!nick file'", 104, 207 159 42 7 text "%mp3 = filename", 105, 207 166 42 7 text "%br = bitrate", 106, 207 173 42 7 text "%hz = frequency", 107, 255 159 42 7 text "%time = length", 108, 255 166 42 7 text "%mode = mode", 109, 255 173 42 7 box "Properties", 500, 200 5 125 127 text "Artist:", 501, 205 15 25 7,right text "Title:", 502, 205 22 25 7,right text "Album:", 503, 205 29 25 7,right text "Track:", 504, 205 36 25 7,right text "Year:", 505, 205 43 25 7,right text "Genre:", 506, 205 50 25 7,right text "Comment:", 507, 205 57 25 7,right text "Length:", 508, 205 64 25 7,right text "Version:", 509, 205 71 25 7,right text "Bitrate:", 510, 205 78 25 7,right text "VBR:", 511, 205 85 25 7,right text "Sample:", 512, 205 92 25 7,right text "Mode:", 513, 205 99 25 7,right text "CRC:", 514, 205 106 25 7,right text "Copyright:", 515, 205 113 25 7,right text "Private:", 516, 205 120 25 7,right text "holder_artist", 530, 235 15 89 7 text "holder_title", 531, 235 22 89 7 text "holder_album", 532, 235 29 89 7 text "holder_year", 533, 235 36 89 7 text "holder_track", 534, 235 43 89 7 text "holder_genre", 535, 235 50 89 7 text "holder_comment", 536, 235 57 89 7 text "holder_lenght", 537, 235 64 89 7 text "holder_version", 538, 235 71 89 7 text "holder_bitrate", 539, 235 78 89 7 text "holder_vbr", 540, 235 85 89 7 text "holder_sample", 541, 235 92 89 7 text "holder_mode", 542, 235 99 89 7 text "holder_crc", 543, 235 106 89 7 text "holder_copyright", 544, 235 113 89 7 text "holder_private", 545, 235 120 89 7 }