1&1 Webhosting
Flashhilfe.de - Flash Community

"Zufallsgenerator" aus AS entfernen [Flash 8]

Forum > ActionScript 2.0 > "Zufallsgenerator" aus AS entfernen

 


AntwortenRegistrieren Seite1  

 09.05.2011, 16:25 
Benutzerbild von QuiJinn
Beiträge: 24
Registriert: May 2007

"Zufallsgenerator" aus AS entfernen
Hi Flasher, hab mir die Tage eine Fla-Datei Wechsler.fla (32.50 KB) (Slideshow mit Fade-In und Fade-Out) aus dem Netz gezogen, läuft super. Mein Problem, ich bekomme diesen Zufallsgenerator nicht raus, so dass die Daten in einer festen (entsprechend der Bildnummern) Reihenfolge in einer Endlosschleife ablaufen. Wäre super, wenn mich einer unterstützen kann.

Beste Grüße und schon mal 1000-Dank
Alles ist gut, solange du wild bist!

In diesem Sinne

Schlagwörter: Fade In, Fade Out, Slideshow
 09.05.2011, 16:48Re1
Benutzerbild von ffflash
Beiträge: 317
Registriert: Dec 2005

In den Skripts gibt es doch auch ein Skript für einen Weiter-Button. Nimm einfach dieses Skript und verwende es statt des jetzigen Zufallsskripts ;)
 09.05.2011, 17:00Re2
Benutzerbild von QuiJinn
Beiträge: 24
Registriert: May 2007

Themenautor/in

MEinst Du in Ebene 1, Bild 1 ab Zeile 18 (function weiter)? Hat das nicht zur Folge, dass ich einen Button benutzen muss um das nächste Bild zu sehen? Ziel ist, das die Animation alleine in einer Endlosschleife läuft und ich durch tauschen der Bilder in Ordner "bilder" diese dann beeinflussen kann.
Alles ist gut, solange du wild bist!

In diesem Sinne

 
nicht sichtbar bei eingeloggten Mitgliedern
 09.05.2011, 19:05Re3
Benutzerbild von RustyCake
Beiträge: 1769
Wohnort: Laimbach 6 1/2
Registriert: Nov 2002

Bisschen anstrengend an dem Teil herumzuschrauben, deswegen hier eine bisschen Modernere Version,
kannst auch besser über XML bearbeiten.
Musst nicht nehmen, kannst aber :-)
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
import com.caurina.transitions.*;//Tweenklase, zum freinen Gebrauch, Download_Link  http://code.google.com/p/tweener/.
var myBigPictArray:Array = [];// Bildernamen als Strings gespeichert.
var btnContainerArray:Array = [];// hier werden die mitlaufenden Buttons gespeichert.
var bigContainerArray:Array = [];// hier werden die Container für die Bilder gespeichert.
var bilderOrdner:String = null;// String für den Ordner der Bilder.
var timeline:MovieClip = this;// hier wird die Maintimeline gespeichert, bei setInterval sehr nützlich, und wenn das Ding nicht auf "_root" läuft.
var firstLoad:Boolean = false;// wenn die auf true gesetzt wird (wenn erstes Bild geladen), fängt die DiaShow an.
var fadeInMc:MovieClip = null;// hier wird der gerade eingefadete MC gespeichert, zum wieder ausfaden "function outFade()".
var btnMemory:MovieClip = null;//  hier wird die gerade angezeigte, Nummer gespeichert, wird auch im "outFade" gebraucht.
var loadcount:Number = 0;// counter für Loader.
var diacount:Number = 0;// counter für DiaShow.
var inter:Number = null;// der Speicher für das "setInterval --> inter".
//********** hier werden die Nummer generiert **********//
function load_btn() {
     for (i=0; i<myBigPictArray.length; i++) {
        var tlb:MovieClip = timeline.attachMovie("Button_Base","thumb_btn"+i,timeline.getNextHighestDepth());
        btnContainerArray.push(tlb);
        tlb.stop();
        tlb._x = i*(tlb._width)+Stage.width-(tlb._width*myBigPictArray.length);
        tlb._y = 20;
        tlb.nr_txt.text = i+1;
     }
     create_container();// --> selbsterklärend
}
//********** hier werden die Container fü die Bilder generiert, für jedes Bilde einer **********//
function create_container() {
     for (i=0; i<myBigPictArray.length; i++) {
        bigContainerArray.push(timeline.createEmptyMovieClip("big_container"+i,timeline.getNextHighestDepth()));
     }
     load_Bilder();// --> selbsterklärend
}
//********** Loader-Funktion, die Bilder "Bild für Bild" lädt, unabhängig von der DiaShow **********//
function load_Bilder():Void {
     var wo:MovieClip = bigContainerArray[loadcount];
     wo._alpha = 0;
     var was:String = bilderOrdner+myBigPictArray[loadcount];
     var bild_mcl = new MovieClipLoader();
     ObjListener = new Object();
     bild_mcl.addListener(ObjListener);
     bild_mcl.loadClip(was,wo);
     var interval:Object = new Object();
     interval.id = setInterval(checkProgress, 30, bild_mcl, wo, interval);
     function checkProgress(mcLoader:MovieClipLoader, image:MovieClip, interval:Object):Void {
        var progress:Object = mcLoader.getProgress(image);
        if (progress.bytesLoaded == progress.bytesTotal) {
           clearInterval(interval.id);
           wo._x = int((Stage.width-wo._width)/2);
           wo._y = int((Stage.height-wo._height)/2);
           if (firstLoad == false) {// wenn das erste Bild geladen ist, kann die DiaShow gestartet werden, der Loader läuft weiter
            inFade();// --> selbsterklärend
            firstLoad = true;
           }
           if (loadcount<myBigPictArray.length-1) {
              loadcount++;
              load_Bilder();// Rekursives laden, heisst die Funktion ruft sich selber, solange loadcount kleiner wie BildArray-1 ist.
         }
        }
     }
}
//********** Funktion zum einfaden der Bilder **********//
function inFade():Void {
     clearInterval(inter);// kickt interval --> "inter"
   if(bigContainerArray[diacount] != undefined){// Sicherheits-Check, ob das Bild auch wirklich schon im Array ist.
   btnContainerArray[diacount].gotoAndStop(2);// Nummern_mc wird auf den zweiten Frame geschickt
   btnMemory = btnContainerArray[diacount];// Nummern_mc wird gespeichert
   Tweener.addTween(bigContainerArray[diacount],{_alpha:100, time:8, transition:easeInQuad, onComplete:function () {
     fadeInMc = bigContainerArray[diacount];// der gerade eingefadete Mc wird gespeichert
   inter = setInterval(outFade, 5000);// wenn eingedaet komplett, outFade wird gestartet
   }});
     }else{
        fileCecker();// aufruf des File-Checkers, wenn ein Position im BilderArray noch leer ist!
   }
}
//********** Funktion zum ausfaden der Bilder **********//
function outFade() {
     clearInterval(inter);// kickt interval --> "inter"
   Tweener.addTween(fadeInMc,{_alpha:0, time:4, transition:easeOutQuad, onComplete:function () {
     btnMemory.gotoAndStop(1);// wenn fertig, gespeicherter Nummer_mc wird wieder auf Frame 1 geschickt.
   inFade();// inFade wird wieder gestartet
   }});
     diacount<myBigPictArray.length-1 ? (diacount++) : diacount=0;// setzt diacount wieder auf 0, wenn die DiaShow durch ist
}
//********** Funktion die gerufen wird, wenn versucht wird ein Bild zu faden, das noch nicht gespeichert ist **********//
function fileCecker(){
     var tfc:MovieClip = timeline.createEmptyMovieClip("fileCheckMc",timeline.getNextHighestDepth());
     tfc.onEnterFrame = function(){// läuft solange wie ein Bild im Array gespeicert ist
      if(bigContainerArray[diacount] != undefined){
           inFade();// startet "inFade" erneut, wenn der Content am Start ist.
         delete this.onEnterFrame;
        }
     }
}
function suck_xml() {
     myXML = new XML();
     myXML.ignoreWhite = true;
     myXML.onLoad = function(aloha:Boolean) {
        if (aloha) {
           bilderOrdner = this.firstChild.childNodes[0].childNodes[0].attributes.ordner; // erstellt den String für Bilder-Ordner
         for (var i:Number = 0; i<this.firstChild.childNodes[1].childNodes.length; i++) {
              myBigPictArray.push(this.firstChild.childNodes[1].childNodes[i].attributes.big);// erstellt die Strings und speichert die im Array
         }
           load_btn();//startet nummer_mc generieren
      }
     };
     myXML.load('gallery_xml_as2.xml');
}
suck_xml();// Startet den Anfang der ganzen show
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Beispiel_XML
/*
<?xml version="1.0" encoding="utf-8"?>
<pictures>
<database>
<data ordner = "Bilder/"></data>
</database>
<picbase>
<pict big = "Nasa_10.jpg"></pict>
<pict big = "Nasa_11.jpg"></pict>
<pict big = "Nasa_12.jpg"></pict>
<pict big = "Nasa_13.jpg"></pict>
<pict big = "Nasa_14.jpg"></pict>
<pict big = "Nasa_15.jpg"></pict>
<pict big = "Nasa_16.jpg"></pict>
<pict big = "Nasa_17.jpg"></pict>
<pict big = "Nasa_18.jpg"></pict>
<pict big = "Nasa_19.jpg"></pict>
</picbase>
</pictures>
*/

Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen"
 10.05.2011, 17:58Re4
Beiträge: 108
Wohnort: Hannover
Registriert: Jan 2010

Hab jetzt einfach nur ein paar Sachen geändert, nicht ideal, aber so läufts. Würde es echt nochmal neu aufbauen, aber so kannst Du vergleichen wo der Hase begraben liegt.^^

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
stop();

//Bildloader initialisieren
var loader:MovieClipLoader = new MovieClipLoader();
loader.addListener(this);

var g:Number = 0;
function onLoadProgress(_mc:MovieClip, loaded:Number, total:Number) {
     var amount:Number = Math.round(loaded/total*100);
     if (loaded>=total) {
        g++;
        unloadMovie(_mc);
        if (g>=bildanzahl) {
           gotoAndStop(3);
        }
     }
}

this.onEnterFrame = function() {
     var amount:Number = this.getBytesLoaded()/this.getBytesTotal()*100;
     if (amount>=100 && amount>20) {
        bilder = new Array();
        for (i=0; i<=bildanzahl; i++) {
           zufallszahl = (bildanzahl);//das is der Zufallsgenerator
         if (zufallszahl == "0") {
              zufallszahl = "1";
           }
           
           //Bilder laden 
         var t = _root.attachMovie("bild", "pic"+i, i+1);
           t._visible = false;
           t._alpha = 0;
           t.thumb = pfad+"0"+i+".jpg";// Deine Bilder
         //bild laden
         loader.loadClip(t.thumb,t);
           bilder[i] = pfad+"0"+i+".jpg";
        }
        delete this.onEnterFrame;
     }
};
 11.05.2011, 09:15Re5
Benutzerbild von QuiJinn
Beiträge: 24
Registriert: May 2007

Themenautor/in

Cool, läuft super. Besten Dank für die Mühen.
Alles ist gut, solange du wild bist!

In diesem Sinne

 
nicht sichtbar bei eingeloggten Mitgliedern
 
Themen
Ähnliche Beiträge zum Thema
 

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.
Partner Webseiten: DesignerInAction.de   Designnation.de   Mediengestalter.info   php-resource.de   phpforum.de   phpwelt.de   Pixelio.de   PSD-Tutorials.de   Tutorials.de

Haftungsausschluss   Datenschutzerklärung   Hier Werben   Impressum
© 1999-2012 Sebastian Wichmann - Flashhilfe.de