| problème avec l'instruction while | |
|
|
Auteur | Message |
---|
Invité Invité
| Sujet: problème avec l'instruction while Mar 24 Avr 2007 - 9:43 | |
| Yo everybody En fait mon but est de faire un "crayon" qui trace un chemin, et il assigne à l'objet "trace" crée la direction entre son xprevious,yprevious et son x,y. Enfin bon voici le code de mon objet "traceur" - Code:
-
{ if not mouse_check_button(mb_left) {x=mouse_x y=mouse_y} if mouse_check_button(mb_left) { while(x!=mouse_x && y!=mouse_y) { x=x+lengthdir_x(1,point_direction(x,y,mouse_x,mouse_y)) y=y+lengthdir_y(1,point_direction(x,y,mouse_x,mouse_y)) global.directiontrace=point_direction(xprevious,yprevious,x,y) with(instance_create(xprevious,yprevious,trace)) direction=global.directiontrace }}} Le problème se situe sans doute au niveau du while car dès que je clique le jeu bloque. (d'ailleurs rien n'est tracé, le jeu ne rame pas mais s'arrête bien, tout simplement) L'erreur ne peut pas venir d'un autre objet puisqu'il y en a que deux : la trace et le traceur :gniah: Pourriez vous m'indiquer quelle est l'erreur dans mon code, merci |
|
| |
Devil37 Utilisateur confirmé: Rang *****
Messages : 1815
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 10:22 | |
| Ton code n'a pas d'échappatoire ... L'instruction while execute des milliers de fois ton code, sans parvenir à terminer la boucle. C'est pour ça que ton jeu se bloque, sans doute ... |
|
| |
Invité Invité
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 10:36 | |
| mais enfin ce que je veux faire c'est: "tant qu'on est pas sur mouse_x et mouse_y, on s'en rapproche et on crée une marque" bon mais je me suis mal exprimé le tout ne serait pas de me signaler l'erreur mais aussi de me dire comment la corriger |
|
| |
Invité Invité
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 12:22 | |
| j'ai fait la même chose mais sans créer l'instance et là j'ai été étonné parce que même comme ça, ça ramait, en fait rien que répéter jusqu'à ce que ça soit sur la souris x=x+lengthdir machin ça faisait ramer, et donc avec mon premier code le jeu n'était pas bloqué, enfin si mais j'aurais pu y jouer en attendant un bon bout de temps ça ramait (juste ). je vais essayer une autre méthode sans while et je posterais ici si j'y arrive. ah et tiens, le while avec un lengthdir je vous le tirais d'un gm6 de mark overmars présent sur 64 digits, si quelqu'un peut y jeter un oeil et m'expliquer comment ça marche ce draw dans l'event step l'exemple est iciBon je n'étais pas si fou avec mes lengthdir, je sais bien que la boucle se termine un jour ou l'autre |
|
| |
[TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 12:25 | |
| ton code revien exactement à faire : x=mouse_x; y=mouse_y; mais en becoup plus lent :gniah: je pence que tu devrait essayer : {if not mouse_check_button( mb_left) {x= mouse_x y= mouse_y}if mouse_check_button( mb_left) {//while(x!=mouse_x && y!=mouse_y)//{//x=x+lengthdir_x(1,point_direction(x,y,mouse_x,mouse_y))//y=y+lengthdir_y(1,point_direction(x,y,mouse_x,mouse_y))global.directiontrace= point_direction( mouse_x, mouse_y, x, y) with( instance_create( mouse_x, mouse_y,trace)) direction= global.directiontrace //}}}en là, ça devrait marcher |
|
| |
Invité Invité
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 12:29 | |
| Non argh ce n'était pas ça si j'explique le contexte tu comprendrais peut être mieux, la variable direction dans les objets trace sera utilisé pour un objet qui tombera, et, s'il les touche, suivra le chemin tracé (je cherche à faire un peu comme dans le kirby sur ds ou on trace un chemin si vous voyez quel jeu c'est) donc il faut des objets trace tout le long du chemin :pac_dr: , et ton code est bon mais si je reste appuyé et que je fais une courbe, la direction assignée aux objets trace ne sera pas celle du tracé Mais j'ai essayé un autre système et j'ai fait comme ceci : http://www.zshare.net/download/trace-gm6.htmlmais je veux toujours bien qu'on m'explique le draw dans l'event step |
|
| |
[TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 12:40 | |
| pour l'exemple d'overmarks, c'est simple comme Patate , ou Bonjour ou chat ou GM...
bref, il suffit d'aller dans ta room et de Décocher 'draw background color' l'effet est saisissant, mais super chiant pour les jeux ...
et pour ton script, je vois ce que tu veux faire ... mais je n'ai pas d'exemple sous la main, désolé :snif2: et je vais aller au lycée bientôt, alors je n'aurais pas le temps de t'en faire un :lng: désolé |
|
| |
Invité Invité
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 12:44 | |
| Ok merci beaucoup TheDarkTiger J'ai réussi à faire ce que je voulais avec un repeat(point_distance(x,y,mouse_x,mouse_y) le repeat au moins il m'aime bien :pac_dr: |
|
| |
[TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 12:46 | |
| yep, c'est pas bête :gniah: |
|
| |
Invité Invité
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 13:04 | |
| |
|
| |
Gab666 Modérateur 'Zut'
Messages : 5340 Localisation : **I move away from the mic to breathe in
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 13:39 | |
| Le code de TDT je suis pas sur qu'il fonctionne toujours si on se déplace de plus qu'un pixel dans le même step
while(round(x)!=mouse_x && round(y)!=mouse_y) { x=x+lengthdir_x(1,point_direction(x,y,mouse_x,mouse_y)) y=y+lengthdir_y(1,point_direction(x,y,mouse_x,mouse_y))
devrait marcher |
|
| |
Devil37 Utilisateur confirmé: Rang *****
Messages : 1815
| Sujet: Re: problème avec l'instruction while Mar 24 Avr 2007 - 13:41 | |
| J'aime bien l'effet d'ombre du crayon C'est vachement bien pour un début continue comme ça ! |
|
| |
ertow Très bonne participation
Messages : 157
| Sujet: oui Sam 28 Avr 2007 - 12:31 | |
| |
|
| |
Topaze22 *Excellent utilisateur*
Messages : 6213 Localisation : Sur la Lune Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World
| Sujet: Re: problème avec l'instruction while Dim 29 Avr 2007 - 12:41 | |
| - robotic76 a écrit:
- Lol je trouve ça rigolo
http://www.zshare.net/download/trace-gm6-9t2.html ce n'est pas celui de tout à l'heure là il y a des boules roses qui suivent le tracé :gniah: C'est éxactement comme le Kirby et le pinceau magic sur DS. Vraiment terrible l'effet ! |
|
| |
Contenu sponsorisé
| Sujet: Re: problème avec l'instruction while | |
| |
|
| |
| problème avec l'instruction while | |
|