Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-05-2006, 12:55   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 99
liegts an flash??? oder an mir?

also langsam nervts.

ich hab hier nen script geschrieben, der zunächst funktioniert, aber irgendwann spinnt es. hab jetzt xtra irgendwelche for_schleifen zum zusammenfassen weggelassen und jedem symbol ne persönliche anweisung gegeben, aber nix is.

kurze beschreibung:::

hier sind vier clips in denen sich buchstaben drehen. per roll over/out fährt der clip vor und zurück, //also buchstabe dreht sich//. bei onRelease fährt der clip vor && rollOut wird inaktiv. erst wenn man einen anderen clip berührt dreht sich der jeweilige clip zurück und wird wieder true.

das problem ist, das irgendwann nur vom rollovern die release_funktion ausgelöst wird. wie kann sowas sein?

src:_swf
http://www.ronknroll.com/flash/ronk.swf

src:_fla
http://www.ronknroll.com/flash/ronk.fla

vielleicht hat jemand ne idee???
danke!
jo



hier der script:
PHP-Code:
///STOP///
            
for (i=1i<=4i++) {
    
maik = eval("b"+i);
    
_root.maik.stop();
}

///VAR///

ex 0;
Be1 true;
Be2 true;
Be3 true;
Be4 true;

function 
Back() {
    
queng = eval("b"+ex);
    
ronny = eval("Be"+ex);
    
ronny true;
    
delete queng.onEnterFrame;
    
queng.onEnterFrame = function() {
        if (
queng._currentframe>=0) {
            
queng.prevFrame();
        } else {
            
delete queng.onEnterFrame;
        }
    };
}

///B1///

b1.onRollOver = function() {
    if (
ex == || ex == || ex == 4) {
        
Back();
        
ex=0;
    }
    
delete b1.onEnterFrame;
    
b1.onEnterFrame = function() {
        if (
b1._currentframe<=b1._totalframes) {
            
b1.nextFrame();
        } else {
            
delete b1.onEnterFrame;
        }
    };
};
b1.onRollOut = function() {
    if (
Be1) {
        
delete b1.onEnterFrame;
        
b1.onEnterFrame = function() {
            if (
b1._currentframe>=0) {
                
b1.prevFrame();
            } else {
                
delete b1.onEnterFrame;
            }
        };
    }
};
b1.onPress = function() {
    
Be1 false;
    
ex 1;
};

///B2///

b2.onRollOver = function() {
    if (
ex == || ex == || ex == 4) {
        
Back();
        
ex=0;        
    }
    
delete b2.onEnterFrame;
    
b2.onEnterFrame = function() {
        if (
b2._currentframe<=b2._totalframes) {
            
b2.nextFrame();
        } else {
            
delete b2.onEnterFrame;
        }
    };
};
b2.onRollOut = function() {
    
trace("yo");    
    if (
Be2) {
        
delete b2.onEnterFrame;
        
b2.onEnterFrame = function() {
            if (
b2._currentframe>=0) {
                
b2.prevFrame();
            } else {
                
delete b2.onEnterFrame;
            }
        };
    }
};
b2.onPress = function() {
    
Be2 false;
    
ex 2;
};

///B3///

b3.onRollOver = function() {
    if (
ex == || ex == || ex == 4) {
        
Back();
        
ex=0;        
    }
    
delete b3.onEnterFrame;
    
b3.onEnterFrame = function() {
        if (
b3._currentframe<=b3._totalframes) {
            
b3.nextFrame();
        } else {
            
delete b3.onEnterFrame;
        }
    };
};
b3.onRollOut = function() {
    
trace("yo");    
    if (
Be3) {
        
delete b3.onEnterFrame;
        
b3.onEnterFrame = function() {
            if (
b3._currentframe>=0) {
                
b3.prevFrame();
            } else {
                
delete b3.onEnterFrame;
            }
        };
    }
};
b3.onPress = function() {
    
Be3 false;
    
ex 3;
};

///B3///

b4.onRollOver = function() {
    if (
ex == || ex == || ex == 3) {
        
Back();
        
ex=0;        
    }
    
delete b4.onEnterFrame;
    
b4.onEnterFrame = function() {
        if (
b4._currentframe<=b4._totalframes) {
            
b4.nextFrame();
        } else {
            
delete b4.onEnterFrame;
        }
    };
};
b4.onRollOut = function() {
    
trace("yo");    
    if (
Be4) {
        
delete b4.onEnterFrame;
        
b4.onEnterFrame = function() {
            if (
b4._currentframe>=0) {
                
b4.prevFrame();
            } else {
                
delete b4.onEnterFrame;
            }
        };
    }
};
b4.onPress = function() {
    
Be4 false;
    
ex 4;
}; 
whatafuck ist offline   Mit Zitat antworten
Alt 28-05-2006, 13:07   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hallo!

Sieht mir viel zu kompliziert (bzw. umständlich) aus, wie du das gemacht hast. Da hat man auch nicht viel Bock, sich das komplett anzugucken. Allerdings kann
PHP-Code:
if (queng._currentframe>=0) { 
            
queng.prevFrame(); 
das so ja nicht hinhauen. Wenn dann schon mit 2 und nicht mit 0...

edit:
Zitat:
Zitat von whatafuck
hab jetzt xtra irgendwelche for_schleifen zum zusammenfassen weggelassen
Warum eigentlich???
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++

Geändert von Der Frager (28-05-2006 um 13:12 Uhr)
Der Frager ist offline   Mit Zitat antworten
Alt 28-05-2006, 13:15   #3 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 99
Zitat:
Zitat von Der Frager
Warum eigentlich???
hatte bisl bammel, das er dann nich mehr klar kommt... nicht lachen

wieso 2 statt 0???

und soviel steht ja nicht da. geht ja nur um die rollOver rollOut und onRelease, steht nur blos 4mal da, sorry.

Geändert von whatafuck (28-05-2006 um 13:17 Uhr)
whatafuck ist offline   Mit Zitat antworten
Alt 28-05-2006, 13:24   #4 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Wenn der _currentframe 1 ist soll doch der onEnterFrame gelöscht werden.
PHP-Code:
if (queng._currentframe>=0) {  
            
queng.prevFrame(); 
Wird also immer erfüllt sein und somit läuft sich der oEF tot...
Andersrum wird's etwas deutlicher:
PHP-Code:
 if (queng._currentframe<=1) { 
            
delete queng.onEnterFrame
        } else { 
      
queng.prevFrame(); 
        } 
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 28-05-2006, 13:27   #5 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 99
...

ah okay. alles clair. ich versuchs mal so.
danke schon mal!!!
whatafuck 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 19:30 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele