Dans l'exemple ci-dessus, chaque clic, génère un
"nouvel exemplaire" de l'occurrence demandée. Utilisez
la méthode ci-dessous afin de réaliser cet exemple.
Créer un bouton
transparent sur toute la largeur et la hauteur de la scène
Créer une symbole de type movie clip et placez le en
dehors de la scène
Via la fenêtre "Occurrence", donnez lui un
nom (ex. : impact)
Sélectionner le bouton transparent qui recouvre la
scène et placer le code ci-dessous :
on (press) {
i=i+1;
duplicateMovieClip ( "impact", "impact"+i, i );
eval("impact"+i)._x=_xmouse
eval("impact"+i)._y=_ymouse
}
Pour obtenir plusieurs exemplaires, il faut commencer par incrementer
une variable (le nom choisit "i" n'a pas d'importance).
La commande "duplicateMovieClip" permet effectivement
de dupliquer le movieclip. Il faut préciser quelle occurrence
dupliquer, "impact" dans le cas présent. "Impact"+i
est le nouveau nom donné au nouvel exemplaire. On obtient
ainsi des occurrences intitulée "impact1", "impact2",
etc. Le paramètre "i" de fin de ligne précise
le niveau sur lequel le nouvel exemplaire doit se placer. Ce niveau
est tout simplement virtuel. Il permet notamment de gérer
les plans des occurrences les unes par rapport aux autres.
"eval("impact"+i) permet d'obtenir "impact2",
"impact3", etc. En effet, "impact" placé
entre guillemets permet de dire à Flash de comprendre ce
mot comme une chaîne de caractères et non une variable.
Le "+" va permettre ce concatener le mot "impact"
et la valeur de "i". Eval permet d'évalués
la concaténation afin de renvoyer "impact2", etc.
Vous obtenez "impact2._x" ce qui signifie : La position
horizontale de l'occurrence "impact2" sur la scène.
Elle est donc égale à la position horizontale de la
souris sur la scène.