summaryrefslogtreecommitdiffstats
path: root/source/Pickup.h
diff options
context:
space:
mode:
authormadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-09-24 00:09:57 +0200
committermadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-09-24 00:09:57 +0200
commitecfe6ab65bd1fc2c7f5733fe6ef4e6ddaac44a26 (patch)
tree898e37fe747f0fdcefeb88f833557fd45db3347c /source/Pickup.h
parentSource files cleanup: ChunkDataSerializer is Protocol-related (diff)
downloadcuberite-ecfe6ab65bd1fc2c7f5733fe6ef4e6ddaac44a26.tar
cuberite-ecfe6ab65bd1fc2c7f5733fe6ef4e6ddaac44a26.tar.gz
cuberite-ecfe6ab65bd1fc2c7f5733fe6ef4e6ddaac44a26.tar.bz2
cuberite-ecfe6ab65bd1fc2c7f5733fe6ef4e6ddaac44a26.tar.lz
cuberite-ecfe6ab65bd1fc2c7f5733fe6ef4e6ddaac44a26.tar.xz
cuberite-ecfe6ab65bd1fc2c7f5733fe6ef4e6ddaac44a26.tar.zst
cuberite-ecfe6ab65bd1fc2c7f5733fe6ef4e6ddaac44a26.zip
Diffstat (limited to 'source/Pickup.h')
-rw-r--r--source/Pickup.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/source/Pickup.h b/source/Pickup.h
new file mode 100644
index 000000000..56a34c6a6
--- /dev/null
+++ b/source/Pickup.h
@@ -0,0 +1,63 @@
+
+#pragma once
+
+#include "Entity.h"
+
+
+
+
+class cPlayer;
+class cItem;
+
+
+
+
+
+// tolua_begin
+class cPickup :
+ public cEntity
+{
+ // tolua_end
+ typedef cEntity super;
+ // tolua_begin
+
+public:
+ // tolua_end
+ CLASS_PROTOTYPE();
+
+ cPickup(int a_X, int a_Y, int a_Z, const cItem & a_Item, float a_SpeedX = 0.f, float a_SpeedY = 0.f, float a_SpeedZ = 0.f); //tolua_export
+ ~cPickup(); //tolua_export
+
+ virtual void Initialize(cWorld * a_World) override;
+
+ cItem * GetItem(void) {return m_Item; } //tolua_export
+ const cItem * GetItem(void) const {return m_Item; }
+
+ virtual void SpawnOn(cClientHandle & a_ClientHandle) override;
+
+ virtual bool CollectedBy( cPlayer* a_Dest ); //tolua_export
+
+ void Tick(float a_Dt);
+ void HandlePhysics(float a_Dt);
+
+ const Vector3f & GetSpeed(void) const {return m_Speed; }
+
+private:
+
+ Vector3f m_Speed;
+ Vector3f m_ResultingSpeed; //Can be used to modify the resulting speed for the current tick ;)
+
+ Vector3f m_WaterSpeed;
+ bool m_bOnGround;
+ bool m_bReplicated;
+
+ float m_Timer;
+
+ cItem* m_Item;
+
+ bool m_bCollected;
+}; //tolua_export
+
+
+
+