Sounds ein udn ausschalten

Jan-Frederik Stieler

Monsterator
Moderator
Sounds ein und ausschalten

Hallo,
gibt es eine Möglichkeit über AS den gesamten Sound der Flashdatei ein und auszuschalten?
Also ich muß nachträglich die Soundsteuerung so ändern das man mit einem Button ale Sounds der Datei ausschalten und einschalten kann. Die Datei ist dafür aber etwas ungünstig aufgebaut weil es auch Buttons mit einem Klickgeräusch gibt.

Viele Grüße
 
Zuletzt bearbeitet:
Hi,

sollen also die Klickgeräusche der Buttons nicht mit ausgeschaltet werden?

Zum einen gibt es die Möglichkeit, die Methode "stopAllSounds" zu verwenden.

Zum anderen kannst Du an einer zentralen Stelle ein Array mit Verweisen auf alle Soundobjekte anlegen, welches Du durchläufst, um die Sounds abzuschalten.

Zum dritten kannst Du mit einer geeigneten Methode alle Objekte des Films durchlaufen, und die enthaltenen Sounds mit temporären Soundobjekten beeinflussen.

Die beste Vorgehensweise hängt von der Struktur Deines Films ab, davon, ob alle (oder nur ein Teil) Sounds abgeschaltet werden sollen, ob es sich um Soundobjekte oder Zeitleistensounds (oder eine Kombination aus beidem) handelt, und ob die Sounds stumm geschaltet, oder beendet werden sollen.

Idealerweise sollte man eine Anwendung von vorneherein so projektieren, dass derartige Probleme nicht auftregen (z.B. durch eine zentrale Soundverwaltung). ;)

Gruß
.
 
Hallo,
also die Webseite ist schon recht alt und soll nun etwas angepasst werden.
Die ganze Musik und Sounds sind Zeitleistenbasiert und sollen über einen zentralen Schalter an und aus geschaltet werden.
Werde mir mal die Methode stopAllSounds zur Brust führen, hoffe das es damit geht.

Viele Grüße
 
... wenn Du die Sounds dann auch wieder einschalten willst, würde ich vermutlich diese Variante anwenden:
mir hat gesagt.:
Zum dritten kannst Du mit einer geeigneten Methode alle Objekte des Films durchlaufen, und die enthaltenen Sounds mit temporären Soundobjekten beeinflussen.

Gruß
.
 
Hallo,
habe das Problem mit dem Sound nun gelöst, überprüfe ob eine bestimmte Grafik geladen wurde wodurch dann der Sound abgespielt werden darf oder nicht, und schon taucht das nächste Problem auf.
Also ich lade über einen Button mit
Code:
loadMovieNum
ein extern gelegenes SWF nach und auch hier soll die Grafiküberprüfung stadtfinden. Habe den das verwendete AS hier durch
Code:
.root
erweitert wodurch doch die Überprüfung im Hauptfilm durchgeführt werden müßte, funktioniert aber nicht.
Hier mal der Code des extern gelegenen SWFs bzw. des Buttons:
Code:
on (press) {
	loadMovieNum("Adresse.swf", 2);
{
	
	if(sound_an==true){
		root.sound_trigger2.gotoAndPlay(2);
		
		}
	
	}
}

on(rollOver){
	
	if(sound_an==true){
		root.sound_trigger.gotoAndPlay(2);
		
		}
	
	}

Ich habe hier auchmal die beiden Flashdateien angehängt.
Es geht im hauptfilm um den Link Anfahrt und in der anderen SWF um den Link Ausblenden.

Viele Grüße
 
Hi,

1. _root wird mit einem Unterstrich notiert:
Code:
_root.sonstwas

2. über loadMovieNum in eine Stufe geladene Clips lassen sich nicht über _root.Instanzname ansprechen. Eine Stufe (level) kannst Du über den Levelbezeichner ansprechen:
Code:
_level2.sonstwas

Gruß
.
 
Hi,
okay wußte doch das ich da noch ein Syntaxfehler drinnen hatte.
Nur wenn ich den Soundregler auf Level 12 abfrage wird der Sound_trigger bei einer positiven Abfrage nicht abgespielt.
Hast du vielleicht noch eine Idee woran das sonst noch liegen könnte?

Viele Grüße
 
... Du musst mir schon sagen, wo ich diesen Code finde, und worauf er sich bezieht.

Laut Deinem zuvor geposteten Code lädst Du etwas in Level 2, nicht in Level 12 ...

Gruß
.
 
Hi,
ja das stimmt. Nur der Button um den Sound an und aus zu schalten wird in level 12 geladen deshalb dachte ich. Aber es funktioniert mit beiden Levels nicht.
Sound an und aus sind nochmals zwei extern gelegene SWFs also eigentlich zwei grafiken die eben ausgetauscht werden.

Gruß
 
Hmm..

abgesehen davon, dass ich Deine Filmstruktur nicht verstehe, kann ich auch Dein aktuelles Problem nicht nachvollziehen.

Ein paar generelle Tipps:
  • loadMovieNum ist eigentlich ein Relikt aus vergangenen Zeiten. Einfacher und besser zu handhaben ist es, externe Filme per loadMovie (oder MovieClipLoader) in Container zu laden.

  • Zeitleisten sollten nur zur Darstellung statischer Animationen dienen; nicht zur Navigation in dynamischen Inhalten. Insbesondere ist es sehr unglücklich, einen Sound abzuspielen, indem man einen MovieClips mit Zeitleistensound wiederholt abspielt. Kurze Sounds, die mehrmals abgespielt werden sollen, legt man idealerweise als Sound-Objekte an, und verwendet die "start"-Methode zum abspielen

  • Schaltlfächen (und Grafiken) sind ebenfalls eher Relikte einer früheren Zeit als probate Hilfmittel zur Navigationserstellung. Buttons sollten besser mit MovieClips realisiert werden.

    So ist es immer wieder missverständlich, Code folgender Art auf einer Schaltflächeninstanz zu lesen:
Code:
on(press) {
  sonstwas = 1;
  this.machwas();
}
Bei einem MovieClip würden sich sowohl die Variable "sonstwas" als auch die Methode "machwas" auf der Zeitleiste dieses MCs befinden - handelt es sich um eine Schaltfläche, so wird allerdings die übergeordnete Zeitleiste angesprochen.


Gruß
.
 

Neue Beiträge

Zurück