Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: desplo en Enero 29, 2015, 02:44:16 AM

Título: ¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: desplo en Enero 29, 2015, 02:44:16 AM
Tengo un objeto ''boton'' y 2 sprite ''botonnormal'' ''botonoefecto''

Quiero que el presionarlo el boton con el mouse cambie al sprite ''botonefecto'' y cuando lo deje de presionar al ''botonnormal''
Título: Re:¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: zorge en Enero 29, 2015, 02:53:21 AM
explicate algo mejor, como presionas el boton??con una tecla del teclado?? o como??
Título: Re:¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: desplo en Enero 29, 2015, 09:14:17 PM
Cita de: zorge en Enero 29, 2015, 02:53:21 AM
explicate algo mejor, como presionas el boton??con una tecla del teclado?? o como??
mouse
Título: Re:¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: Clamud en Enero 29, 2015, 09:26:59 PM
Prueba estos códigos:
[gml]
///Evento Left Pressed
sprite_index = botonefecto;
[/gml]
[gml]
///Evento Left Released
sprite_index = botonnormal;
[/gml]
Título: Re:¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: desplo en Enero 29, 2015, 09:33:45 PM
Cita de: Clamud en Enero 29, 2015, 09:26:59 PM
Prueba estos códigos:
[gml]
///Evento Left Pressed
sprite_index = botonefecto;
[/gml]
[gml]
///Evento Left Released
sprite_index = botonnormal;
[/gml]
Si funciona. Pero, cuando quito el mouse teniendo presionado el boton, se queda con el sprite ''botonefecto'' (Osea parece que lo estoy presionando)
Título: Re:¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: Clamud en Enero 29, 2015, 10:07:48 PM
Vaya, no me lo esperaba, mejor usa este código en el evento Step:
[gml]
if( mouse_check_button(mb_left) and collision_point(mouse_x,mouse_y,id,false,false) )
     sprite_index = botonefecto;
else sprite_index = botonnormal;
[/gml]
Título: Re:¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: desplo en Enero 29, 2015, 10:31:40 PM
Cita de: Clamud en Enero 29, 2015, 10:07:48 PM
Vaya, no me lo esperaba, mejor usa este código en el evento Step:
[gml]
if( mouse_check_button(mb_left) and collision_point(mouse_x,mouse_y,id,false,false) )
     sprite_index = botonefecto;
else sprite_index = botonnormal;
[/gml]
Gracias si funciono! :)
Título: Re:¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: desplo en Enero 29, 2015, 11:40:37 PM
Cita de: desplo en Enero 29, 2015, 10:31:40 PM
Cita de: Clamud en Enero 29, 2015, 10:07:48 PM
Vaya, no me lo esperaba, mejor usa este código en el evento Step:
[gml]
if( mouse_check_button(mb_left) and collision_point(mouse_x,mouse_y,id,false,false) )
     sprite_index = botonefecto;
else sprite_index = botonnormal;
[/gml]
Gracias si funciono! :)
Lo estuve probando y me dio otro problema :(.

Ahora me pasa lo contrario

Tengo el mouse presionado y lo muevo al boton teniendo presionado el mouse y el boton cambia a botonefecto y yo quiero que pase solo teniendo el mouse solo en el boton
Título: Re:¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: Clamud en Enero 30, 2015, 01:23:38 AM
En ese caso vuelve a usar el código que te mostré al principio y agrega esto al evento Mouse Leave
[gml]
sprite_index = botonnormal;
[/gml]
Título: Re:¿Cambiar sprite de objeto mientras esta siendo presionado?
Publicado por: 3dgeminis en Enero 30, 2015, 07:04:19 PM
Aver si este ejemplo te sirve