IF >Tests conditionnels

DEFINITION DU "IF"

Un des principes de base de la programmation repose sur la notion de tests conditionnels.

Ex : Si le soleil qui est actuellement en haut de la scène est déplacé en bas de la scène (dans ce cas, on test sa position et non son déplacement), alors on fait varier l'opacité du ciel qui se fonce du fait de la couleur de la scène. Le noir.

Télécharger le .fla.

OÙ PLACER LE TEST ?

Vous avez le choix de l'emplacement du test. Vous souhaitez en effet que le test se fasse de façon :

- Automatique : Placer le test sur une image clé de la timeline ou dans un moteur d'activité (movie clip contenant 2 images)

- Manuellement : Placer le test sur un bouton. Nous sommes d'accord, le test ne se fera qu'au moment où l'utilisateur cliquera sur le bouton.

Attention :

- L'utilisation d'un test automatique dans un movie clip ralentit légèrement l'animation. Cependant, le ralentissement n'est pas toujours visible.

- Dans un certain nombre de cas, le test n'a pas besoin d'être répété en boucle. Il suffit simplement de le placer sur le bouton sur lequel l'utilisateur sera obligé des cliquer s'il veut continuer l'animation. Le placement de certains tests est judicieux.

COMMENT PLACER L'ACTION ?

    1. Double-cliquer sur un bouton ou une image clé
    2. Sélectionner "If" via le bouton "+"
    3. Préciser la condition dans le cadre supérieur droit
    4. Sélectionner l'action à réaliser si le test est vrai via le bouton "+"
    5. Valider

     

    Si vous souhaitez ajouter une action qui s'exécutera dans le cas où le test est faux :

    1. Sélectionner la ligne de commande "if"
    2. Cliquer sur le bouton "Ajouter clause..."
    3. Sélectionner l'action à réaliser si le test est faux via le bouton "+"

     

ETUDE DE CAS :

Cas N° 1 : Test de la position du soleil

Prenons l'exemple introduit au début de cette page.

Rappelons que le test concernant la position des objets, ne peut se faire que sur des occurrences.

 

Rendre le soleil mobile :

  1. Placer un bouton (un soleil) sur la scène.
  2. Sélectionner l'occurrence de ce bouton sur la scène.
  3. Taper F8 pour transformer le bouton en movie clip
    Vous obtenez à partir de ce moment là, un symbole imbriqué.
  4. Double-cliquer sur ce movie clip afin de le nommer (Ex. : soleil).
  5. Clic-droit (CTRL-clic sur Mac) sur le movie clip et sélectionner la commande "Editer sur place".
  6. Double-cliquer sur le bouton.
  7. Sélectionner la commande "Drag movie clip" via le bouton "+"
  8. Préciser la cible : Deux petits points suivis d'un Slash et du nom du movie clip (Ex. : ../soleil).
    Le movie clip "soleil" se trouve en effet un niveau au dessus, c'est pourquoi il faut y faire référence avec les deux petits points dans le chemin (..)
  9. Cocher Verrouiller souris au centre.
  10. Changer on (Release) par on (Press). (Sélectionner on (Release), décocher "Relâcher" et cocher "Appuyer").
  11. Sélectionner "End on"
  12. Sélectionner la commande "Drag movie clip" via le bouton "+".
  13. Cocher le bouton radio "Arrêter action de glisser".
  14. Cliquer sur l'onglet "Scène 1" pour ressortir de cet état d'édition du symbole.

Créer le movie clip moteur comprenant le test :

  1. Taper F8 (Créer un movie clip)
  2. Sélectionner l'image 2
  3. Taper F6 (Créer une image clé)
  4. Double cliquer sur l'image clé de l'image 2
  5. Placer l'action suivante :
    Sélectionner "If" via le bouton "+"
    Saisir la condition : getproperty("../soleil",_y)>50
    Sélectionner "Set property" via le bouton "+"
    Saisir : ../ciel dans la zone de la cible.
    Préciser 50 dans la valeur puis sélectionner le format "expression" (=)
  6. Sortez de ce mode d'édition du movie clip (Clic sur l'onglet "Scène1")
  7. Placer le movie clip sur la scène.

 

Ajouter d'autres conditions si vous souhaitez tester plusieurs zones.

  1. Sélectionner "End if" et sélectionner "If" via le bouton "+".

 

Cas N° 2 : Test du contenu d'un champ texte

prenons l'exemple d'un champ dans lequel un mot serait tapé. La traduction s'affiche alors dans un autre champ. Nous allons utiliser un bouton pour effectuer la traduction.


Télécharger le .fla.

Pour savoir quel est le mot à renvoyer dans le champ de droite, nous testons le contenu du champ de gauche.

  1. Placer deux champs sur la scène
  2. Nommer ces deux champs (ex. : "francais" et "anglais")
  3. Placer un bouton sur la scène
  4. Sélectionner "If" via le bouton "+"
  5. Préciser la première condition
    francais eq "rouge"
  6. Sélectionner la "Set variable" via le menu "+"
  7. Saisir le nom de la variable à modifier
    anglais dans notre exemple
  8. Saisir le mot à renvoyer dans le champ portant le nom "anglais"
    red dans notre exemple


Si vous souhaitez effectuer plusieurs tests, sélectionner la ligne "If", copiez la, sélectionnez la ligne "End if" et collez la.