GLOBAL STRUCT m8

STRUCT m8[9];
    z; // Prioridad de impresión
    camera; // Identificador de la cámara
    height; // Altura de la cámara
    angle; // Angulo vertical
END

Esta estructura de 10 registros contiene ciertos campos relacionados con parámetros modificables de las ventanas de modo 8. Los diez registros tienen los mismos nombres de campos, pero cada uno de ellos modifica los parámetros de una ventana de modo 8 diferente (ya que pueden activarse hasta 10 ventanas de este tipo).

Una ventana de modo 8 se podría definir como una región de pantalla que muestra un mapa de sectores tridimensional.

Para que un registro (del 0 al 9) de la estructura m8 tenga sentido, primero debe activarse dicha ventana de modo 8 (del 0 al 9) con la función start_mode8() (ver esta función para más información sobre las ventanas de modo 8}.

Se entiende que los campos de esta estructura son complementarios a los parámetros de llamada de esta última función. Para poder observar un ejemplo práctico de un modo 8, se puede acceder a la ayuda sobre la función load_wld() o de start_mode8().


Forma de uso de la estructura m8:

Para acceder a estos campos se debe preceder el nombre del campo por la palabra m8, el número de registro entre corchetes y el símbolo . (punto).

Por ejemplo, si se inicializaran dos ventanas de modo 8, la número 0 y la número 1, se podría acceder a la variable camera de ambas ventanas como m8[0].camera y m8[1].camera, respectivamente. Cuando se acceda a la ventana número 0 de modo 8 se puede, además, omitir el número de ventanas entre corchetes, es decir, que la variable m8.camera y la variable m8[0].camera son, a todos los efectos, la misma para el lenguaje.


Se muestra a continuación una descripción detallada de cada campo

z - Prioridad de impresión del modo 8, aquí se indica en qué plano de profundidad se debe pintar esta ventana, respecto al resto de procesos. Por defecto, esta variable valdrá 256 lo cual quiere decir que, como los procesos por defecto tienen su variable local z a 0, la ventana de modo 8 se pintará en un plano de profundidad mayor, más al fondo, visualizándose los gráficos de los procesos por encima de la ventana. Para variar esta situación se puede modificar la variable z de la ventana (por ejemplo ponerla a -1) o la variable z de los procesos (por ejemplo ponerla a 257).


camera - Código identificador del proceso en el que se sitúa la cámara. Para mover la cámara que controla la visión del modo 8, únicamente se debe crear un proceso de modo 8, un proceso que tenga su variable local ctype = c_m8, y poner su código identificador en la variable camera de esta estructura. Tras esto, símplemente se deben modificar las variables locales x, y, z y angle de este proceso y, por ejemplo, utilizar la función advance() para mover hacia delante la cámara.


height - Altura de la cámara respecto al proceso, por defecto este campo está inicializado a 32. El proceso de modo 8 se situará verticalmente en su coordenada z, su variable local height determina la altura del propio proceso, y este campo (m8.height) determina la altura de la cámara (de los ojos del proceso respecto a su base).


angle - Angulo vertical de la cámara, este ángulo es un valor entre -128 y 128. Define si la cámara mira hacia arriba o hacia abajo. Cuando m8.angle valga 0, que es el valor por defecto, la cámara mirará hacia el centro.

El ángulo horizontal será la variable local angle del propio proceso que está siendo utilizado como cámara de la ventana (cuyo identificador está en m8.camera).


Véase también las variables locales relacionadas con el modo 8.

  LOCAL radius
  LOCAL m8_wall
  LOCAL m8_sector
  LOCAL m8_nextsector
  LOCAL m8_step


Ver: Datos globales - start_mode8()