Octubre 22, 2015, 05:54:20 PM Ultima modificación: Octubre 22, 2015, 06:00:37 PM por evansmako123
Logre crear un sistema de puntos y vidas en Game Maker pero tengo las siguientes incognitas ¿Como hacer a el jugador invulnerable por unos segundos al colisionar con un enemigo y perder una vida? Me pasa que choca, pero al perder esa vida sigue colisionando con el objeto y perdiendo vidas. La informacion de las vidas y puntos me pasare en la esquina de la pantalla, pero al mi juego ser un juego bastante largo verticalmente se crea en la ultima instancia de la room, y solo lo puedo ver hasta que llego a la ultima parte de la view... me gustaria que siempre estuviera presente en la esquina del juego.


Respecto a lo de la información hay que hacer esto, suponiendo que el objeto que guarda el score de tu juego se llama obj_info:

EVENTO STEP:


x=view_xview+10
y=view_yview+10


Esto sirve para que el objeto siga a la cámara.

Ahora te hago un ejemplo de lo otro.
Cordialmente Jodidox!

Te dejo un ejemplo, le puse algunos comentarios para que se entienda mejor

yo lo que hago es que tengo 2 objetos, el obj_player cuando colisiona con el enemigo se destruye y crea una instancia de otro obj_player_daño el cual tiene la animación de que lo dañaron etc, luego an animation end o con una alarma no se tú xD haces que se destruya y cree un obj_player, al menos así lo hago yo :/
solo soy un novato queriendo aprender

Hay formas de hacerlo mejor, y es poner una Timeline en donde haces al player visible y no visible varias veces, lo cual creará el efecto de que está herido, ese sistema lo utilizan muchos juegos, como Mario Bros, donde si estás grande te ponen pequeño y la visibilidad de Mario parece que parpadeara por unos segundos.
Cordialmente Jodidox!

Cita de: 3dgeminis en Octubre 23, 2015, 12:14:31 AM
Te dejo un ejemplo, le puse algunos comentarios para que se entienda mejor

Muchas gracias, el unico problema como se crearia una consecuencia al perder las 3 vidas? En este caso un "Game Over" y se reinicie al room? Ya que los codes que me pasaste no tienen que ver con "Score"

Tienes que poner en el evento STEP del player:

if score < = 0 { // Donde dice score lo cambias por el nombre de la variable vida de tu juego
game_restart();
}
Cordialmente Jodidox!

Y si solo quieres que al perder una vida se reinicie el nivel, pues suponiendo que tu variable vida de llama. vida_total


if vida_total < = 0 {
room_restart();
}
Cordialmente Jodidox!

Cita de: 3dgeminis en Octubre 23, 2015, 12:14:31 AM
Te dejo un ejemplo, le puse algunos comentarios para que se entienda mejor

Muchas gracias! Lo unico que faltaria es que cuando las vidas lleguen a 0, el nivel se reinicie... Jodidox me dio la respuesta, pero por lo que veo el nombre de la variable no es "vidas" en este caso

lives?.... :/
algo me dice que usas esa xD
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

Es según la variable que le hayas asignado para controlar las vidas de tu personaje, yo en mi caso uso "vidas_total" una variable que cree mucho antes en el EVENTO CREATE del player.  :)  :D
Cordialmente Jodidox!

Cita de: jodidox en Octubre 27, 2015, 01:57:18 PM
Es según la variable que le hayas asignado para controlar las vidas de tu personaje, yo en mi caso uso "vidas_total" una variable que cree mucho antes en el EVENTO CREATE del player.  :)  :D

Le preguntare de una forma mas detallada. Actualmente hice copy pasta de los codes de 3dgeminis, este me dibuja y le da invulnerabilidad al personaje//Muchas gracias por cierto.

El asunto, es que las vidas al llegar a 0 no crean una consecuencia. Intente el codigo step de Jodidox, pero su variable "vida_total" no es la de mi juego, pero no se cual seria la mia(Repitiendo que el code es de 3dgeminis) si pudiera analizar el archivo de 3dgeminis o decirme algo error en ambos codes.

PD: Intente con vidas, lives, life. Entre otras.

El error en realidad esta en < = es <= pegado!  XD Lamento decirlo tarde,

Mira el ejemplo modificado, yo lo hice, puse en STEP del jugador mi codigo.

Checkealo.

Si tienes alguna duda me avisas,

Saludos.
Cordialmente Jodidox!

Cita de: jodidox en Octubre 27, 2015, 04:23:02 PM
El error en realidad esta en < = es <= pegado!  XD Lamento decirlo tarde,

Mira el ejemplo modificado, yo lo hice, puse en STEP del jugador mi codigo.

Checkealo.

Si tienes alguna duda me avisas,

Saludos.

Muchas gracias Jodidox!, ya pude hacer todo bien :3