Files
cuberite-2a/src/BlockEntities/JukeboxEntity.h
T

60 lines
1.2 KiB
C++
Raw Normal View History

2013-07-29 12:13:03 +01:00
#pragma once
#include "BlockEntity.h"
2013-11-14 16:05:55 +01:00
// tolua_begin
2014-07-17 22:50:58 +02:00
class cJukeboxEntity :
2013-07-29 12:13:03 +01:00
public cBlockEntity
{
2017-06-15 15:32:33 +02:00
typedef cBlockEntity Super;
2013-07-29 12:13:03 +01:00
public:
2013-11-14 16:05:55 +01:00
// tolua_end
2016-02-05 23:45:45 +02:00
2014-11-27 22:42:08 +01:00
BLOCKENTITY_PROTODEF(cJukeboxEntity)
2016-02-05 23:45:45 +02:00
2017-06-15 15:32:33 +02:00
cJukeboxEntity(BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta, int a_BlockX, int a_BlockY, int a_BlockZ, cWorld * a_World);
2017-05-20 08:16:28 +02:00
virtual ~cJukeboxEntity() override;
2013-07-29 12:13:03 +01:00
2013-11-14 16:05:55 +01:00
// tolua_begin
2016-02-05 23:45:45 +02:00
2013-11-14 16:05:55 +01:00
int GetRecord(void);
void SetRecord(int a_Record);
2016-02-05 23:45:45 +02:00
2014-02-28 15:41:46 +01:00
/** Plays the specified Record. Return false if a_Record isn't a playable Record (E_ITEM_XXX_DISC).
If there is a record already playing, ejects it first. */
2014-02-21 22:26:04 +01:00
bool PlayRecord(int a_Record);
2016-02-05 23:45:45 +02:00
2014-02-28 15:41:46 +01:00
/** Ejects the currently held record as a pickup. Return false when no record had been inserted. */
2014-02-21 22:26:04 +01:00
bool EjectRecord(void);
2016-02-05 23:45:45 +02:00
2014-02-21 22:26:04 +01:00
/** Is in the Jukebox a Record? */
bool IsPlayingRecord(void);
2016-02-05 23:45:45 +02:00
2014-02-21 22:26:04 +01:00
static bool IsRecordItem(int a_Item)
{
return ((a_Item >= E_ITEM_FIRST_DISC) && (a_Item <= E_ITEM_LAST_DISC));
}
2016-02-05 23:45:45 +02:00
2013-11-14 16:05:55 +01:00
// tolua_end
2014-02-12 22:06:59 +00:00
2017-06-15 15:32:33 +02:00
// cBlockEntity overrides:
virtual void CopyFrom(const cBlockEntity & a_Src) override;
virtual bool UsedBy(cPlayer * a_Player) override;
virtual void SendTo(cClientHandle &) override {}
2013-07-29 12:13:03 +01:00
private:
int m_Record;
2013-11-14 16:05:55 +01:00
} ; // tolua_end
2013-07-29 12:13:03 +01:00