diff options
author | faketruth <faketruth@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2011-10-03 20:41:19 +0200 |
---|---|---|
committer | faketruth <faketruth@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2011-10-03 20:41:19 +0200 |
commit | 386d58b5862d8b76925c6523721594887606e82a (patch) | |
tree | ef073e7a843f4b75a4008d4b7383f7cdf08ceee5 /source/cChestEntity.h | |
parent | Visual Studio 2010 solution and project files (diff) | |
download | cuberite-386d58b5862d8b76925c6523721594887606e82a.tar cuberite-386d58b5862d8b76925c6523721594887606e82a.tar.gz cuberite-386d58b5862d8b76925c6523721594887606e82a.tar.bz2 cuberite-386d58b5862d8b76925c6523721594887606e82a.tar.lz cuberite-386d58b5862d8b76925c6523721594887606e82a.tar.xz cuberite-386d58b5862d8b76925c6523721594887606e82a.tar.zst cuberite-386d58b5862d8b76925c6523721594887606e82a.zip |
Diffstat (limited to '')
-rw-r--r-- | source/cChestEntity.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/source/cChestEntity.h b/source/cChestEntity.h new file mode 100644 index 000000000..5170b168d --- /dev/null +++ b/source/cChestEntity.h @@ -0,0 +1,42 @@ +#pragma once
+
+#include "cBlockEntity.h"
+#include "cWindowOwner.h"
+#include "FileDefine.h"
+
+namespace Json
+{
+ class Value;
+};
+
+class cClientHandle;
+class cServer;
+class cItem;
+class cNBTData;
+class cChestEntity : public cBlockEntity, public cWindowOwner
+{
+public:
+ cChestEntity(int a_X, int a_Y, int a_Z);
+ virtual ~cChestEntity();
+ virtual void Destroy();
+
+ void HandleData( cNBTData* a_NBTData );
+
+ cItem * GetSlot( int a_Slot );
+ void SetSlot( int a_Slot, cItem & a_Item );
+
+ void WriteToFile(FILE* a_File);
+ bool LoadFromFile(FILE* a_File);
+
+ bool LoadFromJson( const Json::Value& a_Value );
+ void SaveToJson( Json::Value& a_Value );
+
+ void SendTo( cClientHandle* a_Client, cServer* a_Server );
+
+ virtual void UsedBy( cPlayer & a_Player );
+
+ static const int c_ChestWidth = 9;
+ static const int c_ChestHeight = 3;
+private:
+ cItem* m_Content;
+};
\ No newline at end of file |