diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-02-08 01:12:55 +0200 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-02-08 01:12:55 +0200 |
commit | dd9e82f5bc2982abab436afdd68df799c6fdd857 (patch) | |
tree | 1aae2e8c85ed3630feb0f3af758ba4aa0f4a6d6c /src/environment.cpp | |
parent | 25a7fabed83caccb2c321bb4d080c5907f37b60a (diff) | |
download | minetest-dd9e82f5bc2982abab436afdd68df799c6fdd857.tar.gz minetest-dd9e82f5bc2982abab436afdd68df799c6fdd857.tar.bz2 minetest-dd9e82f5bc2982abab436afdd68df799c6fdd857.zip |
bug-fixin'
Diffstat (limited to 'src/environment.cpp')
-rw-r--r-- | src/environment.cpp | 43 |
1 files changed, 23 insertions, 20 deletions
diff --git a/src/environment.cpp b/src/environment.cpp index b1722ee3f..e8a01a4a1 100644 --- a/src/environment.cpp +++ b/src/environment.cpp @@ -118,9 +118,9 @@ void Environment::step(float dtime) /* Apply water resistance */ - if(player->in_water) + if(player->in_water_stable) { - f32 max_down = 1.0*BS; + f32 max_down = 1.5*BS; if(speed.Y < -max_down) speed.Y = -max_down; f32 max = 2.5*BS; @@ -155,27 +155,30 @@ void Environment::step(float dtime) /* Add footsteps to grass */ - // Get node that is at BS/4 under player - v3s16 bottompos = floatToInt(playerpos + v3f(0,-BS/4,0)); - try{ - MapNode n = m_map->getNode(bottompos); - if(n.d == CONTENT_GRASS) - { - n.d = CONTENT_GRASS_FOOTSTEPS; - m_map->setNode(bottompos, n); -#ifndef SERVER - // Update mesh on client - if(m_map->mapType() == MAPTYPE_CLIENT) + if(g_settings.getBool("footprints")) + { + // Get node that is at BS/4 under player + v3s16 bottompos = floatToInt(playerpos + v3f(0,-BS/4,0)); + try{ + MapNode n = m_map->getNode(bottompos); + if(n.d == CONTENT_GRASS) { - v3s16 p_blocks = getNodeBlockPos(bottompos); - MapBlock *b = m_map->getBlockNoCreate(p_blocks); - b->updateMesh(m_daynight_ratio); - } + n.d = CONTENT_GRASS_FOOTSTEPS; + m_map->setNode(bottompos, n); +#ifndef SERVER + // Update mesh on client + if(m_map->mapType() == MAPTYPE_CLIENT) + { + v3s16 p_blocks = getNodeBlockPos(bottompos); + MapBlock *b = m_map->getBlockNoCreate(p_blocks); + b->updateMesh(m_daynight_ratio); + } #endif + } + } + catch(InvalidPositionException &e) + { } - } - catch(InvalidPositionException &e) - { } } } |