diff options
Diffstat (limited to 'src/UI/InventoryWindow.h')
-rw-r--r-- | src/UI/InventoryWindow.h | 56 |
1 files changed, 3 insertions, 53 deletions
diff --git a/src/UI/InventoryWindow.h b/src/UI/InventoryWindow.h index 31b85b1bc..10952d37f 100644 --- a/src/UI/InventoryWindow.h +++ b/src/UI/InventoryWindow.h @@ -21,59 +21,9 @@ class cInventoryWindow : typedef cWindow super; public: - cInventoryWindow(cPlayer & a_Player) : - cWindow(wtInventory, "Inventory"), - m_Player(a_Player) - { - m_SlotAreas.push_back(new cSlotAreaCrafting(2, *this)); // The creative inventory doesn't display it, but it's still counted into slot numbers - m_SlotAreas.push_back(new cSlotAreaArmor(*this)); - m_SlotAreas.push_back(new cSlotAreaInventory(*this)); - m_SlotAreas.push_back(new cSlotAreaHotBar(*this)); - } - - - 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]) - { - // Crafting Area - if (a_Slot == 0) - { - // Result Slot - AreasInOrder.push_back(m_SlotAreas[3]); /* Hotbar */ - AreasInOrder.push_back(m_SlotAreas[2]); /* Inventory */ - } - else - { - AreasInOrder.push_back(m_SlotAreas[2]); /* Inventory */ - AreasInOrder.push_back(m_SlotAreas[3]); /* Hotbar */ - } - super::DistributeStackToAreas(a_ItemStack, a_Player, AreasInOrder, a_ShouldApply, (a_Slot == 0)); - } - else if (a_ClickedArea == m_SlotAreas[1]) - { - // Armor Area - AreasInOrder.push_back(m_SlotAreas[2]); /* Inventory */ - AreasInOrder.push_back(m_SlotAreas[3]); /* Hotbar */ - super::DistributeStackToAreas(a_ItemStack, a_Player, AreasInOrder, a_ShouldApply, false); - } - else if (a_ClickedArea == m_SlotAreas[2]) - { - // Inventory Area - AreasInOrder.push_back(m_SlotAreas[1]); /* Armor */ - AreasInOrder.push_back(m_SlotAreas[3]); /* Hotbar */ - super::DistributeStackToAreas(a_ItemStack, a_Player, AreasInOrder, a_ShouldApply, false); - } - else - { - // Hotbar - AreasInOrder.push_back(m_SlotAreas[1]); /* Armor */ - AreasInOrder.push_back(m_SlotAreas[2]); /* Inventory */ - super::DistributeStackToAreas(a_ItemStack, a_Player, AreasInOrder, a_ShouldApply, false); - } - } + cInventoryWindow(cPlayer & a_Player); + + virtual void DistributeStack(cItem & a_ItemStack, int a_Slot, cPlayer & a_Player, cSlotArea * a_ClickedArea, bool a_ShouldApply) override; protected: cPlayer & m_Player; |