|
|
Auteur | Message |
---|
chris_c Accro
Nombre de messages : 8403 Age : 53 Date d'inscription : 18/11/2007
| Sujet: [Sans suite] mouse Ven 22 Fév 2008, 16:09 | |
| j'ai lu le pdf sur le mtasc, je voudrais avoir un petit exemple pour comprendre les attributs de onMousePress() c'est quoi les () et comment on utilise ?
puis j'ai vu ya des fonctions qui tiennent compte de la direction de la souris. j'aimerais quand la souris au temps 1 bouge à droite que ca donne gotoAndPlay(2); et à gauche gotoAndPlay(0);
merci |
|
| |
christophe_D Programmeur
Nombre de messages : 1903 Age : 49 Localisation : Frasne (25) Divers : papa de 5 enfants Loisirs : programmation en tous genres, defendre le libre , linux, photo .... Date d'inscription : 23/06/2006
| Sujet: Re: [Sans suite] mouse Ven 22 Fév 2008, 17:27 | |
| - chris_c a écrit:
- j'ai lu le pdf sur le mtasc, je voudrais avoir un petit exemple pour comprendre les attributs de
onMousePress() c'est quoi les () et comment on utilise ? puis j'ai vu ya des fonctions qui tiennent compte de la direction de la souris. j'aimerais quand la souris au temps 1 bouge à droite que ca donne gotoAndPlay(2); et à gauche gotoAndPlay(0); merci quand il y les () ca veux dire que c'est une fonction le mouseonpress et utilise sur un movieclip par exemple tu as un movieClip testsur _root et une anim anima sur root aussi tu aurra un truc comme ca (avec ton phi nommer essai) - Code:
-
class essai {
static function main() {
_root.test.onMousePress = function() { _root.anima.gotoAndPlay(2); } } }
c'est un exemple vite fait sur le pouce |
|
| |
chris_c Accro
Nombre de messages : 8403 Age : 53 Date d'inscription : 18/11/2007
| |
| |
chris_c Accro
Nombre de messages : 8403 Age : 53 Date d'inscription : 18/11/2007
| Sujet: Re: [Sans suite] mouse Ven 22 Fév 2008, 20:48 | |
| j'ai repris un script sur en Flash AS, ya des erreurs, c'est juste pour dessiner un trait avec la souris, c'est pour comprendre l'evenement mouse; edit: je lis le script du ticket à gratter, on attribue une variable à un groupe var mc=_root.mc et ca donne mc.onMouseDown=function(){ sinon je connais pas this. et a quoi sert _root.creatEmptyMovieClip("line",1); ? - Code:
-
class mouse{ static function main(){
_root.createEmptyMovieClip("line",1); _root.trait.onMouseDown = function() { lineStyle(2,"0xAA3333"); moveTo(_root.trait._xmouse,_root.trait._ymouse); } this.onMouseMove = function() { lineTo(_root.trait._xmouse,_root.trait._ymouse); updateAfterEvent(); }
_root.trait.onMouseUp = function() { this.onMouseMove = null; } } }
[/size] |
|
| |
Admin Administrateur
Nombre de messages : 18435 Localisation : Toulouse Date d'inscription : 11/12/2005
| Sujet: Re: [Sans suite] mouse Ven 22 Fév 2008, 22:42 | |
| Voyons, ces erreurs : 1 - Tout d'abors, à la fin d'une affectation : '=' , E-Anim attends toujours un ';' Donc : this.onMouseMove = function() { //... } ;2 - dans un onEvenement, l'éditeur ne mémorise pas le Parent (je corrigerais dès que j'aurais le temps... gros boulot)Il faut ajouter this. devant les commandes qui posent problème. 3 - la fonction lineStyle() - est polymorphe. Là, c'est E-Anim qui fait une vérification correcte. Mtasc accepte tous les types de paramètres. Ici, le second paramètre est un nombre (voir doc de Flash) => donc supprimer les guillemets[/size] this.lineStyle(2, 0xAA3333); - Code:
-
this.lineStyle(2,0xAA3333); 4 - updateAfterEvent() - j 'ignorais son existence Je vais l'ajouter de ce pas. 5 - Et enfin il reste une que mtasc refusera : "this.onMouseMove =" il faut écrire : "_root.onMouseMove" Hormis la 5ème, malgré les erreurs émise par l'éditeur, ne t'inquiète pas, le script fonctionne. Phildes |
|
| |
chris_c Accro
Nombre de messages : 8403 Age : 53 Date d'inscription : 18/11/2007
| Sujet: Re: [Sans suite] mouse Ven 22 Fév 2008, 23:17 | |
| j'ai repris à zero en travaillant sur le ticket à gratter, mais il se passe rien voici mon code - Code:
-
[size=9] class mouse{ static function ini(){ var mc2:MovieClip=_root.createEmptyMovieClip("mc2",_root.getNextHighestDepth()); mc2.onMouseDown = function() { mc2.onMouseMove= function(){
mc2.lineStyle(2,0xAA3333); mc2.moveTo(mc2._xmouse,mc2._ymouse); mc2.lineTo(mc2._xmouse,mc2._ymouse); } } mc2.onMouseUp = function() { this.onMouseMove= null; } } }
[/size] |
|
| |
Admin Administrateur
Nombre de messages : 18435 Localisation : Toulouse Date d'inscription : 11/12/2005
| Sujet: Re: [Sans suite] mouse Sam 23 Fév 2008, 00:32 | |
| - chris_c a écrit:
- j'ai repris à zero en travaillant sur le ticket à gratter, mais il se passe rien
voici mon code - Code:
-
[size=9] class mouse{ static function ini(){ var mc2:MovieClip=_root.createEmptyMovieClip("mc2",_root.getNextHighestDepth());
mc2.onMouseDown = function() { mc2.onMouseMove= function(){
mc2.lineStyle(2,0xAA3333); mc2.moveTo(mc2._xmouse,mc2._ymouse); mc2.lineTo(mc2._xmouse,mc2._ymouse); } }
mc2.onMouseUp = function() { this.onMouseMove= null; } } }
[/size] Où dis-tu que mc2 est le " mask" de ton image (plus précisément du groupe qui contient ton image) ? Phildes |
|
| |
chris_c Accro
Nombre de messages : 8403 Age : 53 Date d'inscription : 18/11/2007
| Sujet: Re: [Sans suite] mouse Sam 23 Fév 2008, 01:03 | |
| c'est pas un masque que je veux faire, mais dans le ticket c'est dessiner des traits avec la souris qui m'interesse. je clic ca donne le points de depart, je bouge la souris ca dessine le trait, je relache la souris ca arrete de dessiner. |
|
| |
Admin Administrateur
Nombre de messages : 18435 Localisation : Toulouse Date d'inscription : 11/12/2005
| Sujet: Re: [Sans suite] mouse Sam 23 Fév 2008, 01:47 | |
| - chris_c a écrit:
- c'est pas un masque que je veux faire, mais dans le ticket c'est dessiner des traits avec la souris qui m'interesse.
je clic ca donne le points de depart, je bouge la souris ca dessine le trait, je relache la souris ca arrete de dessiner. Je ne connais pas assez ce domaine pour t'aider. Mais je me pose une question...Sachant que : - moveTo() est la position le début du trait - lineTo() est la position de fin det rait... Les 2 ligne ci-dessous semblent dessiner un trait dont le début est égal à la fin. mc2.moveTo(mc2._xmouse,mc2._ymouse); mc2.lineTo(mc2._xmouse,mc2._ymouse);Phildes |
|
| |
christophe_D Programmeur
Nombre de messages : 1903 Age : 49 Localisation : Frasne (25) Divers : papa de 5 enfants Loisirs : programmation en tous genres, defendre le libre , linux, photo .... Date d'inscription : 23/06/2006
| Sujet: Re: [Sans suite] mouse Sam 23 Fév 2008, 10:41 | |
| alors essayons de detailler le ticket dans le detail : que doit il faire ? faire apparaitre une image par l'intermediaire d'un masque donc avec les outils e-anim faire un premier groupe avec une image , ceci sera le ticket ; on peut y faire une zone griser ; comme un ticket a gratter le nom de ce groupe et sans importance puis un autre groupe qui lui sera l'image a faire apparaitre (de la meme taille que la zone grise ou plus petite) ce groupe pourra par exemple s'appeler gain voila , reste plus qu'a enregistrer ... (ici ca sera ticket.phi) maintenant du cote AS tu aurra un truc comme ca (en passant par le menu) - Code:
-
class ticket {
}
donc l'objectif et de dessinner des traits donc on dois travailler avec les evenements onMouse... down pour le click appuyer up pour le click relacher move pour le mouvement de la souris et bien sur faire un masque on va donc ecrire des fonction dans la fonction general main() qui se lance 1 seul fois a l'initialisation de l'anim (je detailler chaque fonction a pars a la fin on verra comment les mettres toutes dans la fonction main() ) pour creer le masque on fera - Code:
-
_root.createEmptyMovieClip("affichage",_root.getNextHighestDepth());
puis on declare que affichage et le masque de gaincomme ceci - Code:
-
_root.gain.setmask(_root.affichage);
maintenant le travaille avec la souris donc on est d'accord que lors ce que on click on autorise le dessin ... donc les procedures dessin seront initialiser dans le onMouseDown() ceci qui donnera ceci - Code:
-
_root.affichage.onMouseDown = function() {
this.moveTo(this._xmouse,this._ymouse);
this.onMouseMove = function() { this.lineTo(this._xmouse,this._ymouse); } this.onMouseUp = function() { delete this.onMouseDown; } }
donc pour finir le code complet - Code:
-
class ticket {
static function main() { _root.createEmptyMovieClip("affichage",_root.getNextHighestDepth()); _root.gain.setmask(_root.affichage);
_root.affichage.onMouseDown = function() {
this.moveTo(this._xmouse,this._ymouse);
this.onMouseMove = function() { this.lineTo(this._xmouse,this._ymouse); } this.onMouseUp = function() { delete this.onMouseDown; } }
} }
voila , es ce que ca peut t'aider ?? |
|
| |
chris_c Accro
Nombre de messages : 8403 Age : 53 Date d'inscription : 18/11/2007
| Sujet: Re: [Sans suite] mouse Sam 23 Fév 2008, 12:08 | |
| oui, c'est la partie dessin qui m'interesse. cool j'ai réussi mais pour arrêter de dessiner et bouger la souris j'ai mis - Code:
-
this.onMouseMove= null;
et this.lineStyle(); Merci Christophe_D !! |
|
| |
Beldjilali Programmeur
Nombre de messages : 3016 Date d'inscription : 24/06/2007
| |
| |
christophe_D Programmeur
Nombre de messages : 1903 Age : 49 Localisation : Frasne (25) Divers : papa de 5 enfants Loisirs : programmation en tous genres, defendre le libre , linux, photo .... Date d'inscription : 23/06/2006
| Sujet: Re: [Sans suite] mouse Sam 23 Fév 2008, 18:12 | |
| - Beldjilali a écrit:
- intéressant ce bout de code.
pourtant c'est un gestionnaire de souris simplifier au mximun ... |
|
| |
Beldjilali Programmeur
Nombre de messages : 3016 Date d'inscription : 24/06/2007
| Sujet: Re: [Sans suite] mouse Sam 23 Fév 2008, 18:27 | |
| oui justement, simplifié au minimum, on trouve un maximum d'application à un code (ça marche avec tous les codes simplifié au max) |
|
| |
chris_c Accro
Nombre de messages : 8403 Age : 53 Date d'inscription : 18/11/2007
| Sujet: Re: [Sans suite] mouse Lun 25 Fév 2008, 19:20 | |
| j'aimerais que on clique ca fasse bouger cette piece. - Code:
-
[size=9] class puzzle{ static function main(){ _root.piece._x=100; _root.piece._y=100; _root.piece.onMouseDown = function() { this._x=250; this._y=250; } } }
[/size] |
|
| |
Contenu sponsorisé
| |
| |
|