summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--source/cFluidSimulator.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/source/cFluidSimulator.cpp b/source/cFluidSimulator.cpp
index 68a6af599..c2df9b1f2 100644
--- a/source/cFluidSimulator.cpp
+++ b/source/cFluidSimulator.cpp
@@ -350,10 +350,12 @@ void cFluidSimulator::Simulate( float a_Dt )
cPickup* Pickup = new cPickup( pos.x * 32 + 16, (pos.y-1) * 32 + 16, pos.z * 32 + 16, cItem( (ENUM_ITEM_ID)DownID, 1, m_World->GetBlockMeta( pos.x, pos.y-1, pos.z ) ) );
Pickup->Initialize( m_World );
}
-
- m_World->FastSetBlock( pos.x, pos.y-1, pos.z, m_FluidBlock, 8 ); // falling
- AddBlock( pos.x, pos.y-1, pos.z );
- ApplyUniqueToNearest(pos - Vector3i(0, 1, 0));
+ if( pos.y > 0 )
+ {
+ m_World->FastSetBlock( pos.x, pos.y-1, pos.z, m_FluidBlock, 8 ); // falling
+ AddBlock( pos.x, pos.y-1, pos.z );
+ ApplyUniqueToNearest(pos - Vector3i(0, 1, 0));
+ }
}
if(IsSolidBlock(DownID)||( BlockID == m_StationaryFluidBlock)) // Not falling
{