diff options
author | Stijn Buys <ingar@osirion.org> | 2009-06-28 19:41:48 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2009-06-28 19:41:48 +0000 |
commit | bf96f47d2c993112327f278eb2dd270b769e59aa (patch) | |
tree | 63d8de26c95229176b500012812dec9b19e96262 /src/core/netserver.cc | |
parent | cb30a59798dc78f2e67627befefb7810e48cbfb1 (diff) |
Fixed remote entity owners
Diffstat (limited to 'src/core/netserver.cc')
-rw-r--r-- | src/core/netserver.cc | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/core/netserver.cc b/src/core/netserver.cc index 73aa73d..2639b97 100644 --- a/src/core/netserver.cc +++ b/src/core/netserver.cc @@ -159,9 +159,17 @@ void NetServer::reap() if (client->error()) { - // notify the game server - if (client->state() == NetClient::Connected) + // notify other clients + for (Clients::iterator cit = clients.begin(); cit != clients.end(); cit++) { + if ((*cit) != (*it)) { + send_player_disconnect_info((*cit), (*it)->player()); + } + } + + if (client->state() == NetClient::Connected) { + // notify the game server server()->player_disconnect((*it)->player()); + } // remove the client delete client; |