« Flash CS5 - Timer » : différence entre les versions

De EduTech Wiki
Aller à la navigation Aller à la recherche
m (Remplacement de texte — « <pageby nominor="false" comments="false"/> » par « <!-- <pageby nominor="false" comments="false"/> --> »)
 
(4 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
{{Ebauche}}
{{Ebauche}}
{{Tutoriels Flash|CS5/CS4/CS3|Intermédiaire}}
{{Tutoriels Flash|CS5/CS4/CS3|Intermédiaire}}
<pageby nominor="false" comments="false"/>
<!-- <pageby nominor="false" comments="false"/> -->




Ligne 20 : Ligne 20 :
== Exemple d'une simple compte à rebours ==
== Exemple d'une simple compte à rebours ==


L'exemple suivant affiche un texte au lancement. Au bout de 4 secondes un graphisme est affiché et au bout de 5 secondes une musique sera joué. Le graphisme et la musique sont lancés par une fonction "réveillée" par le timer.
L'exemple suivant montre les éléments suivants
* Un texte est affiché au lancement.  
* Au bout de 4 secondes un graphisme est affiché et une musique sera joué.  
* Au bout de 6 secondes, le texte disparaîtra
 
Le graphisme et la musique sont lancés par une fonction timer: ''CountDownTimerHandler''


* [http://tecfa.unige.ch/guides/flash/ex5/timer/CS5-timer-exemple-1.html CS5-timer-exemple-1.html]
* [http://tecfa.unige.ch/guides/flash/ex5/timer/CS5-timer-exemple-1.html CS5-timer-exemple-1.html]
Ligne 42 : Ligne 47 :
var COMPTE = 6;
var COMPTE = 6;


// On définit un timer qui déclenche un événement toutes les 1000 millisecondes
// c-a-d des intervalles d'une seconde, une fois par seconde un événement est crée
var fl_CountDownTimerInstance:Timer = new Timer(1000,COMPTE);
var fl_CountDownTimerInstance:Timer = new Timer(1000,COMPTE);
// On enregistre une fonction qui sera appelée par le timer tous les X intervalles
fl_CountDownTimerInstance.addEventListener(TimerEvent.TIMER, CountDownTimerHandler);
fl_CountDownTimerInstance.addEventListener(TimerEvent.TIMER, CountDownTimerHandler);


Ligne 53 : Ligne 62 :
COMPTE--;
COMPTE--;
if (COMPTE == 2) // If count down is 2 seconds, then we play sound and add art
if (COMPTE == 2) // If count down is 2 seconds, then we play sound and add art
{
{
Ligne 65 : Ligne 75 :
}
}
</source>
</source>
== Alternative : les fragments de code ==
Un timer peut être implémenté aussi à travers les fragments de code.
Le timer ne nécessite pas qu'un symbole soit sélectionné. Dans le panneau Fragments de code (Fenêtre > Fragments de code) :
* Ouvrez Actions
* Double-cliquez sur "Countdown timer"
NB: Si vous avez la fenêtre des actions affichée, il suffit de cliquer sur le symbole "Code snippet".
Le code sera inséré directement dans le niveau "Actions" de votre timeline. Il pourra à ce moment être modifié et adapté.

Dernière version du 22 août 2016 à 20:12

Cet article est une ébauche à compléter. Une ébauche est une entrée ayant un contenu (très) maigre et qui a donc besoin d'un auteur.


Introduction

Prérequis:

Les animations Flash que l'on peut créer avec les outils d'interpolation sont basés sur une logique de cinéma, c-a-d sur la timeline.

Avec ActionScript il est possible d'adopter une logique plus basé sur le temps (time-based)


Exemple d'une simple compte à rebours

L'exemple suivant montre les éléments suivants

  • Un texte est affiché au lancement.
  • Au bout de 4 secondes un graphisme est affiché et une musique sera joué.
  • Au bout de 6 secondes, le texte disparaîtra

Le graphisme et la musique sont lancés par une fonction timer: CountDownTimerHandler

code source

// Sound	
var son = new Salsa();

// Art
var art2 = new Art();
art2.x = 150;
art2.y = 200;

/* Countdown Timer
Counts down from a specified number of seconds.
*/

var COMPTE = 6;

// On définit un timer qui déclenche un événement toutes les 1000 millisecondes
// c-a-d des intervalles d'une seconde, une fois par seconde un événement est crée
var fl_CountDownTimerInstance:Timer = new Timer(1000,COMPTE);

// On enregistre une fonction qui sera appelée par le timer tous les X intervalles
fl_CountDownTimerInstance.addEventListener(TimerEvent.TIMER, CountDownTimerHandler);

// start the timer
fl_CountDownTimerInstance.start();

// Manage timer events
function CountDownTimerHandler(event:TimerEvent):void
{
	
	COMPTE--;

	if (COMPTE == 2) // If count down is 2 seconds, then we play sound and add art
	{
		addChild(art2);
		son.play();
	}
	if (COMPTE == 0) // If count down is 0 seconds, then we hide text
	{
		text_box.visible=false;
	}

}

Alternative : les fragments de code

Un timer peut être implémenté aussi à travers les fragments de code.

Le timer ne nécessite pas qu'un symbole soit sélectionné. Dans le panneau Fragments de code (Fenêtre > Fragments de code) :

  • Ouvrez Actions
  • Double-cliquez sur "Countdown timer"

NB: Si vous avez la fenêtre des actions affichée, il suffit de cliquer sur le symbole "Code snippet".

Le code sera inséré directement dans le niveau "Actions" de votre timeline. Il pourra à ce moment être modifié et adapté.