MCPcopy Create free account
hub / github.com/DescentDevelopers/Descent3 / MultiSendPlayerDisconnect

Function MultiSendPlayerDisconnect

Descent3/multi_server.cpp:1021–1042  ·  view source on GitHub ↗

Tells our clients that a player disconnected

Source from the content-addressed store, hash-verified

1019
1020// Tells our clients that a player disconnected
1021void MultiSendPlayerDisconnect(int slot) {
1022 int size, count = 0;
1023 uint8_t data[MAX_GAME_DATA_SIZE];
1024
1025 size = START_DATA(MP_DISCONNECT, data, &count);
1026
1027 // Send player whose disconnected
1028 MultiAddByte(slot, data, &count);
1029
1030 END_DATA(count, data, size);
1031
1032 if (Game_is_master_tracker_game) {
1033 NetPlayers[slot].flags |= NPF_MT_WRITING_PILOT;
1034 }
1035 for (int i = 0; i < MAX_NET_PLAYERS; i++) {
1036 if (i == Player_num || i == slot)
1037 continue;
1038
1039 if (NetPlayers[i].flags & NPF_CONNECTED)
1040 nw_SendReliable(NetPlayers[i].reliable_socket, data, count);
1041 }
1042}
1043
1044#define DISCONNECT_TIME 10
1045// Disconnects all players that haven't been heard from in a while

Callers 1

MultiDisconnectPlayerFunction · 0.85

Calls 4

START_DATAFunction · 0.85
MultiAddByteFunction · 0.85
END_DATAFunction · 0.85
nw_SendReliableFunction · 0.85

Tested by

no test coverage detected