summaryrefslogtreecommitdiffstats
path: root/source/Simulator/Simulator.h
diff options
context:
space:
mode:
authormadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-10-13 11:53:28 +0200
committermadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-10-13 11:53:28 +0200
commitf7da7c2536b438db92bc28b88c4139d9af15e44f (patch)
tree4710e9e41ebcf2317ebacade2801732ba9184b41 /source/Simulator/Simulator.h
parentProtoProxy: Fixed parsing of the PACKET_PLAYER_ABILITIES packet. (diff)
downloadcuberite-f7da7c2536b438db92bc28b88c4139d9af15e44f.tar
cuberite-f7da7c2536b438db92bc28b88c4139d9af15e44f.tar.gz
cuberite-f7da7c2536b438db92bc28b88c4139d9af15e44f.tar.bz2
cuberite-f7da7c2536b438db92bc28b88c4139d9af15e44f.tar.lz
cuberite-f7da7c2536b438db92bc28b88c4139d9af15e44f.tar.xz
cuberite-f7da7c2536b438db92bc28b88c4139d9af15e44f.tar.zst
cuberite-f7da7c2536b438db92bc28b88c4139d9af15e44f.zip
Diffstat (limited to '')
-rw-r--r--source/Simulator/Simulator.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/source/Simulator/Simulator.h b/source/Simulator/Simulator.h
new file mode 100644
index 000000000..84a1630c2
--- /dev/null
+++ b/source/Simulator/Simulator.h
@@ -0,0 +1,38 @@
+
+#pragma once
+
+#include "../Vector3i.h"
+
+
+
+
+
+class cWorld;
+
+
+
+
+
+class cSimulator
+{
+public:
+ cSimulator(cWorld * a_World);
+ virtual ~cSimulator();
+
+ /// Called in each tick, a_Dt is the time passed since the last tick
+ virtual void Simulate(float a_Dt) = 0;
+
+ /// Called when a block changes via cWorld::SetBlock()
+ virtual void WakeUp(int a_BlockX, int a_BlockY, int a_BlockZ);
+
+ virtual bool IsAllowedBlock(BLOCKTYPE a_BlockType) = 0;
+
+protected:
+ virtual void AddBlock(int a_BlockX, int a_BlockY, int a_BlockZ) = 0;
+
+ cWorld * m_World;
+} ;
+
+
+
+