Flashhilfe.de - Flash Community

Bilder zufällig in einen Bildheader mit 7 verschiedenen Bildern laden [Flash 10]

 


AntwortenRegistrieren Seite1  

ollg#1
Benutzerbild von ollg
Beiträge: 11
Registriert: Jan 2008

13.09.2012, 08:58

Sehr geschätzte Flasher,

ja auch ich muss leider die Formulierung bemühen:

"Ich bin kein Profiflasher und dennoch nutze ich das Programm seit etlichen Jahren, und kann
es auch immer wieder gut und gerne einsetzen".

Das ganze auf AS2 Basis.

Ich habe das Forum auch schon durchforstet, habe aber nichts entsprechendes gefunden.
Die Thematik "Zufällig Bilder laden" ja, leider aber nicht mit 7 Bildern gleichzeitig.
Vielleicht hat jemand einen Tipp wo ich nachschauen kann oder gar eine Lösung für das unten geschilderte Problem hat.

Vielen Dank
 
Folgendes Problem:

Auf Ebene 03 liegt ein Movieclip der einen Bildmovieclip mit sieben Bildern beinhaltet,

Diese "tweenen", sich von rechts nach links, um dann wieder zum Anfang zu springen und

in einer Enlosschleife abspielen.

Soweit so gut. Ich würde aber die sieben Bilder/movieclips, jedesmal wenn die Seite neu gestartet

wird einem Zufallsgenerator unterziehen. Das also in Wahrheit, sagen wir mal 100 Bilder in einem

Folder liegen, aus denen dann per Zufall die Bilder in die 7 MC´s geladen werden. 

Geht das und wen ja wie?

THX
Geändert von ollg am 13.09.12 um 09:01 Uhr
Werbung
Beiträge: 0
Registriert: Feb 2016


vindel#2
Benutzerbild von vindelFlashhilfe.de Moderator
Beiträge: 3000
Wohnort: Köln
Registriert: Oct 2007

13.09.2012, 22:21

Hey,

ja klar, das geht..
Du musst deine Bilder durch nummerieren also von 1.jpg - 100.jpg.
Dann erstellst du dir mit Math.random() eine Zufallszahl zwischen 0 und 1 - die mal 100 nehmen, abrunden und eins drauf addieren - voila. Dann kannst du schon die Bilder zB mit dem MovieClipLoader laden (zur Not auch mit loadMovie()). Deine 7 "holder" nennst du als Instanzennamen "bildholder1" - "bildholder7" - dann werden die Bilder da auch rein geladen:
Das Script macht dir das - einfach in die Zeitleiste legen wo auch deine MC's für die Bilder liegen!
ActionScript:
1
2
3
4
for(var i:Number = 1; i <= 7; i++)  {
     var name:String = (Math.floor(Math.random()*100)+1)+".jpg";
     this['bildholder'+i].loadMovie(name);
}
public Weltformel(Problem){
      if (Problem gelöst) return Lösung;
      else Weltformel(kleiners Problem);
}
ollg#3
Benutzerbild von ollg
Beiträge: 11
Registriert: Jan 2008

Themenautor/in

13.09.2012, 22:25

Vielen Dank,

I do my best und werde dran rum werkeln.

Falls keine Lösung, werde ich um "HILFE" rufen/bitten.

THX
ollg#4
Benutzerbild von ollg
Beiträge: 11
Registriert: Jan 2008

Themenautor/in

14.09.2012, 09:24

Also um mal nicht um den heißen Brei herum zu reden,

ich kriegs nicht hin.

Ich wüsste ehrlich gesagt nicht, wie ich da Versatzcodestücke die ich aus dem Netz

zusammengesucht habe, in eine vernünftiger Reihenfolge, an die richtige Stelle platzieren

sollte. Ich habe mich redlich bemüht, ich komme aber zu keinem Ergebnis, so dass

ich meine vorhandene Datei zum laufen bringen könnte.


Was tun?!

Ich lade einfach mal frecherweise die reduzierte Fla hoch um die es geht.

Ich kann nur so viel sagen, dass es sich um kein kommerzielles Projekt handelt.

Ich kann auch verstehen, wenn sich keiner erbarmt, hoffe aber dennoch, dass doch einer

der FLA-Profis sich des Problems annehmen würde.

Vielen lieben Dank

Oll

P.S. Momentan sind die Bilder noch in der Fla als MC´s integriert. Es liegen aber auch 25 Bilder im Ordner.

Angehängte Dateien:
Komprimierte Datei BSP.zip373.71 KB
Geändert von ollg am 14.09.12 um 11:37 Uhr
Werbung
Beiträge: 0
Registriert: Feb 2016


ollg#5
Benutzerbild von ollg
Beiträge: 11
Registriert: Jan 2008

Themenautor/in

14.09.2012, 11:36

Joaaaa,

ich habs!

Aber nicht ganz. Dank der Hilfe des Kollegen mit dem Skript, habe ich mich doch zum Ziel

vorgekämpft.

Es ist nicht ganz so wie ich es mir gewünscht habe, aber fast.

Schon wird man wieder maßlos..

Also, ich habe in der Datei das Script eingefügt die Datei entsprechend umgebaut und es läuft soweit,

bis auf die Tatsache, dass er die Bilder fortwährend die Bilder neu lädt. Also meine sieben Bilder

laufen in einem Loop von links nach rechts über den Screen.

Diese Bilder werden aber nicht einmal pro Browseraufruf in die MC´s

geladen, sondern immer wenn ein neuer Loop startet.

Ist auch interessant, dadurch nutzen sich die Bildinhalte natürlich schneller ab.

Und zweitens, habe ich am Ende des Loops den gleichen MC eingebaut (Bildloader01) der kann

aber natürlich nicht zweimal mit dem gleichen Instanznammen laufen. Mhmm?!

Ich lade die Datei mal hoch, da versteht man ziemlich genau was ich meine.

Momentan liegt sozusagen als achtes Übgergangsbild ein Logo in der Timeline. Geht auch,

trotzdem würde mich interessieren, ob man das in den Griff bekommt.

Vielen Dank an die Profis

Angehängte Dateien:
Komprimierte Datei BSP.zip288.67 KB
vindel#6
Benutzerbild von vindelFlashhilfe.de Moderator
Beiträge: 3000
Wohnort: Köln
Registriert: Oct 2007

15.09.2012, 12:33

Das Problem liegt an schlüsselbildern.
Wenn in zB Bild 1 dein Code steht und dies ein eigenständiges Schlüsselbild ist, so wird bei jedem Aufrufen des ersten Schlüsselbildes der Code ausgeführt.
Also einfach schauen, dass das Bild von den anderen getrennt ist, und dann schreibst du in dein letztes Frame
"this.gotoAndPlay(2)" und dein erstes Bild wird übersprungen!
public Weltformel(Problem){
      if (Problem gelöst) return Lösung;
      else Weltformel(kleiners Problem);
}
ollg#7
Benutzerbild von ollg
Beiträge: 11
Registriert: Jan 2008

Themenautor/in

15.09.2012, 12:38

na hört sich ja einfach an. super danke!
ollg#8
Benutzerbild von ollg
Beiträge: 11
Registriert: Jan 2008

Themenautor/in

15.09.2012, 14:10

Noch eine Letzte!

An welcher Stelle des Skripts kann ich denn den Verweis zu einem bestimmten Ordner einfügen.

Es funktioniert jetzt alles tadellos, nur liegen jetzt auf der obersten Ebene meiner Ordnerstruktur

100 Bilder herum.

Die würde ich gerne in einen Ordner schieben mit dem Namen Bilder, aber wie.



var my_mcl:MovieClipLoader = new MovieClipLoader();
for(var i:Number = 1; i <= 7; i++)  {
     var name:String = (Math.floor(Math.random()*100)+1)+".jpg";
     this['bildholder'+i].loadMovie(name);


}


Der muss ja in den MCLoader ja das Bild laden.

Ich habe es schon bei  this['bildholder'+i].loadMovie(bilder/name); versucht, geht aber nicht.


Vielen Dank nochmals vorab,


Oll
Geändert von ollg am 15.09.12 um 14:11 Uhr
vindel#9
Benutzerbild von vindelFlashhilfe.de Moderator
Beiträge: 3000
Wohnort: Köln
Registriert: Oct 2007

15.09.2012, 18:58

Dein Gedanke ist richtig, nur die Umsetzung falsch. Dein Ordnername ist ja ein String und keine Variable, also musst du dies auch mit " kennzeichnen:
ActionScript:
1this['bildholder'+i].loadMovie("bilder/"+name);
public Weltformel(Problem){
      if (Problem gelöst) return Lösung;
      else Weltformel(kleiners Problem);
}
ollg#10
Benutzerbild von ollg
Beiträge: 11
Registriert: Jan 2008

Themenautor/in

15.09.2012, 22:25

Yoap!

THX

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   php-resource.de   phpforum.de   phpwelt.de   Pixelio.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Hier Werben   Impressum
© 1999-2020 Sebastian Wichmann - Flashhilfe.de