nackdawa
Messages postés66Date d'inscriptionmercredi 7 septembre 2005StatutMembreDernière intervention28 mai 2010
-
6 sept. 2007 à 09:44
nackdawa
Messages postés66Date d'inscriptionmercredi 7 septembre 2005StatutMembreDernière intervention28 mai 2010
-
6 sept. 2007 à 15:41
Bonjour à tous,
Je me confronte à petit soucis. Voilà, j'ai beau eu chercher sur tous les forums mais rien. Je vous expose mon problème : j'ai une bande d'image qui deffile en boucle l'orsque l'on clique sur un bouton. Le truc que je voudrais faire, est que lorsqu'une image de la bande passe au milieu de scène, quelle prenne un autre aspect. Je voudrais un code qui dise que l'orsque qu'un mc passe sur ou sous une zone que ça déclanche un code.
Voilà comment j'imgine le code :
if ( btn[i]. passe dans la zone "a"){
btn[i]._xscale = 120
btn[i]._ysacle = 120
}
mais je ne trouve pas de solution. Je vous mets tout mon code ci dessous
sur la premiere image j'ai deux boutons :
btnD.onRollOver = function() {
gotoAndStop(2);
};
btnD.onRollOut = function() {
gotoAndStop(1);
};
btnG.onRollOver = function() {
gotoAndStop(2);
};
btnG.onRollOut = function() {
gotoAndStop(1);
};
stop();
et sur l'image deux j'ai un mc_controller sur lequel il y a :
onClipEvent (load) {
buteegauche = -227;
buteedroite = 996;
largeurbande = 1230;
nombretotalcarres = 21;
speed = 20;
//btnx = "_root.menu.btn"+i;
}
onClipEvent (enterFrame) {
decalagex = (_root._xmouse-380)/speed;
for (i=1; i<nombretotalcarres+1; i++) {
//trace("_root.menu.btn"+i);
cible = "_root.menu.btn"+i; // ça c ma bande d'image composée de 21 mc nommé btn1,2....
eval(cible)._x -= decalagex;
if (eval(cible)._xbuteedroite) {
eval(cible)._x -= largeurbande;
}
}
}
Si quelqu'un connait un tuto ou le code pour dire un truc comme ça :
monMc.surMonMc2 = function (){}
ou
if ( btn[i]. _x=600){
btn[i]._xscale = 120
btn[i]._ysacle = 120
}
Il est le bienvenue
Merki
Nackdawa
A voir également:
Recherche code mc passe sur un autre mc puis change change
nackdawa
Messages postés66Date d'inscriptionmercredi 7 septembre 2005StatutMembreDernière intervention28 mai 2010 6 sept. 2007 à 15:41
Me revoilà ;)
Je reviens car il y a une toute petite erreure dans le code, ce que ne produit plus de boucle. C'est juste une petit oublis de "eval". Donc ce qui donne :
onClipEvent (load) {
onClipEvent (load) {
buteegauche = -437.5;
buteedroite = 1207.6;
largeurbande = 1655;
nombretotalcarres = 27;
speed = 15;
//btnx = "_root.menu.btn"+i;
//btnx = "_root.menu.btn"+i;
}
onClipEvent (enterFrame) {
decalagex = (_root._xmouse-380)/speed;
for (i=1; i<nombretotalcarres+1; i++) {
cible = _root.menu["btn"+i];
cible._x -= decalagex;
var PosX = cible._x;
if (PosXbuteedroite) {
eval(cible)._x -= largeurbande;
}
if (PosX>580 && PosX<620) {
cible._xscale = 150-Math.abs(600-PosX);
} else {
cible._xscale = 100;
}
cible._yscale = cible._xscale;
}
}
Et voilou....
Bonne journée a toi girou ;)
Nackdawa
cs_Girou
Messages postés1203Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention23 juillet 20092 6 sept. 2007 à 10:23
Salut,
Ta solution en fonction de la position du clip est bonne, sauf qu'il vaut mieux préciser une plage de pixels pour être sur que l'agrandissement ai lieu (juste 600 c'est court, si le clip est a 600,5 -> pas d'agrandissement)
if ( btn[i]. _x>580 && btn[i]. _x<620){
btn[i]._xscale = 120-Math.abs(600-btn[i]._x) // complication de la formule pour un mouvement plus progressif niveau taille ...
btn[i]._yscale =btn[i]._xscale
}else{
btn[i]._xscale = 100
btn[i]._yscale =btn[i]._xscale
}
nackdawa
Messages postés66Date d'inscriptionmercredi 7 septembre 2005StatutMembreDernière intervention28 mai 2010 6 sept. 2007 à 10:54
Merci de ta réponse, mais je n'arrive pas à l'intégrer dans mon code. ça ne provoque rien. Je t'explique ce que j'ai essayer de faire si tu voix ou est mon erreur.
_1
j'ai essayer sur un image clée séparer du code clipEvent
donc :
if ( _root.menu.btn[i]. _x>580 && btn[i]. _x<620){
_root.menu.btn[i]._xscale
= 120-Math.abs(600-btn[i]._x) // complication de la formule pour
un mouvement plus progressif niveau taille ...
_root.menu.btn[i]._yscale =btn[i]._xscale
}else{
_root.menu.btn[i]._xscale = 100
_root.menu.btn[i]._yscale =btn[i]._xscale
}
//------------------------------------
_root.menu.btn[i] : ce sont les MC dans mon clip menu
ça ne marche pas
_2
j'ai essayer de le mettre dans le onClipEvent
ionClipEvent (load) {
buteegauche = -227;
buteedroite = 996;
largeurbande = 1230;
nombretotalcarres = 21;
speed = 20;
//btnx = "_root.menu.btn"+i;
}
onClipEvent (enterFrame) {
decalagex = (_root._xmouse-380)/speed;
for (i=1; i<nombretotalcarres+1; i++) {
//trace("_root.menu.btn"+i);
cible = "_root.menu.btn"+i;
eval(cible)._x -= decalagex;
if (eval(cible)._xbuteedroite) {
eval(cible)._x -= largeurbande;
}
if (_root.menu.btn[i]._x>580 && _root.menu.btn[i]._x<620) {
trace("_root.menu.btn"+i);
_root.menu.btn[i]._xscale = 120-Math.abs(600-btn[i]._x);
// complication de la formule pour un mouvement plus progressif niveau taille ...
_root.menu.btn[i]._yscale = btn[i]._xscale;
} else {
_root.menu.btn[i]._xscale = 100;
_root.menu.btn[i]._yscale = btn[i]._xscale;
}
}
}
marche pas non plus
et j'ai aussi de le mettre dans le clip menu directement:
if ( btn[i]. _x>580 && btn[i]. _x<620){
btn[i]._xscale
= 120-Math.abs(600-btn[i]._x) // complication de la formule pour
un mouvement plus progressif niveau taille ...
btn[i]._yscale =btn[i]._xscale
}else{
btn[i]._xscale = 100
btn[i]._yscale =btn[i]._xscale
}
marche pas non plus
help me, je ne suis pas coder à la base...mes webdesigner
nackdawa
Vous n’avez pas trouvé la réponse que vous recherchez ?