Chargements de données et execution du code ... pas top.

Résolu
on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010 - 15 avril 2009 à 10:27
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 - 15 avril 2009 à 13:01
Bonjour à tous.
Bon mon titre est pas génial mais comme je saisis pas mon problème j'ai un peu de peine à le décrire. Alors voilà, pour mon pénible apprentissage de l'AS3 j'ai créé une petite application. Il s'agit d'un piano. Le souci c'est que le code fonctionne mais pas très bien. En fait j'ai ajouter un évènement ROLL_OUT pour forcer le code à lire ma fonction stop.

Est-ce que ma construction est correct ? Et si non sauriez-vous d'ou vient le problème ?
D'avance merci :=)

var clips:MovieClip;

for (var i:int = 1; i<25; i++)
{   
    clips = this["clip"+i] as MovieClip;
   
    if (clips)
    {
        clips.stop();
        clips.id = i;
        clips.addEventListener(MouseEvent.MOUSE_DOWN, functionPlay);
        clips.addEventListener(MouseEvent.MOUSE_UP, functionStop);
        //clips.addEventListener(MouseEvent.ROLL_OUT, functionStop);
    }
}

function functionPlay(event:MouseEvent):void
{
    var target:MovieClip = event.currentTarget as MovieClip;
    target.gotoAndStop(2);
    var sound:Sound = new Sound;
    var request:URLRequest = new URLRequest("notes/son" + target.id + ".mp3");
    sound.load(request);
    sound.play();
}

function functionStop(event:MouseEvent):void
{
    var clipCTarget:MovieClip = event.currentTarget as MovieClip;
    clipCTarget.gotoAndStop(1);
}

Pour mieux comprendre de quoi il s'agit:
http://www.telov.ch/clavierBase/clavierBase.swf

@+.
telov.ch

7 réponses

cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
15 avril 2009 à 11:43
Salut on_drag_on
Avant de répondre à ton post, j'aimerai faire une remarque sur la gestion du son.
C'est mieux de charger une bonne fois pour toute les sons des touches que de les charger à chaque fois que tu appuis sur l'une d'elle. Aussi j'aurais créé une classe Touche (extends MovieClip) pour être plus clair au niveau conception de l'application.
Sinon je ne vois pas exactement qu'elle est ton problème .

bali_balo....=]
3
Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011
15 avril 2009 à 11:52
Exact comme le dit bali_balo.

Créé un Array et push a l'interieur tes sons et effectue un preload sur cet array avant de commencer l'application afin d'etre sur que tout tes sons sont chargés.

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
3
Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011
15 avril 2009 à 11:39
Quel est le problème exactement ?

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
0
on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010
15 avril 2009 à 11:58
Ok , merci pour vos réponses , donc mon code vous semble correct. Alors en effet je vais attendre que le chargement soit fait, l'ennui c'est que si j'ai une 100aine de sons à charger ça risque de prendre du temps même si les sons sont courts ... enfin je vais faire des essais dans ce sens, merci ;=)

@+.
telov.ch
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
15 avril 2009 à 12:14
Je ne comprend toujours pas le sens de ceci  "Le souci c'est que le code fonctionne mais pas très bien"

bali_balo....=]
0
on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010
15 avril 2009 à 12:23
Ben c'est un peu ce que t'as dit ... il me semble que ça croche parfois quand je relâche si je clique très rapidement sur une autre touche ... non? Donc en fait le son à peut-être pas tout à fait de temps d'être chargé avant de lancé l'anim du clip ... enfin je pinaille mais bon j'aimerais bien que l'exécution fonctionne parfaitement
@+.
telov.ch
0
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
15 avril 2009 à 13:01
En effet le bug que tu avais venait de là et suis mon conseil au dessus et ça sera réglé.
Bon courage.

bali_balo....=]
0
Rejoignez-nous