summaryrefslogblamecommitdiffstats
path: root/source/cSignEntity.h
blob: a8b0820dd05b2a2baf79d236440e6c981c25c238 (plain) (tree)
1
2
3
4
5
6
7
8
 


                          
 


 





                     



 

                            

        
                                                                                             
                                                                           

                                
                                                                          

                                                         
                                                                 
 

                                                                                                                             
 
                                              
 
                                                            

                                                    
         
         

                            




   

#pragma once

#include "cBlockEntity.h"





namespace Json
{
	class Value;
}





class cSignEntity : 
	public cBlockEntity
{
public:
	cSignEntity(ENUM_BLOCK_ID a_BlockType, int a_X, int a_Y, int a_Z, cWorld * a_World);
	cSignEntity(ENUM_BLOCK_ID a_BlockType, int a_X, int a_Y, int a_Z);
	virtual ~cSignEntity();

	OBSOLETE bool LoadFromFile(cFile & a_File);  // deprecated format

	bool LoadFromJson( const Json::Value& a_Value );
	virtual void SaveToJson(Json::Value& a_Value ) override;

	void SetLines( const AString & a_Line1, const AString & a_Line2, const AString & a_Line3, const AString & a_Line4 );
	void SetLine( int a_Index, const AString & a_Line );

	AString GetLine( int a_Index ) const;

	virtual void UsedBy( cPlayer * a_Player ) override;
	
	virtual cPacket * GetPacket(void) override;
	
private:

	AString  m_Line[4];
};