Tutoriels vidéo art graphique gratuits

 
Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Pages: [1]   En bas

Auteur Sujet: Niveau this  (Lu 5253 fois)

fr32c

  • Wisi Addict
  • ***
  • Hors ligne Hors ligne
  • Messages: 125
    • Voir le profil
Niveau this
« le: juin 27, 2007, 06:14:59 am »

Alors, je poursuis sur la même anim, mais je crée un nouveau sujet, au cas où le problème spécifique pourrait aider quelqu'un par la suite.

Pour animer mes flèches, j'ai besoin de les atteindre, pour les atteindre, faut les nommer. Et c'est là que ça coince.

Mon this est le _level0
le but à atteindre est _level0.F_0.TF1 (puis _level0.F_0.TF2...)
sauf que var temp = String(this)+".F_0.TF"+j; me renvoit un typeof string
donc je le mets dans un this[], mais ça suffit pas, puisqu'il ne me renvoit plus que le _level0...

Et je suis sûr qu'en fait c'est trop facile...

function AnimesF_0F(){
   for (j=1; j<5; j++) {
      var temp = this[String(this)+".F_0.TF"+j];
      trace (j);                              // 1
      trace(this);                              //  _level0
      trace(String(this)+".F_0.TF"+j);    //_level0.F_0.TF1
      trace(temp);                           //_level0
      My0AlphTween (temp, 6);
   };
};
IP archivée

T_bo

  • Wisi J'habite sur le forum
  • ****
  • Hors ligne Hors ligne
  • Messages: 349
    • Voir le profil
Niveau this
« Réponse #1 le: juin 27, 2007, 07:21:58 am »

Je suis pas sur d'avoir compris ton pb mais ceci donne le résusltats que tu veux
for (j=1; j<5; j++) {
        var temp = "_level0"+".F_0.TF"+[j];
   trace (temp)
   My0AlphTween (temp, 6);
};

edit évite les appel a _root ou _level0 c'est une source de bug si par ex  tu insère ton anim dans une autre anim par la suite me root remontera à l'anim contenur. Il faut plutôt utilisé des syntaxe type this._parent... si tu veux remonter par rapport a ton clip. Enfin si tu peux pas et que tu compose des clip tu peux utiliser  lockroot=true; dans tes anim mais ce type de syntaxe est vraiment déconseillé.
IP archivée

fr32c

  • Wisi Addict
  • ***
  • Hors ligne Hors ligne
  • Messages: 125
    • Voir le profil
Niveau this
« Réponse #2 le: juin 27, 2007, 07:47:44 am »

Merci, mais du coup, je crois que je retombe sur un string...

j'ai été dépanné sur mediabox entretemps :

function AnimesF_0F(Void):Void{
    for (var j:Number=1; j<5; j++) {
        var temp:MovieClip = this["F_0.TF"+j];
        trace(temp);
        My0AlphTween (temp, 6);
    };
};

mais j'ai aussi décidé de passer à autre chose, histoire d'avancer un peu ! Du coup j'ai créé des tween et lancé un play en random, ça marchait pas mal jusqu'à ce que je bouge mes actions "stop" sur le clip F_0 et là il me trace le bon quelle fleche, mais me joue le truc dans l'ordre, sans stopper... grrrr...

function AnimesF_0F(){
   clearTimeout(TimeoutAnimeF);
   var quellefleche:Number = 2+40*Math.floor(Math.random()*4);
   trace(quellefleche);
   F_0.play(quellefleche);   
   TimeoutAnimeF = setTimeout(AnimesF_0F,2000, 1);
};
A voir ici...
IP archivée

kriztho

  • Global Moderator
  • Wisi Comment on décroche
  • *****
  • Hors ligne Hors ligne
  • Messages: 1490
    • Voir le profil
    • La veille techno du web
    • E-mail
Niveau this
« Réponse #3 le: juin 27, 2007, 07:48:33 am »

Deux petits conseils "simplistes" : pourquoi ne types tu pas tes variables ? C'est beaucoup plus facile à déboguer par la suite. Car Flash va te dire si le résultat attendu d'une variable est conforme à son type. Et puis comme le dit très justement T_bo ne fais plus appel à _root ou level0 ! C'est une source inepuisable d'emm... quand on fait des loadLovie ou des loadClip. Il faut toujours travailler en chemin relatif.
Bon c'est juste des conseils, et je ne résoud pas ton problème.
IP archivée
______________________________________________________________
Je ne connais pas grand chose, mais je progresse...
[La veille techno du web] - [Histoire d'écrire de l'informatique]

fr32c

  • Wisi Addict
  • ***
  • Hors ligne Hors ligne
  • Messages: 125
    • Voir le profil
Niveau this
« Réponse #4 le: juin 27, 2007, 07:51:16 am »

merci pour les conseils... Et, je me sens très très con, mais j'ai viré les _root de mes scripts après le martelage chez mediabox (genre on te pete un genou si tu laisses un _root), mais je continue de bosser avec _level0, du coup c'est la même chose, c'est ça ? raaaaah :)

Pour le typage, j'essaie d'y penser, mais euh... bon d'accord, j'ai pas de bonne excuse...
IP archivée

fr32c

  • Wisi Addict
  • ***
  • Hors ligne Hors ligne
  • Messages: 125
    • Voir le profil
Niveau this
« Réponse #5 le: juin 27, 2007, 08:17:17 am »

Hop

Y'a qu'a cliquer pour voir.
Alors, c'est pas du def, mais au moins la cliente peut réagir, ça ressemble suffisament à ce qu'on attend pour que ça passe.
Donc :
On revient à la home après quelques secondes, ça, ça marche (setTimeout)
les flèches sont animées (je travaille sur l'obtention d'un passage aléatoire, plus joli, mais j'ai pas encore trouvé)
La bulle apparait au début de l'anim et quand on survole le soleil (mais y'a des bouts qui bugguent quand on ne le survole plus, à réparer je sais pas comment).
Je n'ai pas encore animé les yeux, même problème d'aléatoire que partout ailleurs + C'est long à faire, merci les filets de dégradé d'illustrator qui ne passent nulle part ailleurs et m'obligent à importer le soleil en bitmap

Voilà voilà.

Si vous aviez une idée de où ça coince dans l'apparition de ma bulleSol (celle du soleil là), je sens qu'il y a encore des subtilités qui m'échappent dans la gestion des cleartimeout...

function RndBulleSol(){
   clearTimeout(TimeoutRndBulleSol);
   trace("RndBulleSol");
   My1AlphTween(BulleSol, 0.5);
   setTimeout(My0AlphTween,3000, BulleSol, 2);
   TimeoutRndBulleSol = setTimeout(TimeoutRndBulleSol,2000, 1);
};

function TORndBulleSol(){
   clearTimeout(TimeoutRndBulleSol);
   trace("TimeOutRndBulleSol");
};

this.onLoad = function (){
   Sol.onRollOver = RndBulleSol;
   Sol.onRollOut = TORndBulleSol;
IP archivée
 



Wisibility est un sité dédié à la formation aux métiers l’image. Vous y trouverez différentes ressources vous aidant à maîtriser les logiciels graphiques tels que Photoshop, Lightroom, Illustrator, InDesign, Flash… Aujourd’hui, Wisibility réunie plus d'une vingtaine d’experts, intervenant en Entreprise pour former graphistes, webdesigners, développeurs web, photographes, monteurs, trucistes…
Depuis 2006 nous nous sommes spécialisés dans les tutoriels vidéos permettant de se former à distance. Notre forum très actif, géré par une équipe de bénévoles répondra à vos demandes. Vous pourrez également profiter de nos émissions et reportages sur la Wisi TV.
Contact - Wisibility est une marque déposée

Blog - Tutoriels - Wisi TV - Forum