Probleme de lecture swf avec AS dans autre swf

Probleme de lecture swf avec AS dans autre swf - Web design - Graphisme

Marsh Posté le 13-07-2009 à 16:56:34    

Bonjour à tous,  
 
J'ai réalisé, à l'aide de ce tuto :  
http://www.computerarts.co.uk/tuto [...] gital_type  
Une animation dessinant mon portrait.  
Tout fonctione bien à ce niveau :)  
 
Maintenant j'essaye de lire le swf obtenue dans mon site en flash.  
J'utilise le code suivant:  
 

Code :
  1. mon_bouton.onRelease = function(){
  2. loadMovie("monswf.swf", portyp);
  3. };


 
Quand je clique sur le bouton en question, rien ne se produit.  
J'ai donc placé un témoin (un petit rectangle vert) dans mon swf et j'ai refais l'essais. La on voit le rectangle vert. c'est donc que mon swf se lit ^^  
mais toujours pas mon anim actionScript :x  
 
merci d'avance pour vos lumières.

Reply

Marsh Posté le 13-07-2009 à 16:56:34   

Reply

Marsh Posté le 13-07-2009 à 17:05:54    

si ca peut vous donner plus de précision, voici ce que j'ai dans mon swf, sur la premiere frame dans le code d'un movie clip
 

Code :
  1. onClipEvent(load)
  2. {
  3.     function everything()
  4.     {
  5.         if (big_counter < xpos_array.length)
  6.         {
  7.             if (ly_count > text.length)
  8.             {
  9.                 ly_count = -1;
  10.             }
  11.             k = 0;
  12.             while (k < 3)
  13.             {
  14.                 ++ly_count;
  15.                 _root.main.attachMovie(text.charAt(ly_count),  "clip_" + _root.counter, _root.counter);
  16.                 _root.main["clip_" + _root.counter]._x = xpos_array[big_counter];
  17.                 _root.main["clip_" + _root.counter]._y = ypos_array[big_counter];
  18.                 _root.main["clip_" + _root.counter]._xscale = xscale_array[big_counter];
  19.                 _root.main["clip_" + _root.counter]._yscale = xscale_array[big_counter];
  20.                 _root.main["clip_" + _root.counter]._rotation = _root.main["clip_" + _root.counter]._rotation + rotation;
  21.                 rotation = rotation + 1;
  22.                 ++_root.counter;
  23.                 ++big_counter;
  24.                 _root.main["clip_" + (_root.counter - remove)].removeMovieClip();
  25.                 ++k;
  26.             }
  27.             return;
  28.         }
  29.     }
  30. var xpos_array = [0, 66.8,  67.2,  69.3, // beaucoup de données];
  31. var ypos_array = [0, 299.35, 299.35, // beaucoup de données];
  32. var xscale_array = [0, 33, 6, 20, 20, // beaucoup de données];
  33.     _root.counter = 0;
  34.     var ly_count = -1;
  35.     var big_counter = 0;
  36.     var text = "w";
  37.     setInterval(everything, 0);
  38. }

Reply

Marsh Posté le 13-07-2009 à 17:29:15    

C'est un problème de chemin...
il faut que tu remplace les _root dans ton animation secondaire... car au lieu d'etre interpreter comme racine de ton SWF, il sont interpreté comme racine global, donc, la racine de ton site...
tu dois donc les remplacer par des "_parent" ou tout ce qui est à ta porté pour cibler le bon clip conteneur...


Message édité par abais le 13-07-2009 à 17:30:25

---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 14-07-2009 à 11:37:56    

Ou alors tu regardes l'aide de Flash sur LockRoot.


---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
Reply

Marsh Posté le 14-07-2009 à 12:10:33    

ah oui, le lockRoot, je regarderais par curiosité, mais je n'ai plus la mauvaise habitude de foutre des SWF dans mes SWF :D


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 14-07-2009 à 12:37:00    

Perso, je l'ai jamais utilisé vu que j'ai très vite arrêté d'utiliser root.


---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
Reply

Marsh Posté le 14-07-2009 à 18:29:30    

Ah messieur merci beaucoup pour votre aide ^^
la raison etait tellement con >,< c'est la que l'on voit que je suis débutant ^^
 
LockRoot a bien evidemment fonctionné et par la meme confirmé votre diagnostique :)
 
Abais :
Pourquoi c'est une mauvaise habitude de lire des swf dans une anim pricipale ?
 
Zedlefou :
C'est crade d'utiliser root ?
 
a+

Reply

Marsh Posté le 14-07-2009 à 19:43:45    

Parceque c'est hors du principe de la POO (programmation orienté objet)...  
Je ne suis pas developpeur flash, mais ce que j'ai retenu, c'est que la méthode "propre" est d'enfermer les élément secondaire (ou "objets" ) dans des class... ce qui est plus flexible...
En gros, au lieu d'avoir un SWF secondaire, tu as un fichier .as (actionscript) qui peut être appelé par ta scène principale, il faut donc adapté le code pour tout ça... que ce soit une "class" contenant toute les methodes (fonctions) nécessaires pour être executé via l'exterieur.
Je suis pas le mieux placer pour t'expliquer tout les avantages, vu que je suis moi même en train d'adopter cette philosophie...


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 14-07-2009 à 21:44:54    

http://wiki.mediabox.fr/faq/flash# [...] le_ciblage


---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
Reply

Marsh Posté le 15-07-2009 à 00:56:48    

Ah tiens. J'ai me renseigner la dessus Abais merci du conseil :o
 
Super le liens Zedlefou ^^
super complet et au moins ca me fait comprendre des choses qui me paraissait encore flou ^^  
Bon il faut que je pratique tout ca maintenant :p
 
merci à vous deux !
a+

Reply

Marsh Posté le 15-07-2009 à 00:56:48   

Reply

Marsh Posté le 15-07-2009 à 10:29:18    

Pour ce que tu dis Abais, y'a du pour et du contre.
En AS2, j'hésite pas à découper mon site en plusieurs SWF. Pour une meilleure organisation et un laoding plus progressif. Après, j'ai un conteneur général qui me permet de tout contrôler.

 

En AS3, ça sera à peu près pareil qu'en UML. Tu vas organiser tes fichiers en architecture avec une classe par fichier et des classes commune pour les actions que tu retrouves d'un fichier à l'autre.

 

Parce que imagine ce que tu dis appliquer à un MMORPG. Ca deviendrait ingérable. En général dans les jeux tu as un fichier pour un élément graphique associé à une classe.
Mais bon, à ce niveau là, je te dis même pas le bordel d'organisation et de communication entre les classes :D


Message édité par Zedlefou le 15-07-2009 à 10:29:25

---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed