| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Nov 2001 Ort: Hamburg
Beiträge: 109
| Zufalls Auslese...
Hallo, habe hier folgendes Problem: ich möchte eine soundbank abrufen. Alle Songs (so um die 40 Stück) werden in Movie geladen, das als Player fungiert. Man steuert diese Songs aber nicht direkt an, sondern der Player sucht sie per Zufallsgenerator aus. Um nun keine bereits abgespielten Songs (song11, song20, song13, song11!!) muss der Zufalls generator also wissen, was er bereits abgespielt hat. Eine Art Daten Bank anlegen. Wie kann ich so etwas realisieren. Bin kein Crack, aber eigentlich ganz gut eingearbeitet... So befehle wie "New Object" hab ich allerdings noch nicht benutzt. Gehe eigentlich eher, wenn ich programmiere mechanisch vor... Bin für jede Hilfe dankbar Julian
__________________ Es kommt... |
| | |
| | #2 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.621
|
Hi, mach eine Liste mit 40 Einträgen, jeder für einen Song. Dann wählst du per Zufall einen aus und schmeisst den gleichzeitig aus der Liste raus. ActionScript:
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) Geändert von sonar (07-01-2004 um 00:00 Uhr) |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Nov 2001 Ort: Hamburg
Beiträge: 109
|
Danke für die schnelle Antwort... Mhm... das klingt logisch. Das "loadMovie(randomTrack());" könnte jetzt ein Button sein, richtig. Ups da kommt folgende Fehlermeldung: Szene=Szene 1, Ebene=Ebene 1, Bild=1: Line 2: Falsche Anzahl von Parametern; bei loadMovie wird zwischen 2 und 3 benötigt. loadMovie(randomTrack()); Was erreicht man eigentlich mit diesem arrayDing?
__________________ Es kommt... |
| | |
| | #4 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.621
|
1. war eh nicht ganz richtig, hab mich wieder tot-editiert, hier das richtige Skript: ActionScript:
2. Du musst ein Ziel-Objekt angeben, wohin deine Sound-swfs geladen werden sollen, also z.B ein extra MC (empfehlenswert): ActionScript:
3. Ein Array, also eine Liste, ist hier eine Möglichkeit, Zahlen per Zufall auszuwählen und zu verhindern, dass sie nochmal ausgewählt werden.
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Nov 2001 Ort: Hamburg
Beiträge: 109
|
ok... soweit ich dein Script verstanden habe löschst du ein Element (sagen wir song8) damit. Mit "tracklist.length" list man doch aber nur die Länge des Arrays aus (sprich ohne eins gleich nur noch 39 Titel). Der 8te Titel wäre aber nach deinem Script immer noch in der random Auswahl, oder sehe ich das falsch?
__________________ Es kommt... |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Nov 2001 Ort: Hamburg
Beiträge: 109
|
Ne ich seh das total falsch. Hei, ich habe wieder sehr viel gelernt. Vielen Dank Sonar. Schade, dass man keine Bewertungen abgeben kann wie auf Ebay. Mein Prädikat wäre dann> Sehr gut! Danke schön Julian
__________________ Es kommt... |
| | |
| | #7 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.621
|
Ja, aber dafür is die Zeile: tracklist[i] = i+1. D.h. an 8. Stelle steht in der Liste die Zahl 8. Wählt die Zufallsfunktion nun die 8, wird das, was an 8. Stelle in der Liste eingetragen war, gelöscht. Somit kann Track8 nicht mehr ausgewählt werden...
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) |
| | |
| | #9 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.621
|
Du hast ja nur ein Array ![]() Wenn keine Elemente mehr in der Liste sind... hm, das bleibt dir überlassen. Normalerweise würd ich eine Abfrage rein machen, ob noch Elemente in dem Array drin sind, und wenn nicht, eine Fehlermeldung ausgeben oder das Array neu generieren. Oder sowas...
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) |
| | |
| | #10 (permalink) |
| Neuer User Registriert seit: Nov 2001 Ort: Hamburg
Beiträge: 109
|
Nochmals Danke Sonar ohne Dich hätte ich das nich geschafft. Was mir auffällt, ist das wenn es immer weniger Einträge im Array sind (so bei 3 oder 2) das dann nur noch "song.swf" augespuckt wird (eigentlich sehr schön denn da kann man ja dann das ENDE der Fahnenstange ankündigen. Nur wie kommt das? Man hat ja noch ein paar Elemente drinnen... Hängt das mit der Math.ceil(Math.random() Geschichte zusammen...
__________________ Es kommt... |
| | |
| | #11 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.621
|
--> siehe die Verbesserung meines Skripts (Math.floor). Das is mir dann auch aufgefallen, dass die Zufallsfunktion über die Länge des Arrays hinaus geht, wo ja nix mehr eingetragen is... Grüße an den Norden!
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |