Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 13-07-2006, 16:23   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 55
Problem: 2 Bilder auf einmal zufallsmäßig laden

Hallo,

ich habe folgendes Problem, und keine Ahnung wie ich es beheben kann.
Aber vielleicht kann mir jemand von euch weiterhelfen


Ich habe eine Flash-Datei, in dieser will ichim Prinzip 2 Slideshows auf einmal erstellen.
Also, ich hab einmal ein quadratisches Bild, das ständig per Zufall ausgewechselt wird und dabei ein- und aus-fadet, und einmal ein
Bildstreifen, der gleichzeitig mit dem anderen ein- und ausgeblendet werden soll, uns das ebenfalls per Zufall.
Bas Quadratishe Bild überlappt den Bildstreifen.

Das Skript von mir funktioniert, wenn nur eine Slideshow abläuft, aber nicht, wenn ich es mit beiden Bildern abspielen lassen möchte.


Ich habe auf dem 1. Frame, 1. Ebene das Skript für das Quadratische Bild, welches im Vordergrund liegen soll:

PHP-Code:
var tl this;
var 
fadespeed 1;
var 
bildanzahl 24;

//voriger MC
_global.old_content;


//Variable für Bildnummer
_global.cont;

//variablen für Liste um letzte 5 Bilder auszuschlueßen
number1 random(bildanzahl)+1;
number2 random(bildanzahl)+1;
number3 random(bildanzahl)+1;
number4 random(bildanzahl)+1;
number5 random(bildanzahl)+1;

var 
liste = new Array();
liste= new Array(number1number2number3number4number5);

/*
trace("l1: " + liste[0]);
trace("l2: " + liste[1]);
trace("l3: " + liste[2]);
trace("l4: " + liste[3]);
trace("l5: " + liste[4]);
trace("----------------------------");
*/

//um schleifendurchgang zu ermitteln
//var durchgang = 0;


function reload_x1() {

//    trace("----------------------------");
//    trace ("durchgang Nr. " + durchgang);

// Bildzahl per Zufall ermitteln
    
_global.cont random(bildanzahl-1)+1;
//    trace("1. Zufall: " + cont);


    //Abfragefunktion 1: 
    // wird eingesetzt wenn: if(cont==number1 || cont==number2 || cont==number3 || cont==number4 || cont==number5)

    
this.abfrage1 = function(){
    
//    trace("Zahl in Liste: " );
        
_global.contrandom(bildanzahl)+1;
    
//    trace("neuer Zufall :" + cont);
    
        
if (cont==number1 || cont==number2 || cont==number3 || cont==number4 || cont==number5){
            
abfrage1();
        } else if(
cont!=number1 && cont!=number2 && cont!=number3 && cont!=number4 && cont!=number5){
            
abfrage2();
          }    
    };
    
    
    
//Abfragefunktion 2: 
    // wird eingesetzt wenn: if(cont!=number1 && cont!=number2 && cont!=number3)    

    
this.abfrage2 = function(){
        
number1number2;
        
number2number3;
        
number3number4;
        
number4number5;
        
number5cont;
                        
        
liste= new Array(number1number2number3number4number5);
/*
        trace("----------------------------");                    
        trace ("neue liste:")
        trace("liste 1: " + liste[0]);
        trace("liste 2: " + liste[1]);
        trace("liste 3: " + liste[2]);
        trace("liste 4: " + liste[3]);
        trace("liste 5: " + liste[4]);
        trace("----------------------------");    
*/
    
};

    
//schauen, ob der Wert von cont in der Liste steht; wenn ja neuen Wert ermitteln
    
if (cont==number1 || cont==number2 || cont==number3 || cont==number4 || cont==number5){
        
abfrage1();
        
//wenn nein, dann neuen Wert in Liste eintragen
        
} else if(cont!=number1 && cont!=number2 && cont!=number3 && cont!=number4 && cont!=number5){
            
abfrage2();
        };

    
clearInterval(SetID);

    
//leeren MC erzeugen und positionieren
    
tl.createEmptyMovieClip("activus_1"+contcont+200);    
//    trace(" Moviename: nc_movie"+cont);
     
tl["activus_1"+cont]._x 0;
    
tl["activus_1"+cont]._y 0;

    
//Bilder aus Ordner in leeren MC laden
    
tl["activus_1"+cont].loadMovie("bq"+cont+".jpg");
    
tl["activus_1"+cont]._alpha 0;
    
    
//ladefunktion
    
this.loader_funk = function() {
        if (
tl["activus_1"+cont].getBytesLoaded()>=4) {
            
gesamt tl["activus_1"+cont].getBytesTotal();
            
bereits tl["activus_1"+cont].getBytesLoaded();
            
prozent Math.ceil((bereits/gesamt)*100);

            if (
prozent>=100) {
                
tl["activus_1"+cont]._x tl["activus_1"+cont]._width+69;
                
tl["activus_1"+cont]._y = -tl["activus_1"+cont]._height/2+69;
                
//neues Bild einfaden
                
tl["activus_1"+cont]._alpha += fadespeed;
                
//altes Bild ausfaden
                
old_content._alpha -= fadespeed;
                
                
//wenn neues Bild voll eingeblendet, alten MC löschen und mit neuem Inhalt speichern
                
if (tl["activus_1"+cont]._alpha>=100 && old_content._alpha<=0) {
                    
old_content.unloadMovie();
                    
_global.old_content tl["activus_1"+cont];
                    
clearInterval(lID);    

                    
SetID setInterval(reload_x15000);
                }

            }            
        }
    };

    
    
lID setInterval(loader_funk40);
    
//    durchgang++;
    
    
}
reload_x1(); 
Ich habe auf dem 1. Frame, 2. Ebene das Skript für den Bildstreifen, welcher zum teil unter dem Quadratischen Motiv sein soll:

PHP-Code:
var tl1 this;
var 
fadespeed_1 5;
var 
bildanzahl_1 43;

//voriger MC
_global.old_content_1;

//Variable für Bildnummer
_global.cont_1;

//variablen für Liste um letzte 5 Bilder auszuschlueßen
xnumber1 random(bildanzahl_1)+1;
xnumber2 random(bildanzahl_1)+1;
xnumber3 random(bildanzahl_1)+1;
xnumber4 random(bildanzahl_1)+1;
xnumber5 random(bildanzahl_1)+1;

var 
liste_1 = new Array();
liste_1= new Array(xnumber1xnumber2xnumber3xnumber4xnumber5);

/*
trace("l1: " + liste_1[0]);
trace("l2: " + liste_1[1]);
trace("l3: " + liste_1[2]);
trace("l4: " + liste_1[3]);
trace("l5: " + liste_1[4]);
trace("----------------------------");
*/

//um schleifendurchgang zu ermitteln
//var durchgang = 0;


function reload_x() {

//    trace("----------------------------");
//    trace ("durchgang Nr. " + durchgang);

// Bildzahl per Zufall ermitteln
    
_global.cont_1 random(bildanzahl_1-1)+1;
    
//    trace("1. Zufall: " + cont_1);


    //Abfragefunktion 1: 
    // wird eingesetzt wenn: if(cont_1==number1 || cont_1==number2 || cont_1==number3 || cont_1==number4 || cont_1==number5)

    
this.abfrage4 = function(){
    
//    trace("Zahl in Liste: " );
        
_global.cont_1random(bildanzahl_1)+1;
        
    
//    trace("neuer Zufall :" + cont_1);
    
        
if (cont_1==xnumber1 || cont_1==xnumber2 || cont_1==xnumber3 || cont_1==xnumber4 || cont_1==xnumber5){
            
abfrage4();
        } else if(
cont_1!=xnumber1 && cont_1!=xnumber2 && cont_1!=xnumber3 && cont_1!=xnumber4 && cont_1!=xnumber5){
            
abfrage3();
          }    
    };
    
    
    
//Abfragefunktion 2: 
    // wird eingesetzt wenn: if(cont_1!=number1 && cont_1!=number2 && cont_1!=number3)    

    
this.abfrage3 = function(){
        
xnumber1xnumber2;
        
xnumber2xnumber3;
        
xnumber3xnumber4;
        
xnumber4xnumber5;
        
xnumber5cont_1;
                        
        
liste_1= new Array(xnumber1xnumber2xnumber3xnumber4xnumber5);
/*
        trace("----------------------------");                    
        trace ("neue liste_1:")
        trace("liste 1: " + liste_1[0]);
        trace("liste 2: " + liste_1[1]);
        trace("liste 3: " + liste_1[2]);
        trace("liste 4: " + liste_1[3]);
        trace("liste 5: " + liste_1[4]);
        trace("----------------------------");    
*/
    
};

    
//schauen, ob der Wert von cont_1 in der Liste steht; wenn ja neuen Wert ermitteln
    
if (cont_1==xnumber1 || cont_1==xnumber2 || cont_1==xnumber3 || cont_1==xnumber4 || cont_1==xnumber5){
        
abfrage4();
        
//wenn nein, dann neuen Wert in Liste eintragen
        
} else if(cont_1!=xnumber1 && cont_1!=xnumber2 && cont_1!=xnumber3 && cont_1!=xnumber4 && cont_1!=xnumber5){
            
abfrage3();
        };

    
clearInterval(SetID);

    
//leeren MC erzeugen und positionieren
    
tl1.createEmptyMovieClip("mc_streifen"+cont_1cont_1+2);
    
//    trace(" Moviename: nc_movie"+cont_1);
    
tl1["mc_streifen"+cont_1]._x 0;
    
tl1["mc_streifen"+cont_1]._y 0;


    
//Bilder aus Ordner in leeren MC laden
    
tl1["mc_streifen"+cont_1].loadMovie("bs"+cont_1+".jpg");
    
tl1["mc_streifen"+cont_1]._alpha 0;
    
    
    
//ladefunktion
    
this.loader_funk_1 = function() {
        if (
tl1["mc_streifen"+cont_1].getBytesLoaded()>=4) {
            
gesamt1 tl1["mc_streifen"+cont_1].getBytesTotal();
            
bereits1 tl1["mc_streifen"+cont_1].getBytesLoaded();
            
prozent1 Math.ceil((bereits1/gesamt1)*100);


            if (
prozent1>=100) {
                
tl1["mc_streifen"+cont_1]._x = -tl1["mc_streifen"+cont_1]._width/2+234;
                
tl1["mc_streifen"+cont_1]._y tl1["mc_streifen"+cont_1]._height/2+79;

                
                
//neues Bild einfaden
                
tl1["mc_streifen"+cont_1]._alpha += fadespeed_1;
                
                
//altes Bild ausfaden
                
old_content_1._alpha -= fadespeed_1;                
                
                
//wenn neues Bild voll eingeblendet, alten MC löschen und mit neuem Inhalt speichern
                
if (tl1["mc_streifen"+cont_1]._alpha>=100 && old_content_1._alpha<=0) {
                    
old_content_1.unloadMovie();
                    
                    
_global.old_content_1 tl1["mc_streifen"+cont_1];
                    
                    
clearInterval(lID);    

                    
SetID setInterval(reload_x5000);
                }

            }            
        }

    };
    
    
lID setInterval(loader_funk_140);
    
//    durchgang++;
    
    
}
reload_x(); 
Was muss ich da ändern?
Entweder fadet das Quadratische Bild oder der Bildstreifen nicht ein...je nachdem welches Script auf der 1. Ebene liegt.

Hoffentlich versteht ihr mich

Schon mal danke für eure Hilfe
Melanie
EinAleM ist offline   Mit Zitat antworten
Alt 13-07-2006, 16:37   #2 (permalink)
experience++;
 
Benutzerbild von salazar
 
Registriert seit: Jul 2002
Ort: Düsseldorf
Beiträge: 11.347
ganz knapp... das hört sich einfach so an als würde sich was überschreiben... z.B. das interval... lID... nimm unterschiedliche bezeichner... ansosnten ist das schon ein ganz schöner code haufen... da blickt man als außenstehender kaum durhc.... von daher macht hier ne sample fla zu uppen schon sinn.

cya, sal
__________________
Bitte keine Flashfragen an mich schicken. Dafür ist ja das Forum da! Das betrifft auch Profilnachrichten.
Chuck Norris hat den Flash Player für alle mobilen Betriebssysteme!
salazar ist offline   Mit Zitat antworten
Alt 13-07-2006, 22:34   #3 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Zitat:
Zitat von salazar
ansosnten ist das schon ein ganz schöner code haufen... da blickt man als außenstehender kaum durhc....
Servus sal
Ich schon, des scheint auf einer meiner fadescripts aufzubauen
Die functionsnamen wurden in beiden scripts unterschiedlich benannt, die setInterval-ID's aber nicht, des ist wahrscheinlich der Grund
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 13-07-2006, 23:13   #4 (permalink)
experience++;
 
Benutzerbild von salazar
 
Registriert seit: Jul 2002
Ort: Düsseldorf
Beiträge: 11.347
servuuus
na das mit den interval id´s hatsch ja schon geschrieben... war mir nur nicht sicher ob ds alles ist und sich sonst evtl noch was überschreibt..

grüße, sal
__________________
Bitte keine Flashfragen an mich schicken. Dafür ist ja das Forum da! Das betrifft auch Profilnachrichten.
Chuck Norris hat den Flash Player für alle mobilen Betriebssysteme!
salazar ist offline   Mit Zitat antworten
Alt 14-07-2006, 09:00   #5 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 55
ja, das wars!!! :)))

Danke für Eure Hilfe !!!

Gruß
Melanie
EinAleM ist offline   Mit Zitat antworten
Alt 14-07-2006, 15:23   #6 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Zitat:
Zitat von salazar
servuuus
na das mit den interval id´s hatsch ja schon geschrieben... war mir nur nicht sicher ob ds alles ist und sich sonst evtl noch was überschreibt..
Das Du das schon geschrieben hast, weis ich, ich kann ja lesen!
War mehr eine bestätigung, das des alles ist, was falsch ist
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 14-07-2006, 15:32   #7 (permalink)
experience++;
 
Benutzerbild von salazar
 
Registriert seit: Jul 2002
Ort: Düsseldorf
Beiträge: 11.347
war auch schon spät gestern...
hach. wir sind einfach gut!
grüße, sal
__________________
Bitte keine Flashfragen an mich schicken. Dafür ist ja das Forum da! Das betrifft auch Profilnachrichten.
Chuck Norris hat den Flash Player für alle mobilen Betriebssysteme!
salazar 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 04:47 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele