Bonjour,
Est-il possible d 'ajouter une frame dans un MovieClip avec une fonction AS3 ?
L'idée est de construire un MovieClip, frame par frame, puis ajouter les attributs dans chaque frame.
Merci de votre aide.
Destrumel
Bonjour,
Est-il possible d 'ajouter une frame dans un MovieClip avec une fonction AS3 ?
L'idée est de construire un MovieClip, frame par frame, puis ajouter les attributs dans chaque frame.
Merci de votre aide.
Destrumel
bonjour.
Je ne comprend pas bien ta question.
A quoi cela te servirai de rajouter des frames dans un movieClip ?
Les movieClip possedent déja un nombre infini ( peut etre pas mais tres important ) de frames, je ne comprend donc pas pourquoi tu veut en rajouter.
Peut etre que ca pourai te donner des idées .... ;-)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 var mc:MovieClip=_root mc.beginFill(0x0000FF); mc.lineStyle(1,0x000000); mc.lineTo(100,0); mc.lineTo(100,50); mc.lineTo(0,50); mc.lineTo(0,0); mc.endFill(); mc._x = Stage.width / 2; mc._y = Stage.height / 2; mc.onEnterFrame = function() { this._rotation += 25; }
Salut,
A ma connaissance on peut pas ajouter de frame a un movieclip . quelqu’un d’autre confirmera ou infirmera je pense…
CR Gio te met sur la voie -> utilise entreFrame pour « simuler la timeline »...
dans AS3 le model d’event a changer …
Pour arrêter la boucle
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 var mc:MovieClip = new MovieClip(); addChild(mc); mc.addEventListener(Event.ENTER_FRAME, maFonction); function maFunction () { //action a executer au rythme de lanim }
reste a gerer le nombre iterations
Code : Sélectionner tout - Visualiser dans une fenêtre à part mc.removeEventListener(Event.ENTER_FRAME, _ maFunction);
Salut,
Jusqu'a flash 8, on peut aller à environ 16000 frames il me semble Ceci dit, utiliser dynamiquement un clip en faisant un new MovieClip() en AS3 me parait totalement inutile puisque justement un MovieClip est fait pour être lié à la timeline (donc ca pourra se faire via Flash 9). La classe Sprite me semble plus appropriée à tes besoins ^^Envoyé par pyrrha
@++
Bonsoir,
Merci de vos réponses.
Effectivement, "onEnterFrame" pourrait convenir. Mais puisque je n'ai que des constantes (introduites par l'utilisateur), J'aurais voulu construire une timeLine, et, ensuite, c'est Flash qui s'en occupe tout seul
Ceci éclaire ma question. C'est précisément dans la timeline que je voudrais placer des attributs de position (et transformation) pour construire dynamiquement le mouvement d'un sprite.Envoyé par thecaptain
En fait l'utilisateur introduit un mouvement, sous forme de valeurs 'constantes'. Il faut ensuite que le player Flash réalise le mouvement décrit. Pour cela, construire une TimeLine est la solution la plus simple.
(J'ai des problèmes de synchronisation d'objets qui sont automatiquement résolus dans la TimeLine)
Effectivement, la classe sprite me semblait la plus disposée à me fournir les éléments nécessaires (J'ai aussi regardé MovieClip, au cas où). Mais je n'ai pas trouvé de trace de la timeline, ni de la façon de l'alimenter ( placer des attributs pour des frames précises).(donc ca pourra se faire via Flash 9). La classe Sprite me semble plus appropriée à tes besoins ^^
Phildes
Salut,
ce qui est normal puisque Flash 9 n'est pas encore sorti (enfin il y a l'alpha pour Flash 8) Donc, dans l'état actuel des choses, en utilisant seulement AS3, la classe MovieClip est totalement inutile puisque la classe Sprite fournit tous les éléments dont tu as besoin ^^ Maintenant il faut peut-etre te réorienté pour la récupération des coordonées (genre un fichier texte ou xml) et le parser ensuite dans FlashEnvoyé par Destrumel
@++
bonjour,
Je n'ai pas trouvé comment accéder à un attribut (exemple les coordonnées de la pièce), si cette attribut n'est pas placé dans la frame courante.Envoyé par thecaptain
Je pense avoir bien regardé pourtant
Comment lire un attribut qui est placé dans une frame précise, dans un layer précis ?
Phildes
C'est ce que je fais actuellement. je souhaitais pouvoir utiliser des fonctions de construction de AS3Envoyé par thecaptain
J'essayais de faire une construction de séquences Flash totalement en AS3 (uniquement avec des fonctions de construction AS3, sans parsing)
Merci de vos réponses .
Destrumel
J'ai formaliser ma requette avec un exemple.
Dans l'éditeur :
1 - J'ai créé un MovieClip.
2 - je mets une FrameKey au temps 10, pour y mémoriser une position.
3 - Au temps 9 je place un bouton, avec une action.
4 - Dans cette action je souhaite connaitre la position inscrite pour le Movie-Clip au temps 10.
Comment faire ?
Destrumel
je ne comprends plus rien.Envoyé par thecaptain
D'après tes réponses j'avais compris qu'on je ne pouvais pas placer de valeur dans un temps précis uniquement par programme en AS3 - encore moins créer un "keyFrame".
Je pensais qu'il était impossible de construire cela uniquement en AS3.
-----------------------
Alors, oui si c'est possible. Je voudrais savoir comment on fait cela par programme en AS3.
> Ton action est sur le bouton ? Oui
> Ta fonction est applée quand (click, ...) ? click oui...
> Sois plus précis stp
Désolé. je pensais sincèrement avoir été assez précis.
Destrumel
re,
bon je résume : tu veux pouvoir affecter une position à un bouton à une frame spécifique d'un MovieClip en AS3 c'est bien ça ? Alors je serais tenté de dire : oui tu peux le faire uniquement en code (bien que ce ne soit pas vraiment très utile), en écoutant l'événement enterframe de MovieClip et en testant la frame sur laquelle tu es. Seule objections : tu ne peux pas créer la timeline puisque tu es uniquement en code, il te faudra donc utiliser un compteur
@++
Merci
j'ai bien compris que tu n'en voyais pas l'utilité
En tout cas tu confirmes ce que j'avais compris. Ca répond très précisément à ma question.
Pour moi ce sujet est [résolu]
Merci theCaptain
Destrumel
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager