MarcadorBarra

Esta entidad permite definir barras de estado como parte del sistema de marcadores que tengamos en nuestro juego.
Permite usar ficheros gráficos BMP para crear nuestras propias barras de estado usando ficheros BMP que hayamos podido diseñar.

Parámetros de esta entidad:
Activada
Con valor 'True' esta barra estará activada al dar comienzo el nivel. Esto
significa que si está a 'True' el parámetro 'Tiempo', esta barra comenzará a
llenarse/vaciarse desde que comience el nivel.
Con valor 'False' esta barra no estará activada al dar comienzo el nivel,
aunque durante el transcurso del juego la podremos activar con el
comando 'BARRAACTIVAR'.
El comando 'BARRADESACTIVAR' nos
permitirá desactivar una barra durante el transcurso del juego.
Num_barra
Número de barra (entre 1 y 10).
Son números que deberemos asignar nosotros manualmente.
Este número será el que se utilizará en los comandos
'BARRAACTIVAR',
'BARRADESACTIVAR',
'BARRAVISIBLE',
'BARRAINVISIBLE' y
'BARRAVALOR', para referirse a una barra en
concreto.
Visible
Permite indicar si la barra será visible desde el mismo instante que de comienzo el nivel o no.
Con valor 'True' será visible desde el comienzo del nivel, aunque el comando 'BARRAINVISIBLE'
te permitirá hacer invisible la barra durante el transcurso del juego.
Con valor 'False' será invisible desde el comienzo del nivel, aunque el comando 'BARRAVISIBLE'
te permitirá hacer visible la barra durante el transcurso del juego.
Posicion_XY
Permite indicar la posición donde aparecerá la barra en pantalla.
Aunque en este parámetro aparecen tres cajas para rellenar (X Y y Z), sólo debes usar X Y.
Un valor 'X' positivo indicará que la coordenada de X se contará desde el
margen izquierdo de la pantalla.
Un valor 'X' negativo indicará que la coordenada de X se contará desde el
margen derecho de la pantalla.
Un valor 'Y' positivo indicará que la coordenada de Y se contará desde la
parte superior de la pantalla.
Un valor 'Y' negativo indicará que la coordenada de Y se contará desde la
parte inferior de la pantalla.
Tipo_barra
Aquí debemos indicar que tipo de orientación tiene la barra que queremos usar, horizontal o vertical.
Con valor 'True', horizontal.
Con valor 'False', vertical.
X_llena
Sólo usar para barras horizontales.
Es un valor que debemos indicar dependiendo del diseño de barra que utilicemos.
Debe indicar que coordenada X de la barra, es la que se considerará como barra
completamente llena cuando el llenado de la barra alcance esa posición.
Si utilizamos la barra número 1 (parámetro 'Num_barra' con valor 1), que es
la barra por defecto, este valor es siempre 163, tal y como podemos ver a
continuación si editamos el fichero BMP de esta barra ('barra1a.bmp') con un
programa de edición 2D, considerando 0 la coordenada más a la izquierda:

X_vacia
Sólo usar para barras horizontales.
Lo mismo que el parámetro anterior pero para indicar la X de la barra vacía:

Y_llena
Sólo usar para barras verticales.
Lo mismo que el parámetro 'X_llena' pero para indicar la Y de la barra llena:

Y_vacia
Sólo usar para barras verticales.
Lo mismo que el parámetro 'X_vacia' pero para indicar la Y de la barra vacía:

Valor
Permite indicar un valor que representará el nivel de llenado inicial de la
barra. De esta forma una barra puede comenzar completamente vacía, llena o con
el nivel que queramos.
Como mínimo puede valer 1 y como máximo depende del tamaño de la barra.
Este valor podremos cambiarlo durante el transcurso del juego usando el
comando 'BARRAVALOR'.
Llenar_Vaciar
Sirve para indicar si la barra se llenará o se vaciará con el paso del tiempo.
Con valor 'True' se llenará.
Con valor 'False' se vaciará.
Sólo funcionará si la barra está activada y el parámetro 'Tiempo' está a 'True'.
Tiempo
Con valor 'True', la barra se llenará/vaciará (depende del parámetro 'Llenar_Vaciar')
con el paso del tiempo.
Con valor 'False', la barra no se llenará/vaciará con el paso del tiempo.
Retardo
Permite controlar la velocidad de llenado/vaciado de la barra cuando está activa y
el parámetro 'Tiempo' está a 'True'.
El valor de este parámetro ha de ser un tiempo expresado en segundos.
Comandos_Llena
Nombre del fichero de comandos .INI que se procesará cuando la barra se
llene por completo.
Deja en blanco este parámetro si quieres que no se procese ningún fichero de comandos.
Comandos_Vacia
Nombre del fichero de comandos .INI que se procesará cuando la barra se
vacíe por completo.
Deja en blanco este parámetro si quieres que no se procese ningún fichero de comandos.
Ficheros BMP que definen las barras:
Para definir cada barra puedes usar imágenes RGB o de 256 colores. Se necesitan dos
imágenes para cada barra.
Si usas imágenes RGB la calidad gráfica de la barra siempre será mejor que con 256 colores, pero tendrás
que crear los dos ficheros Alpha adicionales para las transparencias de cada imagen:
En caso de usar imágenes BMP de 256 colores los dos ficheros necesarios serían:
- Imagen tipo 'a': Un fichero BMP con la imagen de la barra completa (con su marco, figuras, etc...), pero
con la barra de llenado completamente vacía. Las zonas transparentes deberán estar
pintadas como siempre con el color 255 (el último color de la paleta de colores).
- Imagen tipo 'b': Un fichero BMP del mismo tamaño que el anterior pero sólo mostrando la barra
de nivel completamente llena y colocada en su sitio correcto. Todo lo que no sea la barra llena, píntalo de color transparente.
Ejemplo de una barra de 256 colores:
Fichero BMP de imagen tipo 'a':

Fichero BMP de imagen tipo 'b':

Los ficheros BMP deben estar en la carpeta 'bmp\barras' y
deben tener un nombre en concreto en función de: el nombre del primer nivel del juego
donde aparecerá la barra, el número de barra que queremos definir (que hemos indicado en el parámetro 'Num_barra') y de si son imágenes de
tipo 'a' o 'b'.
En el caso del ejemplo anterior, si la quisiéramos definir como la barra número 2, para
un juego cuyo primer nivel se llama 'desierto', los nombres de los ficheros tendrían que ser exactamente estos:
desierto_barra2a.bmp (como imagen 'a').
desierto_barra2b.bmp (como imagen 'b').
... si fueran para definir la barra número 5 pues serían así:
desierto_barra5a.bmp (como imagen 'a').
desierto_barra5b.bmp (como imagen 'b').
Ejemplo de una barra RGB (24bits de color):
Fichero BMP de imagen tipo 'a':

Fichero BMP de imagen tipo 'b':

Fichero BMP Alpha para imagen 'a':

Fichero BMP Alpha para imagen 'b':

... y sus nombres como barra número 3 en un juego cuyo primer nivel se llamase 'desierto' tendrían que ser:
desierto_barra3a.bmp (como imagen 'a').
desierto_barra3b.bmp (como imagen 'b').
desierto_a_barra3a.bmp (como imagen Alpha de imagen 'a').
desierto_a_barra3b.bmp (como imagen Alpha de imagen 'b').

Si de entrada no quieres complicarte la vida con nombres de ficheros .BMP para definir nuevos diseños de barras para tus juegos,
puedes usar la barra número 1 que existe por defecto en Entidad 3D, es de tipo horizontal y sirve
para cualquier nombre de nivel. Simplemente añade una entidad 'MarcadorBarra'
a tu nivel.
Si quieres usar esa misma barra por defecto, pero en su diseño vertical, usa la barra número 2.
En este caso recuerda poner a 'False' (para barra vertical) el parámetro 'Tipo_barra'.
¿ Para qué pueden servir estas barras ?:
- Controlar el oxígeno que le queda al jugador al entrar en una cámara donde debe completar diversas tareas.
- Controlar el tiempo que falta para que explote algo.
- Indicador de dañó que sufre un reactor por los disparos del jugador.
- Indicadores de niveles de energía de un motor, el jugador debe conseguir llenarlos por completo para usarlo.
- Indicador de 'stress' del jugador.
- Controlar el tiempo que una puerta permanece abierta para que el jugador escape por ella.
- Controlar el tiempo de que dispone el jugador para liberar a los rehenes.
- Presentar el nivel de daño que vaya sufriendo un enemigo final mientras es atacado por el jugador.
- Controlar el tiempo de que dispone el jugador para conseguir un antídoto que le salve.
Las barras definidas con entidades 'MarcadorBarra' en el primer nivel de tu juego,
las podrás usar sin problemas en los siguientes niveles sin tener que volver a
situar nuevas entidades 'MarcadorBarra' en esos niveles.
De ti depende lo que hay que hacer cuando las barras se llenen o se
vacíen por completo usando ficheros de comandos. Ten un cuenta que las barras no se vuelven a llenar ni
a vaciar automáticamente cuando alcanzan su final.
Las entidades 'MarcadorBarra' puedes situarlas en cualquier parte del nivel mientras
se encuentren en el interior del mapa.