Asu Utilisateur confirmé: Rang ****
Messages : 895
| Sujet: Problème de remplacement get_integer Lun 7 Oct 2013 - 13:46 | |
| Bizour les zenfants, j'ai un petit problème avec un code pour remplacer get_integer par mon propre script plus design pour mon programme Mé stalor que le grand méchant problème arrive. Bref, je voudrais qu'en cliquant sur un bouton, je pourrais renvoyer le texte entré, mais que la touche Entrée fasse de même. Voilou mon cocode : - Code:
-
// Replacing the get_integer of GameMaker. // But meh, returns a real
global.tmpsurf = surface_create(room_width,room_height); keyboard_string = argument1; global.curstring = keyboard_string;
surface_set_target(global.tmpsurf); screen_redraw(); surface_reset_target();
tmpobj = object_add(); object_set_depth(tmpobj,-10000); object_event_add(tmpobj,ev_draw,0,"/* Plein de machin draw */");
instance_create(0,0,tmpobj); screen_redraw();
while !(keyboard_check_pressed(vk_enter)) // C'la que je voudrais vérifier qu'on a bien cliqué dans la bonne zone ou qu'on a appuyé sur Entrée { screen_redraw(); screen_wait_vsync(); keyboard_wait();
if keyboard_check_pressed(vk_anykey) { global.curstring=real(keyboard_string); } } surface_free(global.tmpsurf); object_delete(tmpobj); io_clear(); return real(global.curstring);
Tite idée? _________________ <Cysteine> nON mais la touche maj s'active/se désactive toute seule <Cysteine> et a du mal à réponDRE QUANd j'appuie dessus <Cysteine> et je l'ai démont2? IL Ny a rien DEDANs
|
|
M@d_Doc Modérateur
Messages : 6600 Localisation : 47°44'8.04 Projet Actuel : aucun
| Sujet: Re: Problème de remplacement get_integer Lun 7 Oct 2013 - 14:05 | |
| En regardant la position de la souris (mouse_x,mouse_y) au moment ou tu relâches le clic gauche (mouse_check_released(mb_left) ), ça devrait marcher, non? Au passage, je ne suis pas sûr qu' il est bon de laisser le programme tourner dans une boucle. Il ne vaudrait pas mieux laisser la boucle principale de GM s'occuper de tout? _________________ Tous les icones de gm utilisables sur le cbna ICI |
|
Asu Utilisateur confirmé: Rang ****
Messages : 895
| Sujet: Re: Problème de remplacement get_integer Lun 7 Oct 2013 - 16:35 | |
| - M@d_Doc a écrit:
- En regardant la position de la souris (mouse_x,mouse_y) au moment ou tu relâches le clic gauche (mouse_check_released(mb_left) ), ça devrait marcher, non?
Au passage, je ne suis pas sûr qu' il est bon de laisser le programme tourner dans une boucle. Il ne vaudrait pas mieux laisser la boucle principale de GM s'occuper de tout? Le problème c'est que le keyboard_wait fait bugger le tout Beuh, c'tadire? Ca fonctionne parfaitement pour moi. PS, je veux immobiliser toute action extérieure depuis un seul script sans modifier le reste _________________ <Cysteine> nON mais la touche maj s'active/se désactive toute seule <Cysteine> et a du mal à réponDRE QUANd j'appuie dessus <Cysteine> et je l'ai démont2? IL Ny a rien DEDANs
|
|
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Problème de remplacement get_integer Lun 7 Oct 2013 - 16:37 | |
| Pense a update les entrées sorties avec io_handle(), ça devrait mieux marcher. |
|
Asu Utilisateur confirmé: Rang ****
Messages : 895
| Sujet: Re: Problème de remplacement get_integer Lun 7 Oct 2013 - 16:59 | |
| Si ça bloque les entrées/sorties, ça ne risque pas d'ignorer les clics de souris? _________________ <Cysteine> nON mais la touche maj s'active/se désactive toute seule <Cysteine> et a du mal à réponDRE QUANd j'appuie dessus <Cysteine> et je l'ai démont2? IL Ny a rien DEDANs
|
|
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Problème de remplacement get_integer Lun 7 Oct 2013 - 18:22 | |
| io_handle() récupère tous les events donc ça update aussi les clics de la souris. |
|
Asu Utilisateur confirmé: Rang ****
Messages : 895
| Sujet: Re: Problème de remplacement get_integer Lun 7 Oct 2013 - 19:06 | |
| Bon bah j'ai trouvé, merci ^^ - Code:
-
while !(keyboard_check_pressed(vk_enter))&&!(is_zone_pressed(/*position*/) // Huh, is_zone_pressed est un script pour savoir si la zone a été appuyée avec la souris { screen_redraw(); screen_wait_vsync(); io_handle();
if keyboard_check_pressed(vk_anykey) { global.curstring=real(keyboard_string); } } _________________ <Cysteine> nON mais la touche maj s'active/se désactive toute seule <Cysteine> et a du mal à réponDRE QUANd j'appuie dessus <Cysteine> et je l'ai démont2? IL Ny a rien DEDANs
|
|
Contenu sponsorisé
| Sujet: Re: Problème de remplacement get_integer | |
| |
|