[AS3] trace évolué : problème de parcours des objets intégrés
Je cherche à faire un trace évolué pour tracer des objets complexe tel que celui de la racine "this" ou currentScene etc ...
pour cela j'ai fait une fonction très simple :
Code:
1 2 3 4 5 6 7
| function traceObj(val:Object,desc:String="",indent:String=""):void {
var key:String;
trace(indent+desc+val);
for (key in val) {
traceObj(val[key],key+" :",indent+" ");
}
} |
puis avec cet objet et l'appel de ma fonction ça marche nickel :
Code:
1 2 3
| var obj1:Object = {x:40, y:60};
var myObj:Object = {x:20, y:30, z:obj1 };
traceObj(myObj,"myObj"); |
j'ai la trace suivante qui s'affiche :
Code:
1 2 3 4 5 6
| myObj[object Object]
x :20
y :30
z :[object Object]
x :40
y :60 |
Alors, vous me direz c'est quoi le problème??? :roll:
si j'apelle ma fonction avec un objet intégré genre
"currentScene" ou "this", il ne trace rien du tout
car la boucle ne considère pas ces objets comme des objets ...8O
exemple :
Code:
1 2 3 4
| traceObj(currentScene ,"currentScene : ");
va m'afficher :
currentScene : [object Scene] |
et c'est tout ...:cry:
ps. si je désire faire cette usine à gaz, c'est parce que je n'arrive pas debboguer un swf appelé par un autre avec passage de paramètres.
- Les points d'arrêts du module appelé ne sont pas pris en comptes .
- mon debuggage porte essentiellement sur les paramètres passés ...