[Flash]Virer des clips chargés

alors voila mon probleme
dans la frame 2 de mon animation je charge pas mal de clips.
Le seul probleme c’est quand je passe a la frame 3 ils sont encore là =_=.
Si quelqu’un peut m’aider a m’en debarasser pour la frame 3 je lui en serai reconnaissant
j’ai essayé delete, unloadmovie et removemovie mais pas de la bonne maniere visiblement.
Source ci jointe ci besoin et j’ai mis la ou était le probleme en commentaire.

[code]// le _global sert a rendre la variable maCarte visible partout y compris dans les fonctions
_global.maCarte =[[6,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7],
[2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
[2,0,1,14,14,14,1,0,1,14,14,14,14,14,14,1,0,1,0,1,0,1,14,14,14,14,14,14,14,1,
,1],
[2,0,12,0,0,0,12,0,12,0,0,0,0,0,0,0,0,1,1,1,0,12,0,0,0,0,0,0,1,0,0,1],
[2,0,12,0,12,0,12,0,0,0,1,14,14,14,1,0,0,0,0,12,0,12,0,1,14,14,14,14,1,0,1,1],
[2,0,12,0,12,0,1,14,14,14,1,0,0,0,1,14,14,1,0,12,0,12,0,12,0,0,0,0,12,0,0,1],
[2,0,1,0,12,0,0,0,0,0,0,0,1,0,0,0,0,1,0,12,0,12,0,12,0,1,1,0,12,1,0,1],
[2,0,0,0,12,0,1,14,14,14,14,14,14,1,0,1,14,14,14,1,0,12,0,12,0,0,12,0,12,1,0,
],
[2,1,14,14,1,0,12,0,0,0,0,12,0,0,0,12,0,0,0,0,0,12,0,1,14,14,14,0,12,0,0,1],
[2,0,0,0,1,0,12,0,1,1,0,1,0,1,0,12,0,1,14,14,14,1,0,0,0,0,0,0,12,1,0,1],
[2,0,1,0,0,0,12,0,1,0,0,0,0,12,0,12,0,0,0,0,0,0,0,1,14,14,1,0,12,0,0,1],
[2,0,1,14,14,14,1,0,1,14,14,14,14,1,0,12,0,12,0,0,1,14,14,1,0,12,0,0,12,0,1,1],
[2,0,12,0,0,0,0,0,0,0,0,0,0,0,0,12,0,12,0,0,12,0,0,0,0,12,0,1,12,0,0,1],
[2,0,12,0,1,14,14,14,14,14,1,0,1,14,14,1,0,1,14,14,1,0,1,1,0,12,0,0,12,1,0,1],
[2,0,12,0,1,0,0,0,0,0,0,0,0,0,1,12,0,12,0,0,0,0,12,0,0,1,1,0,12,0,0,1],
[2,0,12,0,1,14,14,14,14,14,14,14,1,0,1,12,0,12,0,1,14,14,1,0,1,14,14,14,1,0,1
1],
[2,0,12,0,0,0,0,0,0,0,0,12,0,0,0,12,0,12,0,1,0,0,0,0,0,0,0,0,0,0,0,1],
[2,0,1,14,14,14,14,14,14,1,0,12,0,1,1,12,0,12,0,1,14,14,14,14,14,14,14,14,14,
,0,1],
[2,0,0,0,0,0,0,0,0,12,0,12,0,1,0,12,0,12,0,0,0,0,0,0,0,0,0,1,0,0,0,1],
[2,1,14,14,14,14,14,1,0,12,0,12,0,1,0,12,0,12,1,14,14,14,14,14,14,1,0,12,1,0,
,1],
[2,0,0,0,0,0,0,12,0,12,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,12,0,0,0,1],
[2,1,0,1,14,1,0,12,0,12,0,1,14,14,14,14,14,14,14,1,0,1,0,1,0,0,0,12,1,1,0,1],
[2,12,0,12,0,0,0,12,0,12,0,12,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,12,1,0,0,1],
[2,12,0,1,14,14,1,12,0,12,0,12,0,1,14,14,14,14,14,14,14,1,0,1,14,1,0,12,0,0,1
1],
[2,12,0,0,0,0,0,0,0,12,0,12,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,12,0,1,12,1],
[2,1,14,14,14,14,14,1,0,12,0,12,0,1,1,12,0,1,0,1,14,14,14,14,14,14,14,1,0,1,1
,1],
[2,1,0,0,0,0,0,1,0,12,0,12,0,12,0,0,0,12,0,12,0,1,0,0,0,1,1,0,0,0,12,1],
[2,1,0,1,1,0,1,14,14,1,0,12,0,12,0,1,1,12,0,12,0,1,0,1,0,0,1,0,1,0,1,1],
[2,0,0,0,12,0,0,0,0,0,0,12,0,12,0,0,0,12,0,12,0,0,0,1,1,0,0,0,1,0,0,1],
[2,0,1,14,14,14,14,14,14,14,14,1,0,1,14,1,0,12,0,1,14,14,14,14,14,14,14,14,14
14,1,1],
[2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,18],
[8,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1]];

tuileL = 15;
tuileH = 15;
_global.fin = 0;
var profondeur = 0
function constructionCarte (carte) {
var largeurCarte = carte[0].length;
var hauteurCarte = carte.length;
for (var i = 0,d=0; i<hauteurCarte; i++) {
for (var j = 0; j<largeurCarte;j++) {

		 if (carte[i][j]+1 == 2){
			 
		 attachMovie("palmier", "t_"+i+"_"+j,d++);
		 this["t_"+i+"_"+j]._x = (j*tuileH);
		 this["t_"+i+"_"+j]._y = (i*tuileL);
		 }
		 else
		 {
		 attachMovie("tuile", "t_"+i+"_"+j,d++);
		 this["t_"+i+"_"+j]._x = (j*tuileH);
		 this["t_"+i+"_"+j]._y = (i*tuileL);
		 this["t_"+i+"_"+j].gotoAndStop(carte[i][j]+1);
		 }

		 
	 }
	 }
 profondeur = d;

}

constructionCarte(maCarte);
vitesse = 15;
positiondepartperso = [3015,3015];
_global.perso = new Object();
perso = attachMovie(“perso”,persocarte,profondeur++);
perso._x = positiondepartperso[0];
perso._y = positiondepartperso[1];

perso.gotoAndStop(1);
function conversion_position_case(posx,posy)
{
posx = Math.floor(posx / tuileL);
posy = Math.floor(posy / tuileH);
dalle = [posx,posy];
return dalle;

}
function verification(positionx,deplacementx,positiony,deplacementy)
{
mouvement = [positionx,positiony];

 dalle = conversion_position_case(deplacementx,deplacementy);

 // le tableau ma carte se lit d'abord y puis x !!!
 if (maCarte[dalle[1]][dalle[0]] == 0 or maCarte[dalle[1]][dalle[0]] == 18 )
 {
	 mouvement = [deplacementx,deplacementy];
	 if (maCarte[dalle[1]][dalle[0]] == 18)
	 {
		 fin = 1;
		 
	 }
 }
 return mouvement;

}
var monEcouteur:Object = new Object();
monEcouteur.onKeyDown = function() {

  if(Key.isDown(Key.DOWN)){
	mouvement = verification(perso._x,perso._x,perso._y,(perso._y+vitesse));
   perso._y = mouvement[1];
  }
  else if (Key.isDown(Key.UP))
  {
	  mouvement = verification(perso._x,perso._x,perso._y,perso._y-vitesse)
	  perso._y = mouvement[1];
  }
  else if (Key.isDown(Key.LEFT))
  {
	  mouvement = verification(perso._x,perso._x-vitesse,perso._y,perso._y)
	  perso._x = mouvement[0];
  }
  else if (Key.isDown(Key.RIGHT))
  {
	  mouvement = verification(perso._x,perso._x+vitesse,perso._y,perso._y)
	  perso._x = mouvement[0];
  }
  

 if (fin == 1)
 {
	 for (var i = 0,d=0; i<hauteurCarte; i++) {
	 for (var j = 0; j<largeurCarte;j++) {
		 // ici je tente de noettoyer pour ma future frame.
		 delete(this["t_"+i+"_"+j]);
		 removeMovieClip(this["t_"+i+"_"+j]);
		 unloadMovie(this["t_"+i+"_"+j]);
		 delete("t_"+i+"_"+j);
		 removeMovieClip("t_"+i+"_"+j);
		 unloadMovie("t_"+i+"_"+j);
		 this["t_"+i+"_"+j].removeMovieClip();
		 this["t_"+i+"_"+j].unloadMovie();
		 
	 }
	 }

	 trace(fin);
	 gotoAndStop(3);

}

};

Key.addListener(monEcouteur);
stop();[/code]
Il est trois heure du mat et il me manque plus que ca pour finir mon projet.
Tout aide sera grandement appréciée.

Merci
Bussiere

D’après cette page, il faut utiliser removeMovieClip(), j’y connais rien mais voilà, des fois que ça soit aussi bête que ça …

/me compatit avec les fins de projets à 3h du mat qui marchent pas

[quote=« fser, post:2, topic: 45769 »]D’après cette page, il faut utiliser removeMovieClip(), j’y connais rien mais voilà, des fois que ça soit aussi bête que ça …

/me compatit avec les fins de projets à 3h du mat qui marchent pas[/quote]
j’en ai deja mis trois tonnes des remove movie clip.
:confused:

merci quand meme.
Bussiere
Edit : en plus ce n’est meme pas pour moi :confused:

Et euh, t’a essayé de mettre une keyframe vide à la frame 3 ? Tu cherche à les unload pkoi au fait, juste pour plus qu’ils apparaissent ?

[quote=« Bussiere, post:3, topic: 45769 »]j’en ai deja mis trois tonnes des remove movie clip.
:confused:

merci quand meme.
Bussiere
Edit : en plus ce n’est meme pas pour moi :/[/quote]

Merde désolé, j’ai juste regardé la description du message et pas le code lui même :blush:

Ouais bien sur pour la keyframe vide j’en ai meme supprimé et et remis.

Le truc c’est que c’est un labyrinthe et l’ecran 3 est un ecran de felicitation.
Et le labyrinthe squatte toujours a la frame =_=.

Merci de tes precisions mais j’ai déja essay B)

Regards
Bussiere

no prob B)

Regards
Bussiere

[quote=“Bussiere, post:6, topic: 45769”]Ouais bien sur pour la keyframe vide j’en ai meme supprimé et et remis.

Le truc c’est que c’est un labyrinthe et l’ecran 3 est un ecran de felicitation.
Et le labyrinthe squatte toujours a la frame =_=.
Merci de tes precisions mais j’ai déja essay B)

Regards
Bussiere[/quote]

Oh bouge pas hein, j’ai plein d’autres suggestions B)

Si tu met l’écran de félicitations sur la frame 2, le lab sur la 3 ? Un petit gotoAndStop(3) depuis la frame 1 qui, j’imagine, est ton écran de bienvenue, et un gotoAndStop(2) dans la 3 une fois que c’est gagné.
Sinon, tu peux aussi tout mettre dans un MC vide, mettre tout ton labyrinthe dedans, et une fois que le joueur a gagné tu charge un swf vide dedans, qui va tout remplacer.
J’ai pas flash installé sur cette machine, mais c’est marrant qu’un truc comme ca semble aussi difficile à gérer. Si ca marche tjs pas lundi, j’essayerais de prendre 10 minutes au taf pour tester.

[quote=“bishop, post:8, topic: 45769”]Oh bouge pas hein, j’ai plein d’autres suggestions B)

Si tu met l’écran de félicitations sur la frame 2, le lab sur la 3 ? Un petit gotoAndStop(3) depuis la frame 1 qui, j’imagine, est ton écran de bienvenue, et un gotoAndStop(2) dans la 3 une fois que c’est gagné.
Sinon, tu peux aussi tout mettre dans un MC vide, mettre tout ton labyrinthe dedans, et une fois que le joueur a gagné tu charge un swf vide dedans, qui va tout remplacer.
J’ai pas flash installé sur cette machine, mais c’est marrant qu’un truc comme ca semble aussi difficile à gérer. Si ca marche tjs pas lundi, j’essayerais de prendre 10 minutes au taf pour tester.[/quote]

On vient de me filer un code de solution en fait le tout etait de tout mettre dans un contenant et de virer le contenant apres.
Le type m’a refait le code que c’est du bonheur a le lire :

[code]var maCarte:Array = new Array([6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 7], [2, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [2, 0, 1, 14, 14, 14, 1, 0, 1, 14, 14, 14, 14, 14, 14, 1, 0, 1, 0, 1, 0, 1, 14, 14, 14, 14, 14, 14, 14, 1, 0, 1], [2, 0, 12, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 12, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1], [2, 0, 12, 0, 12, 0, 12, 0, 0, 0, 1, 14, 14, 14, 1, 0, 0, 0, 0, 12, 0, 12, 0, 1, 14, 14, 14, 14, 1, 0, 1, 1], [2, 0, 12, 0, 12, 0, 1, 14, 14, 14, 1, 0, 0, 0, 1, 14, 14, 1, 0, 12, 0, 12, 0, 12, 0, 0, 0, 0, 12, 0, 0, 1], [2, 0, 1, 0, 12, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 12, 0, 12, 0, 12, 0, 1, 1, 0, 12, 1, 0, 1], [2, 0, 0, 0, 12, 0, 1, 14, 14, 14, 14, 14, 14, 1, 0, 1, 14, 14, 14, 1, 0, 12, 0, 12, 0, 0, 12, 0, 12, 1, 0, 1], [2, 1, 14, 14, 1, 0, 12, 0, 0, 0, 0, 12, 0, 0, 0, 12, 0, 0, 0, 0, 0, 12, 0, 1, 14, 14, 14, 0, 12, 0, 0, 1], [2, 0, 0, 0, 1, 0, 12, 0, 1, 1, 0, 1, 0, 1, 0, 12, 0, 1, 14, 14, 14, 1, 0, 0, 0, 0, 0, 0, 12, 1, 0, 1], [2, 0, 1, 0, 0, 0, 12, 0, 1, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 1, 14, 14, 1, 0, 12, 0, 0, 1], [2, 0, 1, 14, 14, 14, 1, 0, 1, 14, 14, 14, 14, 1, 0, 12, 0, 12, 0, 0, 1, 14, 14, 1, 0, 12, 0, 0, 12, 0, 1, 1], [2, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 12, 0, 0, 0, 0, 12, 0, 1, 12, 0, 0, 1], [2, 0, 12, 0, 1, 14, 14, 14, 14, 14, 1, 0, 1, 14, 14, 1, 0, 1, 14, 14, 1, 0, 1, 1, 0, 12, 0, 0, 12, 1, 0, 1], [2, 0, 12, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 12, 0, 12, 0, 0, 0, 0, 12, 0, 0, 1, 1, 0, 12, 0, 0, 1], [2, 0, 12, 0, 1, 14, 14, 14, 14, 14, 14, 14, 1, 0, 1, 12, 0, 12, 0, 1, 14, 14, 1, 0, 1, 14, 14, 14, 1, 0, 1, 1], [2, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 12, 0, 12, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [2, 0, 1, 14, 14, 14, 14, 14, 14, 1, 0, 12, 0, 1, 1, 12, 0, 12, 0, 1, 14, 14, 14, 14, 14, 14, 14, 14, 14, 1, 0, 1], [2, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 1, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1], [2, 1, 14, 14, 14, 14, 14, 1, 0, 12, 0, 12, 0, 1, 0, 12, 0, 12, 1, 14, 14, 14, 14, 14, 14, 1, 0, 12, 1, 0, 1, 1], [2, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 12, 0, 0, 0, 1], [2, 1, 0, 1, 14, 1, 0, 12, 0, 12, 0, 1, 14, 14, 14, 14, 14, 14, 14, 1, 0, 1, 0, 1, 0, 0, 0, 12, 1, 1, 0, 1], [2, 12, 0, 12, 0, 0, 0, 12, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 12, 1, 0, 0, 1], [2, 12, 0, 1, 14, 14, 1, 12, 0, 12, 0, 12, 0, 1, 14, 14, 14, 14, 14, 14, 14, 1, 0, 1, 14, 1, 0, 12, 0, 0, 1, 1], [2, 12, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 1, 12, 1], [2, 1, 14, 14, 14, 14, 14, 1, 0, 12, 0, 12, 0, 1, 1, 12, 0, 1, 0, 1, 14, 14, 14, 14, 14, 14, 14, 1, 0, 1, 12, 1], [2, 1, 0, 0, 0, 0, 0, 1, 0, 12, 0, 12, 0, 12, 0, 0, 0, 12, 0, 12, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 12, 1], [2, 1, 0, 1, 1, 0, 1, 14, 14, 1, 0, 12, 0, 12, 0, 1, 1, 12, 0, 12, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1], [2, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 12, 0, 12, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1], [2, 0, 1, 14, 14, 14, 14, 14, 14, 14, 14, 1, 0, 1, 14, 1, 0, 12, 0, 1, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 1, 1], [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18], [8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1]);

var tuileL:Number = 15;
var tuileH:Number = 15;
var fin:Number = 0;
var profondeur:Number = 0;
//
var conteneur_mc:MovieClip = this.createEmptyMovieClip(“conteneur_mc”, 1);
//
function constructionCarte(carte) {
var largeurCarte = carte[0].length;
var hauteurCarte = carte.length;
for (var i = 0, d = 0; i<hauteurCarte; i++) {
for (var j = 0; j<largeurCarte; j++) {
if (carte[i][j]+1 == 2) {
this.conteneur_mc.attachMovie(“palmier”,“t_”+i+""+j,d++);
this.conteneur_mc["t
"+i+""+j].x = (j*tuileH);
this.conteneur_mc["t
"+i+"
"+j].y = (i*tuileL);
} else {
this.conteneur_mc.attachMovie(“tuile”,"t
"+i+""+j,d++);
this.conteneur_mc["t
"+i+""+j].x = (j*tuileH);
this.conteneur_mc["t
"+i+"
"+j].y = (i*tuileL);
this.conteneur_mc["t
"+i+"_"+j].gotoAndStop(carte[i][j]+1);
}
}
}
profondeur = d;
}

constructionCarte(maCarte);
var vitesse:Number = 15;
var positiondepartperso:Array = new Array(3015, 3015);
var perso_mc:MovieClip = this.attachMovie(“perso”, persocarte, 2);
perso_mc._x = positiondepartperso[0];
perso_mc._y = positiondepartperso[1];
perso_mc.gotoAndStop(1);
function conversion_position_case(posx, posy):Array {
posx = Math.floor(posx/tuileL);
posy = Math.floor(posy/tuileH);
var dalle:Array = [posx, posy];
return dalle;
}
function verification(positionx, deplacementx, positiony, deplacementy) {
mouvement = [positionx, positiony];

dalle = conversion_position_case(deplacementx, deplacementy);

// le tableau ma carte se lit d'abord y puis x !!!
if (maCarte[dalle[1]][dalle[0]] == 0 or maCarte[dalle[1]][dalle[0]] == 18) {
	mouvement = [deplacementx, deplacementy];
	if (maCarte[dalle[1]][dalle[0]] == 18) {
		fin = 1;

	}
}
return mouvement;

}
var monEcouteur:Object = new Object();
monEcouteur.onKeyDown = function() {

if (Key.isDown(Key.DOWN)) {
	mouvement = verification(perso_mc._x, perso_mc._x, perso_mc._y, (perso_mc._y+vitesse));
	perso_mc._y = mouvement[1];
} else if (Key.isDown(Key.UP)) {
	mouvement = verification(perso_mc._x, perso_mc._x, perso_mc._y, perso_mc._y-vitesse);
	perso_mc._y = mouvement[1];
} else if (Key.isDown(Key.LEFT)) {
	mouvement = verification(perso_mc._x, perso_mc._x-vitesse, perso_mc._y, perso_mc._y);
	perso_mc._x = mouvement[0];
} else if (Key.isDown(Key.RIGHT)) {
	mouvement = verification(perso_mc._x, perso_mc._x+vitesse, perso_mc._y, perso_mc._y);
	perso_mc._x = mouvement[0];
}

if (fin == 1) {
	conteneur_mc.removeMovieClip();
	perso_mc.removeMovieClip();
	trace(fin);
	gotoAndStop(3);

}

};

Key.addListener(monEcouteur);
stop();[/code]

c’etait sur ce forum :
http://flash.mediabox.fr/
regards
Bussiere