Make WATER_LEVEL configurable, fix slight comparison bug in findSpawnPos()

This commit is contained in:
kwolekr 2012-10-28 23:41:48 -04:00 committed by Perttu Ahola
parent a785522194
commit 736b386554
2 changed files with 5 additions and 2 deletions

@ -163,6 +163,7 @@ void set_default_settings(Settings *settings)
settings->setDefault("max_block_generate_distance", "7"); settings->setDefault("max_block_generate_distance", "7");
settings->setDefault("time_send_interval", "5"); settings->setDefault("time_send_interval", "5");
settings->setDefault("time_speed", "72"); settings->setDefault("time_speed", "72");
settings->setDefault("water_level", "1");
settings->setDefault("server_unload_unused_data_timeout", "29"); settings->setDefault("server_unload_unused_data_timeout", "29");
settings->setDefault("server_map_save_interval", "5.3"); settings->setDefault("server_map_save_interval", "5.3");
settings->setDefault("full_block_send_enable_min_time_from_building", "2.0"); settings->setDefault("full_block_send_enable_min_time_from_building", "2.0");

@ -4832,6 +4832,8 @@ v3f findSpawnPos(ServerMap &map)
#endif #endif
#if 1 #if 1
s16 water_level = g_settings->getS16("water_level");
// Try to find a good place a few times // Try to find a good place a few times
for(s32 i=0; i<1000; i++) for(s32 i=0; i<1000; i++)
{ {
@ -4843,13 +4845,13 @@ v3f findSpawnPos(ServerMap &map)
// Get ground height at point (fallbacks to heightmap function) // Get ground height at point (fallbacks to heightmap function)
s16 groundheight = map.findGroundLevel(nodepos2d); s16 groundheight = map.findGroundLevel(nodepos2d);
// Don't go underwater // Don't go underwater
if(groundheight < WATER_LEVEL) if(groundheight <= water_level)
{ {
//infostream<<"-> Underwater"<<std::endl; //infostream<<"-> Underwater"<<std::endl;
continue; continue;
} }
// Don't go to high places // Don't go to high places
if(groundheight > WATER_LEVEL + 4) if(groundheight > water_level + 6)
{ {
//infostream<<"-> Underwater"<<std::endl; //infostream<<"-> Underwater"<<std::endl;
continue; continue;