Stopper tete de lecture selon bouton cliqué

[Résolu]
Signaler
Messages postés
10
Date d'inscription
lundi 8 août 2005
Statut
Membre
Dernière intervention
12 février 2007
-
Messages postés
10
Date d'inscription
lundi 8 août 2005
Statut
Membre
Dernière intervention
12 février 2007
-
Bonjour,

Voilà : j'ai plusieurs boutons sur mon animation, avec un stop au début.
J'aimerais que, lorsque j'appuie sur le premier bouton, mon anim se lit d'une image donnée (disons la n°100) à une autre (disons la n°200) puis appelle une URL. Mais si j'appuie sur un autre bouton, l'anim se lit à partir de la même image mais s'arrête plus loin (par exemple de la n°100 à la 400, puis appelle une autre URL).

Je ne peux donc pas installer d'action stop(); sur la timeline, je suppose que je dois déterminer chaque fonction au départ, puis un clic sur chaque bouton appellera la fonction rattachée à ce bonton.
Mais je n'y connais rien en fonction, ça devrait donner qqchose de ce genre ?
à mettre sur la première frame :
function machin (){
gotoAndPlay(100);
if(et là j'aimerais dire que quand on arrive à la frame 200 je stoppe et j'appelle telle URL, mais je sais pas comment);
}
function truc (){
gotoAndPlay(100);
if(quand on arrive à la frame 400 je stoppe et j'appelle une URL);
}

Pensez-vous que mon raisonnement est bon pour résoudre mon problème ? et comment demander à la tête de lecture de s'arrêter lorsqu'elle arrive à telle image ?

Merci pour vos réponses.
Cordialement,
valeriet

6 réponses

Messages postés
169
Date d'inscription
lundi 11 décembre 2006
Statut
Membre
Dernière intervention
25 janvier 2014
1
Salut,

Je pense qu'il te faut créer une nouvelle variable parce qu'il te manque une info
quel bouton à été appuyé?

Voilà ce que j'ai fait:
Il faut créer une nouvelle variable qui="";

Sur le bouton 1 tu aura par exemple:
on(press){
_root.x=50;
_root.qui="bouton1";
}

Sur le bouton 2...
on(press){
_root.qui="bouton2";
_root.x=42;
}
Et dans le enterFrame tu aura:

onEnterFrame=function(){
//Une fois que l'on arrive à l'image voulu
if(_currentframe==x){
//Si l'utilisateur à appuyé sur le bouton1
if(qui=="bouton1"){
trace("Je lance mon liens1");
}
//Si l'utilisateur à appuyé sur le bouton2
if(qui=="bouton2"){
trace("Je lance mon liens2");
}
}
}

N'hésite pas à utiliser les variables pour communiquer entre différents éléments.
Là je crois qu'on tient le bon bout!

Je ne sait pas si j'ai était très claire...
Messages postés
169
Date d'inscription
lundi 11 décembre 2006
Statut
Membre
Dernière intervention
25 janvier 2014
1
Salut,

Le paramètre _currentframe renvoie le numéro de l'image où se situe la tête de lecture.

Si la tête de lecture est à l'image 50 dans le clip nommé "anim"placé sur la scène.
position=_root.anim._currentframe

position sera = à 50
Messages postés
10
Date d'inscription
lundi 8 août 2005
Statut
Membre
Dernière intervention
12 février 2007

Bonjour Mansuz
Merci pour le tuyau mais je n'y arrive toujours pas...

Voici ce que j'ai mis sur 1 des boutons :
on(press){
 truc();
}

Puis sur la frame principale :
function truc(){
 gotoAndPlay("nomdetiquette");
 if(_currentframe= 213){
  getURL("adresseURL","_parent");
 }
}

Mais ça ne marche pas, l'anim appelle tout de suite l'URL sans jouer jusqu'à la frame 213 !
et c'est la meme chose en définissant "position =-root._currentframe;" puis en appelant "position" sur la frame principale :

function truc(){
 gotoAndPlay("nomdetiquette");
 if(position=213){
  getURL("adresseURL","_parent");
 }
}

Comment faire pour voir vraiment l'animation jusqu'à la frame 213 avant d'être redirigé ???
Messages postés
169
Date d'inscription
lundi 11 décembre 2006
Statut
Membre
Dernière intervention
25 janvier 2014
1
Salut,

1> Pour tester une égalité il faut mettre 2 signe =
if(_currentframe==213){ (Si la tête de lecture est à l'image 213 je fait ca).
}
De plus je ne sait pas si c'est vraiment la bonne solutions d'appeler la fonction avec un bouton.

on(press){(La fonction est appeller uniquement lors du passage à l'état normal
à l'état pressé.
truc();
}
Il faudrait plutôt faire tester à chaque instant.
Ca serait du style:
Sur les boutons:
on(press){
//On change la variable x(par exemple x=200;)
}
//Sur l'autre boutons.
on(press){
//On change la variable x(par exemple x=100;)
}
//sur la première image clé
onEnterFrame=function(){
if(_currentframe==x){ (si ton anim est sur la scène.
trace("Je lance mon liens");
}

Bon n'hésite pas si ta du mal à comprendre!
Messages postés
10
Date d'inscription
lundi 8 août 2005
Statut
Membre
Dernière intervention
12 février 2007

Hello Mansuz

Merci merci merci merci !!!

Voici ce que j'ai mis sur chaque bouton :

on(press){
 gotoAndPlay(frame de départ d'anim identique à chaque bouton);
 var x=frame d'arrivée personnalisée sur chaque bouton;
}

et sur la scène principale (où se situe toute l'animation) :
onEnterFrame=function(){
if(_currentframe==x){
 getURL("lien URL","_blank")}
}

Oups mais ça pose encore un problème : Le lien doit être différent à chaque bouton...
Comment remédier à ça ?
(euh oui je suis un peu nulle pardon...)
Messages postés
10
Date d'inscription
lundi 8 août 2005
Statut
Membre
Dernière intervention
12 février 2007

Bonjour et merci beaucoup Mansuz !

La méthode fonctionne à merveille pour mon cas !

Je te souhaite une très bonne journée (et désolée pour la réponse tardive...)

valeriet