summaryrefslogtreecommitdiffstats
path: root/source/cWaterSimulator.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/cWaterSimulator.h')
-rw-r--r--source/cWaterSimulator.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/source/cWaterSimulator.h b/source/cWaterSimulator.h
index 1e45256f8..5962cd83e 100644
--- a/source/cWaterSimulator.h
+++ b/source/cWaterSimulator.h
@@ -1,5 +1,18 @@
#pragma once
+
+//TODO This definitly needs a better naming :D but how?
+enum Direction
+{
+ X_PLUS,
+ X_MINUS,
+ Y_PLUS,
+ Y_MINUS,
+ Z_PLUS,
+ Z_MINUS,
+ NONE
+};
+
class Vector3i;
class cWorld;
class cWaterSimulator
@@ -11,6 +24,9 @@ public:
void Simulate( float a_Dt );
void WakeUp( int a_X, int a_Y, int a_Z );
+ //Gets the flowing direction of a Waterblock if a_Over is true also the block over the current block affects the direction (standard)
+ Direction GetFlowingDirection(int a_X, int a_Y, int a_Z, bool a_Over = true);
+
private:
void AddBlock( int a_X, int a_Y, int a_Z);
char GetHighestLevelAround( int a_X, int a_Y, int a_Z );
@@ -22,4 +38,6 @@ private:
class WaterData;
WaterData* m_Data;
+
+
}; \ No newline at end of file