Aller au contenu

[actionscript 2] diffusion radiale de clips


Yangzebul

Messages recommandés

J'essaye de faire un écran de transition pour un projet Flash, mais je bloque un peu. J'ai réussi à trouver un compromis pour l'instant, mais je préfererai atteindre mon but.

Voila le principe:

écran A => par dessus se met en place une "matrice" de movie clips => pendant se temps l'écran B se charge => la matrice se résorbe

Le problème c'est que j'aimerais que cette matrice se forme de manière "radiale", du centre vers les bords. Hors je n'arrive pas à trouver un moyen de faire ça. Contraint et forcé je me suis rabattu sur une solution temporaire plus linéaire.

ce que j'ai pour l'instant

trans1.jpg

ce que je voudrais faire

trans2.jpg

Voila un extrait du code concerné:

//définition des variables
var x:Number = -25;
var y:Number = -25;
var exp_i:Number = 0;
var makescreen;

//là je charge la matrice qui est pour l'instant "dormante" (movieclips sur stop)
for(var i:Number=0; i<512; ++i) {
var name:String = "loadexp" + i + "_mc"; //génère un nom d'instance
x = (x<775)?(x+=25):0;
y = (x==0)?(y+=25):y; //calcule des coordonnées
this.attachMovie("loadexp_mc", name, i);
this[name]._x = x;
this[name]._y = y; //positionne une instance depuis la bibliothèque vers la scène
}

//fonction qui permet "d'activer la matrice"
function expand () {
for(var i:Number=0; i<3; ++i) {
	var name:String = "loadexp" + exp_i + "_mc";
	_parent.loadscreen_mc[name].gotoAndPlay(2);
	exp_i++;
} //cette boucle déclenche plusieurs movieclip en même temps, afin que le processus de transition ne soit pas trop long
if(exp_i>512) {
	clearInterval(makescreen);
	exp_i = 0;
	_parent.nextFrame();
	_parent.loadscreen_mc.attachMovie("loader_mc", "loader_mc", 512);
	_parent.loadscreen_mc.loader_mc._x = 117;
	_parent.loadscreen_mc.loader_mc._y = 220;
} //une fois la transition finie, réinitialise quelques paramètres et passe à la suite.
}

//bouton qui déclenche la transition
_parent.loadscreen_mc.makescreen = setInterval(_parent.loadscreen_mc.expand, 10)

Merci d'avance pour tout début de piste.

Ps: j'ai posté ça dans création web, mais je me demande si cela n'aurait pas plus sa place dans programmation plutôt... :\

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...