Julio 31, 2014, 07:37:47 PM Ultima modificación: Julio 31, 2014, 07:51:06 PM por king195
Tengo un problema con un bucle que se me genera en el contador

Step Event
if (place_meeting(x,y,obj_player)){
    image_index = 1;
    global.point += 1;
}


Como podría solucionarlo de tal forma que cuando toque o colisione con el objeto solo cuente 1, en vez de generarse el bucle que le indico en "global.point + =1;". Hay que tener en cuenta que la instancia no la puedo destruir ya que tengo intenciones de seguir utilizándola.

Edito: Estaba pensando en utilizar surfaces, de tal modo que destruyo la instancia una vez que no la necesito más pero me quedo con el sprite que es lo que me interesa.

#1 Julio 31, 2014, 08:11:41 PM Ultima modificación: Julio 31, 2014, 08:14:39 PM por Maximo
Lo que podrías hacer es poner una variable que indicara si el objeto ya ha sido tocado, si no ha sido tocado le da 1 punto, si ha sido tocado no le da nada.
Por ejemplo:
en el evento create
var_tocado = false
creamos una variable para saber si el objeto ha sido tocado

en el evento steep

if (place_meeting(x,y,obj_player) and var_tocado = false){
    image_index = 1;
    global.point += 1;
    var_tocado = true
}

esto hará que al tocar el objeto solo te de un punto

Cita de: Maximo en Julio 31, 2014, 08:11:41 PM
Lo que podrías hacer es poner una variable que indicara si el objeto ya ha sido tocado, si no ha sido tocado le da 1 punto, si ha sido tocado no le da nada.
Por ejemplo:
en el evento create
var_tocado = false
creamos una variable para saber si el objeto ha sido tocado

en el evento steep

if (place_meeting(x,y,obj_player) and var_tocado = false){
    image_index = 1;
    global.point += 1;
    var_tocado = true
}

esto hará que al tocar el objeto solo te de un punto

Muchas gracias, me estaba comiendo la cabeza con lo fácil que era pensar en 1 variable más para la comprobación XD