diff options
author | Howaner <franzi.moos@googlemail.com> | 2014-12-13 15:06:55 +0100 |
---|---|---|
committer | Howaner <franzi.moos@googlemail.com> | 2014-12-13 15:06:55 +0100 |
commit | b6fd4002769b3a1d1f2ee875f7ebba99ee1446d0 (patch) | |
tree | 11fcc800b589a7a46a30b6346f6d87d407ce5dc0 /src/UI/EnchantingWindow.h | |
parent | Merge pull request #1660 from Seadragon91/master (diff) | |
download | cuberite-b6fd4002769b3a1d1f2ee875f7ebba99ee1446d0.tar cuberite-b6fd4002769b3a1d1f2ee875f7ebba99ee1446d0.tar.gz cuberite-b6fd4002769b3a1d1f2ee875f7ebba99ee1446d0.tar.bz2 cuberite-b6fd4002769b3a1d1f2ee875f7ebba99ee1446d0.tar.lz cuberite-b6fd4002769b3a1d1f2ee875f7ebba99ee1446d0.tar.xz cuberite-b6fd4002769b3a1d1f2ee875f7ebba99ee1446d0.tar.zst cuberite-b6fd4002769b3a1d1f2ee875f7ebba99ee1446d0.zip |
Diffstat (limited to '')
-rw-r--r-- | src/UI/EnchantingWindow.h | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/src/UI/EnchantingWindow.h b/src/UI/EnchantingWindow.h new file mode 100644 index 000000000..9e42c1f4f --- /dev/null +++ b/src/UI/EnchantingWindow.h @@ -0,0 +1,82 @@ + +// EnchantingWindow.h + +// Representing the UI window for the enchanting block + + + + + +#pragma once + +#include "Window.h" + + + + + +class cEnchantingWindow : + public cWindow +{ + typedef cWindow super; + +public: + cEnchantingWindow(int a_BlockX, int a_BlockY, int a_BlockZ) : + cWindow(wtEnchantment, "Enchant"), + m_SlotArea(), + m_BlockX(a_BlockX), + m_BlockY(a_BlockY), + m_BlockZ(a_BlockZ) + { + m_SlotArea = new cSlotAreaEnchanting(*this, m_BlockX, m_BlockY, m_BlockZ); + m_SlotAreas.push_back(m_SlotArea); + m_SlotAreas.push_back(new cSlotAreaInventory(*this)); + m_SlotAreas.push_back(new cSlotAreaHotBar(*this)); + } + + virtual void SetProperty(short a_Property, short a_Value, cPlayer & a_Player) override + { + if ((a_Property < 0) || ((size_t)a_Property >= ARRAYCOUNT(m_PropertyValue))) + { + ASSERT(!"a_Property is invalid"); + return; + } + + m_PropertyValue[a_Property] = a_Value; + super::SetProperty(a_Property, a_Value, a_Player); + } + + virtual void SetProperty(short a_Property, short a_Value) override + { + if ((a_Property < 0) || ((size_t)a_Property >= ARRAYCOUNT(m_PropertyValue))) + { + ASSERT(!"a_Property is invalid"); + return; + } + + m_PropertyValue[a_Property] = a_Value; + super::SetProperty(a_Property, a_Value); + } + + /** Return the Value of a Property */ + short GetPropertyValue(short a_Property) + { + if ((a_Property < 0) || ((size_t)a_Property >= ARRAYCOUNT(m_PropertyValue))) + { + ASSERT(!"a_Property is invalid"); + return 0; + } + + return m_PropertyValue[a_Property]; + } + + cSlotArea * m_SlotArea; + +protected: + short m_PropertyValue[3]; + int m_BlockX, m_BlockY, m_BlockZ; +}; + + + + |