Nextra
Messages postés14Date d'inscriptiondimanche 1 mars 2009StatutMembreDernière intervention31 janvier 2010
-
1 mars 2009 à 21:37
dj_ouf
Messages postés221Date d'inscriptionvendredi 15 avril 2005StatutMembreDernière intervention 6 septembre 2011
-
9 mars 2009 à 14:08
Bonjour,
Voila mon souci : J'ai 5 fichier SWF séparés (dessin.swf, animation.swf, 3d.swf, main.swf et sclupture.swf) qui sont assez lourd (entre 5 et 7Mo chacun). J'aimerai créer un index.swf qui préloaderai mes 5 swf et une fois le chargement terminé la page main.html ce lancerai. (Pour l'instant j'ai des préloader classique à chaque fichiers et c'est carement l'horreur. voyez plutot : [www.gaullierdamien/V2/main.html www.gaullierdamien/V2/main.html])
Et pour finir j'aimerai garder le même style de préloader que j'ai actuelement. Donc serai t'il possible d'inclure le code manquant dans celui-ci :
stop();
myInterval = setInterval(preload,100);
function preload() {
var current = _root.getBytesLoaded();
var total = _root.getBytesTotal();
var pctLoaded = Math.round(current/total*100);
pct_txt.text = pctLoaded;
loaderbar._xscale = pctLoaded;
if (current == total) {
gotoAndPlay("main",1);
clearInterval(myInterval);
}
}
Je n'ai reussi à faire fonctionné aucun des script trouvé sur le net. Vous êtes ma dernière chance .
Nextra
Messages postés14Date d'inscriptiondimanche 1 mars 2009StatutMembreDernière intervention31 janvier 2010 4 mars 2009 à 16:32
En fait mon but est de préchargé l'ensemble de mes SWF dans le cache pour evité un chargement à chaque transition de SWF. En clair va voir sur www.gaullierdamien.fr/V2/main.html (désolé pour le lien de mon 1er post il manquais le .fr)
Pour expliquer un peu mieu le fonctionnement de mon site : lorsque l'on clique sur une des fleche, on lance l'animation et en fin d'animation on passe sur un autre fichier SWF. Donc rechargement et ainsi de suite.
Sinon désolé pour le code... la copier coller a merdé et je n'ai pas pu éditer.
Petite précision, je suis en action script 2.
dj_ouf
Messages postés221Date d'inscriptionvendredi 15 avril 2005StatutMembreDernière intervention 6 septembre 2011 6 mars 2009 à 15:39
Merci pour le lien rectifié...et félicitations pour ton boulot, j'ai apprécié ;)
Tu peux effectivement tout précharger en début de site. Pour cela tu peux faire :
- déclarer un tableau
listeFichiers contenant la liste des fichiers swf à charger.
- faire un gestionnaire de chargement que lancera la function loadNext() à la fin de chaque chargements.
- dans cette fonction loadNext(), l'url du fichier correspondra à listeFichiers.shift(); et lorsque le tableau est vide, ça veut dire que tous les chargements sont finis.
Sinon juste une suggestion, une pratique très courante pour les galleries d'aimges est de charger les images seulement lorsque on veux les voir (au clic donc). Un petit symoble de chargement. pour faire patienter. Donc au final toutes tes images seront contenues en externe dans un dossier, et le fichier les chargera indivuellement. Chacuns de tes swf seront donc considérablement allégés!
Nextra
Messages postés14Date d'inscriptiondimanche 1 mars 2009StatutMembreDernière intervention31 janvier 2010 6 mars 2009 à 21:23
Merci enormément pour ton aide.
Mais je croi que je vais encore t'embêter... Je suis plus que novice en action-script. Je connais simplement "stop ()", "getUrl ()", "GotoAndPlay" et "GotoAndStop"
Cela dit j'ai fait des recherche pour déclarer un tableau. Je pense savoir comment faire mais voila que je bloque déja pour entrer une valeur dans le tableau. (Bouhou j'arrive même pas à faire la 1ere ligne).
Pour ta suggestion j'y avais pensé, mais en fait ce n'est pas les images à présenter qui pèse lourd mais plutot mon animation. C'est en fait une simple serie d'image généré par mon logiciel 3D que j'ai mis bout à bout.
J'en demande peut être un peut trop... mais en tout cas merci enormément pour ton aide. Tu m'a déja bien éclairé sur la façon de procéder !!
Vous n’avez pas trouvé la réponse que vous recherchez ?
dj_ouf
Messages postés221Date d'inscriptionvendredi 15 avril 2005StatutMembreDernière intervention 6 septembre 2011 9 mars 2009 à 14:08
Ok je vois..
Ben en fait ton tableau ressemblera à ça :
var
listeFichiers:Array = new Array("anims.swf","3d.swf","trucmuche.swf");
pour le chemin du prochain chargement :
var file:String =
listeFichiers.shift();
// en fait ça retire le 1er élément du tableau
Au final dans le gestionnaire onLoad du loader du fichier, tu testes si tu le tableau contient encore un élément:
if (listeFichiers) {
var file:String = listeFichiers.shift(); ...... // procédé de chargement
}
else
end();