#pragma once #include "BlockEntity.h" namespace Json { class Value; } class cBeaconEntity : public cBlockEntity { typedef cBlockEntity super; public: // The initial constructor cBeaconEntity(int a_BlockX, int a_BlockY, int a_BlockZ, cWorld * a_World); // Returns the amount of layers the pyramid below the beacon has. int GetPyramidLevel(void); // Returns true if the block is a diamond block, an golden block, an iron block or an emerald block. bool IsMineralBlock(BLOCKTYPE a_BlockType); // cBlockEntity overrides: virtual void SaveToJson(Json::Value& a_Value ) override; virtual void SendTo(cClientHandle & a_Client) override; virtual void UsedBy(cPlayer * a_Player) override; virtual bool Tick(float a_Dt, cChunk & /* a_Chunk */) override; } ;