As3 pb enterFrame

Résolu
cs_inaden Messages postés 618 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 27 août 2010 - 22 nov. 2008 à 11:29
cs_inaden Messages postés 618 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 27 août 2010 - 27 nov. 2008 à 08:38
Bonjour,
l'idée est de créer une fonction de transition alpha... truc simple en as2 mais là.
Voici deux tentatives (les seuls qui ne me donne pas de message d'erreur). La première fais disparaître le clip directement (sans transition), la seconde le fais clignoter et l'enterframe ne s'arrête pas.
monBouton.addEventListener ( MouseEvent.CLICK, clicBouton );

function clicBouton ( pEvt:MouseEvent ):void {
    if ( !monClip.hasEventListener ( Event.ENTER_FRAME ) ) {
        trace("if de clipbouton");
           monClip.addEventListener ( Event.ENTER_FRAME, redimensionne );
    }
}
function redimensionne ( pEvt:Event ):void {
    if ( monClip.alpha>0) {
        trace("exécution de la fonction redimensionne");
        monClip.alpha-=10;
     }
    else{
        monClip.removeEventListener ( Event.ENTER_FRAME, redimensionne );
         trace("redimensionnement terminé");
    }
}

monBouton2.addEventListener ( MouseEvent.CLICK, clicBouton2);

function clicBouton2 ( pEvt:MouseEvent ):void {
    trace("fonction écouteur déclenchée");
    if ( !monClip.hasEventListener ( Event.ENTER_FRAME ) ) {
    trace("if de la fonction bouton");
           monClip.addEventListener ( Event.ENTER_FRAME, redimensionne2 );
    }
}
function redimensionne2 ( pEvt:Event ):void {
    trace("exécution de la fonction redimensionne");
    monClip.alpha -=10;
    if ( monClip.alpha==0) {
        monClip.removeEventListener ( Event.ENTER_FRAME, redimensionne2 );
         trace("redimensionnement terminé");
     }
}

Et plus encore... comment faire que cette fonction, le jour ou elle marchera, soit applicable à un clip que l'on déterminera en paramètre dans la fonction.
Je sais, cela fais beaucoup de question, mais j'espère que quand j'aurais compris cela, des portes de l'as3 s'ouvriront devant moi.
Merci d'avance à tous.

Tout vient à qui sait attendre

2 réponses

crackter Messages postés 401 Date d'inscription mercredi 12 novembre 2003 Statut Membre Dernière intervention 31 janvier 2010
27 nov. 2008 à 00:10
Attention migration as3, les valeurs comme alpha ne vont plus de 0à100 mais de 0à1...

monBouton.addEventListener ( MouseEvent.CLICK, clicBouton );

function clicBouton(evt:MouseEvent):void {
monClip.addEventListener(Event.ENTER_FRAME,baisserAlpha);
monBouton.removeEventListener(MouseEvent.CLICK,clicBouton);
}
function baisserAlpha(evt:Object):void {
evt.target.alpha-=.1;
if (evt.target.alpha>0) return;
evt.target.removeEventListener(Event.ENTER_FRAME,baisserAlpha);
}
3
cs_inaden Messages postés 618 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 27 août 2010 2
27 nov. 2008 à 08:38
Super...
you are the boss.
1000 merci

Tout vient à qui sait attendre
0
Rejoignez-nous