summaryrefslogtreecommitdiffstats
path: root/source/cChestEntity.h
diff options
context:
space:
mode:
authorfaketruth <faketruth@0a769ca7-a7f5-676a-18bf-c427514a06d6>2011-10-03 20:41:19 +0200
committerfaketruth <faketruth@0a769ca7-a7f5-676a-18bf-c427514a06d6>2011-10-03 20:41:19 +0200
commit386d58b5862d8b76925c6523721594887606e82a (patch)
treeef073e7a843f4b75a4008d4b7383f7cdf08ceee5 /source/cChestEntity.h
parentVisual Studio 2010 solution and project files (diff)
downloadcuberite-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 'source/cChestEntity.h')
-rw-r--r--source/cChestEntity.h42
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