lancer 2 aminations successivement - Flash/ActionScript - Programmation
Marsh Posté le 15-08-2006 à 14:12:17
Bonjour,
le plus simple à mon avis serait que tu profites des possibilités offertes par l'AS2 et la disposition d'écouteur.
Regarde ce lien, je le trouve très bien pour comprendre les Tween (interpolations) grace à une classe toute prete de Robert Penner.
http://www.especedepetitefille.com [...] n-de-flash
Sinon, pourquoi ne pas passer par une fonction setInterval (regarde dans la documentation flash).
Je te laisse un peu chercher car c'est comme ça qu'on apprend ![]()
Marsh Posté le 15-08-2006 à 15:07:22
Bonjour CUT HERE !
Merci beaucoup pour ta réponse et ton lien !
Je débute dans Action Script, mais je connais quelques bases
Je vais suivre tes conseils
Encore merci
Angélique
Marsh Posté le 17-08-2006 à 21:44:01
avant tout, corrige ton code :
- on(...) est déprécié depuis Flash MX (6),
- setProperty() depuis Flash 5,
- on ne met jamais de code directement sur un clip, toujours sur la timeline,
- on ne boucle jamais sur un enterFrame - si le framerate du player ralentit (s'il y a beaucoup de clips, si le poste client date un peu, etc.), ton enterFrame ralentira, et l'anim va décélérer, et par conséquent se désynchroniser.
regarde avant tout ton manuel à MovieClip.onEnterFrame, MovieClip.onLoad, etc...va faire un tour sur yazo.net aussi, assimiler les bases.
Ensuite utilise au choix la classe Tween de Macromedia (doc sur macromedia.com), les laco tweens ou Animation Package. A moins que tu aies envie de coder tes propres classes d'anim time-based avec frame-dropping (mais pas tout de suite alors, hoooula).
si tu veux impérativement conserver ton 'code' actuel, rajoute simplement un if() { } sur une des propriétés qui varie afin de l'utiliser comme déclencheur :
if (this._alpha > 100) {
this._parent.anim2.onEnterFrame = <ref_vers_fonction_d-anim>;
}
Marsh Posté le 19-08-2006 à 13:20:26
Bonjour craps_youpla !
Merci beaucoup pour tes conseils !
Je vais essayer
Angélique
Marsh Posté le 15-08-2006 à 13:09:09
Bonjour à tous !
Et bien voilà, j'ai un petit problème au niveau des clips que j'essaie de résoudre depuis un petit bout de temps.
Comment faire pour lancer 2 animations successivement ?
Pour être plus précise :
J'ai créer une interpolation de forme avec Action Script. Donc, sur mon clip, j'ai mis le code suivant :
(Il s'agit un cercle qui s'agrandit en disparaissant progressivement)
onClipEvent (load) {
setProperty ("_root.essai1", _height, "40" );
setProperty ("_root.essai1", _width, "40" );
setProperty ("_root.essai1", _alpha, "100" );
}
onClipEvent (enterFrame) {
_root.essai1._height0 = 5;
_root.essai1._width0 = 5;
_root.essai1._alpha0 = 5;
if (this._height<=200) {
this._height += this._height0;
if (this._width<=200) {
this._width += this._width0;
if (this._alpha>=0) {
this._alpha -= this._alpha0;
}
}
}
}
Il y en a 2. Le nom d'occurence du 2e clip est "essai2".
Donc, quand je teste l'animation, les 2 clips commencent en même temps.
Mais comment dois-je procéder si je veux que le 2e clip commence 2 secondes après le 1er ?
Merci beaucoup d'avance !
Angélique