
Il contient, sur sa première image, une instance du bouton btnElement.
Ces instances sont nommées element1, element2...
Chaque instance contient une action ![]()
A chaque instance sont associées les variables suivantes :
- clipClibe : qui indique le clip associé à l'instance,
- test : variable boléenne égale à "true" si l'instance est sur la bonne cible,
- texte : qui est le texte qui s'affiche sur l'instance.
Le clip n'a rien de particulier.
Les différentes instances de ce clip sont nommées cilbe1, cible2...
Cette instance est placée sur la première image du clip clipElement.
Cette instance (ainsi que l'action qui lui est associée) va se retrouver dans chaque instance du clip clipElement.
L'instance de ce bouton contient une action ![]()
L'instance de ce bouton permet de lancer la validation des réponse de l'utilisateur. Elle contient une action
.
Cette zone de texte dynamique à une variable appelé texte.
Elle permettra d'afficher les résultats de la validation.
Le code de cette animation est conçu pour être facilement réutilisé dans d'autres animations similaires.
Ainsi, il est facile de modifier le nombre de paires (maximum 9) que l'on souhaite avoir. Pour cela, il suffit d'ajouter ou de supprimer des instances des clips clipElement et clipCible et de modifier la valeur de la variable nbPaires en conséquence sur l'action de la première image de l'animation.
nbPaires=3;
on(press) {
startDrag(this,false,0,0,400,200);
//Indication que l'element n'est plus sur sa cible
this.test=false;
}
on(release, releaseOutside) {
stopDrag();
//Pour toutes les cibles...
for(i=1;i<=_root.nbPaires;i++) {
//Si l'element touche la cible i alors...
if (this.hitTest(_root["cible"+i])) {
//Placement du clip au centre de la cible i
this._x=_root["cible"+i]._x;
this._y=_root["cible"+i]._y;
//Si le numéro de l'element est i alors...
if (this._name.substr(-1,1)==i) {
//Indication que l'élément i est sur sa cible
_root["element"+i].test=true;
}
}
}
}
onClipEvent(load) {
clipCible=_root.clipC1;
test=false;
texte="Becher";
}
on (release) {
testOk=true;
for(i=1;i<=_root.nbPaires;i++) {
testOk=testOk&&_root["element"+i].test;
}
if (testOk) {
_root.texte="BRAVO, toutes vos réponses sont correctes !";
} else {
_root.texte="Certaines réponses sont incorrectes...";
}
}