begin process at 2008 07 04 14:30:55
1 204 689 membres
220 nouveaux aujourd'hui
14 118 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : clip et _root [ Scripts / ActionScript ] (martialb75)

clip et _root le 06/03/2007 13:55:17

martialb75

Bonjour, J'utilise flash plus comme un designer qu'un codeur.
J'ai téléchargé les sources d'un jeux simple mais fun.
Il fonctionne a merveille mais je voudrais que ce jeux soit dans un movie clip (que je nommerai mc_game) qui se trouvera sur la scène principale.
Or quand je fais ca et que je change les _root en _root.mc_game, ca ne fonctionne pas.
A vrai dire, je suis perdu. Voic le lien du jeux pour vous rendre compte : www.martialb.com/blocks.html
Voici le code : 

// reset variables and place tiles
function resetTiles() {
x=0; y=0;
while(x<10) {
 while(y<10) {
  duplicateMovieClip("tiles","t"+ x + "_" + y, ++d);
  t=this["t"+ x + "_" + y];
  t._x= (x*28);
  t._y= (y*28);
  c=int(random(4))+1;
  t.col=c;
  t.state=true;
  t.gotoAndStop(c);
  t.x=x;
  t.y=y;
     y++;
 }
 y=0;
 x++;
  }
}


// find and remove same color tiles
function findTile(x,y) {
 col =_root["t"+ x + "_" + y].col;
 if ((_root["t"+ (x-1) + "_" + y].col == col) or (_root["t"+ (x+1) + "_" + y].col == col) or (_root["t"+ x + "_" + (y-1)].col == col) or (_root["t"+ x + "_" + (y+1)].col == col)) {
 _root["t"+ x + "_" + y].state=false;
 _root["t"+ x + "_" + y].gotoAndStop(5);
 tiles--;
 sc++;
      if ((_root["t"+ (x-1) + "_" + y].col == col) and (_root["t"+ (x-1) + "_" + y].state==true)) {findTile((x-1),y); }
   if ((_root["t"+ (x+1) + "_" + y].col == col) and (_root["t"+ (x+1) + "_" + y].state==true)) {findTile((x+1),y); }
   if ((_root["t"+ x + "_" + (y-1)].col == col) and (_root["t"+ x + "_" + (y-1)].state==true)) {findTile(x,(y-1)); }
   if ((_root["t"+ x + "_" + (y+1)].col == col) and (_root["t"+ x + "_" + (y+1)].state==true)) {findTile(x,(y+1)); }
   _root["t"+ x + "_" + y].col=0;
  
   }
}
  
// check tile and below it
function checkTile() {
 x=0; y=0;
  while(x<10) {
 while(y<9) {
      if ((_root["t"+ x + "_" + (y+1)].col ==0)  and (_root["t"+ x + "_" + y].col != 0)) {replaceColors(x,y); checkTile();}
      y++;
      }
     y=0;
     x++;
   }
}

// replace tile colors
function replaceColors(px,py) {
   c=_root["t"+ px + "_" + py].col;
 _root["t"+ px + "_" + (py+1)].col = c;
 _root["t"+ px + "_" + (py+1)].state = true;
 _root["t"+ px + "_" + (py+1)].gotoAndStop(c);
 _root["t"+ px + "_" + py].state=false;
 _root["t"+ px + "_" + py].col=0;
 _root["t"+ px + "_" + py].gotoAndStop(5);
}


// add score points, show text clip
function addScore(x,y) {
if (sc>1) {
 textClip.swapDepths(++d);
 textClip._x=x;
 textClip._y=y;
 if (sc<10) {
  score+=sc*100;
        pos=sc*35;
     textClip.gotoAndPlay(pos);
  clickSound.gotoAndPlay(2);}
 else {
    score+=2000;
    textClip.gotoAndPlay(350);
    clickSound.gotoAndPlay(5);}
 }
   if(tiles==0) {wellDone.gotoAndPlay(2);}
}


// start game
playing=1;
d=0; sc=0; score=0; tiles=100;
resetTiles();  
stop();

 Merci pour votre aide.


Re : clip et _root le 06/03/2007 15:36:57

Burnside
Membre Club
Slt,

Regarde du côte de : _lockroot

Bàt,
Burnside.

..:: Enjoy living in hell ::..
flash


Re : clip et _root le 06/03/2007 16:48:39

martialb75
Il me semble que ce n'est pas ca dans la mesure ou _lockroot fonctionne avec un swf externe.
Moi j'ai un code qui marche dans la scene principale mais je veux que mon jeux ne soit plus directement dans la scene mais dans un movie clip (qui lui sera dans la scene).
Je creer donc ce nouveau MC et copie tous mes layer present sur ma scene principale dans ce movie clip. Et la bien sure, le jeu ne marche plus. Les elements s'affichent bien mais pas possible de faire disparaqitre les fruits......

Re : clip et _root le 06/03/2007 18:47:32

Girou
Membre Club

Hum...

je serais toi, j'écouterais le sage conseil de Burnside et je chargerais le jeu dans un clip mc_game avec _lockroot=true

1° Ca allegera le chargement de ta page principale
2° Tu dois pas revoir tout le script

N'oublie pas que le ciblage doit être completement revu pour TOUT : pas que les clips mais aussi les variables, les duplicateMovieClip(), textClip, score,....

@+

signature not found


Re : clip et _root le 06/03/2007 20:44:21

martialb75
merci de ton conseil girou, j'essaye ca des demain.



Classé sous : and, col, state, root, px

Participer à cet échange

Pub



Appels d'offres

Snippets en rapport

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS