Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: NiveusDymblack en Febrero 08, 2014, 04:30:55 PM

Título: Movimiento de enemigos y cambio de sprites.
Publicado por: NiveusDymblack en Febrero 08, 2014, 04:30:55 PM
¡Buenos días!

Hace poco comencé a trastear con el GM y ahora he estado probando la creación de un enemigo que se mueva con varios sprites, uno de movimiento hacia la izquierda y uno hacia la derecha. He estado buscando en el buscador pero no he encontrado ningún tema con esta duda, tal vez porque haya buscado mal o qué se yo, pero si está mal creado el tema cerradlo y ponedme link al otro tema o cualquier cosa, por favor.

Entonces, he creado el objeto con el sprite inicial (Hacia la derecha) y he especificado los siguientes movimientos:

Evento Create, junto a la acción set the horizontal speed to 2

Evento collision con el bloque suelo y las acciones reverse horizontal direction y el cambio de sprite.

Entonces el enemigo comienza su movimiento, choca contra la pared de la derecha y cambia al sprite de la mirada hacia la izquierda, pero cuando sigue caminando y choca contra la pared de la izquierda, no vuelve a cambiar al sprite de la derecha. He intentado especificar el sprite después pero no me deja, poner return, start y end of block... pero nada. ¿Alguien que pudiese solucionarme esta pequeña duda?

¡Un saludo!
Título: Re:Movimiento de enemigos y cambio de sprites.
Publicado por: elviskelley en Febrero 08, 2014, 05:19:14 PM
Yo no uso drag and drop. osea D&D que son iconos yo uso GML.
asi que te dare el codigo de una vez.
event create
usa el documento de la pestaña control y escribe esto.
direc=0;
Ve a la pestaña control seleccionas el documento y escribes este codigo que va en el event end step.

if place_free(x,y+1)then {y+=1;}
if (place_free(x+2,y)  and !direc) then {x+=2; sprite_index=sprDerecha;}
else
{direc=1;}
if (place_free(x-2,y)  and direc) then {x-=2; sprite_index=sprizquierda;}
else
{direc=0;}

Eso es todo.
Título: Re:Movimiento de enemigos y cambio de sprites.
Publicado por: 7sixerCF en Febrero 08, 2014, 08:34:58 PM
Seria util que nos dijeras en que vista esta el juego si es cuando los objetos se ven directamente desde arriba, si es en 1era persona, si es en 2da, etc no podemos aplicar un codigo a todos los tipos de vistas, si fuera vista desde arriba donde el personaje se le ve la cabeza el cuerpo y los brasos como el Counter Strike 2D seria muy facil hacer lo que pides incluso mejor, avisanos cuando desidas decirnos el tipo de vista de tu juego
Título: Re:Movimiento de enemigos y cambio de sprites.
Publicado por: NiveusDymblack en Febrero 13, 2014, 05:10:59 PM
Muchas gracias por las respuestas, y cabe decir que ya he probado el código del primer usuario y me funciona, simplemente decir que el enemigo acaba deteniéndose cuando se producen los dos cambios de sprite. ¿Cómo podría hacer para que se quedase moviéndose permanentemente y cambiando de sprite? Es un simple movimiento como los enemigos de mario, de un lado a otro y cuando colisiona contra la pared.

Perdón por molestar y gracias de nuevo.
Título: Re:Movimiento de enemigos y cambio de sprites.
Publicado por: 7sixerCF en Febrero 13, 2014, 09:05:32 PM
va si era un enemigo que se mueve a la derecha o a la izquierda tipo mario es muy facil jakjakja que ridiculo xD vale amigo toma este ejemplo que hice para ti es vastante simple el enemigo tendra 3 eventos uno de create y 2 de colision que cambiaran del sprite como gustes :D bueno eso es todo bye e.e

Ejemplo de enemigo de mario con sprites echos por mi xD: Buscar en la seccion de descargas "Enemigo Tipo Mario" (si no aparese buscala mas tarde ya que la tienen que aprobar xD)

Si quieres que el jugador muera pues solo agregas un evento de colision con el jugador y haces lo que gustes, nunca uses un instance destroy eso es estupido ya que hace que la instancia desaparesca y es muy feo, yo haria un step con el evento no more lives que se encuentra en others donde haria un chage sprite con la imagen de muerte y un move fixed hacia abajo para que caiga como mario o bueno si quieres solo una animacion de muerte solo haces el change sprite por uno que tenga la animacion de muerte y nada mas xD
Título: Re:Movimiento de enemigos y cambio de sprites.
Publicado por: NiveusDymblack en Febrero 17, 2014, 11:18:32 PM
He probado pero no me deja. No me deja poner dos colisiones, tampoco me deja crear otro objeto y hacer que cuando colisione con el objeto número 2 cambie al segundo sprite pero nada, no va. ¿Alguien puede darme otra idea, por favor? Sigo sin saberlo xDDD