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