gotoAndPlay();: Flash MX et autres bidulles de geek...

Explorations JSFL

Je me suis intéressé fortement au JSFL ces derniers jours. C'est vraiment génial ce que l'ont peut faire avec cela. Plusieurs à qui je parle n'en voient pas vraiment l'intérêt, à part pouvoir télécharger et installer des extensions développées par d'autres. C'est dommage, car le JSFL peut vous être utile dans votre travail quotidien, en faisant des scripts adaptés à vos besoin et surtout à ceux de votre équipe. Voici donc un exemple concret d'utilisation, simplement pour inspirer ceux qui se demandent ce que le JSFL peut leur apporter.

Je travaille beaucoup avec d'autres, très souvent j'ai à programmer des fonctionnalités sur des sites montés par des intégrateurs/designers/animateurs d'un peu partout. Voici un exemple concret de cas que je développe actuellement.

Sur le site de Mecano, j'avais développé une classe permettant de colorer tout le site dynamiquement. Chaque élément du site est enregistré à cette classe, avec un nom de couleur (par exemple "light"). La classe va chercher dans la liste la bonne valeur pour "light" dans une liste, selon la teinte choisie, et colore le clip, par animation ou non. J'ai récemment réécrit cette classe, en AS 2, en version beaucoup plus poussée, pour une application que nous développons chez Mecano. Et récemment, sur un petit site que nous faisions, nous avons réalisé qu'il pourrait être fichtrement utile d'utiliser cette classe sur tous nos sites, même s'ils n'ont pas besoin de changement de couleurs. Nous avons réalisé, à la fin du projet, que les couleurs choisies, ne sortaient pas très bien sur certains écrans et le designer aurait aimé modifier un peu les couleurs. Comme tout est fait à la main avec une paquet de movieclips, cela aurait été un calvaire et nous l'avons laissé ainsi. Et en y réfléchissant, je vois un paquet d'utilisations pour la coloration dynamique. Par-exemple, faire pour Noel, un thème spécial pour le site. Mais intégrer un site avec cela est un travail de moine. Dans le site de Mecano, tout est monté en tons de gris et chaque movie a un code pour lui attribuer une couleur. Cela fut surtout complexe pour les designers/animateurs, très à l'aise dans Flash pour l'animation mais vraiment limités par ces contraintes techniques.

J'ai donc décidé de faire un onglet maison pour Flash. Dans cet onglet, le designer choisi un projet dans une liste (paramétrée par moi dans un XML) et accède à un onglet ressemblant à l'onglet "swatches" contenant la liste des couleurs pour un projet.
En sélectionnant un objet sur le stage, on peut lui appliquer une couleur avec cet onglet. Cela crée automatiquement un MovieClip et insère le code requis pour la coloration dynamique lié à ma classe et en plus applique une coloration sur l'élément, pour que l'effet soit visible dans l'environnement. S'il s'agit déjà d'un movieclip coloré, c'est détecté et la couleur est simplement changée.
Donc coloration dynamique, mais utilisable facilement pour un designer, sans se limiter dans sa création.

Ce n'est qu'un exemple, dans le but de démontrer en quoi le JSFL peut-être utile pour faire des trucs particuliers.

Ce n'est pas si complexe à faire que ça en a l'air. En gros, on fait un flash standard, on y a accès à toutes les méthodes qu'on veut, comme un flash normal. On peut y charger du XML ou autres. On peut ensuite y exécuter des scripts JSFL à partir de l'ActionScript avec MMExecute(). Il y a quelques limitations au JSFL, il manque certains trucs je trouve, et surtout de la documentation claire. Mais on peut arriver à faire un paquet de trucs. Quelques heures de développement, qui vous en sauveront beaucoup plus à long terme. Et c'est toujours plus plaisant de prendre 5 heures à développer un truc que vous serez fiers de montrer à vos amis, que de perdre 5 heures à intégrer des trucs répétitifs à la main.

Le JSFL peut-être utilie pour faciliter l'intégration "façon statique" de trucs dynamiques. Par-exemple, l'onglet String inclus dans Flash attache du texte dynamique multilingue à desTextField. Il est loin d'être parfait, mais il serait possible de faire son propre onglet pour faciliter l'intégration de textes dynamiques selon vos goûts.

Pour terminer, deux petits liens pour vous aider à développer. Un nouveau site prometteur et un autre dont le forum est une excellente ressource.

Voilà. Bon JSFLage! ;)

Posté par stef |octobre 10, 2004 04:07 AM | TrackBack
Commentaires

En effet il y a de quoi faire .. faut juste trouver le temps pour le faire ;)
Bientot il existera au delà des FlashDesigner / FlashDev / FlashMaster/ FlashAnimateurs ... un nouvelle profession qui sera les FLASHJSFLer :) ... mais c'est vrai que dans une équipe sur des gros projets c'est un outil qui deviendra incontournable.

Posté par: | octobre 10, 2004 04:43 AM

salut
tout comme toi Steph, je m'intéresse au JSFL, c'est très puissant !
Dommage que l'on ne puisse pas tout retranscrire en JSFL. Je pensais ce weekend à créer des outils pour l'ide flash, notamment rajouter des nouvelles brush (genre aero) pour le painting tool, etc...
J'y travaillle donc...

Posté par: | octobre 11, 2004 06:06 AM
Poster un commentaire

Vous souhaitez suivre les commentaires sur ce site ? Un fil RSS est disponible ici.
bottom