summaryrefslogtreecommitdiffstats
path: root/src/UI/CraftingWindow.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/UI/CraftingWindow.h')
-rw-r--r--src/UI/CraftingWindow.h45
1 files changed, 3 insertions, 42 deletions
diff --git a/src/UI/CraftingWindow.h b/src/UI/CraftingWindow.h
index e6292175e..01b2da73a 100644
--- a/src/UI/CraftingWindow.h
+++ b/src/UI/CraftingWindow.h
@@ -21,48 +21,9 @@ class cCraftingWindow :
typedef cWindow super;
public:
- cCraftingWindow(int a_BlockX, int a_BlockY, int a_BlockZ) :
- cWindow(wtWorkbench, "Crafting Table")
- {
- m_SlotAreas.push_back(new cSlotAreaCrafting(3, *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[2]); /* Hotbar */
- AreasInOrder.push_back(m_SlotAreas[1]); /* Inventory */
- }
- else
- {
- AreasInOrder.push_back(m_SlotAreas[1]); /* Inventory */
- AreasInOrder.push_back(m_SlotAreas[2]); /* Hotbar */
- }
- super::DistributeStackToAreas(a_ItemStack, a_Player, AreasInOrder, a_ShouldApply, (a_Slot == 0));
- }
- else if (a_ClickedArea == m_SlotAreas[1])
- {
- // Inventory Area
- AreasInOrder.push_back(m_SlotAreas[2]); /* Hotbar */
- super::DistributeStackToAreas(a_ItemStack, a_Player, AreasInOrder, a_ShouldApply, false);
- }
- else
- {
- // Hotbar
- AreasInOrder.push_back(m_SlotAreas[1]); /* Inventory */
- super::DistributeStackToAreas(a_ItemStack, a_Player, AreasInOrder, a_ShouldApply, false);
- }
- }
+ cCraftingWindow(int a_BlockX, int a_BlockY, int a_BlockZ);
+
+ virtual void DistributeStack(cItem & a_ItemStack, int a_Slot, cPlayer & a_Player, cSlotArea * a_ClickedArea, bool a_ShouldApply) override;
};