nina75014
Messages postés6Date d'inscriptionvendredi 11 juin 2010StatutMembreDernière intervention 2 septembre 2010
-
2 sept. 2010 à 21:11
jetmix
Messages postés19Date d'inscriptionjeudi 3 juin 2004StatutMembreDernière intervention15 septembre 2010
-
7 sept. 2010 à 15:11
Bonjour,
Je suis plutôt débutante en programmation ActionScript et ma question vous semblera peut-être idiote...
Je réalise actuellement un accordeur de guitare avec Flash : lorsque l'on clique sur une corde un son d'une quinzaine de secondes se lance pour que l'on puisse accorder sa guitare. Cependant lorsque l'on clique immédiatement sur une autre corde les sons se superposent. Que dois-je faire pour qu'un son s'arrête lorsqu'un autre est lancé et qu'il s'arrête également quand il est fini sans se répéter ? (Pour la deuxième chose je crois que c'est quelque chose comme SOUND_COMPLETE mais je ne suis pas sûre)
Voici à quoi ressemble mon code :
var cord1:Corde1 = new Corde1();
cord1.buttonMode=true;
cord1.scaleX=cord1.scaleY=0.7;
cord1.x = 150;
cord1.y = 230;
addChild(cord1);
var cord2:Corde2 = new Corde2();
cord2.buttonMode=true;
cord2.scaleX=cord2.scaleY=0.7;
cord2.x = 135;
cord2.y = 247;
addChild(cord2);
// ...et ainsi de suite pour les 6 cordes
cord1.addEventListener(MouseEvent.MOUSE_UP, auClic1);
function auClic1(event:MouseEvent):void {
// Charger les sons de la bibliothèque
var son1:MiCorde1 = new MiCorde1();
son1.play();
}
cord2.addEventListener(MouseEvent.MOUSE_UP, auClic2);
function auClic2(event:MouseEvent):void {
// Charger les sons de la bibliothèque
var son2:SiCorde2 = new SiCorde2();
son2.play();
}
// ...et ainsi de suite pour les 6 cordes
jetmix
Messages postés19Date d'inscriptionjeudi 3 juin 2004StatutMembreDernière intervention15 septembre 2010 7 sept. 2010 à 15:11
Bonjour, je pense que le plus simple serait d'utiliser une seule variable de son (sans la typer) :
var son;
cord1.addEventListener(MouseEvent.MOUSE_UP, auClic1);
function auClic1(event:MouseEvent):void {
// Charger les sons de la bibliothèque
son = new MiCorde1();
son.play();
}
cord2.addEventListener(MouseEvent.MOUSE_UP, auClic2);
function auClic2(event:MouseEvent):void {
// Charger les sons de la bibliothèque
son = new SiCorde2();
son.play();
}