login  Naam:   Wachtwoord: 
Registreer je!
 Forum

StopAllSounds

Offline Yammaski - 07/06/2006 15:30
Avatar van YammaskiNieuw lid Hi,

Ik heb enkele dezelfde sounds achter elkaar in mijn timeline.
De button om het geluid te stoppen werkt, maar enkel op het geluid dat op dat moment speelt. Mijn script :

on (release) {
stopAllSounds();

}

Hoe kan ik het geluid over de hele timeline laten stoppen ?


Yammaski.

3 antwoorden

Gesponsorde links
Offline nemesiskoen - 07/06/2006 15:32
Avatar van nemesiskoen Gouden medaille

PHP expert
Hoe het gaat voor die hele timeline weet ik niet maar wat wel handig kan zijn is een variabele setten. Een soort van boolean of iets dergelijks die aangeeft of er geluid moet zijn of niet.

Stel je hebt een actie waarbij je op een button klikt en er een nieuw menu opent, normaal gezien zou je dan (bv.) hier een popgeluidje bij (kunnen) zetten. Maar als de gebruiker heeft gekozen voor 'no sound' dan is dit niet de bedoeling. Via deze variabele kan je dan controleren of er geluid moet zijn of niet.

Het is maar een tip, misschien heb je er wat aan!
Offline pingu - 07/06/2006 15:36
Avatar van pingu HTML beginner Als al die sounds in een aparte movieclip staan kan je toch gewoon stop() aanroepen. Anders kan je eens naar de functie setVolume() kijken die het volume van een geluid controleert.
Offline vinTage - 07/06/2006 20:11 (laatste wijziging 07/06/2006 20:13)
Avatar van vinTage Nieuw lid Waarschijnlijk heb je je sounds gewoon in een keyframe gezet en zodra de pointer daar voorbij gaat dan begint de sound te spelen, zelfs na een stopAllSounds(); wat logish is want ze stoppen ook daadwerkelijk, alleen roep je ze weer opnieuw aan zodra de pointer over een keyframe gaat met een geluid erin.

Als je het inderdaad op bovenstaande manier hebt gedaan dan werkt er geen van de oplossingen gegeven tot nu toe.

Er zijn wel meerdere manieren om ALLE geluiden te stoppen.

1 : zet een onEnterFrame funtie die nonstop stopAllSounds aanroept <=slechte oplossing (cpu vreter voor niks) , maar werkt wel en is de allersimpelste oplossing.
stop geluidknop code
  1. //in een keyframe plaatsen en je stop geluid knop de juiste instancenaam geven
  2. stopGeluidKnop.onRelease = function() {
  3. stopAllSounds();
  4. };


2 : werk met attachSound, een nette oplossing, maar vergt een kein beetje (niet veel) AS kennis.
uitleg
je importeerd je geluiden naar je library en klikt met rechts (of in het contextmenu in de lib) op "linkage" en selcteerd daar de optie "export for actionscript".
Geef dat geluid dan een exportnaam, voor het gemak noem ik dat even "sound".
op de plek waar je wilt dat er een geluid word afgespeeld zet je de volgende AS in het keyframe:
  1. bliep = new Sound();
  2. bliep.attachSound("sound.wav");
  3. bliep.start();

So far so easy, maar als je nu je movie wilt preloaden loop je tegen een probleempje aan omdat er default de optie "export in first frame" staat aangevinkt bij "linkage", dit wil dus zeggen dat er tijdens het preloaden niks gebeurd TOT die sounds zijn geladen.
Dit kan je dan weer omzeilen door die optie "export in 1st frame" uit te vinken, en de geluiden uit je library te slepen op je scene NA de preloader..


3 : Die ga ik niet uitleggen, die kan je hier lezen.

En er zullen nog vast manieren zijn, maar deze plopte me iig al te binnen 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.201s