Flash : animations mais aussi interactions ActionScript : langage de programmation multipliant les possibilités de dynamisme et d’interactivité d’un fichier Flash. Attention ! Flash 8.0. : ActionScript 2.0 Supérieures (CS3, CS4) : AS 3.0 Ce que permet l’AS Gérer des actions, des animations des objets (clips) et de la scène Contrôler la tête de lecture (timeline) Lire des sons ou des vidéos Gérer les événements souris et clavier.
Fenêtre du code : Action F9 Clique droit sur la timeline + « Actions » Conseil : calque réservé au code Attention à la casse ! Ma_variable & ma_variable ne sont pas les mêmes variables Les espaces n’ont pas d’importance Commentaires: Courts : //… Longs : /* …*/
Number nombre=nombre + 5; monnombre += 5; -, *, /, % String Entre ̎ … ̎ Représenter les guillemets par / ̎ Entre ‘…’ Représenter l’apostrophe par / ’ Array var tab:Array = new Array ( ̎a ̎, ̎b ̎, ̎c ̎); var chaine:String = tab[1] // = ̎b ̎ var nombre:Number = tab.length // =3 Boolean var vf:Boolean = false; …=new Boolean(); //vf=false
monclip.monevenement=function () {instructions} Evénements souris locaux onPress : l’évènement à lieu au clique onRelease : à la « libération » du clique… onReleaseOutside : … en dehors onRollOver : au survol de la souris onRollOut :à la fin du survol Evénements souris globaux onMouseDown ≡ onPress onMouseUp ≡ onRelease onMouseMove : au mouvement de la souris Evénement général onEnterFrame : à chaque nouvelle image
_root : scène principale _parent : élément directement supérieur dans la hiérarchie _parent.clip11 = clip1 _this : se rapporte à l’élément choisi
Conditions : Égalité : == Supérieur ou égal : >= Et : && Ou : || (AltGr + 6) if (condition à tester) { instructions;} else { instructions;} switch(variable){ case «valeurdelavariation »: instructions ; break; … default instructions ; break; }
Gestionnaire de séquences Maj+F2 Fenêtre > Autres panneaux > Séquence stop(); en début de chaque séquence Donner un nom d’occurrence aux boutons : versmt21, versmp3 versmt21.onRelease=function(){ gotoAndPlay( ‘mt21’,1); }
Type de zone texte… …et nom de la variable associées Zone jaune : texte de saisie Variable : entrees Zone bleue: texte dynamique Variable : resultats Donner : nom d’occurrence var notes:Array=new Array('A', 'B', 'C', 'D', 'E', 'F', 'Fx');
resultats =entrees + ’ : ’+… Tirage au hasard : random(nombremax) nomdutableau.length Nomdutableau[…] resultats =entrees + ’ :’ + notes[random(notes.length)]; …+’\n’; resultats+=…
Noms d’occurrence : Bouche : bouche 31knots : knots G.O.B. (Guns of Brixton) : guns boutons… var musique:Sound=new Sound(); musique.loadSound('31 Knots - Man Become Me.mp3', false);
pause.onRelease=function(){ musique.stop(); } lecture.onRelease=function(){ musique.start(musique.position/1000); } arret.onRelease=function(){ musique.start(0); musique.stop(); } stop() : arrête la musique sans modifier musique.position musique.position : valeur d’avancement de la lecture en ms start(valeur en s de la position de lecture initiale)
Drag And Drop Tirer : startDrag() Déposer : stopDrag() knots.onPress=function(){ this.startDrag();} knots.onRelease=function(){ this.stopDrag();}
Collisions avec bouche : booléan knots.hitTest(bouche) onEnterFrame=function() { if (knots.hitTest(bouche)) { knots._visible=false; musique.loadSound('31 Knots - Man Become Me.mp3', false); if(guns.hitTest(bouche)) { guns._visible=false; musique.loadSound('01 The shape of dub to come.mp3', false); } }
redonner.onRelease=function(){ knots._x=guns._x=350; knots._y=250; guns._y=300; knots._visible=guns._visible=true knots.stopDrag(); guns.stopDrag(); }