Contrôler une occurrence et naviguer sur la scène
CHAPITRE 4
113
Nous avons placé sur la scène un interrupteur représenté par un rectangle incliné et deux
pions. Ces derniers peuvent être déplacés par glisser-déposer.
Si vous cliquez sur l’interrupteur, son échelle verticale (scaleY) bascule à -1, donnant ainsi
l’impression qu’il s’abaisse. Par la même occasion, nous rendons les pions insaisissables et
légèrement transparents. Si vous cliquez à nouveau sur l’interrupteur, les pions redeviennent
opaques et mobiles.
declencheur.addEventListener(MouseEvent.CLICK,desactiverPions);
function desactiverPions(evt:MouseEvent) {
evt.currentTarget.scaleY*=-1;
if (evt.currentTarget.scaleY==-1) {
pion1.mouseEnabled = false;
pion1.alpha = 0.5;
pion2.mouseEnabled = false;
pion2.alpha = 0.5;
} else {
pion1.mouseEnabled = true;
pion1.alpha = 1;
pion2.mouseEnabled = true;
pion2.alpha = 1;
}
}
pion1.addEventListener(MouseEvent.MOUSE_DOWN,deplacerPion);
pion2.addEventListener(MouseEvent.MOUSE_DOWN,deplacerPion);
pion1.addEventListener(MouseEvent.MOUSE_UP,fixerPion);
pion2.addEventListener(MouseEvent.MOUSE_UP,fixerPion);
function deplacerPion(evt:MouseEvent) {
evt.currentTarget.startDrag();
}
function fixerPion(evt:MouseEvent) {
stopDrag();
}
Lorsque nous réglons la propriété mouseEnabled à false pour une occurrence donnée, les
événements souris se rapportant à cette dernière ne peuvent plus être détectés.
Remarque
Si vous aviez davantage d’occurrences à gérer, il serait préférable d’utiliser une boucle for() pour placer
les pions sur la scène et d’écrire ensuite les scripts de leurs comportements (lignes contenues dans
l’instruction if()).
CHAPITRE 4
113
Nous avons placé sur la scène un interrupteur représenté par un rectangle incliné et deux
pions. Ces derniers peuvent être déplacés par glisser-déposer.
Si vous cliquez sur l’interrupteur, son échelle verticale (scaleY) bascule à -1, donnant ainsi
l’impression qu’il s’abaisse. Par la même occasion, nous rendons les pions insaisissables et
légèrement transparents. Si vous cliquez à nouveau sur l’interrupteur, les pions redeviennent
opaques et mobiles.
declencheur.addEventListener(MouseEvent.CLICK,desactiverPions);
function desactiverPions(evt:MouseEvent) {
evt.currentTarget.scaleY*=-1;
if (evt.currentTarget.scaleY==-1) {
pion1.mouseEnabled = false;
pion1.alpha = 0.5;
pion2.mouseEnabled = false;
pion2.alpha = 0.5;
} else {
pion1.mouseEnabled = true;
pion1.alpha = 1;
pion2.mouseEnabled = true;
pion2.alpha = 1;
}
}
pion1.addEventListener(MouseEvent.MOUSE_DOWN,deplacerPion);
pion2.addEventListener(MouseEvent.MOUSE_DOWN,deplacerPion);
pion1.addEventListener(MouseEvent.MOUSE_UP,fixerPion);
pion2.addEventListener(MouseEvent.MOUSE_UP,fixerPion);
function deplacerPion(evt:MouseEvent) {
evt.currentTarget.startDrag();
}
function fixerPion(evt:MouseEvent) {
stopDrag();
}
Lorsque nous réglons la propriété mouseEnabled à false pour une occurrence donnée, les
événements souris se rapportant à cette dernière ne peuvent plus être détectés.
Remarque
Si vous aviez davantage d’occurrences à gérer, il serait préférable d’utiliser une boucle for() pour placer
les pions sur la scène et d’écrire ensuite les scripts de leurs comportements (lignes contenues dans
l’instruction if()).
