int out_region( CPROCESS * id_proceso, int número_región )
Retorna:
(1) si el proceso está fuera de la región o (0) en caso contrario.
Descripción:
Esta función determina si un proceso está fuera de una región de pantalla, para ello la función requiere el código identificador del proceso y un número de región.
Las regiones de pantalla se pueden definir con la función define_region() y son, simplemente, zonas rectangulares de pantalla.
La región número 0 no se puede definir ya que será siempre la pantalla completa, por lo tanto, si se especifica un 0 como segundo parámetro esta función determina si un proceso está fuera de la pantalla (si no se ve).
MAIN_PROGRAM_CDIV
BEGIN_PROGRAM
set_gfx(GFX_AUTODETECT_WINDOWED);
set_mode(m320x200);
load_fpg("../help.fpg");
put_screen(1, 1);
y=100;
x=160;
graph=101;
LOOP{
advance2d(8);
if (out_region(this, 0)){ // Se comprueba si se sale de pantalla
x=160;
y=100;
angle = rand(0, 360);
}
FRAME;
}
END_PROGRAMEn el ejemplo se pone un gráfico de fondo y el programa principal crea un gráfico en el centro de la pantalla con un ángulo aleatorio y en forma de triángulo.
En cada paso del bucle el triángulo avanza y se comprueba si ha salido de la pantalla (región 0) con la función out_region(). Si ha salido de pantalla se pone otra vez en el centro con otro ángulo elegido nuevamente al azar.
Ver: define_region() - region - Codigos identificadores