Zurück   Flashforum > Flash > Flash Fortgeschritten > Flash 8

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 30-01-2008, 02:33   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 99
variable variable / onEnterFrame

hello hello,

habe ein mittelschweres problemchen:

ich wuerde gern in einer for schleife bei verschiedenen onReleases jeweils onEnterFrame vergeben.
so solls aussehen:

das script liegt auf der root und die onEnterFrame soll in MC clipper stattfinden.

PHP-Code:
for(i=1etc.){


     
this["clipper"+i].onRollOver = function(){
        
        
this["clipper"+i].onEnterFrame = function(){

            if(
this["clipper"+i].c_in._height < (clip_h+10)){
                
this["clipper"+i].c_in._height += (10/this["clipper"+i].c_in._height)*speed;
                
this["clipper"+i].c_in._width += (10/this["clipper"+i].c_in._height)*speed;
                if(
this["flipper"+i].f_in._alpha 100){
                    
this["flipper"+i].f_in._alpha += (100/this["clipper"+i].c_in._height)*speed;
                }
            }else{
                
delete this["clipper"+i].onEnterFrame;
            }
        }        
        

    }




was mir nicht gelingt, ist dass ich mit diesem befehl
PHP-Code:
this["clipper"+i].onEnterFrame 
die gewuenschte onEnterFrame ausloese


was schreibt man stattdessen? kann mir das nicht beantworten.

danke!!!
whatafuck ist offline   Mit Zitat antworten
Alt 30-01-2008, 07:50   #2 (permalink)
nobody is perfect
 
Benutzerbild von richtsteiger
 
Registriert seit: Jul 2004
Ort: munich
Beiträge: 876
Anstatt this["clipper"+i] reicht ein normales this. Denn innerhalb des onRollOver bzw. onEnterFrame bezieht sich das this dann auf deinen clipper. Aber deinen flipper musst du entsprechend berücksichtigen, da dir hier das i einen Strich durch die Rechnung macht. Daher musst du die Zählvariable oder besser noch eine Referenz auf this["flipper"+i] zwischenspeichern. Deine FOR-Schleife würde dann so aussehen:
PHP-Code:
for(i=1etc.){
  
this["clipper"+i].ref this["flipper"+i]; // hier den Movieclip als Referenz hinterlegen
  
this["clipper"+i].onRollOver = function(){
    
this.onEnterFrame = function() {
      if(
this.c_in._height < (clip_h+10)) {
        
this.c_in._height += (10/this.c_in._height)*speed;
        
this.c_in._width += (10/this.c_in._height)*speed;
        
// und jetzt halt die Referenz nutzen
        
if(this.ref.f_in._alpha 100) {
          
this.ref.f_in._alpha += (100/this.c_in._height)*speed;
        }
      } else {
        
delete this.onEnterFrame;
      }
    }
  }

Ist jetzt allerdings ungetestet, dürfte aber so oder so ähnlich funktionieren.
__________________
XING
richtsteiger ist offline   Mit Zitat antworten
Alt 30-01-2008, 12:59   #3 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 99
kool, abgafahren!
wär so nicht drauf gekommen,
danke!
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 18:07 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele