diff options
Diffstat (limited to 'src/BlockEntities/JukeboxEntity.h')
-rw-r--r-- | src/BlockEntities/JukeboxEntity.h | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/BlockEntities/JukeboxEntity.h b/src/BlockEntities/JukeboxEntity.h new file mode 100644 index 000000000..fcafdc479 --- /dev/null +++ b/src/BlockEntities/JukeboxEntity.h @@ -0,0 +1,56 @@ + +#pragma once + +#include "BlockEntity.h" +#include "../Entities/Player.h" + + + + + +namespace Json +{ + class Value; +} + + + + + +// tolua_begin + +class cJukeboxEntity : + public cBlockEntity +{ + typedef cBlockEntity super; +public: + + // tolua_end + + cJukeboxEntity(int a_BlockX, int a_BlockY, int a_BlockZ, cWorld * a_World); + virtual ~cJukeboxEntity(); + + bool LoadFromJson(const Json::Value & a_Value); + virtual void SaveToJson(Json::Value & a_Value) override; + + // tolua_begin + + int GetRecord(void); + void SetRecord(int a_Record); + void PlayRecord(void); + + /// Ejects the currently held record as a pickup. Does nothing when no record inserted. + void EjectRecord(void); + + // tolua_end + + virtual void UsedBy(cPlayer * a_Player) override; + virtual void SendTo(cClientHandle & a_Client) override { }; + +private: + int m_Record; +} ; // tolua_end + + + + |