Forums Développement Multimédia

Aller au contenu

code lunatique...

PAO Flash

23 réponses à ce sujet

#1 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 30 September 2007 - 13:22 PM

Bonjour tous le monde,
Je suis nouveau sur ce forum, Je me permet de solliciter votre aide, car je rencontre un problème avec un code : je vous explique donc mon problème :

J'avais réalisé un animation où en cliquant sur un dvd, le boitier s'ouvrait, ensuite il faut placer ce dvd dans le lecteur et plusieurs actions se lancent : la télé s'allume, le dvd disparait etc....
Ce code marchait très bien jusqu'au jour où j'ai eu besoin de réutiliser ce code pour exactement la même chose mais pour un dvd different, là le code pour le premier dvd marche toujours mais pour ce qui concerne le deuxième, aucun moyen que le tween et les action qui suivent marchent...

???!!! il doit y avoir un problème, une sorte d'interférence entre les deux codes presque identiques (seul les occurences changent).

Cela dit, j'ai réalisé ce code à l'époque avec un flasheur experimenté et j'avoue avoir bcp de mal à cerner le problème car ce code depasse de loin mes competences....
Je m'en remet donc à vous pour m'aider....

Merci
je vous donne mes sources :
-sur celui là seul un code est dans l'anim donc ça marche parfaitement :
http://romain.l4m3r.info/marche.swf
http://romain.l4m3r.info/marche.fla

-sur le second j'ai rajouté le code pour le deuxieme dvd et là, impossible d'avoir un tween et les actions qui suivent pour le deuxième dvd...
http://romain.l4m3r.info/marchepu.swf
http://romain.l4m3r.info/marchepu.fla

Merci bcp
@ +, rom1

#2 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 30 September 2007 - 14:09 PM

//voici le code de départ : celui qui marche pour un mais pas pour deux :


import mx.transitions.Tween;
import mx.transitions.easing.*;

cd.onPress = function() {
startDrag(this);
lecteur.gotoAndPlay(2);
};

cd.onMouseUp = function() {
stopDrag();
this._x = 515;
this._y = 120;
lecteur.gotoAndPlay(7);
};

this.onEnterFrame = function() {
var HL = {x:cd._x, y:cd._y};
localToGlobal(HL);
if (zone.hitTest(HL.x, HL.y, true)) {
scaleMovie(100);
} else if (!zone.hitTest(cd._x, cd._y, true)) {
scaleMovie(20);
}
if (zone1.hitTest(cd)) {
tv.gotoAndPlay(2);
cd.gotoAndPlay(1);
zone.gotoAndPlay("plic");

}
};

function scaleMovie(newScale) {
var startXScale = cd._xscale;
var startYScale = cd._yscale;
var endScale = newScale;
new Tween(cd, "_xscale", Bounce.easeOut, startXScale, endScale, .2, true);
new Tween(cd, "_yscale", Bounce.easeOut, startYScale, endScale, .2, true);
return;
}


#3 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 01 October 2007 - 17:43 PM

Personne n'a d'idées????

#4 etrange.melancolie

    Ceinture Noire

  • Members
  • PipPipPipPipPipPipPip
  • 390 messages

Posté 03 October 2007 - 18:10 PM

Quels sont les noms d'occurence de tes clips cds?
Quasiment sur que ça vient de la...

#5 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 04 October 2007 - 11:13 AM

Vérifié et revérifié les ocuurences sont les bonnes....
par contre je me di que deux this.onEnterFrame = function, ç'est surement pas bon mais je ne c pas comment regrouper les deux code en un, surment en créant une fonction mais ca non plus je ne sais pas tro comment proceder

#6 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 05 October 2007 - 14:15 PM

CITATION(romain_117 @ Oct 4 2007, 10:13 AM) Voir le message
Vérifié et revérifié les ocuurences sont les bonnes....
par contre je me di que deux this.onEnterFrame = function, ç'est surement pas bon mais je ne c pas comment regrouper les deux code en un, surment en créant une fonction mais ca non plus je ne sais pas tro comment proceder



Help me plz!!!!

#7 didouche

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4461 messages

Posté 05 October 2007 - 15:25 PM

Le problème vient effectivement de tes deux onEnterFrame.

Il n'y a qu'une des deux fonctions associées à cet événement qui est appelée, c'est la dernière à etre déclarée donc la dernière dans l'ordre des calques donc celle pour le temps.

Si tu inverse tes calques tu verras que ce sera l'inverse.

Solution: centraliser ton code et faire une seule fonction. smile.gif

#8 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 05 October 2007 - 21:05 PM

tout d'abord désolé pour le language sms, je vais essayé d'écrire normallement...

Je pense en effet, que tu as ciblé le problème, car l'inversion des calques provoque ce que tu dis. Cela dit, je suis vraiment de niveau débutant et ce code me depasse completement, et l'aide de flash ne m'aide pas beaucoup, c'est vraiment abstrait, avec l'aide d'un flasheur j'ai récupérer cela :

function maFonction(param1:MovieClip, param2:Number){
trace(param1 + " est un clip que vous avez passé en paramètre");
trace(param2 + " est un nombre que vous avez passé en paramètre");
}

maFonction(mon_clip1, 50);
maFonction(mon_clip2, 250);
maFonction(mon_clip3, -20);

Une explication d'une fonction, mais je ne suis pas plus avancé, si tu pouvais me donner un bon coup de main pour cette fusion de ces deux codes, je t'en serai très reconnaissant, car là je nage, je nage......

Merci @+, romain




#9 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 07 October 2007 - 12:41 PM

Help.....

#10 fullgaz

    Ceinture Verte

  • Members
  • PipPipPipPip
  • 56 messages

Posté 07 October 2007 - 13:01 PM

CITATION(romain_117 @ Oct 7 2007, 03:41 PM) Voir le message
Help.....

Salut Romain,

j'ai télécharger tes deux codes en fla, et je les générés.

j'ai une premiere question: qu'est ce qu'on doit obtenir comme resultats? Car j'ai exactement la même chose avec le fla qui marche et celui qui marche pas!

Essaye de me décrire, ce qu'il doit faire...

A+

#11 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 07 October 2007 - 15:41 PM

Merci tout d'abord de t'interesser à mon pb,
Alors, en faite qu'en tu clique sur le cd le plus au fond, un boiiter dvd s'ouvre, là tu peux draguer le cd jusqu'au lecteur dvd, il y a un tween, sur le premier fla, il n'y a qu'un code pour ce cd et il marche, par contre sur le deuxieme fla j'ai rajouter le meme code en changeant les occurences pour l'adapter à l'autre cd, tu peux cliquer sur l'autre cd, un autre boitier dvd s'ouvre mais là je tween marche pas ainsi que les déclenchement d'action lié au lecteur dvd...

Voilà j'espere que j'ai etais un peu plus clair

Merci bcp de ton interresement à mon problème
@+, Romain

#12 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 08 October 2007 - 15:48 PM

Help!!!!!!!!!!!!!!!!! plz.......... gourou.gif

#13 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 09 October 2007 - 14:59 PM

aidez moi svp........

#14 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 09 October 2007 - 19:12 PM

il n'y a personne qui sait comment réaliser cette fusion???

#15 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 10 October 2007 - 11:04 AM

.....

#16 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 12 October 2007 - 11:43 AM

Tj personne???

#17 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 15 October 2007 - 09:45 AM

HELPPPPPPPPPPPPPPPPPPPPPP !!!!!!!!!!!!!!!!!!!!!!

#18 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 16 October 2007 - 12:07 PM

Svp qq1 peux t-il m'aider je m'en sort pas ac ce problème
Merci
Romain

#19 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 19 October 2007 - 16:52 PM

Svp qq1 peux t-il m'aider je m'en sort pas ac ce problème
Merci
Romain

#20 DLUS

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 83 messages

Posté 19 October 2007 - 19:02 PM

Bonsoir,

Est-cela que tu cherches à faire ? Je te laisse le lien vers le swf en pièce jointe.

Dlus
www.labullecreative.com

Fichier(s) joint(s)



#21 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 20 October 2007 - 11:34 AM

Olalalala , c génial, les deux dvd marchent nikel, j'y croyais plus que qq1 aller reussir à m'aider autant!!!!!!!!!!
Merci bcp si à l'occaz tu peux balancer le fla, je t'en serais très fortement reconnaissant
TU DECHIRES!!!!!!!!!!!!!!!!!!!!!!!!
MErci

#22 DLUS

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 83 messages

Posté 20 October 2007 - 14:25 PM

Bonjour,

Pour ce qui est du fla, j'ai pas modifié grand chose finalement.

J'ai juste unifié ta fonction "scalemovie" en plaçant en paramètres le nom du mc cible, il n'y a plus qu'un enterframe. Je n'ai rien changé d'autres, c'est le minimum pour que ça fonctionne,on pourrait épurer le code de façon élégante. Mais ceci est une autre histoire.

Dlus
www.labullecreative.com


Fichier(s) joint(s)

  • Fichier joint  marche.fla   3 Mo   1 téléchargement(s)


#23 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 21 October 2007 - 13:00 PM

Tt d'abord merci encore enormément car même si tu trouve que tu n'as pas fait grand chose, pour moi tu en as fait énormément car tu ma débloqué d'un problème que j'avais bcp de mal à résoudre car le code dépasse mes compétences de programmation.
Toutefois, et j'espère ne pas abuser de ta gentillesse je rencontre un nouveau problème?!
Je me suis dit "si il y'en a pour 2 y'en aura pour 3"

Je m'explique, le code que tu m'a modifié permet de faire s'actionner deux dvds, mais en réalité j'en ai trois, alors j'ai complété ton code pour faire marcher le troisième mais là catastrophe, pas de scalemovie pour le troisième???!!!

Je te balance le code si tu comprends et que tu peux me donner ce dernier coup de pouce je t'en serais très reconnaissant
UN GRAND MERCI
Romain

this.onEnterFrame = function() {
var HL = {x:cd._x, y:cd._y};
localToGlobal(HL);
if (zone.hitTest(HL.x, HL.y, true)) {
scaleMovie(100,cd);
} else if (!zone.hitTest(cd._x, cd._y, true)) {
scaleMovie(20,cd);
}
if (zone1.hitTest(cd)) {
tv.gotoAndPlay(2);
cd.gotoAndPlay(1);
zone.gotoAndPlay("plic");

}
var TR = {x:vol._x, y:vol._y};

if (bone.hitTest(TR.x, TR.y, true)) {
scaleMovie(100,vol);
} else if (!bone.hitTest(vol._x, vol._y, true)) {
scaleMovie(20,vol);
}
if (zone1.hitTest(vol)) {
tv.gotoAndPlay(3);
vol.gotoAndPlay(1);
bone.gotoAndPlay("manix");
getURL("galileo.rar");

}
var PH = {x:vil._x, y:vil._y};

if (lone.hitTest(PH.x, PH.y, true)) {
scaleMovie(100,vil);
} else if (!lone.hitTest(vil._x, vil._y, true)) {
scaleMovie(20,vil);
}
if (zone1.hitTest(vil)) {
tv.gotoAndPlay(3);
vil.gotoAndPlay(1);
lone.gotoAndPlay("durez");
getURL("galileo.rar");

}
};

function scaleMovie(newScale,mc) {
var startXScale = mc._xscale;
var startYScale = mc._yscale;
var endScale = newScale;
new Tween(mc, "_xscale", Bounce.easeOut, startXScale, endScale, .2, true);
new Tween(mc, "_yscale", Bounce.easeOut, startYScale, endScale, .2, true);
}

#24 romain_117

    Ceinture Jaune

  • Members
  • PipPip
  • 28 messages

Posté 21 October 2007 - 13:38 PM

Non en faite c bon dsl je m'etais tromper
Encore mille merci
@+



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)