summaryrefslogtreecommitdiffstats
path: root/src/UI/AnvilWindow.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/UI/AnvilWindow.h')
-rw-r--r--src/UI/AnvilWindow.h51
1 files changed, 6 insertions, 45 deletions
diff --git a/src/UI/AnvilWindow.h b/src/UI/AnvilWindow.h
index e1a91bfc6..e23c744fe 100644
--- a/src/UI/AnvilWindow.h
+++ b/src/UI/AnvilWindow.h
@@ -21,57 +21,18 @@ class cAnvilWindow :
typedef cWindow super;
public:
- cAnvilWindow(int a_BlockX, int a_BlockY, int a_BlockZ) :
- cWindow(wtAnvil, "Repair"),
- m_RepairedItemName(""),
- m_BlockX(a_BlockX),
- m_BlockY(a_BlockY),
- m_BlockZ(a_BlockZ)
- {
- m_AnvilSlotArea = new cSlotAreaAnvil(*this);
- m_SlotAreas.push_back(m_AnvilSlotArea);
- m_SlotAreas.push_back(new cSlotAreaInventory(*this));
- m_SlotAreas.push_back(new cSlotAreaHotBar(*this));
- }
+ cAnvilWindow(int a_BlockX, int a_BlockY, int a_BlockZ);
/** Gets the repaired item name. */
- AString GetRepairedItemName(void) const { return m_RepairedItemName; }
+ AString GetRepairedItemName(void) const;
/** Set the repaired item name. */
- void SetRepairedItemName(const AString & a_Name, cPlayer * a_Player)
- {
- m_RepairedItemName = a_Name;
- if (a_Player != nullptr)
- {
- m_AnvilSlotArea->UpdateResult(*a_Player);
- }
- }
+ void SetRepairedItemName(const AString & a_Name, cPlayer * a_Player);
/** Gets the Position from the Anvil */
- void GetBlockPos(int & a_PosX, int & a_PosY, int & a_PosZ)
- {
- a_PosX = m_BlockX;
- a_PosY = m_BlockY;
- a_PosZ = m_BlockZ;
- }
-
- virtual void DistributeStack(cItem & a_ItemStack, int a_Slot, cPlayer & a_Player, cSlotArea * a_ClickedArea, bool a_ShouldApply) override
- {
- cSlotAreas AreasInOrder;
-
- if (a_ClickedArea == m_SlotAreas[0])
- {
- // Anvil Slot
- AreasInOrder.push_back(m_SlotAreas[1]); /* Inventory */
- AreasInOrder.push_back(m_SlotAreas[2]); /* Hotbar */
- }
- else
- {
- // Inventory or Hotbar
- AreasInOrder.push_back(m_SlotAreas[0]); /* Anvil */
- }
- super::DistributeStackToAreas(a_ItemStack, a_Player, AreasInOrder, a_ShouldApply, false);
- }
+ void GetBlockPos(int & a_PosX, int & a_PosY, int & a_PosZ);
+
+ virtual void DistributeStack(cItem & a_ItemStack, int a_Slot, cPlayer & a_Player, cSlotArea * a_ClickedArea, bool a_ShouldApply) override;
protected:
cSlotAreaAnvil * m_AnvilSlotArea;