[Flash 8] sound.position


(Billiarder) #1

Witam, mam już prawie ukonczony odtwarzacz mp3 i mam problem z wyświetlaniem upływu czasu piosenki: gdy piosenka się skonczy lub wcisnę przycisk do włączenia poprzedniej/następnej, zmienna sound.position nie zeruje się. Myślę, że ktoś wie jak to rozwiązać, ale: czytałem na jakimś forum, że jeśli chcemy się pozbyć tego błędu musimy kasować i tworzyć movieclipy z dźwiękami: zrobiłem to tak:

kod stary:

function playNext():Void

{

	if(cps == 0) // cps - zmienna do określania piosenek; warunek który określa, czy piosenka,  

	{ //ktora sie skonczyła była ostatnia w XML'u czy też nie, wszystko dobrze działa

		cps = sa.length - 1;

		s.loadSound(sa[cps].earl, true);

	}

	else

	{

		s.loadSound(sa[--cps].earl, true);

	}

	trackinfo.text = sa[cps].name;

}

przerobiłem to na:

function playNext():Void

{

	if(cps == sa.length - 1)

	{

		cps = 0;

		removeMovieClip(abc); // dodałem usuwanie klipu...

		this.createEmptyMovieClip(abc,10); //... i tworzenie nowego z tą samą nazwą....

		abc=s.loadSound(sa[cps].earl, true); //... i tu nie wiem czy tak można, czy dobrze zrobiłem 

	} // ładowanie dźwięku (myślałem o attachSound)

	else

	{

		removeMovieClip(abc);

		this.createEmptyMovieClip(abc,10);

		abc=s.loadSound(sa[++cps].earl, true);

	}

	trackinfo.text = sa[cps].name;

}

No i funkcja z sound.position (u mnie sound to "s"):

this.onEnterFrame = function () {

	actsecs=s.position/1000;

	actmins=Math.floor(actsecs/60);

	actsecs2=Math.floor(actsecs)%60;

	if (actsecs2 < 10) {

		actsecs2 = "0"+actsecs2;

	}

	acttime.text=actmins+":"+actsecs2;

}

Pomoże ktoś?