Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-07-2005, 14:52   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 126
mehrere Sounds, einzelne anwählen

Hallo zusammen.

Hab wieder einen Flashversuch gestartet. Hat gefunzelt,
bis ich noch mehr wollte. Hab dann hier noch gesucht aber
nicht genau das gefunden.....

Ich hoffe auf Euch.

Also, folgendes:
Ich habe 3 verschiedene Sounds (sound1, sound2, sound3). Diese in Flash in die Bibliothek importiert und dann freigegeben für AS und per attachSound reingeladen. Dann hab ich noch Schaltflächen gemacht, bei klick auf diese, starte sound 1, bei dieser stoppe sound 1 und 2 und spiele sound 3......

Nun, funzelt alles, aber dann wollte ich noch mehr.... bzw besser.
Bei 3 Sounds ist dies ja nicht so viel Arbeit, jeweils die anderen 2 Sounddateien auszuschalten. Was ist aber, wenn ich z.B. 20 Sounddateien habe.... dann müsste ich ja AS-schreiben bis zum Abwinken....

Ich hirne an einer Lösung herum, so Array oder Klassen.... hab aber nicht wirklich Ahnung, wie ich diese Sounddateien in einen Array bzw in eine Klasse bringe.... oder ist dies überhaupt der richtige/falsche Weg?

Also meine Vortellung geht dahin. Es muss doch so was geben, das so ungefähr heisst.

Klick auf diese Schaltfläche, alle Sounds stoppen (oder alle Sound von Array XXXX stoppen) dann spiele Sound 12.....


Ich hoffe, war einigermassen verständlich... so was ich möchte.....
Wäre nett von Euch. Danke sehr....


Greez flashversuch
flashversuch ist offline   Mit Zitat antworten
Alt 11-07-2005, 14:56   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hi!
Wieso denn alle Sounds stoppen (geht übrigens über stopAllSounds())? Kannst doch auch den gerade laufenden Sound in einer Variable abspeichern (_root.runningSound = "sound1")
ActionScript:
  1. on (release)
  2. {_root.runningSound.stop()
  3. sound12.start();
  4. _root.runningSound = "sound12"
  5. }
So ungefähr.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 11-07-2005, 15:11   #3 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 126
Wow, das ging aber schnell

Werde dies gerne so versuchen. Jetzt kommt aber schon die nächste Frage.

Wie gesagt, habe 3 Sounds und diese jeweils auf einer einzelnen Ebene per attachSound eingebunden. Was ist, wenn ich z.B. 20 Sounddateien habe?
Jeden Sound auf eine Ebene und mit attachSound einbinden?

Gibts nicht irgenwas, wo ich eine Gruppe (z.B. Sounds) machen kann und in diese Gruppe meine Songs attachen kann? Wäre dies ein Array und wie attache ich die Sounds in den Array? (falls dies der richtige Weg wäre....)
Also mit normalen Movieclips hab ich schon einen Array geschafft, aber so mit attachSound im Array hörte dann mein Flashversuch leider auf......

Sounds (Gruppe oder Array?)
- sound1
- sound2
- .....
- sound20

Und dann elegant Deine Lösung dazu.....
flashversuch ist offline   Mit Zitat antworten
Alt 11-07-2005, 15:22   #4 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Naja, das könnte man mit einem Array machen, oder auch ohne:
ActionScript:
  1. var sounds = 20;
  2. for (var x = 1; x<=sounds; x++) {
  3.     _global["mySound"+x] = new Sound(this);
  4.     _global["mySound"+x].attachSound("sound"+x);
  5. }
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 11-07-2005, 15:38   #5 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 126
ähhhmmmm Danke Dir.
Kannst Du mir das erläutern? Ich verstehe nicht wirklich...


--> var sounds = 20;
Kein Array oder? Nur eine Variable mit 20 Einheiten, oder?


for (var x = 1; x<=sounds; x++) {
_global["mySound"+x] = new Sound(this);
_global["mySound"+x].attachSound("sound"+x);
}

Könntest Du mir diesen Abschnitt erklären?
Ich verstehe sowas wie Bahnhof.... Also der Befehl
for (.... ) wäre doch ein Array-Befehl, oder?
Könntest Du mir auf Deutsch sagen, was dieser Befehl bedeutet,
was dieser Befehl macht? Wäre sehr nett....

Hast sicher gemerkt, dass ich in Sachen AS noch
gewaltig auf dem Schlauch stehe....

Danke Dir | flashversuch
flashversuch ist offline   Mit Zitat antworten
Alt 11-07-2005, 15:43   #6 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
ActionScript:
  1. var sounds = 20; // Ja, nur eine Zahl
  2. for (var x = 1; x<=sounds; x++) { // bis x = 20 ist wird hochgezählt.
  3. //for ist kein "Array-Befehl" sondern eine Schleife, die in diesem Fall 20 mal durchlaufen wird.
  4.     _global["mySound"+x] = new Sound(this); // Erstellt ein SoundObjekt (mySound) und hängt
  5.     //die Zahl "x" an, damit sich keine gleichen Namen ergeben (das geht sonst nicht)
  6.     _global["mySound"+x].attachSound("sound"+x); // Weist dem SoundObjekt einen sound zu
  7.     //dessen Bezeichnung sinch aus "sound" und dem aktuellen Wert von "x" zusammensetzt.
  8. }
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 11-07-2005, 15:46   #7 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 126
Hi

Hey, danke Dir für Deine Zeit. Werde
dies so versuchen und dann hier weiterposten,

Danke nochmals.

flashversuch
flashversuch ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 22:51 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele