flash séance 2 interactions avec actionscript rousseau david, vendeville sylvain si28
Post on 03-Apr-2015
108 Views
Preview:
TRANSCRIPT
Flash séance 2
Interactions avec ActionScript
ROUSSEAU David , VENDEVILLE Sylvain
SI28
Compréhension de l’environnement
• Rappel : les calques, la scène, la séquence (shift+F2) , la timeline
L’Action Script
• A quoi sert l’action script ?
• Définir des propriétés, des actions des comportements sur des objets
• Permettre la gestion des objets• Piloter la navigation dans les animations
Où mettre le code ?
• Dans une scène (frame) du scénario.
• Dans les objets eux-même (bouton, clip…)
F9 pour afficher la fenêtre des actions
Le code - 1
• Les variables : il en existe deux types• Les variables locales
Elles ne sont connues qu'au niveau de l'animation
var MaVarLocale = 3;
• Les variables globalesElles sont connues à tous les niveaux de l'application
_global.MaVarGlobale;
MaVarGlobale=9;
Le code - 2
• Les structures conditionnelles• if :
if (<conditions>)
<instruction1>
[ else
<instruction2>]
• Exemple :if (var == 1)
play();
else
stop();
Différents opérateurs disponibles :
== égalité!= inégalité&& ET logique|| OU logique< inférieur à<= inférieur ou égal à
Le code - 3
• Les structures conditionnelles• switch : il est à utiliser pour remplacer plusieurs if
switch(nombre){
case 1 :
<instructions>
break;
case 2 :
<instructions>
break;
…
default :
<instructions>
Le code - 4
• Les boucles itératives• For :
for(i=0;i<10;i++){ <instructions> }Répète les instructions 10 fois
• While :i=0;While(i<10){
<instructions>i++;
}Idem que pour le for mais avec la possibilité d'arrêter la boucle à tout moment en agissant sur le i.
Le code - 5
• Les fonctions :• Elles exécutent des instructions et son appelables
à tout moment. Elles gèrent les paramètres.nom_fonction= function(param1,param2…)
{
<instructions>
return <expression1>;
}
• A la fin de son exécution, la fonction va renvoyer la valeur de l'expression1.
Hiérarchie des objets
_root
obj1 obj3obj2
objA
( _root est la racine du document)
obj1._parent _root
objA._parent obj3
Référence relative/absolue
• Référence relative :• Le chemin dépend du point de vue de l’objet
– obj3 : this obj3
this._parent _root– objA : this objA
this._parent obj3
_root
obj1 obj3obj2
objA
Référence relative/absolue
• Référence absolue :• Le chemin est défini dans son intégralité
– obj3 : _root.obj3 obj3
– objA : _root.obj3.obj3 objA
_root
obj1 obj3obj2
objA
Les niveaux
• Les clips sont instanciés sur des niveaux différents pour éviter les conflits
• _level0 : niveau racine équivalent à _root• _levelX : niveau X dans l’arborescence
• Attention aux noms réservés (internes)
et à bien respecter la casse
Les boutons
• Créer une forme puis la convertir en bouton (F8) : Propriétés en double-clic
• Pour créer un événement, l’écrire dans la fenêtre Actions-Bouton
• on(release) / on(press)
• Exemple : bouton vers lien URLon(release){
getURL("http://www.google.fr",blank);
}
Navigation/Contrôle du scénario
• Se déplacer sur la timeline– Permet d’accéder à un point précis de la
timeline à la demande– Attention à mettre stop(); sur la 1ère image– Sur le bouton :
on(release){gotoAndPlay(x);}
x étant la position de la 1ère image de l’animation
– A la fin de l’animation :• gotoAndStop(1);• On continue dans la timeline
Navigation/Contrôle du scénario
• Se déplacer vers d’autres séquences• Le principe est le même que précédemment, la
seule différence est qu’il faut noter le nom de la séquence à laquelle on souhaite accéder
• Exemple : 2 séquences : Menu et Anim1– Sur le bouton dans Menu:
on(release){gotoAndPlay("Anim1",1);}
– A la fin de l'animation dans Anim1:• gotoAndStop("Menu",1);• On continue dans la timeline
Le texte
• Il existe 3 types de zone de texte
• Statique : il n'y a pas d'action possible
• Dynamique : étiquette dont on peut modifier le contenu avec ActionScript
• Saisie : zone de saisie manipulable avec ActionScript
Le son
• Flash peut lire un son situé dans le même répertoire que l'application
• Sur la première imagestop();mp3 = new Sound();mp3.loadSound("nom.mp3",0); 1 : lit en boucle
• Sur le bouton de lectureon(release){
mp3.start(debut_lecture(en seconde),Nb_boucles);}
• Sur le bouton stopon(release){
mp3.stop();}
Expérimentation - 1
• Création manuelle• Créer une ligne • La transformer en clip• L’éditer et faire une transition de couleur
(interpolation forme)• Sortir et la transformer en Clip (+centre)• Editer le clip créé et centrer l’aiguille sur la
croix centrale• Sortir et faire tourner l’aiguille avec le script
de la scèneAvec "this.onEnterFrame"
Expérimentation – 2
• Instanciation avec un script à partir de la bibliothèque
• Clic droit sur un élément en bibliothèque -> liaison…
• Clip.attachMovie( « clip » , « nom » , niveau)
Expérimentation – 3
• Duplication de clips + propriétés des clips
• Dupliquer le clip aiguille + paramètres (position…)
– duplicateMovieClip(« clip » , « nom » , niveau)
• Assigner la fonction : onEnterFrame
Application externe (pilotable) - 1
• Mettre la duplication dans une boucle
• Pour partager une variable :
– SharedObject.getLocal("Nom" , chemin)ou
– Avec une variable globale (_global.var )
Application externe (pilotable) - 2
• Créer une nouvelle animation (nouveau fichier)
• Charger l’animation précédente – Avec : loadMovieNum(« chemin » ,
niveau) et la variable partagée avec : SharedObject.getLocal
• Ou alors avec Clip.loadMovie(« NomClip »)
Création d'un menu interactif
• 1ere Méthode : déplacement dans les scènes
• 2eme Méthode : déplacement dans les séquences
• 3eme Méthode : Répartition des différentes applications
top related