GLOBAL STRUCT net

STRUCT net;
    device; // Dispositivo de conexión
    com; // Puerto de comunicaciones
    speed; // Velocidad de conexión
    number; // Número de teléfono
    init; // Cadena de inicio del módem
    mode; // Modo (pulsos o tonos)
    server; // Indica si es servidor
    max_players; // Numero máximo de jugadores
    num_players; // Numero actual de jugadores
END

Esta estructura de datos es de nivel muy avanzado y se requiere bastante experiencia en programación para poder crear un juego orientado a una conexión de red (se puede encontrar más información en el manual de usuario).

Contiene los datos sobre el hardware de red, se debe utilizar en conjunto con las funciones net_join_game() y net_get_games().

La estructura net tiene un único registro. En los diferentes campos del mismo se se establecen los parámetros que definen el tipo de conexión.


device - Dispositivo a través del cual se va a establecer la conexión, este puede contener uno de estos tres valores:

 1 - Conexión en una red local, con protocolo IPX.

 2 - Conexión a través de un cable serie (sólo dos equipos).

 3 - Conexión por módem (sólo dos equipos).

En función del dispositivo se deberán inicializar unos u otros campos de la estructura net, ya que muchos de estos parámetros son específicos para un dispositivo concreto.


com - Puerto de comunicaciones a emplear para la conexión, es decir, el número de dispositivo COM (de COM1 a COM4), indicándolo como un valor numérico entre 1 y 4.

Este campo únicamente se debe definir para conexiones por cable serie o a través de un módem.


speed - Velocidad en baudios (número de bits por segundo), hasta 115000. Esta velocidad debe ajustarse a las posibilidades del cable o módem empleado, y del volumen de datos que requiera la comunicación del programa.

Este campo únicamente se debe definir para conexiones por cable serie o a través de un módem.


number - Número de teléfono, por supuesto este campo es necesario únicamente en conexiones a través de módem.

Por ejemplo, se debe asignar el número de teléfono a marcar con una sentencia como la siguiente: net.number="912345678";.


init - Cadena de inicio, también es un campo exclusivo para las conexiones por módem; por ejemplo una sentencia como: net.init="ATZ";.


mode - Modo en el que se debe establecer la conexión por módem (también sólo para este dispositivo), los valores pueden ser los siguientes:

 0 - Pulsos.

 1 - Tonos.


server - Indica si un equipo es el servidor. Se trata de un dato informativo (es un campo de sólo lectura, no se debe modificar).

En una conexión, únicamente un equipo tendrá el campo net.server a 1, este equipo será el servidor de la partida, y es el que debe centralizar las acciones más importantes del programa.


max_players - Número máximo de jugadores que se permiten en una partida, de 2 a 16. Este es un campo útil únicamente en conexiones por red local, ya que en conexiones de cable serie o módem el número máximo de jugadores siempre será 2.

Este número debe coincidir con el número máximo de registros que tenga la estructura global utilizada como paquetes de comunicación entre los diversos equipos.


num_players - Número actual de jugadores conectados a la partida, de 1 a net.max_players. Este es un valor dinámico, que va variando segun se vayan produciendo las conexiones (se pueden ir conectando y desconectando jugadores en cualquier momento).

La programación del juego es la que debe determinar si los jugadores pueden entrar y salir dinámicamente de la partida, o bien si deben estar todos conectados antes de que esta de comienzo.


Ver: Datos globales - net_join_game() - net_get_games()