Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: gudy en Agosto 10, 2012, 07:20:01 PM

Título: invulnerable despues de ser golpeado?
Publicado por: gudy en Agosto 10, 2012, 07:20:01 PM
 ??? nose si ya hayan hecho esta pregunta lo busque en el foro pero no encontre nada esta es la pregunta:
como puedo hacer que mi personaje sea invulnerable despues de que es golpeado por los enemigos?
ya saben como en la mayoria de los juegos donde te pegan y te haces transparente y no te pueden hacer nada durante unos segundos....
alguien pudieran ayudar de antemano gracias y espero su respuesta y esque la verdad no encnontre nada ???
Título: Re:invulnerable despues de ser golpeado?
Publicado por: Mgbu en Agosto 10, 2012, 08:36:53 PM
Eso se hace con una variable, por ejemplo la llamamos 'inmune'

Entonces en el evento create arrastras el cuadrito de 'set variable', el nombre seria inmune y el valor 0 (porque apenas comienza puede recibir golpes)

Despues en todos los lugares que queres que no se haga algo si es inmune (por ejemplo en la parte que te saca vida) agregas esto al comienzo del evento:
Arrastras el cuadrito de 'Check variable' con el nombre de 'inmune' y el valor de 0 y el triangulo que mira para arriba. El triangulo que mira para abajo lo pones al final de todo

En el momento que te saca vida pones 'ser variable' inmune a 1, y pones 'set alarm' alguna alarma que no hayas usado y el tiempo de inmunidad que quieras

Lo último es agregar un evento 'alarm ' con el número que pusiste antes
Adentro pones solamente 'set variable' inmune a 0

Para que se vea transparente creo que en el step pones 'check variable' inmune en 0
Despues 'set variable' image_alpha en 1
Despues pones 'else' y a continuacion 'set variable' image_alpha en 0.5


Me parece que es asi, estoy con el celular y sin el GM a mano
Título: Re:invulnerable despues de ser golpeado?
Publicado por: somnus en Agosto 13, 2012, 06:17:40 PM
agregando a lo de arriba

cuando el enemigo golpee pones el sprite con un :

alpha de 0
y la variable inmune a true; ( o uno como seria)

y en el evento step
mientras inmune este en "true" (o 1 de valor)
ve sumando la variable alpha  +=0.1

y checas   if(alpha ==1)
{
inmune =false;    (o a cero)
}

esto te da el efecto de que el golpeado, se haga transparente y va haciendose nitido, una vez que sea totalmente nitido de nuevo, podra ser golpeado.

Título: Re:invulnerable despues de ser golpeado?
Publicado por: MaanuRP en Agosto 13, 2012, 08:14:08 PM
Te dejo estos videos de "Yoshi-Fan GM", que explica como hacerlo con un metodo que es muy bueno, o por lo menos a mi me parece bastante ordenado y tiene un buen efecto y aplicacion. (Obviamente yo lo pasaria a GML, solo porque me gusta asi)

Es al final del primer video, y principios del segundo, pero si lo quieres ver todo, mejor:

1) http://www.youtube.com/watch?v=4vilcNPO05U

2) http://www.youtube.com/watch?v=BccIraOxa0M