All pastes #171015 Raw Edit

Miscellany

public text v1 · immutable
·published 2006-09-14 23:02 UTC
rendered paste body
alias 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-
  ame 9,1 $+ Now Playing $+ : $gettok($read(playlist.txt,%n),2-,32) $+ 
}
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 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
  ame 9,1 $+ Now Playing $+ : $gettok($read(playlist.txt,$did(mp3player,16).sel),2-,32) $+ 
}
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
    ame 9,1 $+ Now Playing $+ : $gettok($read(playlist.txt,$did(mp3player,16).sel),2-,32) $+ 
  }
  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)
    ame 9,1 $+ Now Playing $+ : $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)
    ame 9,1 $+ Now Playing $+ : $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 }
  }
}