Buenas, quería saber como hacer para que, al mantener presionado un objeto con el click izquierdo, ocurra alguna acción.
De antemano gracias. :-[
En el evento mouse de dicho objecto. En el press mouse. Escribe la accion a realizar.
Suerte!! ;D
[4quote author=Kefe link=topic=29310.msg128780#msg128780 date=1502390454]
Buenas, quería saber como hacer para que, al mantener presionado un objeto con el click izquierdo, ocurra alguna acción.
De antemano gracias. :-[
[/quote]
Si no quieres que la acción se ejecute al instante en el evento Left Pressed inicia un contador
[gml]
cont = 0;
[/gml]
En el evento Step incrementa el valor del contador y compáralo
[gml]
if( ++contador >= 100 ){
// accion
}
[/gml]
Gracias chicos, pero me refiero que al mantener presionado un objeto por cierto tiempo ocurra alguna accion (por ejemplo: una manzana que al dar 1 click= cambia de color, y al manterner presionado durante dos segundos= se destruye)
En el objeto de la manzana coloca estos códigos:
En el evento Create:
presionando= false; // variable para controlar las acciones
En el evento Step:
if mouse_check_button_pressed(mb_left) // si presiono boton izquierdo del mouse
{
if (mouse_x > x and mouse_x < x+sprite_width and mouse_y > y and mouse_y < y+sprite_height) // si las coordenadas del mouse están dentro del área del sprite de la manzana
{
image_blend = c_yellow; // coloreamos el sprite de la manzana
if (alarm[0] < 0) // si la alarma 0 no está activada
{
alarm[0] = room_speed * 2; // multiplica por 2 si quieres esperar 2 segundos, multiplica por 10 para esperar 10 segundos, etc
presionando= true;
}
}
if mouse_check_button_released(mb_left) // si dejamos de presionar el boton izquierdo del mouse
{
presionando= false;
}
if !(mouse_x > x and mouse_x < x+sprite_width and mouse_y > y and mouse_y < y+sprite_height) //el signo ! sirve para negar, en este caso si las coordenadas del mouse NO están dentro del sprite
{
presionando = false;
}
En el evento Alarm 0:
if (presionando) // si la variable sigue siendo "true" significa que no hemos soltado el boton izquierdo y que seguimos dentro del área del sprite
{
instance_destroy();
}
Saludos.