begin process at 2012 05 27 19:32:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

Problem de variable qui renvoi un NaN" dans un SlideShow


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problem de variable qui renvoi un NaN" dans un SlideShow

mardi 21 août 2007 à 17:24:08 | Problem de variable qui renvoi un NaN" dans un SlideShow

theneoshaman

Amis Flasheurs...  Bonjours !

Je suis en train de créer une petit flash où des images défilent mais ma première image ne revient pas derrière la dernière et donc la boucle ne se fait pas...

Y'a un flasheur pour sauver le newbie ? ^^

Merci d'avance à ceux qui tenterons de débusquer la vermine :)
Flo





Voici le code en question (j'ai mis en rouge la partie ou ma variable deltaX qui est definie comme NaN est redéfinie)

//---------------
//-  VARIABLES  -
//---------------

var debugg:String = "interval";
var debugg:String = "slideInterval"


// Slide Speed
var speed:Number = 1;
var defaultSpeed:Number = speed;
var widthX:Number = slideMask._width/2;
var middleX:Number = slideMask._x+widthX;

// Init Vars
var duration:Number = 20;
var slidesWidth:Number = 0;
var slidesHeight:Number = 0;
var preloaderHeight:Number = 5;
var slidesTotal:Number = 0;
var slidesURL:String;
var xmlURL:String = "pics/param.xml";
var picSpace:Number = 5;

var intervalId:Number = 0;
var listener:Object = new Object();
var loader:MovieClipLoader = new MovieClipLoader();



//---------------
//-  LISTENERS  -
//---------------

listener.onLoadStart = function(image:MovieClip):Void  {
    PreloaderStart(image);
};

listener.onLoadInit = function(image:MovieClip):Void  {
    image._width = slidesWidth;
    image._height = slidesHeight;
};
listener.onLoadProgress = function(image:MovieClip, bytesLoaded:Number, bytesTotal:Number):Void  {
    var pourcent:Number = (bytesLoaded*100)/bytesTotal;
    if (pourcent != 100) {
        PreloaderRefresh(image,pourcent);
    }
};
listener.onLoadComplete = function(image:MovieClip, httpStatus:Number):Void  {
    image.preloader._visible = false;
};

loader.addListener(listener);


//---------------
//-  FUNCTIONS  -
//---------------

// Script Init
function Init() {
    SlideShowInit();
}

// Slideshow Init
function SlideShowInit() {
    this.createEmptyMovieClip("container",0);
    container._x = slideMask._x;
    container._y = slideMask._y;
    container.setMask(slideMask);
    LoadXML(xmlURL);
}

// XML Loading
function LoadXML(xmlURL:String):Void {
    var myXML:XML = new XML();
    myXML.ignoreWhite = true;
    myXML.onLoad = function(success:Boolean) {
        if (success) {
            var xmlRoot:XMLNode = myXML.firstChild;

            for (var i:Number = 0; i<xmlRoot.childNodes.length; i++) {
                var xmlNode:XMLNode = xmlRoot.childNodes[i];
                switch (xmlNode.nodeName) {
                    case "slides" :
                        slidesURL = xmlNode.attributes["url"];
                        slidesTotal = parseInt(xmlNode.attributes["count"]);
                        slidesWidth = parseInt(xmlNode.attributes["width"]);
                        slidesHeight = parseInt(xmlNode.attributes["height"]);
                        link = xmlNode.attributes["link"];
                        break;
                }
            }
            CreateClips();
        }
    };
    myXML.load(xmlURL);
    SlideShowLaunch();
}

// Set Interval
function SlideShowLaunch():Void {
    if (intervalId == 0) {
        intervalId = setInterval(this, "SlideShowInterval", duration);
    }
    if (debugg == "interval") {
        trace("SETINTERVAL - intervalId : "+intervalId);
    }
}
/*function SlideShowInterval():Void {
    var currentSpeed:Number = 0+speed;
    var totalHeight:Number = (slidesHeight+picSpace);
    deltaX = (deltaX-speed);
    filmHoles._y -= currentSpeed;
    if (filmHoles._y<=-15.1) {
        filmHoles._y = 5;
    }
    for (var i:Number = 0; i<slidesTotal; i++) {
        clips[i]._y -= currentSpeed;
        if (clips[i]._y<=-slidesHeight) {
            trace("ACTION1")
            clips[i]._y = (slidesTotal-1)*totalHeight+deltaX;
        } else if (clips[i]._y>=(slidesTotal-1)*totalHeight) {
            trace("ACTION2")
            clips[i]._y = -totalHeight+deltaX;
        }
        if (debugg == "slideInterval") {
            trace("- PASSE " + (i+1) + " -");
            trace("clips[i]._y : " + clips[i]._y);
            trace("deltaX : " + deltaX);
        }
    }
}*/

function SlideShowInterval():Void {
    var currentSpeed = 0+speed;
    deltaX = (deltaX-speed)%slidesWidth;
    trace("deltaX : " + deltaX)
    trace("speed : " + speed)
    trace("slidesWidth : " + slidesWidth)

    for (var i:Number = 0; i<slidesTotal; i++) {
        clips[i]._y -= currentSpeed;
        if (clips[i]._y<=-slidesHeight) {
            clips[i]._y = (slidesTotal-1)*slidesHeight+deltaX;
        } else if (clips[i]._y>=(slidesTotal-1)*slidesHeight) {
            clips[i]._y = -slidesHeight+deltaX;
        }
    }
}


// Preloader
function PreloaderStart(clip:MovieClip) {
    clip.createEmptyMovieClip("preloader",this.getNextHighestDepth());
    var preloaderWidth:Number = (slidesWidth*75)/100;
    with (clip.preloader) {
        beginFill(0xFFFFFF);
        lineTo(preloaderWidth,0);
        lineTo(preloaderWidth,preloaderHeight);
        lineTo(0,preloaderHeight);
        lineTo(0,0);
        endFill();
        _x = (slidesWidth-preloaderWidth)/2;
        _y = (slidesHeight-preloaderHeight)/2;
    }
}
function PreloaderRefresh(clip:MovieClip, pourcent):Void {
    clip.preloader._xscale = pourcent;
}

function CreateClips() {
    clips = new Array();
    for (var i:Number = 1; i<=slidesTotal; i++) {
        var slideNumber:String = ""+i;
        if (i<10) {
            slideNumber = "0"+i;
        }
        AddClip(container,slideNumber);
    }
}

function AddClip(container, slideNumber) {
    var clip = container.createEmptyMovieClip("clip"+slideNumber, slideNumber);
    clip._y = (parseInt(slideNumber)-1)*(slidesHeight+picSpace);
    clips[clips.length] = clip;
    loader.loadClip(slidesURL+"pic"+slideNumber+".jpg",clip);
}


// XML
var xmlFlashFrom:String;
var xmlSlidesUrl:String;
var xmlSlidesCount:Number;


//-------------
//-  BUTTONS  -
//-------------

but.onRollOver = function() {
    clearInterval(intervalId);
    if (debugg == "interval") {
        trace("ROLLOVER - intervalId : "+intervalId);
    }
    //speed = 0;    
};
but.onRollOut = function() {
    SlideShowLaunch();
    if (debugg == "interval") {
        trace("ROLLOUT - intervalId : "+intervalId);
    }
    //speed = defaultSpeed;
};
but.onPress = function() {
    getURL(link);
};


//----------
//-  INIT  -
//----------

Init();






mercredi 22 août 2007 à 09:40:06 | Re : Problem de variable qui renvoi un NaN" dans un SlideShow

goldenboy68

Réponse acceptée !
Tu pourrais nous dire ce que renvoient tes "trace" et ajouter p-ê un trace avant de refaire une affectation dans deltaX.

@+
mercredi 22 août 2007 à 10:15:34 | Re : Problem de variable qui renvoi un NaN" dans un SlideShow

theneoshaman

J'ai résolu le pb en rajoutant var deltaX:Number dans la fonctions et dans la liste de variable... Je ne m'explique toujours pas pourquoi il le déclarait Nan mais bon, ca marche maintenant :)
Merci goldenboy pour le temps que tu passes à nous aider !


Cette discussion est classée dans : function, var, number, clips, deltax


Répondre à ce message

Sujets en rapport avec ce message

Gallerie Flash [ par theneoshaman ] Bonjours amis Flasheurs !Je suis en train de créer une gallerie dynamique en flash (mon dieu, que c'est original !) et j'ai un pb (sans déconner :p).. diaporama avec importation aléatoire [ par JackNUMBER ] bonjour à tous !!j'ai trouvé 2 scripts que j'aimerai combiné.L'un sert à charger une image aléatoirement dans un MovieClip (qu'il créé) qui est conten Lien sur image dans un diaporama flash ? [ par phobiahz ] Bonjour a tous !Voila j'ai le code d'un diaporama (fixe mais avec fondu entre les images) dont les images sont chargées dynamiquement a partir d'un fi loadMovie (); et XML [ par Orange73 ] Yop les gens !Bon voilà, j'ai une anim principal dans laquelle je fais appel à un swf externe qui contient un AS permettant de faire un diaporama imag Aprentissage difficile des classes [ par szambaux ] Bonjour je suis en train de me former au classe est j'ai vraiment du mal donc je poste ce que j'ai fait, c'est une classe récupere le nom d'un fichier scroll ne s'arrête pas au bas du texte [ par Baby Jane ] Bonjour,J'ai réalisé un vertical scrollbar pour un site entièrement en flash 8. Je souhaite que lorsque le scrollFace est au bas de mon scrollTrack, c relancer un diaporama XML sur un second XML [ par vegetalain ] Salut tout le monde... alors voilà, je suis dsl mais je ne sais plus où j'ai pris le code dont je vais vous parler :/ snif.Le code suivant permet de c stopper un carrousel sur un angle prédéfini [ par neuronezero ] Alors voilà mon problème...J'ai fais un carrousel tout simple en AS2, mais je désirerais faire en sorte que quand je clik sur l'un des objets le carro aide pour un debutant [ par coreangel ] bonjour je vien de recup sur le site un diaporama (DIAPORAMA XML AVEC FONDU) de hiltonet j aimerai pouvoir lire des annime .swf mais je sais pas comme diaporama loadmovie : SetInterval qui ne se vide pas [ par croco73 ] Bonsoir à tous et à toutes, J'appelle la communauté de flashkod en l'espoir que celle ci puisse m'aider. J'ai un site intégralement en AS2. le fichie


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales