package {
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.events.IOErrorEvent;
import flash.display.MovieClip;
public class projetJeuAnglais extends MovieClip
{
public static var _phrases:XML;
public static function set phrases(val:XML):void {
trace("affection de " + val + " a _phrases");
try { throw new Error();
}catch (er:Error) {
trace("a" + er.getStackTrace());
}
_phrases = val;
}
public static function get phrases( ) :XML{
return _phrases;
}
/******************************************
Main
******************************************/
public function projetJeuAnglais():void //fonction constructrice
{
stage.addEventListener(Event.ENTER_FRAME, init);// ajout d'un écouteur ENTER_FRAME qui execute la fonction onEnterFrame
}
public function init(event:Event):void // fonction qui s'execute au lancement de l'animation
{
chargeXML();// fonction qui appelle le xml
stage.removeEventListener(Event.ENTER_FRAME, init);// on retire l'écouteur EnterFrame pour ne pas créer une boucle infinie
//trace(phrases);
//trace("init projetJeuAnglais.phrases"+projetJeuAnglais.phrases);
//trace("init phrases"+phrases);
//trace(projetJeuAnglais._phrases);
}
/******************************************
Gestion du XML
******************************************/
public function chargeXML():void
{
// nous déclarons un objet URLLoader :
var chargeur:URLLoader = new URLLoader ();
// nous créons un objet URLRequest qui contient l'url du fichier :
var adresse:URLRequest = new URLRequest ("./sentences/sentences.xml");
// nous définissons le format du fichier chargé :
var format:String = URLLoaderDataFormat.TEXT;
chargeur.dataFormat = format;
// nous lançons le chargement du fichier, en indiquant l'adresse de celui ci par l'objet URLRequest :
chargeur.load(adresse);
// définition des évenements de l'objet chargeur
chargeur.addEventListener(Event.COMPLETE, finDuChargement);
chargeur.addEventListener(ProgressEvent.PROGRESS, avancement);
chargeur.addEventListener(IOErrorEvent.IO_ERROR, indiquerErreur);
}
// définition de la fonction exécutée par l'évenement COMPLETE :
// ( déclenchée lorsque le chargement se termine )
public function finDuChargement ( event:Event ):void
{
//var contenu:XML = new XML(event.target.data);
//contenu:XML = new XML(event.target.data);
//contenu = event.target.data;
//var contenu:XML = new XML(event.target.data);
projetJeuAnglais.phrases = new XML(event.target.data);
//projetJeuAnglais.phrases = contenu;
//trace("finDuChargement contenu"+contenu);
//trace("finDuChargement projetJeuAnglais.phrases"+projetJeuAnglais.phrases);
//trace("finDuChargement phrases"+phrases);
//setPhrases(phrases);
//GestionXml.GestionXml.phrases = "loli";
//this.this.phrases = contenu;
//trace("chargement finit ! "+contenu);
//trace(contenu.sentence[0].good);
//trace(contenu.sentence[0]);
}
// définition de la fonction éxecutée par l'évenement PROGRESS :
// déclenchée à chaque avancement du chargement )
public function avancement(event:Event) :void
{
//trace(event.bytesLoaded+" chargés sur "+event.bytesTotal);
}
// fonction indiquant si une erreur de chargmement survient :
public function indiquerErreur(event:Event):void
{
//trace(event);
}
}
};
Partager