Forums Développement Multimédia

Aller au contenu

SetInterval & prototype

CODE Actionscript

23 réponses à ce sujet

#1 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 06 February 2003 - 21:53 PM

Bonsoir,

Comment appliquer un prototype à un clip avec un SetInterval ?

#2 boichu

    Administrator

  • Administrateur
  • PipPipPipPipPipPipPipPip
  • 5009 messages

Posté 06 February 2003 - 22:06 PM

bah ainsi :
CODE
MovieClip.prototype.letrace = function() {

trace(this);

};

timer = function () {

_root.letrace();;

};

linterval = setInterval(timer, 1000);


mais ca m'etonnerait beaucoup que ce soit cette reponse que tu recherche.

#3 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 06 February 2003 - 22:08 PM

Si c'est ce que je pensais et avais mis en pratique mais cela veut dire qu'il faut passer par une fonction intermédiaire donc

merci Boichu :wink:

#4 jeanphilippe

    Grosso modo

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 30486 messages

Posté 06 February 2003 - 22:13 PM

salut
un truc comme ça???

CODE
MovieClip.prototype.setPause = function() {

this.stop();

var p = arguments[0];

var q;

var waitFor = function (obj) {

 obj.play();

 clearInterval(q);

};

q = setInterval(waitFor, p, this);

};

yop.setPause(3000);



#5 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 06 February 2003 - 22:20 PM

Moui c'est pas mal :wink: Non je vais pas faire le difficile. Cela me semble effecivement assez propre et cohérent avec l'utilisation que je comptais en faire 8)

Merci jeanPhilippe :Hola:

#6 jeanphilippe

    Grosso modo

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 30486 messages

Posté 06 February 2003 - 22:26 PM

c'est juste une reinterpretation d'un code ka j'avais vu!!!
sinon, je ne fais pas forcement de proto pour ça!
aujoudrd'hui j'ai vu des trucs de ouf sur proto
des newbye recrivais des fonctions natives dans des protos
faudrait peut etre mettre les olas…
ça deroute! :wink:

#7 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 06 February 2003 - 22:29 PM

C'était un peu le cas dans l'exemple que tu as mis :wink:
Tout ça pour un play mais nous savons quelle utilisation en faire. Enfin je sais pourquoi j'avais posé cette question :roll:

#8 jeanphilippe

    Grosso modo

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 30486 messages

Posté 06 February 2003 - 22:32 PM

exact, je repondais a la kestion!!
mais ça peut effectivement etre tres interessant dans la construction d'un composant ou autre… :wink:

#9 boichu

    Administrator

  • Administrateur
  • PipPipPipPipPipPipPipPip
  • 5009 messages

Posté 06 February 2003 - 22:33 PM

mais en fait marsu, tu aurais preféré voir un truc du genre:

setInterval(leclip.leproto,4000);

c ca?? en fait, eviter de passer par une fonction. du moins, c ce que j'avais compris...

#10 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 06 February 2003 - 22:39 PM

Exact telle était le sens caché de ma question. heureusement qu'il y a des mecs biens et bons sur ce forum smile.gif

#11 jeanphilippe

    Grosso modo

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 30486 messages

Posté 06 February 2003 - 22:41 PM

boichu? peux tu reecrire le proto, dans ce cas la?
comment vas tu le clearer? :cry:

#12 jeanphilippe

    Grosso modo

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 30486 messages

Posté 06 February 2003 - 22:45 PM

si tu sors la fonction, kel est l'interet du proto?
autant faire un setInterval classik! en declaran une fonction

#13 boichu

    Administrator

  • Administrateur
  • PipPipPipPipPipPipPipPip
  • 5009 messages

Posté 06 February 2003 - 22:52 PM

mais justement JP, on ne peut pas faire ca.

j'ai fait quelques test bizarres...
en fait, ca fonctionne si tu fais un code de ce type :
CODE
MovieClip.prototype.letrace = function() {

  trace("hehe");

};

linterval = setInterval(letrace, 100);

c a dire que ca marche du moment que tu n'utilises pas this. mais bon, pour un proto, lol, aucun interet.
j'ai donc essayé pas mal de chose en utilisant this dans le proto. donc, le probleme etait de trouver la syntaxe pour indiqué au proto a quel objet il s'adresse. mais bon, j'ai essayer des trucs bizarre, aucun n'a fonctionné.

donc, je crois bien que c definitivement impossible.

#14 boichu

    Administrator

  • Administrateur
  • PipPipPipPipPipPipPipPip
  • 5009 messages

Posté 06 February 2003 - 22:54 PM

lol, mais je suis tout a fait d'accord avec toi JP!
on peut pas le faire...

#15 jeanphilippe

    Grosso modo

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 30486 messages

Posté 06 February 2003 - 22:57 PM

ok
mais ça , ça fonctionne:
CODE
MovieClip.prototype.setPause = function() {

   this.stop();

   var p = arguments[0];

   var q;

   var waitFor = function (obj) {

      obj.play();

      clearInterval(q);

   };

   q = setInterval(waitFor, p, this);

};

yop.setPause(3000);

yep.setPause(2000);

yip.setPause(1000);


?

#16 boichu

    Administrator

  • Administrateur
  • PipPipPipPipPipPipPipPip
  • 5009 messages

Posté 06 February 2003 - 23:01 PM

oui, mais ce n'etait pas exactement cela que demandais marsu je crois.

lui, il voulait appliquer un prototype a un objet toutes les 2 secondes par exemple.
donc, d'utiliser setInterval en dehors du proto et sans passer par une fonction. mais c impossible...

#17 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 06 February 2003 - 23:04 PM

Je n'en étais pas bien sûr mais je pense que vous m'avez fourni une bonne réponse sur ce coup là.

Bravo à tous les deux


je ferme le post ou vous continuez à en discuter un peu :wink:

#18 jeanphilippe

    Grosso modo

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 30486 messages

Posté 06 February 2003 - 23:06 PM

ahahahah!!!
effectivement Boichu… si c'est ça,> pas moyen d'uniformiser ça dans un proto :wink: :wink:
je vous souhaite une bonne nuit , j'y vais!!!
a demain! :wink:

#19 neolao

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 3827 messages

Posté 06 February 2003 - 23:25 PM

???
mais ?
le setInterval s'écrit de 2 facons
on peut appeller un prototype dans un setInterval
setInterval(objet, "proto", delai, arguments)

désolé si j'ai mal compris le probleme

#20 jeanphilippe

    Grosso modo

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 30486 messages

Posté 06 February 2003 - 23:27 PM

oui Neo, c'est ca k'a ecrit Boichu :wink:

#21 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 06 February 2003 - 23:28 PM

:Hola: classe Neo :Hola:

rien d'autre à ajouter

#22 jeanphilippe

    Grosso modo

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 30486 messages

Posté 06 February 2003 - 23:30 PM

Citation

Bonsoir,

Comment appliquer un prototype à un clip avec un SetInterval ?

effectivement si je relis bienta kestion, Neo a le dernier mot!!
bravo!!
c'est cool ce forum! :wink:

#23 boichu

    Administrator

  • Administrateur
  • PipPipPipPipPipPipPipPip
  • 5009 messages

Posté 06 February 2003 - 23:34 PM

lol, he oui, et c dans la doc en plus!

je n'avais jamais utilisé setInterval de cette maniere, je ne connaissais pas. merci Monsieur Neo-Lao! :wink:

#24 ekameleon

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 20167 messages

Posté 08 February 2003 - 20:55 PM

Hello smile.gif
CODE


// Pour tester on peut arrêter le setInterval en pressant une touche

Ecouteur = {};

Key.addListener(Ecouteur);

Ecouteur.onKeyDown = function () {

clearInterval(_root.clip.attendre);

}



// le prototype

MovieClip.prototype.Action = function () {

trace ("ok");

}



// programme principal

_root.createEmptyMovieClip("clip",1);

_root.clip.attendre = setInterval(Action, 100);



bye smile.gif



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

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

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP