From 83fb219e62113a9f41888af4f2726e5ce5305970 Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Wed, 10 Sep 2008 19:17:52 +0000 Subject: serverside entities --- src/core/netserver.cc | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'src/core/netserver.cc') diff --git a/src/core/netserver.cc b/src/core/netserver.cc index dcc152f..93d4682 100644 --- a/src/core/netserver.cc +++ b/src/core/netserver.cc @@ -468,7 +468,7 @@ void NetServer::send_frame_marker(NetClient *client, float timestamp, float prev // send a "ent" create entity message to all clients void NetServer::send_entity_create(NetClient *client, Entity *entity) { - if (client->state() == NetClient::Connected) { + if ((client->state() == NetClient::Connected) && !entity->serverside()) { std::ostringstream msg; msg << "ent " << entity->id() << " " << entity->type() << " "; entity->serialize_server_create(msg); @@ -480,10 +480,9 @@ void NetServer::send_entity_create(NetClient *client, Entity *entity) // send a "die" delete entity message to a client void NetServer::send_entity_delete(NetClient *client, Entity *entity) { - std::ostringstream msg(""); - msg << "die " << entity->id() << '\n'; - - if (client->state() == NetClient::Connected) { + if ((client->state() == NetClient::Connected) && !entity->serverside()) { + std::ostringstream msg(""); + msg << "die " << entity->id() << '\n'; client->send_raw(msg.str()); } } @@ -491,7 +490,7 @@ void NetServer::send_entity_delete(NetClient *client, Entity *entity) // broadcast a "sup" server update entity message to all clients void NetServer::send_entity_update(NetClient *client, Entity *entity) { - if (client->state() == NetClient::Connected) { + if ((client->state() == NetClient::Connected) && !entity->serverside()) { std::ostringstream msg; msg << "sup " << entity->id() << " "; entity->serialize_server_update(msg); -- cgit v1.2.3