summaryrefslogtreecommitdiff
path: root/src/server.cpp
diff options
context:
space:
mode:
authorSmallJoker <mk939@ymail.com>2014-11-08 14:35:55 +0100
committerKahrl <kahrl@gmx.net>2014-11-08 14:56:09 +0100
commitc40e993ce4a13321e57856fb40566fa93a5ef187 (patch)
tree27049ec2f527c06907ff1631d74843cb7e7164fa /src/server.cpp
parent96fcca4ea0a9ac0cec1ef48d5baeed78120f62e9 (diff)
downloadminetest-c40e993ce4a13321e57856fb40566fa93a5ef187.tar.gz
minetest-c40e993ce4a13321e57856fb40566fa93a5ef187.tar.bz2
minetest-c40e993ce4a13321e57856fb40566fa93a5ef187.zip
Replace setting unlimited_player_transfer_distance with player_transfer_distance
Diffstat (limited to 'src/server.cpp')
-rw-r--r--src/server.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/server.cpp b/src/server.cpp
index 2558d0d6f..7be1f5860 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -707,7 +707,14 @@ void Server::AsyncRunStep(bool initial_step)
// Radius inside which objects are active
s16 radius = g_settings->getS16("active_object_send_range_blocks");
+ s16 player_radius = g_settings->getS16("player_transfer_distance");
+
+ if (player_radius == 0 && g_settings->exists("unlimited_player_transfer_distance") &&
+ !g_settings->getBool("unlimited_player_transfer_distance"))
+ player_radius = radius;
+
radius *= MAP_BLOCKSIZE;
+ player_radius *= MAP_BLOCKSIZE;
for(std::map<u16, RemoteClient*>::iterator
i = clients.begin();
@@ -733,9 +740,9 @@ void Server::AsyncRunStep(bool initial_step)
std::set<u16> removed_objects;
std::set<u16> added_objects;
- m_env->getRemovedActiveObjects(pos, radius,
+ m_env->getRemovedActiveObjects(pos, radius, player_radius,
client->m_known_objects, removed_objects);
- m_env->getAddedActiveObjects(pos, radius,
+ m_env->getAddedActiveObjects(pos, radius, player_radius,
client->m_known_objects, added_objects);
// Ignore if nothing happened