Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Marth en Mayo 10, 2014, 10:10:53 PM

Título: Sprites en la funcion instance_change [Solucionado]
Publicado por: Marth en Mayo 10, 2014, 10:10:53 PM
Estoy interesado en que al utilizar la función instance_change (la que transforma un objeto de un tipo en otro objeto distinto) se conserve el sprite que usaba el anterior objeto.
La cosa sería que diversos objetos puedan cambiar a un mismo objeto y conservasen el sprite que usaban antes de transformarse.
¿Es posible de algún modo?
Título: Re:Sprites en la funcion instance_change
Publicado por: penumbra en Mayo 10, 2014, 10:15:52 PM
nada te impide ajustar el sprite que tú quieras en cualquier momento

if (sprite_index == sprite_nuevo)
    sprite_index = sprite_anterior

El usuario puede definir eventos de usuario nuevos. Puedes hacer un evento personal que detecte cuando se usa instance_change y usar ese evento para cambiar el sprite, pero no le veo mucho sentido, ya que se puede hacer lo mismo en STEP

También se puede que cada instancia guarde su sprite original en un ds_map o en un arreglo. Justo antes de cambiar la instancia se puede hacer que un objeto controlador lea ese sprite original e inmediatamente después de hacer el cambio de instancia, el controlador cambie el sprite al original que leyó del arreglo o ds_map
Título: Re:Sprites en la funcion instance_change
Publicado por: Marth en Mayo 11, 2014, 04:49:26 PM
¡Pues ha funcionado el truco!
Almaceno en una variable el sprite que usa el objeto actualmente, y una vez que es transformado en un objeto distinto ordeno que el sprite de ese objeto sea el que tenia almacenado en esa variable.
¡Muchas gracias!