Problème onRollOut dans movieClip

Résolu
cs_Yoann19 Messages postés 8 Date d'inscription dimanche 11 avril 2004 Statut Membre Dernière intervention 11 novembre 2006 - 24 févr. 2005 à 15:43
cs_Yoann19 Messages postés 8 Date d'inscription dimanche 11 avril 2004 Statut Membre Dernière intervention 11 novembre 2006 - 24 févr. 2005 à 18:09
Bonjour
tout le monde,









Je vais
essayer d’expliquer clairement mon pb,









Dans un
movieclip principal représentant un terrain, plusieurs movieclip représentant
des personnages sont affichés ici et là. Lorsqu’on clique sur un personnage, un
movieclip extrait de la librairie s’ affiche au dessus de lui. Ce
movieclip contient lui-meme plusieurs boutons (eux-memes des movieclip). J’ai
créé un évènement onRollOut qui permet de supprimer ce movieclip lorque l’on
sort de ce meme movieclip. Le problème vient du fait que lorsque je mets cet
évènement en place, les boutons du MC ne sont plus actifs …









Voila le
bout de code (merci pour ceux qui vont se casser la tête dessus) :









//affiche
la fenetre d'actions du personnage




game[name].clip.onPress = function () {









//on
supprime le message d'infos basiques du personnage




removeMovieClip(game["infos_case1"].clip);




delete game["infos_case1"];









var numero = game[this._name].posi;




var name="infos_case2";









game[name]= new game["Infos"]();




game.clip.attachMovie("infos_case", name,
1000000);




game[name].clip=game.clip[name];









game[name].clip._x = game[name].clip._xmouse+50;




game[name].clip._y = game[name].clip._ymouse-100;




game[name].clip.gotoAndStop(4);














//on
affiche les données




game[name].clip.matricule2.text=game.persos[numero][0];




game[name].clip.nom2.text=game.persos[numero][3];









trace(game[name].clip.parler._name);









//on
supprime la fenetre d'actions si on sort du cadre




game[name].clip.onRollOut = function ()




{




removeMovieClip(game[name].clip);




delete
game[name];




}









game[name].clip.attaquer.onPress = function ()




{




getURL("http://127.0.0.1/jeu3/attaque.php3","_blank");




trace("OK");




}

4 réponses

Prouprou_Sensei Messages postés 517 Date d'inscription mardi 23 décembre 2003 Statut Membre Dernière intervention 24 octobre 2006 1
24 févr. 2005 à 16:47
Alors il reste une solution, si ton clip est rectangle ou carré.
Il faut placer un gestionnaire d'evenement onMouseMove et verifier la position de la souris par rapport a ton clip.
ca donnera un truc dans le genre

_root.onMouseMove = function() {
trace("marche");
if (_root._xmouse<monclip._x || _root._xmouse>monclip._x+monclip._width || _root._ymouse<monclip._y || _root._ymouse>monclip._y+monclip._height) {
monclip.removeMovieClip();
delete _root.onMouseMove;
}
};

Verifications a fair sur le code c du handMade.
A tchao !
3
Prouprou_Sensei Messages postés 517 Date d'inscription mardi 23 décembre 2003 Statut Membre Dernière intervention 24 octobre 2006 1
24 févr. 2005 à 16:02
Quand on met un evenment de souris sur un clip, les clips de niveaux inferieurs ne repondent plus (ce qui est normal).

Il te suffit de creer un autre clip,en arriere plan, dans le clip que
tu attach dynamiquement et que tu mette l'evenement onRollOut sur ce
fond.

Comme ce clip sera derriere les autres, il ne genera pas les clip de niveau superieur...


En esperant avoir compris et repondu a ton probleme...
A tchao !
0
cs_Yoann19 Messages postés 8 Date d'inscription dimanche 11 avril 2004 Statut Membre Dernière intervention 11 novembre 2006
24 févr. 2005 à 16:31
En fait j'ai déja essayé en mettant un clip derrière tous les autres mais ca pose un autre problème :

Le clip disparait bien quand on sort du cadre mais il disparait
également lorsque l'on passe sur les boutons contenu dans le clip ...
Apparemment l'évènement onRollOut fonctionne également lorsqu'on l'on
passe au-dessus de ces boutons (des MC) eux-memes étant au-dessus du
clip que j'ai placé au fond.



Merci pour ta réponse en tt cas
0
cs_Yoann19 Messages postés 8 Date d'inscription dimanche 11 avril 2004 Statut Membre Dernière intervention 11 novembre 2006
24 févr. 2005 à 18:09
Ca marche ! Merci pour cette solution, y'avait peut-etre moyen de se
débrouiller avec les onRollOver mais j'avais déja tenté bcp de choses
... J'ai juste du régler un petit pb en bidouillant, je
m'explique : vu que le clip est supprimé dès qu'on est pas
dessus, il était supprimé d'entrée de jeu car le curseur de ma souris
ne se trouvait pas dedans à la création ... mais j'ai réussi tout de
même réussi à régler ce petit souci



Merci Prouprou pour cette réponse
0
Rejoignez-nous