D-mp3 Player — File Browser
D-mp3Playerv1.2 / D-mp3Playerv1.2 / dmp3 / dmp3.mrc
dmp3.mrc — 31.71 KB — Download this file
;-----------------------------------------------------------------------------------------
; D-mp3 Player - Verson 1.2
; By jel/DND
;-----------------------------------------------------------------------------------------
on *:load:{
if ($version < 6.16) { duload }
else { _dmp3help }
}
alias duload { echo -a D-mp3 Player requires mIRC version 6.16 or higher. Please upgrade to a newer version | .unload -rs $+(",$scriptdirdmp3.mrc,") }
alias -l mdxdialog return $scriptdirdialog.mdx
alias -l mdx return $dll($scriptdirmdx.dll,$1,$2-)
alias -l ctl return $scriptdirctl_gen.mdx
alias -l dmp3.delfile { write -dl $+ %dmp3.r.file $+(",$scriptdirsonglist.txt,") | _dmp3.plcreate }
alias -l _dmp3.rep { _dmp3.play %dmp3.song }
alias -l dmp3.delall { write -c $+(",$scriptdirsonglist.txt,") | _dmp3.plcreate }
alias -l dmp3.sint { drawtext -nr @_dmp3.sinf $rgb(200,200,200) "Arial" $2 10 $1 $3- }
alias -l dmp3.rcl { window -Bfphdo +dL @_dmp3.rcl $mouse.dx $mouse.dy 150 90 | set %dmp3.r.file $1 | dmp3.rclm }
alias _dmp3player { if (!$dialog(dmp3player)) { dialog -m dmp3player dmp3player } }
alias _dmp3help { if (!$dialog(dmp3help)) { dialog -m dmp3help dmp3help } }
alias xdmp3player { if ($dialog(dmp3player)) { dialog -c dmp3player dmp3player } }
alias -l dmp3pops {
if ($1 == $mouse.x) && ($2 == $mouse.y) { if ($window(@_dmp3.sing)) { window -c @_dmp3.sinf } | dmp3.sinf $line(@_dmp3.buffer,$3) }
}
alias -l dmp3.sinl {
if ($2 < $width($3-,Arial,$1)) { return $width($3-,Arial,$1) }
else { return $2 }
}
alias -l fmod {
if ($isid) { return $dll($scriptdirfmod_mIRC.dll,$1,$2-) }
else { echo -s fmod: $dll($scriptdirfmod_mIRC.dll,$1,$2-) }
}
alias -l fmod_start {
if ($fmod(FMOD_Connect,$scriptdirfmod.dll)!=0) {
if ($fmod(SOUND_Init,44100 64 0)) {
}
else { echo -s - fmod couldn't initialize...do you even have a sound card buddy? }
}
}
alias -l dmp3.adddir {
var %j = 1, %i = $sdir="Select Directory", %c = $findfile(%i,*.mp3,0)
while (%j <= %c) { write $+(",$scriptdirsonglist.txt,") $findfile(%i,*.mp3,%j) | inc %j }
_dmp3.plcreate
}
alias -l dmp3.addfile {
var %i = $$file="Select Track"
if (%i) {
write $+(",$scriptdirsonglist.txt,") %i
_dmp3.plcreate
}
}
alias -l _dmp3.plcreate {
_dmp3.bufferload
$scrollbar(@_dmp3.playlist,139,0,15,89,$rgb(66,83,102),$rgb(171,195,210),$rgb(255,255,255),$rgb(50,50,150),@_dmp3.buffer,7)
_dmp3.draw.buffer 1 1
}
alias -l _dmp3.play {
unset %dmp3.pause
var %file = $+(",$line(@_dmp3.buffer,%dmp3.song),")
_dmp3.tupl $nopath($remove($line(@_dmp3.buffer,%dmp3.song),.mp3))
var %_dmp3.1 $fmod(SOUND_Stream_Open,1 %file 1 $file(%file).size 0)
var %_dmp3.2 $fmod(SOUND_Stream_Play,1 1)
set %dmp3.slength $calc($mp3(%file).length / 1000)
var %i = $gmt(%dmp3.slength,$iif(%dmp3.slength >= 3600,hh:nn:ss,nn:ss))
set %dmp3.plength 0
did -ra dmp3player 20 $+(00:00,/,%i)
.timergettime -i 0 1 dmp3.gettime
}
alias -l _dmp3.pbut {
if (%dmp3.pause) { _dmp3.pause | halt }
elseif (%dmp3.plength == 0) { if (%dmp3.song) { _dmp3.play %dmp3.song } }
}
alias -l _dmp3.pause {
if (%dmp3.pause) {
unset %dmp3.pause
.timergettime -r
var %_dmp3.1 $fmod(SOUND_SetPaused,-3,0)
}
else {
set %dmp3.pause on
.timergettime -p
var %_dmp3.2 $fmod(SOUND_SetPaused,-3,1)
}
}
alias -l dmp3.gettime {
inc %dmp3.plength
var %i = $gmt(%dmp3.plength,$iif(%dmp3.plength >= 3600,hh:nn:ss,nn:ss))
var %c = $gmt(%dmp3.slength,$iif(%dmp3.slength >= 3600,hh:nn:ss,nn:ss))
did -ra dmp3player 20 $+(%i,/,%c)
var %ii = $ceil($calc((%dmp3.plength / %dmp3.slength) * 100))
var %iii = $ceil($calc((150 / 100) * %ii))
_dmp3.trackbar %iii
if (%i == %c) { .timergettime off | _dmp3.trackbar 0 | _dmp3.gnext }
}
alias -l _dmp3.stop {
var %_dmp3.21 $fmod(SOUND_Stream_Stop,1)
var %_dmp3.22 $fmod(SOUND_Stream_Close,1)
set %dmp3.plength 0
.timergettime off
_dmp3.trackbar 1
unset %dmp3.pause
}
alias -l _dmp3.gnext {
unset %dmp3.pause
if (%dmp3.pst == ord) { _dmp3.ord }
elseif (%dmp3.pst == ran) { _dmp3.ran }
elseif (%dmp3.pst == rep) { _dmp3.rep }
else { set %dmp3.pst ord | _dmp3.ord }
}
alias -l _dmp3.ord {
inc %dmp3.song
if (%dmp3.song > $line(@_dmp3.buffer,0)) { set %dmp3.song 1 }
_dmp3.play %dmp3.song
}
alias -l _dmp3.ran {
%dmp3.song = $rand(1,$line(@_dmp3.buffer,0))
if (!%dmp3.ranl) { %dmp3.ranl = %dmp3.song }
else { %dmp3.ranl = $+(%dmp3.ranl,:,%dmp3.song) }
_dmp3.play %dmp3.song
}
alias -l _dmp3.gback {
unset %dmp3.pause
if (%dmp3.pst == ord) { _dmp3.bord }
elseif (%dmp3.pst == ran) { _dmp3.bran }
elseif (%dmp3.pst == rep) { _dmp3.rep }
else { set %dmp3.pst ord | _dmp3.bord }
}
alias -l _dmp3.bord {
dec %dmp3.song
if (%dmp3.song < 1 ) { set %dmp3.song $line(@_dmp3.buffer,0) }
_dmp3.play %dmp3.song
}
alias -l _dmp3.bran {
var %i = $numtok(%dmp3.ranl,58)
if (%i > 1) { %dmp3.ranl = $deltok(%dmp3.ranl,%i,58) | dec %i }
%dmp3.song = $gettok(%dmp3.ranl,%i,58)
_dmp3.play %dmp3.song
}
alias -l _dmp3.bufferload {
clear @_dmp3.buffer
var %c = 1, %i = $lines($+(",$scriptdirsonglist.txt,"))
while (%c <= %i) {
aline @_dmp3.buffer $read($+(",$scriptdirsonglist.txt,"),%c)
inc %c
}
}
alias -l scrollbar {
if (!$isid) { return }
else {
var %i = 1
if ($hget(scollbar. $+ $1)) { hfree -s scrollbar. $+ $1 }
drawrect -rnf $1 $6 1 $2 $3 $4 $5
while ($hget(scrollbar. $+ $1,%i)) inc %i
hadd -m scrollbar. $+ $1 %i $+($2,/,$3,/,$4,/,$5,/,$6,/,$7,/,$8,/,$9,/,$10,/,$11)
}
}
alias -l _dmp3.pllc {
set %dmp3.song $calc(%dmp3.y + $deltok($calc($1- / 13),2,46))
if ($line(@_dmp3.buffer,%dmp3.song)) { _dmp3.play %dmp3.song }
}
alias -l _dmp3.pllca {
var %c = $calc(%dmp3.y + $deltok($calc($2 / 13),2,46))
if ($window(@_dmp3.sinf)) { window -c @_dmp3.sinf }
if ($line(@_dmp3.buffer,%c)) { .timerpops 1 1 dmp3pops $1 $2 %c }
}
alias -l _dmp3.pllrc {
var %c = $calc(%dmp3.y + $deltok($calc($2 / 13),2,46))
if ($window(@_dmp3.rcl)) { window -c @_dmp3.rcl }
dmp3.rcl %c
}
alias -l _dmp3.scroll.update {
if ($active == @_dmp3.playlist) {
if ($1 == 1) { _dmp3.draw.buffer $2 }
if ($1 == 2) { _dmp3.draw.buffer $2 }
}
}
alias -l _dmp3.draw.buffer {
var %t = $2,%pos = $1
if ($hget(scrollbar. $+ @_dmp3.playlist,1)) { tokenize 47 $ifmatch }
if ($line(@_dmp3.buffer,0) <= 6) { set %dmp3.y $calc(($mouse.y - $2) / $4 * $line(@_dmp3.buffer,0)) }
elseif ($line(@_dmp3.buffer,0) > 7) { set %dmp3.y $calc(($mouse.y - $2) / $4 * $calc($line(@_dmp3.buffer,0) - 5))) }
if (%genre.y == 0) { set %dmp3.y 1 }
if (%t) { set %dmp3.y $ifmatch }
set %dmp3.y $deltok(%dmp3.y,2,46)
if ($window(@_dmp3.playlist)) {
drawrect -nrf @_dmp3.playlist $rgb(66,83,102) 0 0 0 154 90
if (%dmp3.y < 1) { set %dmp3.y 1 }
var %x2 = %dmp3.y
var %x = 0
while (%x <= 6) {
if ($line(@_dmp3.buffer,%x2)) {
drawtext -rnc @_dmp3.playlist $rgb(26,43,62) "arial" 9 4 $calc((13 * %x) + 2) 140 14 $nopath($remove($line(@_dmp3.buffer,%x2),.mp3))
drawtext -rnc @_dmp3.playlist $rgb(99,168,245) "arial" 9 3 $calc((13 * %x) + 1) 140 14 $nopath($remove($line(@_dmp3.buffer,%x2),.mp3))
}
inc %x
inc %x2
}
if ($line(@_dmp3.buffer,0) > 6) {
tokenize 47 $hget(scrollbar. $+ @_dmp3.playlist,1)
var %sep = $calc($iif($line($9,0) <= $10 ,1,$iif($calc($10 / $line($9,0)) < 0.05,0.05,$calc($10/ $line($9,0)))))
var %sh = $calc($8 + $rgb(20,20,20))
var %x $1, %y $calc(((%pos / 100 * $4) * $calc(1 - %sep)) + $2), %w $3, %h $round($calc($4 * %sep),0)
drawrect -rnf @_dmp3.playlist $5 1 $1 $2 $3 $4
drawrect -rnf @_dmp3.playlist $6 1 %x %y %w %h
drawrect -rn @_dmp3.playlist $8 1 %x %y %w %h
drawline -rnf @_dmp3.playlist $7 1 $calc(%x + 1) $calc((%y + %h) - 2) $calc(%x + 1) $calc(%y + 1) $calc((%x + %w) - 1) $calc(%y + 1)
drawline -rnf @_dmp3.playlist %sh 1 $calc(%x + 1) $calc((%y + %h) - 2) $calc((%x + %w) - 2) $calc((%y + %h) - 2) $calc((%x + %w) - 2) $calc(%y + 1)
}
drawdot @_dmp3.playlist
}
}
alias -l dmp3.sinf {
var %y = 78, %x = 1
var %dmp3.song = $remove($nopath($1-),.mp3), %dmp3.length = $calc($sound($1-).length / 1000)
%dmp3.length = LENGTH: $gmt(%dmp3.length,$iif(%dmp3.length >= 3600,hh:nn:ss,nn:ss))
var %dmp3.artist = ARTIST: $sound($1-).artist, %dmp3.album = ALBUM: $sound($1-).album
var %dmp3.title = TITLE: $sound($1-).title, %dmp3.bitrate = BITRATE: $sound($1-).bitrate kbps
var %dmp3.sample = SAMPLE: $round($calc($sound($1-).sample / 1000),2) khz
var %dmp3.icom = %dmp3.length %dmp3.bitrate %dmp3.sample
%x = $dmp3.sinl(9,%x,%dmp3.song)
%x = $dmp3.sinl(9,%x,%dmp3.artist)
%x = $dmp3.sinl(9,%x,%dmp3.album)
%x = $dmp3.sinl(9,%x,%dmp3.title)
%x = $dmp3.sinl(9,%x,%dmp3.icom)
window -Bfphdo +dL @_dmp3.sinf $mouse.dx $mouse.dy $calc(%x + 20) %y
drawrect -nr @_dmp3.sinf $rgb(255,255,255) 1 0 0 $calc(%x + 20) %y
drawrect -nrf @_dmp3.sinf $rgb(66,83,157) 1 1 1 $calc(%x + 18) $calc(%y - 2)
drawtext -nr @_dmp3.sinf $rgb(0,0,0) "Arial" 9 9 4 %dmp3.song
drawtext -nr @_dmp3.sinf $rgb(0,0,0) "Arial" 9 9 6 %dmp3.song
drawtext -nr @_dmp3.sinf $rgb(0,0,0) "Arial" 9 11 4 %dmp3.song
drawtext -nr @_dmp3.sinf $rgb(0,0,0) "Arial" 9 11 6 %dmp3.song
drawtext -nr @_dmp3.sinf $rgb(255,255,255) "Arial" 9 10 5 %dmp3.song
dmp3.sint 20 9 %dmp3.artist
dmp3.sint 33 9 %dmp3.album
dmp3.sint 46 9 %dmp3.title
dmp3.sint 59 9 %dmp3.icom
drawdot @_dmp3.sinf
}
alias -l dmp3.rclm {
if ($window(@_dmp3.rcl)) {
drawrect -nr @_dmp3.rcl $rgb(255,255,255) 1 0 0 150 90
drawrect -nfr @_dmp3.rcl $rgb(68,83,157) 1 1 1 148 88
if ($1) {
if ($1 == 1) { drawrect -nfr @_dmp3.rcl $rgb(81,83,235) 1 5 6 140 18 }
elseif ($1 == 2) { drawrect -nfr @_dmp3.rcl $rgb(81,83,235) 1 5 26 140 18 }
elseif ($1 == 3) { drawrect -nfr @_dmp3.rcl $rgb(81,83,235) 1 5 46 140 18 }
elseif ($1 == 4) { drawrect -nfr @_dmp3.rcl $rgb(81,83,235) 1 5 66 140 18 }
}
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 9 8 Add Directory
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 9 10 Add Directory
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 11 8 Add Directory
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 11 10 Add Directory
drawtext -nr @_dmp3.rcl $rgb(255,255,255) "Arial" 9 10 9 Add Directory
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 9 28 Add Track
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 9 30 Add Track
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 11 28 Add Track
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 11 30 Add Track
drawtext -nr @_dmp3.rcl $rgb(255,255,255) "Arial" 9 10 29 Add Track
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 9 48 Delete Track
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 9 50 Delete Track
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 11 48 Delete Track
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 11 50 Delete Track
drawtext -nr @_dmp3.rcl $rgb(255,255,255) "Arial" 9 10 49 Delete Track
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 9 68 Delete All
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 9 70 Delete All
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 11 68 Delete All
drawtext -nr @_dmp3.rcl $rgb(0,0,0) "Arial" 9 11 70 Delete All
drawtext -nr @_dmp3.rcl $rgb(255,255,255) "Arial" 9 10 69 Delete All
drawdot @_dmp3.rcl
}
}
alias -l _dmp3.trackbar {
if ($window(@_dmp3.trackbar)) {
var %i = $1
if (%i < 5) { %i = 0 }
elseif (%i > 140) { %i = 140 }
else { %i = $calc(%i - 5) }
drawrect -nfr @_dmp3.trackbar $rgb(66,83,102) 1 0 0 150 4
drawrect -nfr @_dmp3.trackbar $rgb(171,195,210) 1 0 1 150 2
drawrect -nfr @_dmp3.trackbar $rgb(81,83,235) 1 0 1 %i 2
drawrect -nfrd @_dmp3.trackbar $rgb(200,0,0) 1 %i 0 10 4 2 2
drawdot @_dmp3.trackbar
}
}
alias -l _dmp3.search {
.timergettime -p
var %i = $ceil($calc((100 / 150) * $1)))
set %dmp3.plength $ceil($calc((%dmp3.slength / 100) * %i)))
var %_dmp3.1 $fmod(SOUND_Stream_SetTime,1,$calc(%dmp3.plength * 1000))
.timergettime -r
}
alias -l dmp3.psbut {
if ($window(@_dmp3.psset)) {
drawrect -rnf @_dmp3.psset $rgb(171,195,210) 1 0 0 106 12
drawline -rn @_dmp3.psset $rgb(255,255,255) 1 0 0 106 0
drawline -rn @_dmp3.psset $rgb(255,255,255) 1 0 1 0 11
drawline -rn @_dmp3.psset $rgb(50,50,150) 1 0 11 106 11
drawline -rn @_dmp3.psset $rgb(50,50,150) 1 35 0 35 11
drawline -rn @_dmp3.psset $rgb(255,255,255) 1 36 0 36 11
drawline -rn @_dmp3.psset $rgb(50,50,150) 1 70 0 70 11
drawline -rn @_dmp3.psset $rgb(255,255,255) 1 71 0 71 11
drawline -rn @_dmp3.psset $rgb(50,50,150) 1 105 0 105 11
drawtext -rn @_dmp3.psset $iif(%dmp3.pst == ord,$rgb(255,0,0),$rgb(26,43,62)) "arial" 9 7 0 order
drawtext -rn @_dmp3.psset $iif(%dmp3.pst == ran,$rgb(255,0,0),$rgb(26,43,62)) "arial" 9 38 0 random
drawtext -rn @_dmp3.psset $iif(%dmp3.pst == rep,$rgb(255,0,0),$rgb(26,43,62)) "arial" 9 75 0 repeat
drawdot @_dmp3.psset
}
}
alias -l dmp3.psupd {
if ($window(@_dmp3.psset)) {
drawtext -rn @_dmp3.psset $iif(%dmp3.pst == ord,$rgb(255,0,0),$rgb(26,43,62)) "arial" 9 7 0 order
drawtext -rn @_dmp3.psset $iif(%dmp3.pst == ran,$rgb(255,0,0),$rgb(26,43,62)) "arial" 9 38 0 random
drawtext -rn @_dmp3.psset $iif(%dmp3.pst == rep,$rgb(255,0,0),$rgb(26,43,62)) "arial" 9 75 0 repeat
drawdot @_dmp3.psset
}
}
alias -l dmp3.vols {
var %i = $calc(($vol(song) / 65535) * 100)
if ($window(@_dmp3.vol)) {
drawrect -rnf @_dmp3.vol $rgb(66,83,102) 1 0 0 $window(@_dmp3.vol).w $window(@_dmp3.vol).h
drawpic -n @_dmp3.vol 0 2 $iif($vol(master).mute,$+(",$scriptdirmutea.bmp,"),$+(",$scriptdirmute.bmp,"))
_dmp3.volld %i
drawdot @_dmp3.vol
}
}
alias -l _dmp3.volld {
var %bw = $calc($window(@_dmp3.vol).w -17), %cv = $calc((%bw / 100) * $1)
if ($window(@_dmp3.vol)) {
drawline -rn @_dmp3.vol $rgb(0,0,0) 1 15 12 15 3 $calc(%bw +16) 3
drawline -rn @_dmp3.vol $rgb(255,255,255) 1 16 12 $calc(%bw +16) 12 $calc(%bw +16) 3
drawrect -nfr @_dmp3.vol $rgb(171,195,210) 1 16 4 %bw 8
drawrect -nfr @_dmp3.vol $rgb(81,83,235) 1 16 4 %cv 8
}
}
menu @_dmp3.vol {
mouse: {
if ($mouse.key & 1) {
if ($inrect($mouse.x,$mouse.y,16,4,40,8)) {
if ($mouse.x == 55) { var %i = 100 }
else { var %i = $ceil($calc((($mouse.x - 16) / 40) * 100)) }
vol -p $calc((65535 / 100) * %i)
dmp3.vols
}
}
}
sclick: {
if ($inrect($mouse.x,$mouse.y,3,2,9,12)) {
$iif($vol(master).mute,vol -vu2, vol -vu1)
dmp3.vols
}
if ($inrect($mouse.x,$mouse.y,16,4,40,8)) {
if ($mouse.x == 55) { var %i = 100 }
else { var %i = $ceil($calc((($mouse.x - 16) / 40) * 100)) }
vol -p $calc((65535 / 100) * %i)
dmp3.vols
}
}
}
menu menubar {
D-mp3 Player: _dmp3player
}
menu @_dmp3.trackbar {
mouse: {
if ($mouse.key & 1) {
if ($inrect($mouse.x,$mouse.y,0,0,150,4)) { _dmp3.trackbar $mouse.x | _dmp3.search $mouse.x }
}
}
sclick : {
if ($inrect($mouse.x,$mouse.y,0,0,150,4)) { _dmp3.trackbar $mouse.x | _dmp3.search $mouse.x }
}
}
menu @_dmp3.rcl {
sclick: {
if ($inrect($mouse.x,$mouse.y,5,6,140,18)) { window -c @_dmp3.rcl | dmp3.adddir }
elseif ($inrect($mouse.x,$mouse.y,5,26,140,18)) { window -c @_dmp3.rcl | dmp3.addfile }
elseif ($inrect($mouse.x,$mouse.y,5,46,140,18)) { window -c @_dmp3.rcl | if (%dmp3.r.file) { dmp3.delfile } }
elseif ($inrect($mouse.x,$mouse.y,5,66,140,18)) { window -c @_dmp3.rcl | dmp3.delall }
window -c @_dmp3.rcl
unset %dmp3.r.file
}
mouse: {
if (($inrect($mouse.x,$mouse.y,5,6,140,18)) && (%rcl.sel != 1)) { dmp3.rclm 1 }
elseif (($inrect($mouse.x,$mouse.y,5,26,140,18)) && (%rcl.sel != 2)) { dmp3.rclm 2 }
elseif (($inrect($mouse.x,$mouse.y,5,46,140,18)) && (%rcl.sel != 3)) { dmp3.rclm 3 }
elseif (($inrect($mouse.x,$mouse.y,5,66,140,18)) && (%rcl.sel != 4)) { dmp3.rclm 4 }
}
leave: {
if ($window(@_dmp3.rcl)) { window -c @_dmp3.rcl }
}
}
menu @_dmp3.sinf {
leave: {
if ($window(@_dmp3.sinf)) { window -c @_dmp3.sinf }
}
sclick: { window -c @_dmp3.sinf }
}
menu @_dmp3.playlist {
mouse: {
if ($window(@_dmp3.rcl)) { window -c @_dmp3.rcl }
elseif ($inrect($mouse.x,$mouse.y,0,0,138,103)) { _dmp3.pllca $mouse.x $mouse.y }
elseif ($mouse.key & 1) {
var %r = 1
while ($hget(scrollbar. $+ $active,%r)) {
tokenize 47 $ifmatch
if ($inrect($mouse.x,$mouse.y,$1,$2,$3,$4)) { _dmp3.scroll.update %r $round($calc((($mouse.y - $2) / $4) * 100),0) }
inc %r
}
}
}
sclick: {
var %r = 1
while ($hget(scrollbar. $+ $active,%r)) {
tokenize 47 $ifmatch
if ($inrect($mouse.x,$mouse.y,$1,$2,$3,$4)) { _dmp3.scroll.update %r $round($calc((($mouse.y - $2) / $4) * 100),0) }
inc %r
}
}
dclick { if ($inrect($mouse.x,$mouse.y,0,0,138,103)) { _dmp3.pllc $mouse.y } }
rclick { if ($inrect($mouse.x,$mouse.y,0,0,138,103)) { _dmp3.pllrc $mouse.x $mouse.y } }
}
menu @_dmp3.psset {
sclick : {
if ($inrect($mouse.x,$mouse.y,1,1,34,10)) { %dmp3.pst = ord | dmp3.psupd }
elseif ($inrect($mouse.x,$mouse.y,36,1,34,10)) { %dmp3.pst = ran | dmp3.psupd }
elseif ($inrect($mouse.x,$mouse.y,71,1,34,10)) { %dmp3.pst = rep | dmp3.psupd }
}
}
dialog dmp3player {
title " "
size -1 -1 95 113
option dbu
text "..", 1, 10 10 75 6, nowrap hide
button "", 23, 10 10 75 6
button "", 2, 10 24 75 22
button "", 21, 10 47 75 2
text "00:00/00:00", 20, 45 17 40 6, nowrap right
button "",3 , 10 60 77 45
button "", 22, 10 60 77 45,hide
icon 4, 10 50 10 10, $scriptdirback.bmp, noborder
icon 5, 19 50 10 10, $scriptdirplay.bmp, noborder
icon 6, 28 50 10 10, $scriptdirpause.bmp, noborder
icon 7, 37 50 10 10, $scriptdirstop.bmp, noborder
icon 8, 46 50 10 10, $scriptdirforward.bmp, noborder
button "vol ", 16, 57 50 28 8
button " ", 15, 13 109 53 6
icon 18, 75 108 10 10, $scriptdirclose1.bmp, noborder
icon 19, 67 108 10 10, $scriptdirhelp.bmp, noborder
}
on *:dialog:dmp3player:*:*:{
if ($devent == init) {
$fmod_start
dll $shortfn($scriptdirimgdlg.dll) ImgDlg 1 1 $dialog($dname).hwnd $scriptdirbg1.bmp
mdx SetMircVersion $version
mdx MarkDialog $dname
mdx SetFont $dname 1,20,23 12 100 Tahoma
mdx SetColor $dname 1,20,23 text $rgb(99,168,245)
mdx SetColor $dname 1,20,23 textbg $rgb(66,83,102)
mdx SetColor $dname 1,20,23 background $rgb(66,83,102)
window -hp @_dmp3.vol
mdx SetControlMDX $dname 16 Window > $mdxdialog
did -a $dname 16 grab $window(@_dmp3.vol).hwnd @_dmp3.vol
dmp3.vols
if (!%dmp3.pst) { set %dmp3.pst ord }
window -hp @_dmp3.tupl
mdx SetControlMDX $dname 23 Window > $mdxdialog
did -a $dname 23 grab $window(@_dmp3.tupl).hwnd @_dmp3.tupl
_dmp3.tupl
window -hp @_dmp3.psset
mdx SetControlMDX $dname 15 Window > $mdxdialog
did -a $dname 15 grab $window(@_dmp3.psset).hwnd @_dmp3.psset
dmp3.psbut
window -hp @dmp3fmod
mdx SetControlMDX $dname 2 Window > $mdxdialog
did -a $dname 2 grab $window(@dmp3fmod).hwnd @dmp3fmod
window -hp @_dmp3.playlist
mdx SetControlMDX $dname 3 Window > $mdxdialog
did -a $dname 3 grab $window(@_dmp3.playlist).hwnd @_dmp3.playlist
drawrect -rf @_dmp3.playlist $rgb(66,83,102) 1 -1 -1 155 120
window -hl @_dmp3.buffer
mdx SetControlMDX $dname 22 Window > $mdxdialog
did -a $dname 22 grab $window(@_dmp3.buffer).hwnd @_dmp3.buffer
window -hp @_dmp3.trackbar
mdx SetControlMDX $dname 21 Window > $mdxdialog
did -a $dname 21 grab $window(@_dmp3.trackbar).hwnd @_dmp3.trackbar
_dmp3.trackbar 1
_dmp3.plcreate
var %_dmp3.01 $fmod(Plugin_Load,1 $+(",$scriptdirfmm_vis_spectrum.dll,"))
var %_dmp3.02 $fmod(Plugin_Send,1 Spectrum 1 1 @dmp3fmod 35)
var %_dmp3.03 $fmod(Plugin_Send,1 Set_Color 1 171/195/210)
var %_dmp3.04 $fmod(Plugin_Send,1 Set_Color 2 255/255/255)
var %_dmp3.05 $fmod(Plugin_Send,1 Set_Color 0 99/168/245)
var %_dmp3.06 $fmod(Plugin_Send,1 Set_NumFades 10)
var %_dmp3.07 $fmod(Plugin_Send,1 Set_NumColors 3)
var %_dmp3.08 $fmod(Plugin_Send,1 Set_HeightColoring 0)
var %_dmp3.09 $fmod(Plugin_Send,1 Set_YSpace_Every 1)
var %_dmp3.10 $fmod(Plugin_Send,1 Set_YSpace_Height 1)
var %_dmp3.11 $fmod(Plugin_Send,1 Set_Barwidth 3)
var %_dmp3.12 $fmod(Plugin_Send,1 Set_Barspace 2)
var %_dmp3.13 $fmod(Plugin_Send,1 Set_Start 0)
var %_dmp3.14 $fmod(Plugin_Send,1 Set_End 150)
var %_dmp3.15 $fmod(Plugin_Send,1 Set_Avg 1)
var %_dmp3.16 $fmod(Plugin_Send,1 Set_BounceRate 4.0)
var %_dmp3.17 $fmod(Plugin_Send,1 Set_Dim 0 0 150 44)
var %_dmp3.18 $fmod(Plugin_Send,1 Set_Bgcolor 66/83/102)
did -f dmp3player 3
unset %dmp3.pause
unset %dmp3.ranl
set %dmp3.plength 0
.timerdmp3.tusll -im 0 50 _dmp3.tusll
}
elseif ($devent == sclick) {
if ($did == 18) { _dmp3.stop | .timerdmp3.tusll off | dialog -x dmp3player }
elseif ($did == 7) { _dmp3.stop }
elseif ($did == 8) { _dmp3.gnext }
elseif ($did == 4) { _dmp3.gback }
elseif ($did == 5) { _dmp3.pbut }
elseif ($did == 6) { _dmp3.pause }
elseif ($did == 19) { _dmp3help }
}
elseif ($devent == close) {
var %_dmp3.19 $fmod(Plugin_UnLoad,1)
var %_dmp3.20 $fmod(Plugin_Send,1 Spectrum off)
}
}
alias _dmp3.tupl {
if ($window(@_dmp3.tupl)) {
if (!$1) { %dmp3.tupl = D-mp3 Player... }
else { %dmp3.tupl = $1- }
%dmp3.tupllng = $width(%dmp3.tupl,Arial,9)
%dmp3.tuplpos = $window(@_dmp3.tupl).w
}
}
alias _dmp3.tusll {
if ($window(@_dmp3.tupl)) {
drawrect -nrf @_dmp3.tupl $rgb(66,83,102) 1 0 0 $window(@_dmp3.tupl).w $window(@_dmp3.tupl).h
dec %dmp3.tuplpos
if (%dmp3.tuplpos < $calc(0 - %dmp3.tupllng)) { %dmp3.tuplpos = $window(@_dmp3.tupl).w }
drawtext -nr @_dmp3.tupl $rgb(26,43,62) "arial" 9 $calc(%dmp3.tuplpos + 1) 1 %dmp3.tupl
drawtext -nr @_dmp3.tupl $rgb(99,168,245) "arial" 9 %dmp3.tuplpos 0 %dmp3.tupl
drawdot @_dmp3.tupl
}
}
dialog dmp3help {
title "D-mp3 Help"
size -1 -1 230 160
option dbu
button "..", 1, 5 5 220 150
}
on *:dialog:dmp3help:*:*:{
if ($devent == init) {
mdx SetMircVersion $version
mdx MarkDialog $dname
window -hp @dmp3help
mdx SetControlMDX $dname 1 Window > $mdxdialog
did -a $dname 1 grab $window(@dmp3help).hwnd @dmp3help
_dmp3help.win init
}
}
alias -l _dmp3help.win {
if ($window(@dmp3help)) {
if ($1 == init) {
drawrect -nrf @dmp3help $rgb(255,255,255) 1 0 0 $window(@dmp3help).w $window(@dmp3help).h
drawrect -nrf @dmp3help $rgb(68,83,157) 1 1 1 $calc($window(@dmp3help).w -2) $calc($window(@dmp3help).h -2)
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 10 13 Click on the image for help with that section.
drawpic -n @dmp3help 14 25 $+(",$scriptdirhelpimg.jpg,")
_dmp3help.win.header Creds n Shit..
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 30 Lots of people to thank....so lets start with
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 41 the makers of fmod, ImgDlg and mdx. It
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 52 wouldn't be possible to make this eye
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 63 candy mp3 player without them.
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 85 Next....tutorials on picture window list
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 96 boxes (Jynx) and SweDesignz content box
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 107 tutorial. Also should mention VoP, as I
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 116 learnt a lot from his picture window
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 127 popups code.
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 151 Warrior and Sparkle who tested it for me.
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 173 Finally wanna thank JinXy, Cuch (the
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 184 man with the tunes) and the people of
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 196 skylineIRC who've made IRC worth logging
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 207 onto again :)
drawtext -nro @dmp3help $rgb(0,0,0) "Arial" 12 234 220 jel/DND
drawtext -nro @dmp3help $rgb(0,0,0) "Arial" 12 236 220 jel/DND
drawtext -nro @dmp3help $rgb(0,0,0) "Arial" 12 235 219 jel/DND
drawtext -nro @dmp3help $rgb(0,0,0) "Arial" 12 235 221 jel/DND
drawtext -nro @dmp3help $rgb(255,255,255) "Arial" 12 235 220 jel/DND
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 232 email: dnd@skylinebbs.com
}
else {
drawrect -nrf @dmp3help $rgb(68,83,157) 1 233 1 $calc($window(@dmp3help).w -235) $calc($window(@dmp3help).h -2)
if ($1 == cusong) {
_dmp3help.win.header Current Song Info
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 30 What song is currently playing, how long
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 41 it is and how long has been playing for.
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 52 01.01.06 - Update
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 63 Added scroller so all of song name can
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 74 be viewed.
}
elseif ($1 == spec) {
_dmp3help.win.header Spectrum Visualization
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 30 Visualizations provided by fmod. Not much
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 41 to say about them other than cool aint it :p
}
elseif ($1 == trackbar) {
_dmp3help.win.header Trackbar
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 30 By moving the trackbar you can scroll
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 41 barckarwds and forwards through the
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 52 song your listening to. To move the bar
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 63 either left click to the position you
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 74 want on the bar or hold the left mouse
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 85 button down and drag it to the position
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 96 you want
}
elseif ($1 == butts) {
_dmp3help.win.header Play Controls
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 30 In the order they are in....
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 41 Back - move back one track
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 52 Play - start playing a track or if paused
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 63 unpause and resume play
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 74 Pause - Pause and unpause a track
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 85 Stop - Stop playing a track
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 96 Forward - Skip forward a track
}
elseif ($1 == vol) {
_dmp3help.win.header Volume Control
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 30 01.01.06 - Update
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 41 Changed volume control hopefully to
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 52 make changing volume easier.
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 63 Click, or click and drag to on the bar
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 74 to increase, towards the right and
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 85 to the left to decrease.
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 107 Added mute control
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 118 Clicking on the speaker icon will now
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 129 mute and unmute volume
}
elseif ($1 == playlist) {
_dmp3help.win.header Playlist
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 30 Right clicking in the playlist area brings
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 41 up options for adding songs, adding
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 52 directories, deleting songs or deleting
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 63 the whole playlist
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 85 Double clicking on a song will play it.
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 107 Hover over a song in the playlist brings
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 118 up details of that song, length, bitrate etc.
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 139 What some people have described as a
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 151 "blue button" on the right is in fact the
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 162 scoller. Click and drag up or down to
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 173 scroll through the playlist
}
elseif ($1 == playorder) {
_dmp3help.win.header Play Order
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 30 Pretty straight forward...three options for
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 41 playing your songs in. Order so they
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 52 play through your playlist in the order you
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 63 loaded them. Random to play them in a
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 74 random order and Repeat as in it plays
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 85 the same song over and over and over
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 96 Get the idea?
}
elseif ($1 == helpclose) {
_dmp3help.win.header Help & Close
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 30 ? brings up the help file
drawtext -nr @dmp3help $rgb(255,255,255) "Arial" 10 234 41 X Closes the addon
}
}
drawdot @dmp3help
}
}
alias -l _dmp3help.win.header {
if ($window(@dmp3help)) {
if ($1) {
drawtext -nro @dmp3help $rgb(0,0,0) "Arial" 12 234 10 $1-
drawtext -nro @dmp3help $rgb(0,0,0) "Arial" 12 236 10 $1-
drawtext -nro @dmp3help $rgb(0,0,0) "Arial" 12 235 9 $1-
drawtext -nro @dmp3help $rgb(0,0,0) "Arial" 12 235 11 $1-
drawtext -nro @dmp3help $rgb(255,255,255) "Arial" 12 235 10 $1-
}
}
}
menu @dmp3help {
sclick: {
if ($inrect($mouse.x,$mouse.y,34,47,149,23)) { _dmp3help.win cusong }
elseif ($inrect($mouse.x,$mouse.y,34,75,149,44)) { _dmp3help.win spec }
elseif ($inrect($mouse.x,$mouse.y,34,121,150,4)) { _dmp3help.win trackbar }
elseif ($inrect($mouse.x,$mouse.y,35,127,91,13)) { _dmp3help.win butts }
elseif ($inrect($mouse.x,$mouse.y,133,128,50,14)) { _dmp3help.win vol }
elseif ($inrect($mouse.x,$mouse.y,37,147,149,93)) { _dmp3help.win playlist }
elseif ($inrect($mouse.x,$mouse.y,36,243,110,16)) { _dmp3help.win playorder }
elseif ($inrect($mouse.x,$mouse.y,150,244,30,14)) { _dmp3help.win helpclose }
}
}