// SkullEntity.h // Declares the cSkullEntity class representing a single skull/head in the world #pragma once #include "BlockEntity.h" namespace Json { class Value; } // tolua_begin class cSkullEntity : public cBlockEntity { typedef cBlockEntity super; public: // tolua_end /// Creates a new skull entity at the specified block coords. a_World may be NULL cSkullEntity(int a_BlockX, int a_BlockY, int a_BlockZ, cWorld * a_World); bool LoadFromJson( const Json::Value& a_Value ); virtual void SaveToJson(Json::Value& a_Value ) override; // tolua_begin /// Set the Skull Type void SetSkullType(const eSkullType & a_SkullType); /// Set the Rotation void SetRotation(eSkullRotation a_Rotation); // Set the Player Name for Player Skulls void SetOwner(const AString & a_Owner); /// Get the Skull Type eSkullType GetSkullType(void) const { return m_SkullType; } /// Get the Rotation eSkullRotation GetRotation(void) const { return m_Rotation; } /// Get the setted Player Name AString GetOwner(void) const { return m_Owner; } // tolua_end virtual void UsedBy(cPlayer * a_Player) override; virtual void SendTo(cClientHandle & a_Client) override; static const char * GetClassStatic(void) { return "cSkullEntity"; } private: eSkullType m_SkullType; eSkullRotation m_Rotation; AString m_Owner; } ; // tolua_export