summaryrefslogtreecommitdiffstats
path: root/src/Simulator/SandSimulator.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Simulator/SandSimulator.h')
-rw-r--r--src/Simulator/SandSimulator.h31
1 files changed, 21 insertions, 10 deletions
diff --git a/src/Simulator/SandSimulator.h b/src/Simulator/SandSimulator.h
index 8fff659ed..68ba718bd 100644
--- a/src/Simulator/SandSimulator.h
+++ b/src/Simulator/SandSimulator.h
@@ -3,13 +3,25 @@
#include "Simulator.h"
-/// Per-chunk data for the simulator, specified individual chunks to simulate; Data is not used
+
+
+
+
+// fwd:
+class cChunk;
+
+
+
+
+
+/** Per-chunk data for the simulator, specified individual chunks to simulate; Data is not used */
typedef cCoordWithIntList cSandSimulatorChunkData;
-#include "Chunk.h"
-/// Despite the class name, this simulator takes care of all blocks that fall when suspended in the air.
+
+
+/** Despite the class name, this simulator takes care of all blocks that fall when suspended in the air. */
class cSandSimulator :
public cSimulator
{
@@ -21,23 +33,22 @@ public:
virtual void SimulateChunk(std::chrono::milliseconds a_Dt, int a_ChunkX, int a_ChunkZ, cChunk * a_Chunk) override;
virtual bool IsAllowedBlock(BLOCKTYPE a_BlockType) override;
- /// Returns true if a falling-able block can start falling through the specified block type
+ /** Returns true if a falling-able block can start falling through the specified block type */
static bool CanStartFallingThrough(BLOCKTYPE a_BlockType);
- /// Returns true if an already-falling block can pass through the specified block type (e. g. torch)
+ /** Returns true if an already-falling block can pass through the specified block type (e. g. torch) */
static bool CanContinueFallThrough(BLOCKTYPE a_BlockType);
- /// Returns true if the falling block rematerializing will replace the specified block type (e. g. tall grass)
+ /** Returns true if the falling block rematerializing will replace the specified block type (e. g. tall grass) */
static bool IsReplacedOnRematerialization(BLOCKTYPE a_BlockType);
- /// Returns true if the specified block breaks falling blocks while they fall through it (e. g. halfslabs)
+ /** Returns true if the specified block breaks falling blocks while they fall through it (e. g. halfslabs) */
static bool DoesBreakFallingThrough(BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta);
/** Called when a block finishes falling at the specified coords, either by insta-fall,
or through cFallingBlock entity.
It either rematerializes the block (a_FallingBlockType) at the specified coords, or creates a pickup,
- based on the block currently present in the world at the dest specified coords
- */
+ based on the block currently present in the world at the dest specified coords. */
static void FinishFalling(
cWorld * a_World, int a_BlockX, int a_BlockY, int a_BlockZ,
BLOCKTYPE a_FallingBlockType, NIBBLETYPE a_FallingBlockMeta
@@ -50,7 +61,7 @@ protected:
virtual void AddBlock(int a_BlockX, int a_BlockY, int a_BlockZ, cChunk * a_Chunk) override;
- /// Performs the instant fall of the block - removes it from top, Finishes it at the bottom
+ /** Performs the instant fall of the block - removes it from top, Finishes it at the bottom */
void DoInstantFall(cChunk * a_Chunk, int a_RelX, int a_RelY, int a_RelZ);
};