Le retour du preloader…

By 22 janvier 2011Adobe Flash, Tutoriels

A l’occasion de la réalisation d’un jeu en Flash pour un client, il a fallu que je crée un preloader en l’adaptant à la nouvelle syntaxe AS3…

Dans l’exemple suivant, nous utilisons un simple champ de texte affichant le pourcentage de l’animation chargée (pourcentage_txt) et un clip contenant une image statique (preloader_mc). Ces 2 éléments sont sur le scénario principal.

Comme à mon habitude, je crée d’abord un calques tout en haut, nommé Actions.

Code sur l’image 1 du calque Actions

stop(); // on arrête la tête de lecture

this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, progressListener);
this.loaderInfo.addEventListener(Event.COMPLETE, completeListener);

function progressListener(e:ProgressEvent):void {
  var charge:Number = e.bytesLoaded / e.bytesTotal;
  var pourcentage:int = charge * 100;
  pourcentage_txt.text = "" + pourcentage + "%";
  preloader_mc.barre_mc.scaleX = charge;
}

function completeListener(e:Event):void {
  loaderInfo.removeEventListener(ProgressEvent.PROGRESS, progressListener);
  loaderInfo.removeEventListener(Event.COMPLETE, completeListener);
  removeChild(pourcentage_txt);
  pourcentage = null;
  gotoAndPlay("reglement"); // on avance la tête de lecture
}

Plus simple qu’autrefois non ? 2 fonctions et 2 lignes pour invoquer tout ça !

Bien sûr, pour faire plus élégant encore, il faudrait créer une classe générique Preloader… Nous verrons ça une prochaine fois.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.