Ah ben alors tant mieux !
Je vois le principe du jeu.
Voilà mon conseil pour procéder :
- Déjà tu as tous les clips des différents sons et animaux déposés sur la scène, avec leur nom d'occurence (appelons les "snd_chien, snd_chat" par ex pour les clips de sons, et "chien, chat" ect pour les clips animaux.
- Afin de préparer les clips sons, on va insérer le son jouable directement dedans. A la frame 2, insère donc le son correspondant, et ajoute un stop() à la frame numéro 1 pour que le son ne se joue pas au lancement de l'application.
- Ensuite on va taper tout le code dans une seule frame, afin d'éviter le bordel du code sur chaque clips ! (lorsqu'on appuie sur F9 sur un clip).
- Là, on va utiliser un principe de programmation qui est de ne pas dupliquer x fois le même code. Car basiquement, chaque clip son et animal auront le même comportement.
- Pour les sons cliquables :
créons une fonction clickSound avec en paramètre le nom d'occurence du clip son à traiter. De cette manière, on a une seule fonction qui s'occupera de traiter le clique sur un clip son, qui lui est dynamique.
Cela nous donnera ça :
Code ActionScript :
function clickSound(clip:MovieClip) : Void {
clip.onPress = function() {
clip.play();
}
}
// Là on lie cette fonction à tous nos clips de sons
clickSound(snd_chien);
clickSound(snd_chat);
clickSound(snd_cochon);
// ect...
Comme ça, on a attribué les comportements à nos boutons sons.
- Pour les clips animaux drag and droppables (toujours dans la même frame de code) :
Code ActionScript :
fonction onDrag(clip:MovieClip) : Void {
clip.onPress = function() : Void {
clip.startDrag();
}
clip.onRelease = function() : Void {
clip.stopDrag();
}
}
onDrag(chien);
onDrag(chat);
onDrag(cochon);
// ect...
Là on a donc nos clips drag'n droppables. Maintenant il faut vérifier si ils ont étés déposés sur le bon son !
Avant cela, il nous faut déclarer quel clip est associé à quel son :
Code ActionScript :
chien.son = snd_chien;
chat.son = snd_chat;
// ect...
On utilisera la propriété "hitTest" d'un movieclip, pour détecter si 2 clips se touchent.
On peux maintenant tester :
(à l'intérieur de la fonction d'au dessus)
Code ActionScript :
clip.onRelease = function() : Void {
clip.stopDrag();
if (clip.hitTest(clip.son)) {
trace("c'est le bon animal!");
}
}
Voilà, j'espère que ça va t'aider. Je n'ai pas testé, donne moi tes retours quand tu auras commencé, il se peux qu'un truc cloche