Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: AS3 TypeError: Error #1009  (Lu 2655 fois)

Levendivin

  • Wisi J'habite sur le forum
  • ****
  • Hors ligne Hors ligne
  • Messages: 344
    • Voir le profil
AS3 TypeError: Error #1009
« le: Mars 26, 2010, 22:36:01 pm »
Bonsoir tout le monde,

Je voulais faire une animation à partir d'un rond que j'ai créé de type Clip, je l'ai exporté pour ActionScript. En gros, c'est un rond (enfin 7 ronds au total normalement avec la création des 6 ronds à l'aide de la boucle do...while) qui bouge en changeant l'opacité. Lorsque je voulais faire "Ctrl + entrer" il m'affiche le message suivant => TypeError: Error #1009: Il est impossible d'accéder à la propriété ou à la méthode d'une référence d'objet nul.at essaiAnim_fla::MainTimeline/essaiAnim_fla::frame1()
Voici le code :

var largeur:uint = stage.stageWidth;
var hauteur:uint = stage.stageHeight;

var i:uint= 0;

var ronde:rondeClp;
//positionner la ronde
ronde.x = Math.random()* largeur;
ronde.y = Math.random()* hauteur/2;
//definir la transprence et l'atténuation
var transparence, attenutransparence:Number;
//maxi et mini de l'opacité
var maxOpacite, minOpacite:Number;
var vitesse:Number;

do{
   ronde = new rondeClp();
   transparence= Math.random()*0.8;
   attenutransparence= Math.random()*0.08;
   maxOpacite = Math.random()* 0.8;
   minOpacite = Math.random()* 0.01;
   vitesse = Math.random()*0.1;
   //Boucle d'évèement
   ronde.addEventListener(Event.ENTER_FRAME, bougeEtSattenue);
   function bougeEtSattenue(e:Event) :void{
      //retrouver la bonne etoile
      var cible:MovieClip = e.currentTarget as MovieClip;
      cible.alpha -= attenutransparence;
      cible.x += vitesse;
      cible.y += vitesse;
     
      if (cible.alpha < minOpacite){
         attenutransparence = Math.random()* maxOpacite;
         cible.alpha = attenutransparence;
         attenutransparence = Math.random()*0.08;
         maxOpacite = Math.random()* 0.8;
         minOpacite = Math.random()* 0.01;
      }
   }
   addChild(ronde);
   i++;
}while (i < 6);
Quelqu'un comprend de quoi il s'agit ? Car avec l'aide de flash, je n'ai pas ce Type  d'erreur.
Bonne soirée
IP archivée

RMistral (Wisi)

  • Global Moderator
  • Wisi Comment on décroche
  • *****
  • Hors ligne Hors ligne
  • Messages: 662
    • Voir le profil
    • WWW
Re : AS3 TypeError: Error #1009
« Réponse #1 le: Mars 27, 2010, 08:40:05 am »
Bonjour,

Tu positionne à l'écran un MC qui n'existe pas.
la ligne : var ronde:rondeClp; ne crée pas une occurrence de ton MC. Elle initialise uniquement une variable de type rondeClp

Ensuite tu demandes de positionner en x et y de manière aléatoire cette variable vide. Voilà pourquoi tu as le message TypeError: Error #1009: Il est impossible d'accéder à la propriété ou à la méthode d'une référence d'objet nul.at essaiAnim_fla::MainTimeline/essaiAnim_fla::frame1()

Corrige ton code en déplacant les 2 lignes de positionnement après la ligne  ronde = new rondeClp(); dans ta boucle.



Bon courage....
IP archivée
Savoir mal est pire qu'ignorer

Levendivin

  • Wisi J'habite sur le forum
  • ****
  • Hors ligne Hors ligne
  • Messages: 344
    • Voir le profil
Re : AS3 TypeError: Error #1009
« Réponse #2 le: Mars 27, 2010, 13:48:46 pm »
Merci RMistral,

Trop fort, je n'ai pas touché le MC (MovieClip) j'ai juste déplacé les 2 lignes de positionnement comme tu m'as dit, et ça marche.

 :D
IP archivée
 




 
Wisibility.com
Wisibility est un sité dédié à la formation aux métiers l’image. Vous y trouverez différentes ressources gratuites et payantes vous aidant à maîtriser les logiciels graphiques tels que Photoshop, Illustrator, InDesign, Flash…

Aujourd’hui, Wisibility réunit 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. Des centaines de tutoriels accessibles gratuitement et une boutique sur laquelle vous trouverez des formations complètes et des exercices pratiques.

Wisibility organise des événements graphiques, réalise une WebTV

Wisibility sur Adobe TV

Retrouvez nos tutoriels et nos émissions
sur le site officiel Adobe



 
Nos partenaires

Adobe   fotolia   WebINK   Amka   macandphoto   club
 


Contact - Wisibility est une marque déposée - Mentions légales

Creative Commons License

infos - inspiration - rendez-vous - logiciels materiels - tutoriels gratuits - formations en ligne - forums - galeries - glossaire - wisi tv