summaryrefslogtreecommitdiffstats
path: root/src/Simulator/FloodyFluidSimulator.h
diff options
context:
space:
mode:
authorTiger Wang <ziwei.tiger@hotmail.co.uk>2014-03-09 13:53:50 +0100
committerTiger Wang <ziwei.tiger@hotmail.co.uk>2014-03-09 13:53:50 +0100
commitc2978a34576192d79c1fdc4664eafe316be49e51 (patch)
tree48db5c74ed757bfdf178a70e77eddff693c76a35 /src/Simulator/FloodyFluidSimulator.h
parentHexified colours (diff)
parentUpdated Core (diff)
downloadcuberite-c2978a34576192d79c1fdc4664eafe316be49e51.tar
cuberite-c2978a34576192d79c1fdc4664eafe316be49e51.tar.gz
cuberite-c2978a34576192d79c1fdc4664eafe316be49e51.tar.bz2
cuberite-c2978a34576192d79c1fdc4664eafe316be49e51.tar.lz
cuberite-c2978a34576192d79c1fdc4664eafe316be49e51.tar.xz
cuberite-c2978a34576192d79c1fdc4664eafe316be49e51.tar.zst
cuberite-c2978a34576192d79c1fdc4664eafe316be49e51.zip
Diffstat (limited to 'src/Simulator/FloodyFluidSimulator.h')
-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);
} ;