Bonjour a tous !

Je vous contacte suite a un petit probleme sur une animation.

L'animation consiste en un carré contenant 3 boules qui rebondissent en continu a l'intérieur du carré.

La création et l'animation des boules à l'intérieur du carré fonctionne très bien, cependant je bloque sur deux fonctions que j'ai ajouté liés aux événements MOUSE_OVER et MOUSE_OUT sur le carré.

MOUSE_OVER fait apparaitre et circuler les boules.
MOUSE_OUT supprime les boules et arrête l'animation.

Or si ma fonction MOUSE_OVER fonctionne avec l'appel de la fonctionne creerBulle (), ma fonction MOUSE_OUT ne fonctionne pas très bien puisqu'elle ne supprime qu'une seule boules sur les 3 existantes.

Pourriez vous m'aiguiller ou m'aidez a trouver une solution pour supprimer mon animation lorsque j'utilise l'événement MOUSE_OUT.

Merci d'avance pour vos réponses !

je vous joins le code :

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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
 
             var i:uint=0; 
   	var Xmin:Number=0; 
             var Ymin:Number=0; 
 	var Xmax:Number=170; 
             var Ymax:Number=170; 
  	var largeur:uint=120; 
  	var hauteur:uint=90;
	var cible:MovieClip;
	var bulle:MovieClip;
 
	var conteneur:carre = new carre(); 
   	conteneur.x=300; 
  	conteneur.y=300; 
   	addChild(conteneur);
 
function creerBulle (): void {
	do { 
       	bulle = new MovieClip();// Instance de l'objet d'affichage 
        	bulle.graphics.beginFill(0xFFFFFF, 0.2);//Le cercle sera rempli  de   rouge, transparent à 50% 
        	bulle.graphics.drawCircle(0, 0, 30);//dessin du cercle avec la méthode drawCircle(x, y, rayon) 
      		// Positionnement et affichage du cercle dans la séquence 
      		bulle.x=(conteneur.width/2); 
    		bulle.y=(conteneur.height/2); 
     		bulle.viteX = Math.random()*0.5; 
     		bulle.viteY = Math.random()*1; 
      		bulle.addEventListener(Event.ENTER_FRAME,laBulleRebondit); 
      		addChild(bulle); 
      		//trace (bulle.name); 
     		i++; 
      		conteneur.addChild(bulle); 
  			 } 
   			while (i<3);
			}
 
			function laBulleRebondit(e:Event):void{ 
     		cible=e.target as MovieClip; 
			cible.visible=true;
     		cible.viteX=e.target.viteX; 
     		cible.viteY=e.target.viteY; 
     		cible.y+=cible.viteY; 
     		cible.x+=cible.viteX; 
    		if(cible.x>Xmax-cible.width/2) 
      		cible.viteX=-(Math.random()*2); 
      		else if (cible.x<Xmin+cible.width/2) 
     		cible.viteX=(Math.random()*2); 
     		if(cible.y>Ymax-cible.height/2) 
     		cible.viteY=-(Math.random()*2); 
    		else if (cible.y<Ymin+cible.height/2) 
     		cible.viteY=(Math.random()*2); 
      		} 
 
function surOver(evt:MouseEvent):void{
		    creerBulle();
			}
 
function surOut(evt:MouseEvent):void{
	       cible.removeEventListener(Event.ENTER_FRAME,laBulleRebondit);
	       cible.visible=false;	
		   }
 
conteneur.addEventListener(MouseEvent.MOUSE_OVER,surOver);//survol de la souris sur le rectangle
conteneur.addEventListener(MouseEvent.MOUSE_OUT,surOut);//desurvole de la souris sur le rectangle
bulle.fla

bulle.swf