summaryrefslogtreecommitdiffstats
path: root/source/FallingBlock.h
diff options
context:
space:
mode:
authorfaketruth <faketruth@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-09-30 18:37:44 +0200
committerfaketruth <faketruth@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-09-30 18:37:44 +0200
commitba2a9b6b2c1519563662a6a1147a82f96afb36dc (patch)
treef176e14fa7afa14a3e598350779bcb755b9d0339 /source/FallingBlock.h
parentFixed initial player head rotation when a player is being spawned on another client (diff)
downloadcuberite-ba2a9b6b2c1519563662a6a1147a82f96afb36dc.tar
cuberite-ba2a9b6b2c1519563662a6a1147a82f96afb36dc.tar.gz
cuberite-ba2a9b6b2c1519563662a6a1147a82f96afb36dc.tar.bz2
cuberite-ba2a9b6b2c1519563662a6a1147a82f96afb36dc.tar.lz
cuberite-ba2a9b6b2c1519563662a6a1147a82f96afb36dc.tar.xz
cuberite-ba2a9b6b2c1519563662a6a1147a82f96afb36dc.tar.zst
cuberite-ba2a9b6b2c1519563662a6a1147a82f96afb36dc.zip
Diffstat (limited to '')
-rw-r--r--source/FallingBlock.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/source/FallingBlock.h b/source/FallingBlock.h
new file mode 100644
index 000000000..08e3302e1
--- /dev/null
+++ b/source/FallingBlock.h
@@ -0,0 +1,44 @@
+
+#pragma once
+
+#include "Entity.h"
+#include "Defines.h"
+
+
+
+
+class cPlayer;
+class cItem;
+
+
+
+
+
+
+class cFallingBlock : public cEntity
+{
+ typedef cEntity super;
+public:
+ CLASS_PROTOTYPE();
+
+ cFallingBlock(const Vector3i & a_BlockPosition, BLOCKTYPE a_BlockType);
+ ~cFallingBlock();
+
+ virtual void Initialize(cWorld * a_World) override;
+ virtual void SpawnOn(cClientHandle & a_ClientHandle) override;
+ virtual void Tick(float a_Dt) override;
+private:
+ BLOCKTYPE m_BlockType;
+ Vector3i m_OriginalPosition;
+
+ float m_SpeedY;
+
+ static bool IsPassable( BLOCKTYPE a_BlockType )
+ {
+ return a_BlockType == E_BLOCK_AIR || IsBlockLiquid( a_BlockType );
+ }
+};
+
+
+
+