diff options
author | Simon Howard | 2011-10-14 18:14:34 +0000 |
---|---|---|
committer | Simon Howard | 2011-10-14 18:14:34 +0000 |
commit | 2344223e648ca693945fe014bb3162c272bf27ec (patch) | |
tree | 53269b0822b53fbef073bd4c4bea180d48d7907c /src/net_server.c | |
parent | 031c8ff2d2dcb1a94d730d28555989722aeffdea (diff) | |
download | chocolate-doom-2344223e648ca693945fe014bb3162c272bf27ec.tar.gz chocolate-doom-2344223e648ca693945fe014bb3162c272bf27ec.tar.bz2 chocolate-doom-2344223e648ca693945fe014bb3162c272bf27ec.zip |
Convert Hexen to use common main loop code. Working multiplayer!
Subversion-branch: /branches/v2-branch
Subversion-revision: 2423
Diffstat (limited to 'src/net_server.c')
-rw-r--r-- | src/net_server.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/net_server.c b/src/net_server.c index 24a50bd0..4d6d96fd 100644 --- a/src/net_server.c +++ b/src/net_server.c @@ -106,6 +106,10 @@ typedef struct unsigned int is_freedoom; + // Player class (for Hexen) + + int player_class; + } net_client_t; // structure used for the recv window @@ -640,6 +644,7 @@ static void NET_SV_ParseSYN(net_packet_t *packet, client->recording_lowres = data.lowres_turn; client->drone = data.drone; + client->player_class = data.player_class; } if (client->connection.state == NET_CONN_STATE_WAITING_ACK) @@ -704,6 +709,20 @@ static void NET_SV_ParseGameStart(net_packet_t *packet, net_client_t *client) settings.num_players = NET_SV_NumPlayers(); + // Copy player classes: + + for (i = 0; i < MAXPLAYERS; ++i) + { + if (sv_players[i] != NULL) + { + settings.player_classes[i] = sv_players[i]->player_class; + } + else + { + settings.player_classes[i] = 0; + } + } + nowtime = I_GetTimeMS(); // Send start packets to each connected node @@ -1716,4 +1735,3 @@ void NET_SV_Shutdown(void) I_Sleep(1); } } - |