Régulièrement je recherche sur le net des petits bouts de code, des recettes pour mes développements. Pourquoi ne pas les mettre carrément sur mon site. N’hésitez pas, servez-vous !
Ici c’est une recette ActionScript 3 qui permet d’appeler dynamiquement un objet qui est enregistré dans la bibliothèque de Flash avec un nom de « AS linkage »
Par exemple vous souhaitez faire apparaitre sur la scène plusieurs popups en fonction de boutons présents sur la scène.
Les boutons sont nommés « bt1 », « bt2 », etc …
Les objets movieclip sont créés dans la bibliothèque avec comme nom de classe (AS linkage, pas le nom d’acteur) « Pop_bt1 », « Pop_bt2 », etc …
Il suffit de créer une fonction générique qui va récupérer le nom du bouton pour appeler le bon acteur de la bibliothèque et l’ajouter à la scène.
Exemple :
bt1.addEventListener(MouseEvent.CLICK, ouvrePop);
bt2.addEventListener(MouseEvent.CLICK, ouvrePop);
// La fonction :
private function ouvrePop(evt:MouseEvent):void{
var popClass:Class = getDefinitionByName("Pop_" + evt.target.name) as Class;
var newPop:MovieClip=new popClass();
addChild(newPop);
}