[AS2] onMouseDown sur un Movieclip, mais c'est toute la scene qui réagit

Résolu
Twinspirit Messages postés 58 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 7 mai 2012 - 14 juil. 2010 à 17:41
Twinspirit Messages postés 58 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 7 mai 2012 - 15 juil. 2010 à 06:53
Bonjour,

C'est étonnant, mais je suis un dev AS3 qui commence à peine à apprendre l'AS2 (ouaip, j'ai fait les choses à l'envers !). Je dois dire que je galère pas mal (AS3, c'est quand même plus pratique.)

Mon problème concerne l'évènement onMouseDown sur un Movieclip.
Voici le code :
stop();
//Je regarde tous les clips de la scene
for (var i in this) {
    if (typeof (this[i]) == "movieclip") 
{
    	trace("movie clip "+this[i]._name+" is at depth "+this[i].getDepth()+" and is a "+this[i].ptype);
if (this[i].ptype == "source")
                //Si ce clip est une source 
{
//Je place un evenement onMouseDown dessus
                        this[i].onMouseDown = function()
{
trace (this._name);
startLine(this);	
}
}
    }
}
//Mais cette méthode est appelée quelque soit l'endroit ou je clique...
function startLine(evtTarget:MovieClip)
{
trace ("mouseDown on source : "+evtTarget._name);
}


Le but est de détecter le "onMousedown" sur les clips portant la variable ptype == "source" et aucun autre, afin de tracer une ligne à partir de ce clip.

L'embêtant, c'est que quelque soit l'endroit ou je clique sur la scène, il détecte un clic sur ma source, un clip que j'ai nommé liner01, et qui porte le code suivant :
var ptype:String = "source";


Je ne comprend pas ce qui cloche.
Quelqu'un peut m'aider ?

TwFlash

1 réponse

Twinspirit Messages postés 58 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 7 mai 2012
15 juil. 2010 à 06:53
J'ai finalement réglé mon problème avec ce tuto :
http://www.senocular.com/flash/tutorials/buttoncapturing/

Le onMouseDown est toujours appliqué toutes les occurences capables de la recevoir. Il faut donc y rajouter un hitTest pour verifier que l'on est bien sur notre cible.

AS2, pffff...

TwFlash
3
Rejoignez-nous