Bonjour,
J'ai crée il y a de ça une semaine un code en AS2 qui permet d'utiliser un carrousel 3D classique.
J'ai décidé de retaper le code pour le faire en AS3 et la je suis bloqué sur un problème depuis hier, peut être pourrez vous m'aider. Je vous donne le bout de code qui ne va pas :
import fl.transitions.easing.*;
import fl.transitions.*;
import flash.display.*;
import flash.events.*;
var numOfItems:Number;
var radiusX:Number = 300;
var radiusY:Number = 75;
var centerX:Number = stage.width/2;
var centerY:Number = stage.height/2;
var speed:Number = 0.05;
var perspective:Number = 160;
var home:MovieClip = this;
var item:Sprite = new Sprite();
var tooltip:MovieClip = new MovieClip();
addChild(tooltip);
tooltip.alpha = 0;
theText.alpha = 0;
var xml:XML = new XML();
xml.ignoreWhitespace;
var chargeurDonnees:URLLoader = new URLLoader();
var adresseFichierXML:URLRequest = new URLRequest("icons.xml");
chargeurDonnees.load(adresseFichierXML);
//xml.dispatchEvent(EventDispatcher.dispatchEvent(Event.COMPLETE));
chargeurDonnees.addEventListener(Event.COMPLETE, chargement);
function chargement (){
var nodes = this.firstChild.childNodes;
numOfItems = nodes.length;
for(var i=0; i<numOfItems; i++){
var t:MovieClip= new MovieClip();
t.angle = i*((Math.PI*2)/numOfItems);
t.addEventListener(Event.ENTER_FRAME, mover);
t.toolText = nodes[i].attributes.tooltip;
t.content = nodes[i].attributes.content;
t.icon.inner.loadMovie(nodes[i].attributes.image);
t.r.inner.loadMovie(nodes[i].attributes.image);
t.icon.addEventListener(MouseEvent.MOUSE_OVER, over);
t.icon.addEventListener(MouseEvent.MOUSE_OUT, out);
t.icon.addEventListener(MouseEvent.MOUSE_DOWN, released);
t.addChild(t);
}
}
...
Quand je lance mon animation, il m'envoi le méssage d'érreur suivant :
ArgumentError: Error #1063: Non-correspondance du nombre d'arguments sur galerie_3d_fla::MainTimeline/chargement(). 0 prévu(s), 1 détecté(s).
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()
Si quelqu'un a une idée, il sera le bienvenue, on m'a dit qu'il s'agissai du addChild, mais que dois je mettre à la place?
Merci d'avance,
Anthony