Los bloques de los programas que comienzan con la palabra reservada PROCESS determinan el comportamiento de un tipo concreto de proceso.

Después, cuando se ejecute el programa podrá haber cualquier número de procesos de dicho tipo en un momento determinado, cada uno con un código identificador diferente pero todos del mismo tipo.


PROCESS( disparo )
BEGIN
    // ...
END PROCESS( nave ) BEGIN // ... END PROCESS( enemigo ) BEGIN // ... END MAIN_PROGRAM_CDIV BEGIN_PROGRAM // ... END_PROGRAM


En este ejemplo se definen cuatro tipos de procesos, cdiv_program (que será el tipo del proceso inicial del programa}, nave, enemigo y disparo.

El número de procesos de cada uno de estos tipos que haya después en el juego depende del número de llamadas que se realicen a dichos procesos.

Todos los procesos de tipo nave ejecutarán siempre las sentencias que se definen en el bloque BEGIN ... END del programa.

¿Para qué sirve el tipo de un proceso?

El tipo de los procesos se emplea para varias cosas, por ejemplo:

- Para la función get_id() que recibe como parámetro un tipo de proceso (por ejemplo, get_id("enemigo")) y devuelve los códigos identificadores de los procesos de dicho tipo que existan en el juego en ese momento.

- Para la función collision() es similar a la anterior sólo que devuelve los códigos identificadores de los procesos con los que se esté colisionado (chocando, es decir, que los gráficos de ambos procesos estén parcialmente superpuestos).

- Para la función signal() que puede enviar una señal a todos los procesos que existan de un tipo determinado.

- O bien para, a partir de un código identificador de un proceso, poder comprobar de qué tipo de proceso se trata (si es de tipo nave, de tipo disparo, etc.).


Ver: Códigos identificadores de procesos