Noticias

Se ha publicado un nuevo servicio, el Portal de Juegos Online

* Sponsor

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: mouse  (Leído 894 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado GGrayonar

en: Noviembre 24, 2018, 01:31:16 am
que funcion debo utilizar si quiero que cuando el usuario presione en el JUGADOR el click izquiero
porque uso el if(mouse_check_button_pressed(mb_left)){room_goto(RM_TABLERO)}
y aunque no le de click en el objeto igual ejecuta la accion
no se si me di a entender

 
Los siguientes usuarios dieron las gracias a este tema: dixon2010


No Tienes Permisos Para Dar Puntos
point 5 Puntos

Usuarios que puntuaron el tema » dixon2010 (5 Pts) 


Desconectado Hezz

Respuesta #1 en: Noviembre 24, 2018, 02:28:54 am
Lo que pasa es que está detectando el clic, no el clic en el objeto. Podés ocupar el evento "mouse left pressed" para detectar un clic en el objeto, o el evento "mouse global left pressed" para cuando hace un clic en cualquier parte.

 
Los siguientes usuarios dieron las gracias a este tema: dixon2010, GGrayonar


Desconectado Taki-A

Respuesta #2 en: Noviembre 24, 2018, 02:31:00 am
Creo que deberías poner en el objeto personaje un evento mouse > Mouse enter... Y de ahí escribir el código
que funcion debo utilizar si quiero que cuando el usuario presione en el JUGADOR el click izquiero
porque uso el if(mouse_check_button_pressed(mb_left)){room_goto(RM_TABLERO)}
y aunque no le de click en el objeto igual ejecuta la accion
no se si me di a entender

 
Los siguientes usuarios dieron las gracias a este tema: dixon2010


Desconectado dixon2010

Respuesta #3 en: Noviembre 25, 2018, 02:14:22 am
Hola, gusto en saludarlos.

Los que dice Hezz y Taki-A es correcto  ;).
Hay muchas maneras de lograrlo.

Tu código le está diciendo al sistema que:
Cuando se presione el botón izquierdo del mouse se cambie de room.
Código: [Seleccionar]
if(mouse_check_button_pressed(mb_left)){room_goto(RM_TABLERO)

Puedes decirle:
Cuando se presione el botón izquierdo del mouse y en la posición del mouse se encuentre el objeto se cambie de room.
Código: [Seleccionar]
check=(instance_position(mouse_x, mouse_y,object_index)=id);
if(mouse_check_button_pressed(mb_left) && check){room_goto(RM_TABLERO)}

Tambien puedes decirle:
Cuando se presione el botón izquierdo del mouse y la distancia del mouse al objeto sea mejor que la mitad del ancho de su sprite se cambie de room. (este funciona bien solo si el origen del sprite está en su centro)
Código: [Seleccionar]
sw=sprite_width/2
if(mouse_check_button_pressed(mb_left) && point_distance(x,y,mouse_x,mouse_y)<sw){room_goto(RM_TABLERO)}
« Última modificación: Noviembre 25, 2018, 10:07:41 pm por dixon2010 »

Dios nos ayuda y nos da sabiduría para vivir. Cáda código es una obra maestra que hay que respetar aunque exista un código mas eficiente y sencillo.
 
Los siguientes usuarios dieron las gracias a este tema: Hezz