Top

iTunes player


mIRC Code
+ 4 likes
Please Register to submit score.
Bookmark and Share
Average Score  7.7 (of 6 scores)
Date Added  Sep 06, 2008
Last Updated  Sep 06, 2008
Tags  com  dcx  dialog  dll  itunes  music 

Introduction

This is a dialog allowing you to play music on your computer through iTunes.



Features include:
- controlling playback
- view track info
- set ratings/volume/player position
- skip selected songs on a playlist

its dcx powered. so if you dont have dcx i recommend getting it at: http://dcx.scriptsdb.org/archive.htm

also you need iTunes of course.

theres also a download link included in the code that includes everything (scripts, dcx, and a .chm file i compiled for documentation)

enjoy

Grab the Code

; made on version 6.34 and tested on version 6.31
; dcx can be found at: http://dcx.scriptsdb.org/archive.htm
; made by me [ brando ]
; http://rapidshare.com/files/143121158/itunes.zip.html
 
alias itunes {
  if ($dcx(Version)) {
    if (!$hget(itunes)) hmake itunes 50
    if (!$isfile(iTunesvol.png)) {
      if (!$isdir(iTunes)) mkdir itunes
      geticons
    }
    else dialog $iif($dialog(itunes),-v,-m) itunes itunes
  }
  else noop $input(You do not have dcx_tools.mrc $+(loaded properly.,$crlf,Download) it $+(at:,$crlf,http://dcx.scriptsdb.org/archive.htm),oh,Error)
}
alias -l closecom { 
  if ($0 > 1) scon -r closecom $*
  elseif ($com($1)) .comclose $1
}
alias -l ListAdd xdid -a itunes 3 0 0 + 0 0 0 0 0 0 $1 $chr(9) + 0 0 0 0 $2-
alias -l GetInfo {
  closecom x y
  .comopen x itunes.application
  var %p = $com(x,PlayerPosition,2), %p = $com(x).result, $&
    %pstate = $com(x,PlayerState,2), %pstate = $com(x).result, $&
    %% = $com(x,CurrentTrack,2)
  if ($dialog(itunes)) {
    xdid -v itunes 1 2 $iif(%pstate,;,4)
    xdid -q itunes 1 2 $iif(%pstate,Pause,Play)
  }
  if (!$com(x).result) {
    .timerTunes off
    closecom x y
    return
  }
  noop $com(x,SoundVolume,2)
  if ($dialog(itunes)) xdid -v itunes 6 $com(x).result
  var %track = $com(x,CurrentTrack,3,dispatch* y) $com(y,name,2), %track = $iif($com(y).result,$v1,N/A), $&
    %time = $com(y,Time,2), %time = $iif($com(y).result,$v1,N/A), $&
    %artist = $com(y,Artist,2), %artist = $iif($com(y).result,$v1,N/A), $&
    %album = $com(y,Album,2), %album = $iif($com(y).result,$v1,N/A), $&
    %count = $com(y,PlayedCount,2), %count = $iif($com(y).result,$v1,N/A), $&
    %rate = $com(y,Rating,2), %rate = $com(y).result
  if (!$dialog(itunes)) goto skip
  var %info = $xdid(itunes,3,1,2).text $xdid(itunes,3,2,2).text $xdid(itunes,3,3,2).text $xdid(itunes,3,4,2).text $xdid(itunes,3,5,2).text $xdid(itunes,3,6,2).text
  if ($len(%info) != $len(%track %time %artist %album %count)) || (%track !isin %info) { 
    xdid -r itunes 3
    listadd Track %track
    listadd Time %time
    listadd Artist %artist
    listadd Album %album
    listadd Count %count
    xdid -a itunes 3 0 0 + 0 0 0 0 0 0 Rating $chr(9) +p 0 0 0 0 notheme
    xdid -v itunes 3 6 2 -v %rate
    xdid -v itunes 3 6 2 -i $calc(%rate / 20) Stars
    xdid -v itunes 3 6 2 -c $rgb(255,255,0)
  }
  xdid -v itunes 2 $int($calc(%p / $duration(%time) * 100))
  var %f = $duration(%p,3)
  xdid -i itunes 2 $iif($gettok(%f,1,58),%f,$deltok(%f,1,58)) / %time
  :skip
  if ($hfind(itunes,$replace(%track,$chr(32),_))) {
    .comopen g itunes.application
    .comclose g $com(g,NextTrack,1)  
    scon -r GetInfo
  }
}
on *:load:{
  hmake itunes 50
  if (!$dcx(Version)) && ($isfile($mircdiriTunesdcx_tools.mrc)) .timer 1 0 .load -rs $qt($mircdiriTunesdcx_tools.mrc)
  if (!$isdir(itunes)) {
    mkdir itunes
    geticons
  }
}
on *:unload:{
  hfree -w iTunes
  noop $findfile($mircdiriTunes,*,0,.remove $qt($1-))
  rmdir iTunes
}
on *:start:{
  hmake itunes 50
  if ($isfile(itunesitunes.dat)) hload itunes itunesitunes.dat
}
on *:exit: hsave itunes itunesitunes.dat
menu * {
  iTunes
  .iTunes Player: itunes
  .Documentation:{
    if ($isfile($mircdiriTunesiTunes_manual.chm)) run iTunesiTunes_manual.chm
    else noop $input(iTunes player help file not found.,oh,Error)
  }
}
dialog itunes {
  title "iTunes Player v1.0"
  size -1 -1 262 235
}
on *:dialog:itunes:init:*:{
  dcx Mark $dname itunes_cb
  xdialog -b $dname +ty
  if ($isfile(C:Program FilesiTunesiTunes.exe)) xdialog -w $dname + 0 C:Program FilesiTunesiTunes.exe
  xdialog -c $dname 1 toolbar -3 -3 528 34 flat top list tabstop tooltips
  xdid -l $dname 1 16
  xdid -m $dname 1 1
  xdid -a $dname 1 1 + 0 0 0 9 $chr(9) BackTrack
  xdid -a $dname 1 2 + 0 0 0 4 $chr(9) Play
  xdid -a $dname 1 3 + 0 0 0 < $chr(9) Stop
  xdid -a $dname 1 4 + 0 0 0 : $chr(9) NextTrack
  xdid -a $dname 1 5 + 0 0 0 -
  xdid -a $dname 1 6 +k 0 1 0 $chr(9) Show
  xdid -w $dname 1 +ahdn 137 shell32.dll
  xdid -w $dname 1 +ahdn 131 shell32.dll
  xdid -f $dname 1 +a default 11 webdings
  xdid -m $dname 1 0
  xdialog -c $dname 2 pbar 4 33 250 20 smooth
  xdid -r $dname 2 0 100
  xdialog -c $dname 3 listview 5 85 250 144 report fullrow showsel nolabelwrap tooltip tabstop grid
  xdid -t $dname 3 $+(+ 0 70 Item,$chr(9),+ 0 176 Info)
  xdialog -c $dname 4 image 4 59 20 20 
  xdid -i $dname 4 + $mircdiritunesvolmute.png
  xdialog -c $dname 5 image 234 59 20 20
  xdid -i $dname 5 + $mircdiritunesvol.png
  xdialog -c $dname 6 pbar 24 59 210 20 gradient
  xdialog -c $dname 7 listview 265 33 230 196 report fullrow showsel
  xdid -t $dname 7 $+(+ 0 150 Track,$chr(9),+ 0 76 Artist)
  xdialog -c $dname 8 button 500 33 70 30 
  xdid -t $dname 8 + Track
  xdialog -c $dname 9 button 500 70 70 30
  xdid -t $dname 9 - Track
  xdialog -c $dname 10 text 320 7 110 20
  xdid -f $dname 8,9 + ansi 11 Trebuchet MS
  xdid -f $dname 3,7 + ansi 10 Trebuchet MS
  xdid -t $dname 10 Skipped Tracks
  xdid -f $dname 10 +b ansi 11 Trebuchet MS
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  var %x = $hget(itunes,0).item
  while (%x) {
    xdid -a $dname 7 0 0 + 0 0 0 0 0 0 $replace($hget(itunes,%x).item,_,$chr(32)) $chr(9) + 0 0 0 0 $hget(itunes,$hget(itunes,%x).item)
    dec %x
  }
  .comopen m itunes.application
  if ($comerr) {
    dialog -x $dname
    noop $input(You do not have itunes installed on this computer.,oh,Error)
  }
  else {
    noop $com(m,PlayerState,2)
    if (!$com(m).result) noop $com(m,PlayPause,1) $com(m,PlayPause,1)
    GetInfo
    .timerTunes2 off
    .timerTunes 0 1 GetInfo
    var -g %itunes_ext = $false, %itunes_sort1 = $false, %itunes_sort2 = $false
  }
}
on *:dialog:itunes:close:*:{ 
  .timerTunes off
  noop $com(m,PlayerState,2)
  if ($com(m).result) .timerTunes2 0 4 GetInfo
  closecom m x y
  unset %itunes_*
}
alias itunes_cb {
  var %dname = $1, %devent = $2, %did = $3
  if (%devent == sclick) {
    if (%did == 1) {
      if ($4 == 6) {
        xdialog -S %dname -1 -1 $iif(%itunes_ext,261,574) 235
        xdid -i %dname 1 6 $iif(%itunes_ext,1,2)
        xdid -q %dname 1 6 $iif(%itunes_ext,Show,Hide)
        %itunes_ext = $iif(%itunes_ext,$false,$true) 
      }
      elseif ($4 == 1) {
        noop $com(m,BackTrack,1)
        xdid -v %dname 2 0
      }
      elseif ($4 == 2) {
        noop $com(m,PlayPause,1)
        xdid -v %dname %did 2 $iif($xdid(%dname,%did,2).text == ;,4,;)
        xdid -q %dname %did 2 $iif($xdid(%dname,%did,2).text == ;,Pause,Play)
      }
      elseif ($4 == 3) {
        noop $com(m,Stop,1)
        xdid -v %dname 2 0
        xdid -r %dname 3
        xdid -i %dname 2 00:00 / 00:00
        xdid -v %dname %did 2 4
        xdid -q %dname %did 2 Play
      }
      elseif ($4 == 4) {
        noop $com(m,NextTrack,1)
        xdid -v %dname 2 0
      }
    }
    elseif (%did == 4) { 
      xdid -v %dname 6 0
      noop $com(m,SoundVolume,4,int,0)
    }
    elseif (%did == 5) {
      xdid -v %dname 6 100
      noop $com(m,SoundVolume,4,int,100)
    }
    elseif (%did == 8) {
      var %track = $xdid(itunes,3,$gettok($xdid(itunes,3,$chr(9) Track $chr(9),W,1,1).find,1,32),2).text, $&
        %artist = $xdid(itunes,3,$gettok($xdid(itunes,3,$chr(9) Artist $chr(9),W,1,1).find,1,32),2).text
      hadd -m itunes $replace(%track,$chr(32),_) %artist
      xdid -a %dname 7 0 0 + 0 0 0 0 0 0 %track $chr(9) + 0 0 0 0 %artist
      noop $com(m,NextTrack,1)
    }
    elseif (%did == 9) && ($xdid(%dname,7).sel) {
      hdel itunes $replace($xdid(%dname,7,$v1).text,$chr(32),_)
      xdid -d %dname 7 $v1
    }
  }
  elseif (%devent == mousebar) || (%devent %did == sclick 6) {
    if (%did != 3) xdid -v %dname %did $4 
    if (%did == 2) { 
      .comclose i $com(m,CurrentTrack,3,dispatch* i) $com(i,Time,2) $com(m,PlayerPosition,4,int,$int($calc($duration($com(i).result) * ($xdid(itunes,2).value / 100)))) 
    }
    elseif (%did == 3) {
      var %e = $iif(!$4,0,$iif($4 < 21,20,$iif($4 < 41,40,$iif($4 < 61,60,$iif($4 < 81,80,100)))))
      xdid -v %dname %did 6 2 -v %e
      xdid -v %dname %did 6 2 -i $calc(%e / 20) Stars
      .comclose i $com(m,CurrentTrack,3,dispatch* i) $com(i,Rating,4,int,%e)
    }
    elseif (%did == 6) noop $com(m,SoundVolume,4,int,$4)
  }
  elseif (%devent == hsclick) {
    xdid -z %dname %did $iif(%itunes_sort [ $+ [ $4 ] ],+a,+d) $4
    %itunes_sort [ $+ [ $4 ] ] = $iif(%itunes_sort [ $+ [ $4 ] ],$false,$true)
  }
}
dialog icon {
  Title "Downloading icons..."
  size -1 -1 173 33
  option dbu
}
on *:dialog:icon:init:*:{
  dcx Mark $dname icon_cb
  xdialog -c $dname 1 pbar 7 35 331 20 marquee
  xdid -i $dname 1 
  xdialog -c $dname 2 text 7 8 331 16
  xdid -t $dname 2 0 of 2 icons complete.
  xdid -f $dname 2 + ansi 10 arial
  xdid -mo $dname 1 25
}
alias icon_cb
alias geticons {
  dialog -m icon icon
  sockopen icon1 img183.imageshack.us 80
  sockmark icon1 /4196/volvs7.png
  sockopen icon2 img183.imageshack.us 80
  sockmark icon2 /7237/volmuteuz5.png
  .timericon 0 0 iconcheck
}
alias iconcheck {
  if (!$sock(icon*,0)) {
    dialog -x icon
    .timericon off
    dialog -m itunes itunes
  }
  elseif (0 of * iswm $xdid(icon,2).text) && ($sock(icon*,0) == 1) xdid -t icon 2 1 of 2 icons complete.
}
on *:sockopen:icon*:{
  sockwrite -n $sockname GET $+(/img183,$sock($sockname).mark) HTTP/1.0
  sockwrite $sockname Host: $+(img183.imageshack.us,$crlf,$crlf)
}
on *:sockread:icon*:{
  tokenize 32 $sock($sockname).mark
  if ($0 < 2) {
    var %g = $true
    while (%g) {
      sockread %g
      if (Content-len isin %g) sockmark $sockname $1 $gettok(%g,2,32)
    }
  }
  else {
    var %f = $+(iTunesvol,$iif(mute isin $1,mute),.png)
    while ($sock($sockname).rq) {
      sockread &i
      bwrite %f -1 -1 &i
    }
    if ($lof(%f) >= $2) sockclose $sockname
  }
}

Comments

  (16)  RSS
a careful warchild
Comments: 243
 
mIRC Snippet:  iTunes player
Posted on Sep 6, 2008 10:14 pm
nice, you should add spamming options.
EL
Comments: 1,125
 
mIRC Snippet:  iTunes player
Posted on Sep 6, 2008 10:24 pm
Seriously whats the point? Mite as well open Itunes O_O and no spamming options wtf is that the whole point of a mIRC mp3 player? so others can see what your listen to.Anyways im sure it works an is good and all but these types of mp3 dont really intrigue me.`-.-´
irchainscriptz
Comments: 125
 
mIRC Snippet:  iTunes player
Posted on Sep 6, 2008 11:21 pm
Well to be honest with you its quite a kool idea ..yes there are mega Mp3 players, and so fourth EL but look at it this way a lot of people like itunes and i think BrAndo's has done a hell of a job and its quite different..only thing is that you need itunes to run this snippet, and if some dont have it .well they wont download it. But for us that have itunes well there we go LOL. BrAndo's you've done a great job and keep up the origanilty 0.o 8/10
Eugenio
Comments: 1,193
 
mIRC Snippet:  iTunes player
Posted on Sep 7, 2008 1:54 am
ROFL @ EL the chief MP3 spammer himself
but I spose in a way might aswell open itunes do your thang and stfu ;x
jonesy44
Comments: 1,856
 
mIRC Snippet:  iTunes player
Posted on Sep 7, 2008 5:54 am
That's pretty sweet! Nice one! Typical, as i start developing V2 this pops out!

If it had a spam function. i'd give up now, edit and use this one instead.
BrAndo
Comments: 28
 
mIRC Snippet:  iTunes player
Posted on Sep 7, 2008 8:52 am
No scores submitted :(
EL
Comments: 1,125
 
mIRC Snippet:  iTunes player
Posted on Sep 7, 2008 8:54 am
ffs twist my arm smh.With out testing and on code/dialog alone."Rate it or Hate it"...7/10 && +1 Like.Be more useful if i used ti rofl but based ont he itune freaks an all that its a 7 by default ;p.`-.-´
irchainscriptz
Comments: 125
 
mIRC Snippet:  iTunes player
Posted on Sep 7, 2008 9:59 am
I gave u a score 8/10 :P
napalm`
Comments: 182
 
mIRC Snippet:  iTunes player
Posted on Sep 7, 2008 10:52 am
5/10 because that dialog is f&(@#$.
AHBARAR
Comments: 167
 
mIRC Snippet:  iTunes player
Posted on Sep 15, 2008 5:33 pm
Easy Easy EL Never Knowed U Are That Aggressive Gosh U Was Going To Eat That Guy Poor Him .. AnyWay Nice Job BrAndo At Least U Did SomeThing .. EL Come Here Big Boy >:P~~ Since U Are A Nice Scripter Answer My Q .. I Got Itune Spammer Had It From Another Site .. Any Way It Was Working Just Fine Suddenly It Stopped Spaming Msg .. Tried My Best I Know It Works I Used It For More Than A Year But I GUess Its Pc Thing But What >:S
EL
Comments: 1,125
 
mIRC Snippet:  iTunes player
Posted on Sep 15, 2008 5:39 pm
AHBARAR ,ima kill j00 lil kitten >D and if your lucky i wont consume him bones and ALL muahahahahahaha!!.`-.-´
Eugenio
Comments: 1,193
 
mIRC Snippet:  iTunes player
Posted on Sep 15, 2008 5:40 pm
ROFLCOPTER
EL
Comments: 1,125
 
mIRC Snippet:  iTunes player
Posted on Sep 15, 2008 5:40 pm
Stfu boi or your lil kitten is next >D
Eugenio
Comments: 1,193
 
mIRC Snippet:  iTunes player
Posted on Sep 15, 2008 5:44 pm
Dareth speak in vain of my pussy, thy will hang before morn
EL
Comments: 1,125
 
mIRC Snippet:  iTunes player
Posted on Sep 15, 2008 5:45 pm
ROFL /me plots ^_^
AHBARAR
Comments: 167
 
mIRC Snippet:  iTunes player
Posted on Sep 15, 2008 5:46 pm
Umm Why My Itune Not Working Mr Smart Mp3 Spammer >:'{"""

Commenting Options

Register or Login to Hawkee.com or use your Facebook or Twitter account by clicking the corresponding button below.

  
Bottom