Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Kain88 en Agosto 18, 2015, 08:22:08 AM

Título: Consulta sobre barra de vida
Publicado por: Kain88 en Agosto 18, 2015, 08:22:08 AM
Hola, quería saber como hacer una barra de vida estilo Megaman, con sprites de barras representando la salud y que la barra sea vertical en lugar de horizontal. Vi algunos ejemplos en páginas usando la declaración "for" pero no me quedó del todo claro.
Título: Re:Consulta sobre barra de vida
Publicado por: dridly en Agosto 18, 2015, 08:58:20 AM
Te refieres a draw_healthbar()?
http://docs.yoyogames.com/source/dadiospice/002_reference/drawing/drawing%20basic%20forms/draw_healthbar.html (http://docs.yoyogames.com/source/dadiospice/002_reference/drawing/drawing%20basic%20forms/draw_healthbar.html)

Título: Re:Consulta sobre barra de vida
Publicado por: Marth en Agosto 18, 2015, 11:56:27 AM
for(u=0 u<vida_total u++) draw_sprite(spritevida,0,5,5+u*sprite_height)
for(u=vida_total u<vida_maxima u++) draw_sprite(sprite_herida,0,5,5+u*sprite_height)


Esto te puede servir para hacer un sistema de vitalidad estilo Megaman.
Título: Re:Consulta sobre barra de vida
Publicado por: Guacusio en Agosto 18, 2015, 01:33:52 PM
Cita de: Marth en Agosto 18, 2015, 11:56:27 AM
for(u=0 u<vida_total u++) draw_sprite(spritevida,0,5,5+u*sprite_height)
for(u=vida_total u<vida_maxima u++) draw_sprite(sprite_herida,0,5,5+u*sprite_height)


Esto te puede servir para hacer un sistema de vitalidad estilo Megaman.

¿Qué serían las variables vida_total y vida_maxima y entre qué rangos de valores deberían moverse?
Título: Re:Consulta sobre barra de vida
Publicado por: Marth en Agosto 18, 2015, 02:07:34 PM
Cita de: Guacusio en Agosto 18, 2015, 01:33:52 PM
Cita de: Marth en Agosto 18, 2015, 11:56:27 AM
for(u=0 u<vida_total u++) draw_sprite(spritevida,0,5,5+u*sprite_height)
for(u=vida_total u<vida_maxima u++) draw_sprite(sprite_herida,0,5,5+u*sprite_height)


Esto te puede servir para hacer un sistema de vitalidad estilo Megaman.

¿Qué serían las variables vida_total y vida_maxima y entre qué rangos de valores deberían moverse?

La vitalidad total y máxima del personaje. ;)
El rango el que el jugador quiera.
En el megaman original los personajes tenían 28 puntos de vida, por lo que la barra tenia 28 fragmentos. A diferencia de con draw_healthbar, este medidor de vitalidad no es porcentual.
Título: Re:Consulta sobre barra de vida
Publicado por: Kain88 en Agosto 18, 2015, 11:55:53 PM
Cita de: Marth en Agosto 18, 2015, 11:56:27 AM
for(u=0 u<vida_total u++) draw_sprite(spritevida,0,5,5+u*sprite_height)
for(u=vida_total u<vida_maxima u++) draw_sprite(sprite_herida,0,5,5+u*sprite_height)


Esto te puede servir para hacer un sistema de vitalidad estilo Megaman.

Gracias por responder :D

Y ese código va todo en el evento Draw del personaje no?
Título: Re:Consulta sobre barra de vida
Publicado por: jodidox en Agosto 19, 2015, 12:00:35 AM
Cita de: Kain88 en Agosto 18, 2015, 11:55:53 PM
Cita de: Marth en Agosto 18, 2015, 11:56:27 AM
for(u=0 u<vida_total u++) draw_sprite(spritevida,0,5,5+u*sprite_height)
for(u=vida_total u<vida_maxima u++) draw_sprite(sprite_herida,0,5,5+u*sprite_height)


Esto te puede servir para hacer un sistema de vitalidad estilo Megaman.

Gracias por responder :D

Y ese código va todo en el evento Draw del personaje no?

Si, va todo en el evento Draw!
:D
Título: Re:Consulta sobre barra de vida
Publicado por: Kain88 en Agosto 20, 2015, 12:00:14 AM
Ok, gracias! Una ultima consulta: cual sería el sprite_herida?
Título: Re:Consulta sobre barra de vida
Publicado por: Marth en Agosto 20, 2015, 01:12:21 AM
Cita de: Kain88 en Agosto 20, 2015, 12:00:14 AM
Ok, gracias! Una ultima consulta: cual sería el sprite_herida?

Un sprite que crearías para indicar la vitalidad perdida. Por ejemplo, en Rayman la vitalidad se indicaba con una esferas amarillas y cada  vez que recibías daño una de esas esferas se tornaba roja.
Título: Re:Consulta sobre barra de vida
Publicado por: Kain88 en Agosto 20, 2015, 01:41:32 AM
Aah, ok, igualmente mi intención es hacer una barra idéntica a la de los juegos de Megaman, pero sigo sin lograrlo  XD
Título: Re:Consulta sobre barra de vida
Publicado por: Marth en Agosto 20, 2015, 01:54:43 AM
Cierto, en Megaman solo se mostraba la parte entera, no se mostraba una parte de vitalidad perdida, entonces puedes excluir el fragmento for(u=vida_total u<vida_maxima u++) draw_sprite(sprite_herida,0,5,5+u*sprite_height)

Lo que si es que en megaman la barra se contenía en un "tubo". Yo en Ilíada Espacial uso una barra similar para las batallas contra jefes, y en mi caso tengo por un lado el sprite del icono de vitalidad y por otro el sprite del contenedor y dibujo el contenedor de tal forma que encaje con la vitalidad.
Así lo hago yo, obviamente tu lo tendrás que adaptar a tu gusto (pues mi barra es horizontal y porcentual y tu quieres una vertical y no tiene por que ser porcentual):

draw_sprite(contenedor,0,room_width-250,room_height-56)
for(u=0 u<ceil(vida*longitud/PS) u++)
draw_sprite_ext(vida,0,room_width-241+u,room_height-53,1,1,0,global.color[floor(5*u/150)],1)
Título: Re:Consulta sobre barra de vida
Publicado por: Kain88 en Agosto 20, 2015, 03:07:51 AM
Gracias! Voy a modificarlo para lograr lo que busco :D