Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: dridly en Enero 22, 2011, 09:05:03 PM

Título: Eliminar una instancia del juego
Publicado por: dridly en Enero 22, 2011, 09:05:03 PM
Buenas,

estoy haciendo una especie de Mario Party. Consigo que cuando mi ficha se mueva (arrastrando el mouse) un determinado n?mero de casillas, en las casillas de atr?s marque por d?nde ha pasado (creo un objeto por casilla).

La cuesti?n es que si rectifico (tira hacia atr?s) me gustar?a que contara uno menos del movimiento (lo controlo con una variable global) y destruyera el objeto que hay en esa casilla. He creado un evento colisi?n en el objeto "rastro", d?nde resta el movimiento y destruye el objeto (instance_destroy), pero no me lo hace bien (aunque no me resta bien, lo que me preocupa es que destruye todas las instancias que ha creado).

El instance_destroy no deberia de eliminar solo el objeto de la colisi?n? Como se podr?a hacer?

David
Título: Re: Eliminar una instancia del juego
Publicado por: Masterkey en Enero 22, 2011, 09:33:07 PM
Puede que sea la variable global lo que causa el problema(s?lo me imagino) pero si en el evento colisi?n con el objeto tienes un with other instance_destroy; deber?a funcionar
Título: Re: Eliminar una instancia del juego
Publicado por: lordgeorge en Enero 23, 2011, 12:01:59 AM
Un consejo, trata de poner siempre las colisiones en el objeto con menos instancias, en este caso el "player" debiera tener la colisi?n con el objeto "rastro", algo as? ser?a el evento colision player-rastro:
[gml]//Todo lo que quieras que haga el player
with(other){
     //Todo lo que quieras que haga el objeto rastro
     instance_destroy()
}[/gml]

Siempre que quieras, ayuda bastante publicar el c?digo que tienes, o incluso el editable. Se hace mucho mas f?cil ver el problema y quisas se puede hacer lo mismo de otra forma (siento que crear un objeto por espacio que avanzas es mucho, podr?as monitorear todo con un solo objeto)

Saludos
Título: Re: Eliminar una instancia del juego
Publicado por: dridly en Enero 23, 2011, 07:12:55 PM
Adjunto el codigo que llevo, a ver si me puedo explicar... :-[

El objeto se mueve conforme la ejecuci?n del dado, se hace click al dado y avanza el n?mero que ha salido. Se ve como marca por d?nde pasa.

Pero si corriges el movimiento, deber?a de restar el movimiento, variable global.move, y eliminar el rastro. Todo el c?digo est? en el objeto objCounter, que ser?a el parent.

Espero que se veo claro... Muchas gracias.