diff options
author | gushromp <blashyrk92@gmail.com> | 2014-12-16 22:38:57 +0100 |
---|---|---|
committer | gushromp <blashyrk92@gmail.com> | 2014-12-16 22:38:57 +0100 |
commit | 6cf3aa70f1d7291136a25c2b289113fb15ba68dc (patch) | |
tree | bacedb3d100a81f52015a5657c31cf9744b4d93d | |
parent | Updated Core. (diff) | |
download | cuberite-6cf3aa70f1d7291136a25c2b289113fb15ba68dc.tar cuberite-6cf3aa70f1d7291136a25c2b289113fb15ba68dc.tar.gz cuberite-6cf3aa70f1d7291136a25c2b289113fb15ba68dc.tar.bz2 cuberite-6cf3aa70f1d7291136a25c2b289113fb15ba68dc.tar.lz cuberite-6cf3aa70f1d7291136a25c2b289113fb15ba68dc.tar.xz cuberite-6cf3aa70f1d7291136a25c2b289113fb15ba68dc.tar.zst cuberite-6cf3aa70f1d7291136a25c2b289113fb15ba68dc.zip |
-rw-r--r-- | src/Simulator/FloodyFluidSimulator.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/Simulator/FloodyFluidSimulator.cpp b/src/Simulator/FloodyFluidSimulator.cpp index e95ef216d..5e0f88ab6 100644 --- a/src/Simulator/FloodyFluidSimulator.cpp +++ b/src/Simulator/FloodyFluidSimulator.cpp @@ -58,6 +58,7 @@ void cFloodyFluidSimulator::SimulateBlock(cChunk * a_Chunk, int a_RelX, int a_Re BLOCKTYPE MyBlock; NIBBLETYPE MyMeta; a_Chunk->GetBlockTypeMeta(a_RelX, a_RelY, a_RelZ, MyBlock, MyMeta); + if (!IsAnyFluidBlock(MyBlock)) { // Can happen - if a block is scheduled for simulating and gets replaced in the meantime. @@ -115,13 +116,15 @@ void cFloodyFluidSimulator::SimulateBlock(cChunk * a_Chunk, int a_RelX, int a_Re // Also has been re-scheduled for ticking in the next wave, so no marking is needed return; } + + else if (SpreadFurther && (NewMeta < 8)) + { + // Spread to the neighbors: + SpreadXZ(a_Chunk, a_RelX, a_RelY, a_RelZ, NewMeta); + } } - if (SpreadFurther && (NewMeta < 8)) - { - // Spread to the neighbors: - SpreadXZ(a_Chunk, a_RelX, a_RelY, a_RelZ, NewMeta); - } + // Mark as processed: a_Chunk->FastSetBlock(a_RelX, a_RelY, a_RelZ, m_StationaryFluidBlock, MyMeta); |