Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: codarck en Mayo 07, 2017, 08:01:42 PM

Título: dudirigilla :(
Publicado por: codarck en Mayo 07, 2017, 08:01:42 PM
hay una forma de  verificar si el mouse esta dentro o fuera del objeto, con codigos? sin necesidad de  el evento mouse??

lo dig porq hay  algunos eventos q se pueden reemplazar por  codigos xD  :(
Título: Re:dudirigilla :(
Publicado por: Naitsabes0 en Mayo 07, 2017, 08:53:52 PM
Cita de: codarck en Mayo 07, 2017, 08:01:42 PM
hay una forma de  verificar si el mouse esta dentro o fuera del objeto, con codigos? sin necesidad de  el evento mouse??

lo dig porq hay  algunos eventos q se pueden reemplazar por  codigos xD  :(
Puedes usar el de colisión, aunque no es tan efectivo como este al momento de programar botones, y si he visto que con códigos se puede remplazar a cualquier evento, siempre y cuando seas un experto en programación, no es mi caso  :-[.
Título: Re:dudirigilla :(
Publicado por: wilodxd en Mayo 07, 2017, 11:23:15 PM
pues claro aunque hay varias formas que puedes ocupar.

*puedes ver respectivamente su posicion dependiendo de sus coordenas por ejemplo si tenemos un cuadrado de 6 de ancho y esta en 'x' 10, sabemos que entre 10,16 se encuentra  entonces tenemos que ver si la 'x' de nuestro mouse es mayor o igual a 10 pero menor o igual 16, de esta forma ver si es que esta en nuestra 'area' de collision, y lo mismo se aplica en y.

*ahora tenemos varias funciones en gamemaker para detectar respectivas collisiones, puedes usar 'instance_position' o 'position_meeting' la primera te sirve por si necesitas su id, en caso de no necesitarla basta con las segunda.
puedes ver estas funciones( y muchas otras )en la pagina de yoyogames.

aqui te dare un ejemplo:
"
if( position_meeting(mouse_x,mouse_y,all) ){
    ///aqui estaria el codigo de lo que pasaria si collisiona~~
}
"
el color rojo estaria el nombre o id del obj que quieres verificar
Título: Re:dudirigilla :(
Publicado por: codarck en Mayo 08, 2017, 05:14:13 AM
Cita de: wilodxd en Mayo 07, 2017, 11:23:15 PM
pues claro aunque hay varias formas que puedes ocupar.

*puedes ver respectivamente su posicion dependiendo de sus coordenas por ejemplo si tenemos un cuadrado de 6 de ancho y esta en 'x' 10, sabemos que entre 10,16 se encuentra  entonces tenemos que ver si la 'x' de nuestro mouse es mayor o igual a 10 pero menor o igual 16, de esta forma ver si es que esta en nuestra 'area' de collision, y lo mismo se aplica en y.

*ahora tenemos varias funciones en gamemaker para detectar respectivas collisiones, puedes usar 'instance_position' o 'position_meeting' la primera te sirve por si necesitas su id, en caso de no necesitarla basta con las segunda.
puedes ver estas funciones( y muchas otras )en la pagina de yoyogames.

aqui te dare un ejemplo:
"
if( position_meeting(mouse_x,mouse_y,all) ){
    ///aqui estaria el codigo de lo que pasaria si collisiona~~
}
"
el color rojo estaria el nombre o id del obj que quieres verificar

a ok si tambien estaba pensando en eso, solo q pense q era algo como mouse_check_ y algo xD, a vale gracias
Título: Re:dudirigilla :(
Publicado por: petpan13 en Mayo 08, 2017, 12:09:42 PM
var hasEntered = false;

//mouse enter
if position_meeting(mouse_x,mouse_y,self){
    hasEntered = true;
    //rest of your code
}

//mouse leave
if (!position_meeting(mouse_x,mouse_y,self) && hasEntered){
    //your code
}


Este es el código