Bonjour,
Voici mon scénario:
- je possède un fichier Swf d'entreprise, dont je n'ai pas les sources.
- j'ai besoin d'en masquer certaines parties -- j'ai pensé à les recouvrir en important ce swf dans un tout nouveau .fla puis en affichant d'autres éléments Flash par dessus
- Ce .swf est assez complexe, et simplement "importer" le swf dans le .fla casse son fonctionnement*.
- J'ai donc essayé de le charger dynamiquement avec un MovieClipLoader.
...Jusque là ça marche, mais uniquement si je le charge dans _level0 : myLoader.loadClip("mon fichier.swf", "_level0");
*Je pense que ça ne marche pas dans _root ou autres parce qu'en interne il doit faire directement référence à _root et ça met le bazar dans ses scripts si je le charge ailleurs que _level0.
Mon problème:
- Une fois qu'il est chargé dans _level0 il écrase tout ce qui s'y trouvait (y compris les éléments graphiques que je souhaite afficher par dessus). C'est normal. Mais il marche correctement.
Tentative de résolution:
- J'ai essayé de charger les éléments graphiques que je veux afficher en procédant de la meme manière que pour ce swf, depuis un autre .swf externe (créé par mes soins) que je chargerais dans _level1...
...mais si je fais ça, bizarrement, le .swf présent dans _level0 cesse de fonctionner. J'observe dans le débuggueur que sa structure interne contient maintenant un _level0 supplémentaire: ça fait donne du _level0._level0._root... Pourquoi ce soudain niveau supplémentaire d'abstraction uniquement parce que j'ai rajouté un _level1 ???
Si quelqu'un comprend ce qui se passe, ou a une meilleure idée pour recouvrir certaines parties d'un .swf existant (j'ai pensé au html de la page qui l'embarque mais je crois me souvenir que Flash est toujours par-dessus?)
Question Bonus: Si je peux intercepter les clics de souris et les passer au swf externe uniquement dans certains cas en me basant sur leurs coordonnées... L'idéal serait d'intercepter les clics sur les boutons directement dans le swf mais je ne crois pas être assez bon en Actionscript!
Partager