rendered paste bodyalias seek {
:seek
var %ms = $?="Type the time you'd wish to jump to. Use this format: mins:seconds (E.G. 4:25)"
if (%ms == $null) { halt }
tokenize 58 %ms
var %mins = $calc($1 * 60000)
var %wholebit $calc(%mins + $calc($2 * 1000))
if (%wholebit > $insong.length) { $iif($?!="You've selected a time that is above the length of the song. Try again?" == $true,goto seek,halt) | halt }
splay seek %wholebit
}
alias F11 mp3player
alias mp3player {
if (!$regex(95 98 NT ME 2K XP XP 2003,$os)) { echo -a Sorry, You need a windows based operating system for use of this script. | halt }
if ($version < 6.2) { echo -a Hello, You're running an older version of mIRC, if you'd like to help me, then query RussellReal on SwiftIRC.net and tell me the version and if it works or not! Thanks for your help :) }
dialog -m mp3player mp3player
did -b mp3player 1,9
}
dialog mp3player {
title "MP3 Player"
size -1 -1 150 146
option dbu
edit "", 99, 1 1 148 19, read, multi, autohs, hsbar
text "Position:", 2, 2 35 20 8, left
edit "", 1, 25 34 40 10, center
button "Add", 3, 108 19 20 10
button "Rem", 4, 129 19 20 10
button "Play", 5, 66 34 20 10
button "Next", 6, 129 34 20 10
text "Volume:", 7, 2 20 20 10, center
button "DN", 8, 23 19 10 10
edit "", 9, 34 19 20 10, center
button "UP", 10, 55 19 10 10
button "Mute", 11, 66 19 20 10
button "unmute", 12, 87 19 20 10
button "Pause", 13, 87 34 20 10
button "Back", 14, 108 34 20 10
text "YOUR CUSTOM MP3 PLAYLIST", 15, 7 48 148 10, left
list 16, 1 57 148 92
button "stop", 17, 108 46 41 10
button "Seek", 18, 87 46 20 10
}
on *:DIALOG:mp3player:close:0:{
set %dialog.mp3 off
if ($insong == $true) {
timerdur off
}
else {
timerdur off
unset %n
}
}
on *:mp3end:{
set %n $calc(%n + 1)
if (%n > $lines(playlist.txt)) { set %n 1 }
splay $gettok($read(playlist.txt,%n),1,32)
if (%dialog.mp3 == off) { halt }
tokenize 32 $read(playlist.txt,%n)
did -ra mp3player 99 $2-
}
on *:DIALOG:mp3player:init:*:{
set %dialog.mp3 on
if ($insong == $true) {
tokenize 32 $read(playlist.txt,%n)
did -ra mp3player 99 $2-
timerdur 0 1 timedur
}
if (%volume == $null) {
set %volume 7
}
vol -v $calc(%volume * 4369)
if (%volume isnum 1-14) { did -ra mp3player 9 %volume }
if (%volume isnum 0) { did -ra mp3player 9 MIN }
if (%volume isnum 15) { did -ra mp3player 9 MAX }
var %i = 0
while (%i < $lines(playlist.txt)) {
inc %i 1
tokenize 32 $read(playlist.txt,%i)
did -a mp3player 16 $2-
}
}
alias mili2semi {
var %i = $remove($replace($duration($calc($insong.length / 1000)),mins,:,min,:,secs,$chr(32),sec,$chr(32)),$chr(32))
tokenize 58 %i
if ($2 == $null) {
if ($1 isnum 0-9) { var %len = 0: $+ 0 $+ $1 | goto skip }
var %len = 0: $+ $1
goto skip
}
if ($3 == $null) {
if ($2 isnum 0-9) { var %len = $1 $+ : $+ 0 $+ $2 | goto skip }
var %len = $1 $+ : $+ $2
goto skip
}
if ($3 != $null) {
var %2 = $2
var %3 = $3
if ($len($2) == 1) { var %2 = 0 $+ $2 }
if ($len($3) == 1) { var %3 = 0 $+ $2 }
var %len = $1 $+ : $+ %2 $+ : $+ %3
}
:skip
return %len
}
alias timedur {
if ($insong.pos < $insong.length) {
var %i = $remove($replace($duration($calc($insong.pos / 1000)),mins,:,min,:,secs,$chr(32),sec,$chr(32)),$chr(32))
tokenize 58 %i
if ($2 == $null) {
if ($1 isnum 0-9) { var %pos = 0: $+ 0 $+ $1 | goto skip }
var %pos = 0: $+ $1
goto skip
}
if ($3 == $null) {
if ($2 isnum 0-9) { var %pos = $1 $+ : $+ 0 $+ $2 | goto skip }
var %pos = $1 $+ : $+ $2
goto skip
}
if ($3 != $null) {
var %2 = $2
var %3 = $3
if ($len($2) == 1) { var %2 = 0 $+ $2 }
if ($len($3) == 1) { var %3 = 0 $+ $2 }
var %pos = $1 $+ : $+ %2 $+ : $+ %3
}
:skip
var %1 = %pos
var %i = $remove($replace($duration($calc($insong.length / 1000)),mins,:,min,:,secs,$chr(32),sec,$chr(32)),$chr(32))
tokenize 58 %i
if ($2 == $null) {
if ($1 isnum 0-9) { var %pos = 0: $+ 0 $+ $1 | goto skip1 }
var %pos = 0: $+ $1
goto skip1
}
if ($3 == $null) {
if ($2 isnum 0-9) { var %pos = $1 $+ : $+ 0 $+ $2 | goto skip1 }
var %pos = $1 $+ : $+ $2
goto skip1
}
if ($3 != $null) {
var %2 = $2
var %3 = $3
if ($len($2) == 1) { var %2 = 0 $+ $2 }
if ($len($3) == 1) { var %3 = 0 $+ $2 }
var %pos = $1 $+ : $+ %2 $+ : $+ %3
}
:skip1
var %2 = %pos
did -ra mp3player 1 ( $+ %1 $+ / $+ %2 $+ )
}
if (insong.pos == $insong.length) {
timerdur off
}
}
on *:DIALOG:mp3player:dclick:16:{
set %n $did(mp3player,16).sel
splay $gettok($read(playlist.txt,$did(mp3player,16).sel),1,32)
did -ra mp3player 99 $did(mp3player,16).seltext
timerdur 0 1 timedur
}
on *:DIALOG:mp3player:sclick:*:{
if ($did == 3) {
if (%prevdir == $null) { var %new = $sfile(*,Please only pick MP3 audio,Load) | write playlist.txt $file(%new).shortfn $nopath(%new) | set %prevdir $nofile(%new) | did -a mp3player 16 $nopath(%new) | halt }
var %new = $sfile(%prevdir,Please only pick MP3 audio,Load)
if ($right(%new,4) == .mp3) {
write playlist.txt $file(%new).shortfn $nopath(%new)
set %prevdir $nofile(%new)
did -a mp3player 16 $nopath(%new)
}
else { echo -a Only mp3 audio is supported. }
}
if ($did == 4) {
if ($did(mp3player,16).sel < %n) { dec %n 1 }
write -dl $+ $did(mp3player,16).sel playlist.txt
did -d mp3player 16 $did(mp3player,16).sel
}
if ($did == 5) {
if ($insong.pause == $true ) { splay resume | halt }
set %n $did(mp3player,16).sel
splay $gettok($read(playlist.txt,$did(mp3player,16).sel),1,32)
did -ra mp3player 99 $gettok($read(playlist.txt,$did(mp3player,16).sel),2-,32)
timerdur 0 1 timedur
}
if ($did == 6) {
inc %n 1
if (%n > $did(mp3player,16).lines) { set %n 1 }
splay $gettok($read(playlist.txt,%n),1,32)
did -ra mp3player 99 $gettok($read(playlist.txt,%n),2-,32)
}
if ($did == 8) {
if (%volume == 1) { dec %volume 1 | vol -v $calc(%volume * 4369) | did -ra mp3player 9 MIN | halt }
if (%volume isnum 2-15) { dec %volume 1 | vol -v $calc(%volume * 4369) | did -ra mp3player 9 %volume }
}
if ($did == 10) {
if (%volume == 14) { inc %volume 1 | vol -v $calc(%volume * 4369) | did -ra mp3player 9 MAX | halt }
if (%volume isnum 0-13) { inc %volume 1 | vol -v $calc(%volume * 4369) | did -ra mp3player 9 %volume }
}
if ($did == 11) { vol -vu1 }
if ($did == 12) { vol -vu2 }
if ($did == 13) { splay pause }
if ($did == 14) {
dec %n 1
if (%n < 1) { set %n $did(mp3player,16).lines }
splay $gettok($read(playlist.txt,%n),1,32)
did -ra mp3player 99 $gettok($read(playlist.txt,%n),2-,32)
}
if ($did == 17) { splay stop | did -r mp3player 1 | did -r mp3player 99 }
if ($did == 18) {
if ($insong == $true) { seek }
}
}