summaryrefslogtreecommitdiffstats
path: root/src/Simulator/FloodyFluidSimulator.h
diff options
context:
space:
mode:
authorHowaner <franzi.moos@googlemail.com>2014-03-08 12:29:45 +0100
committerHowaner <franzi.moos@googlemail.com>2014-03-08 12:29:45 +0100
commit527f3585108111d915c2982b6be6a6adbb5ff4d9 (patch)
tree63b622d8d4840bed7c08d9afc279733d8b7e1c56 /src/Simulator/FloodyFluidSimulator.h
parentChange TNT Fuse to ticks (diff)
parentMerge pull request #764 from xdot/master (diff)
downloadcuberite-527f3585108111d915c2982b6be6a6adbb5ff4d9.tar
cuberite-527f3585108111d915c2982b6be6a6adbb5ff4d9.tar.gz
cuberite-527f3585108111d915c2982b6be6a6adbb5ff4d9.tar.bz2
cuberite-527f3585108111d915c2982b6be6a6adbb5ff4d9.tar.lz
cuberite-527f3585108111d915c2982b6be6a6adbb5ff4d9.tar.xz
cuberite-527f3585108111d915c2982b6be6a6adbb5ff4d9.tar.zst
cuberite-527f3585108111d915c2982b6be6a6adbb5ff4d9.zip
Diffstat (limited to '')
-rw-r--r--src/Simulator/FloodyFluidSimulator.h18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/Simulator/FloodyFluidSimulator.h b/src/Simulator/FloodyFluidSimulator.h
index c4af2e246..632de3bb2 100644
--- a/src/Simulator/FloodyFluidSimulator.h
+++ b/src/Simulator/FloodyFluidSimulator.h
@@ -38,14 +38,26 @@ protected:
// cDelayedFluidSimulator overrides:
virtual void SimulateBlock(cChunk * a_Chunk, int a_RelX, int a_RelY, int a_RelZ) override;
- /// Checks tributaries, if not fed, decreases the block's level and returns true
+ /** Checks tributaries, if not fed, decreases the block's level and returns true. */
bool CheckTributaries(cChunk * a_Chunk, int a_RelX, int a_RelY, int a_RelZ, NIBBLETYPE a_MyMeta);
- /// Spreads into the specified block, if the blocktype there allows. a_Area is for checking.
+ /** Spreads into the specified block, if the blocktype there allows. a_Area is for checking. */
void SpreadToNeighbor(cChunk * a_NearChunk, int a_RelX, int a_RelY, int a_RelZ, NIBBLETYPE a_NewMeta);
- /// Checks if there are enough neighbors to create a source at the coords specified; turns into source and returns true if so
+ /** Checks if there are enough neighbors to create a source at the coords specified; turns into source and returns true if so. */
bool CheckNeighborsForSource(cChunk * a_Chunk, int a_RelX, int a_RelY, int a_RelZ);
+
+ /** Checks if the specified block should harden (Water/Lava interaction) and if so, converts it to a suitable block.
+ *
+ * Returns whether the block was changed or not.
+ */
+ bool HardenBlock(cChunk * a_Chunk, int a_RelX, int a_RelY, int a_RelZ, BLOCKTYPE a_BlockType, NIBBLETYPE a_Meta);
+
+ /** Spread water to neighbors.
+ *
+ * May be overridden to provide more sophisticated algorithms.
+ */
+ virtual void Spread(cChunk * a_Chunk, int a_RelX, int a_RelY, int a_RelZ, NIBBLETYPE a_NewMeta);
} ;