mIRC Home    About    Download    Register    News    Help

Print Thread
#167719 29/12/06 03:51 AM
Joined: Feb 2003
Posts: 3,432
S
sparta Offline OP
Hoopy frood
OP Offline
Hoopy frood
S
Joined: Feb 2003
Posts: 3,432
How can i use splay, and when 1 song is done, then it should go to the next in a dialog? it's loaded in a "list", i cant figure out 1, how to make mirc understand the song has ended. 2: how to make it just to the next sont in the list, any ideas on this one.

;----- Edit

Never mind, solved it smile

Last edited by sparta; 29/12/06 04:12 AM.

if ($me != tired) { return } | else { echo -a Get a pot of coffee now $+($me,.) }
sparta #167723 29/12/06 04:51 AM
Joined: Oct 2004
Posts: 8,330
Hoopy frood
Offline
Hoopy frood
Joined: Oct 2004
Posts: 8,330
For anyone else with the same question, /splay -q will queue the sound files.


Invision Support
#Invision on irc.irchighway.net
Riamus2 #167728 29/12/06 05:05 AM
Joined: Feb 2003
Posts: 3,432
S
sparta Offline OP
Hoopy frood
OP Offline
Hoopy frood
S
Joined: Feb 2003
Posts: 3,432
I used this instead wink
Code:
on *:mp3end: {
  inc %r.line
  mp3.timepl.stop ; sending a command to stop the file playing
  if ($read(" $+ $mircdir/mp3list.txt $+ ",%r.line) == $null) { set %r.line 1 }
  .splay $read(" $+ $mircdir/mp3list.txt $+ ",%r.line)
  set %mp3file $read(" $+ $mircdir/mp3list.txt $+ ",%r.line)
  if ($dialog(playlist)) { did -c playlist 1 %r.line }
  did -r mp3player 3
  .timerfix -iom 1 1000 did -ra mp3player 3 $nopath(%mp3file) ; using a timer so the text appears after the did -r event
  mp3.timepl
  mp3tmp ; updating every settings, bitrate, length and some other info
}


if ($me != tired) { return } | else { echo -a Get a pot of coffee now $+($me,.) }
sparta #167730 29/12/06 05:09 AM
Joined: Oct 2004
Posts: 8,330
Hoopy frood
Offline
Hoopy frood
Joined: Oct 2004
Posts: 8,330
Yeah, the END events are helpful. I considered mentioning them, but didn't because if you might play more than just MP3, you'd have to duplicate settings for the other END events (WAVEEND and MIDIEND).

I think I actually did the MP3END event on my playlist script that I wrote for Invision. I also set up the playlist script so it could convert the playlist between the format that it uses and WMP's playlist and WinAmp's playlist. I figured that would make it more compatible.


Invision Support
#Invision on irc.irchighway.net
Riamus2 #167732 29/12/06 05:14 AM
Joined: Feb 2003
Posts: 3,432
S
sparta Offline OP
Hoopy frood
OP Offline
Hoopy frood
S
Joined: Feb 2003
Posts: 3,432
I made it so you only can load *.mp3, that way i force the user to use mp3, if they want to use other formats, then they can use any other player wink *evil* grin

;------ Edit

By the way, no one that know a DLL that can send to msn what you splay in mirc? the function are avalible in mediaplayer, i have also seen it for winamp "a plugin", someone that know if it exist for mirc and splay too?

Last edited by sparta; 29/12/06 05:21 AM.

if ($me != tired) { return } | else { echo -a Get a pot of coffee now $+($me,.) }
sparta #167735 29/12/06 07:06 AM
Joined: Feb 2003
Posts: 3,432
S
sparta Offline OP
Hoopy frood
OP Offline
Hoopy frood
S
Joined: Feb 2003
Posts: 3,432
I have one more question, it's for this code:
Code:
on *:dialog:playlist:*:*: {
  if ($devent == dclick) {
  if ($did == 1) { set %r.line $did(playlist,1).sel | set %mp3file $read -l $+ %r.line " $+ $mircdir/mp3list.txt $+ " | mp3.stop }
}

now to my question, when i dubble click a line in the list with id 1, then i trigger the $did == 1, and it change the name of the mp3, how ever the mp3.stop arent triggered by some reason
Code:
alias mp3.stop {
  .splay stop
}

as you see it's no halt or anything in this code, so what cos it to halt befor mp3.stop is halted? smirk everything else is set as it should.. any idea on this?


if ($me != tired) { return } | else { echo -a Get a pot of coffee now $+($me,.) }
sparta #167748 29/12/06 04:11 PM
Joined: Oct 2004
Posts: 8,330
Hoopy frood
Offline
Hoopy frood
Joined: Oct 2004
Posts: 8,330
Throw an echo into that line before the stop alias is called and see if it echoes. It looks okay.

A couple of comments I'd have though. First, you really should stick to using \ instead of / for paths. Those may work now, but they aren't the correct way except with Linux and mIRC isn't made for Linux, so they could be removed at some point. Second, it makes things much easier to read (especially in the code tags here) if you don't put everything on one line. Avoid using pipes except in special situations. Also, I personally prefer having different on DIALOG events for each dialog event (sclick/init/etc) rather than using one on DIALOG event for all of them.

Now, those are all my personal opinions and you don't have to follow them. Except possibly the first one, how you have it won't hurt anything. smile


Invision Support
#Invision on irc.irchighway.net

Link Copied to Clipboard