summaryrefslogtreecommitdiffstats
path: root/src/Simulator/Simulator.inc
diff options
context:
space:
mode:
authorTycho <work.tycho+git@gmail.com>2014-09-11 18:48:21 +0200
committerTycho <work.tycho+git@gmail.com>2014-09-11 18:48:21 +0200
commit0b044e1c83a62c266afaf0852ccbd5e7b01cec5e (patch)
treed847314a2ee95b1a766dbb57a06b5ea7e42e687c /src/Simulator/Simulator.inc
parentMerge branch 'master' of https://github.com/mc-server/MCServer (diff)
downloadcuberite-0b044e1c83a62c266afaf0852ccbd5e7b01cec5e.tar
cuberite-0b044e1c83a62c266afaf0852ccbd5e7b01cec5e.tar.gz
cuberite-0b044e1c83a62c266afaf0852ccbd5e7b01cec5e.tar.bz2
cuberite-0b044e1c83a62c266afaf0852ccbd5e7b01cec5e.tar.lz
cuberite-0b044e1c83a62c266afaf0852ccbd5e7b01cec5e.tar.xz
cuberite-0b044e1c83a62c266afaf0852ccbd5e7b01cec5e.tar.zst
cuberite-0b044e1c83a62c266afaf0852ccbd5e7b01cec5e.zip
Diffstat (limited to 'src/Simulator/Simulator.inc')
-rw-r--r--src/Simulator/Simulator.inc49
1 files changed, 49 insertions, 0 deletions
diff --git a/src/Simulator/Simulator.inc b/src/Simulator/Simulator.inc
new file mode 100644
index 000000000..1599ea60f
--- /dev/null
+++ b/src/Simulator/Simulator.inc
@@ -0,0 +1,49 @@
+
+
+#include "Simulator.h"
+#include "../World.h"
+#include "../BlockID.h"
+#include "../Defines.h"
+#include "../Chunk.h"
+
+
+
+
+template <class ChunkType, class WorldType>
+cSimulator<ChunkType, WorldType>::cSimulator(WorldType & a_World)
+ : m_World(a_World)
+{
+}
+
+
+
+
+template <class ChunkType, class WorldType>
+cSimulator<ChunkType, WorldType>::~cSimulator()
+{
+}
+
+
+
+
+template <class ChunkType, class WorldType>
+void cSimulator<ChunkType, WorldType>::WakeUp(int a_BlockX, int a_BlockY, int a_BlockZ, ChunkType * a_Chunk)
+{
+ AddBlock(a_BlockX, a_BlockY, a_BlockZ, a_Chunk);
+ AddBlock(a_BlockX - 1, a_BlockY, a_BlockZ, a_Chunk->GetNeighborChunk(a_BlockX - 1, a_BlockZ));
+ AddBlock(a_BlockX + 1, a_BlockY, a_BlockZ, a_Chunk->GetNeighborChunk(a_BlockX + 1, a_BlockZ));
+ AddBlock(a_BlockX, a_BlockY, a_BlockZ - 1, a_Chunk->GetNeighborChunk(a_BlockX, a_BlockZ - 1));
+ AddBlock(a_BlockX, a_BlockY, a_BlockZ + 1, a_Chunk->GetNeighborChunk(a_BlockX, a_BlockZ + 1));
+ if (a_BlockY > 0)
+ {
+ AddBlock(a_BlockX, a_BlockY - 1, a_BlockZ, a_Chunk);
+ }
+ if (a_BlockY < cChunkDef::Height - 1)
+ {
+ AddBlock(a_BlockX, a_BlockY + 1, a_BlockZ, a_Chunk);
+ }
+}
+
+
+
+