diff options
Diffstat (limited to 'Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp')
| -rw-r--r-- | Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp b/Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp index 5b729069..66d8c41e 100644 --- a/Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp +++ b/Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp @@ -197,7 +197,10 @@ void UIScene_CraftingMenu::handleDestroy() } // We need to make sure that we call closeContainer() anytime this menu is closed, even if it is forced to close by some other reason (like the player dying) - if(Minecraft::GetInstance()->localplayers[m_iPad] != NULL) Minecraft::GetInstance()->localplayers[m_iPad]->closeContainer(); + if(Minecraft::GetInstance()->localplayers[m_iPad] != NULL && Minecraft::GetInstance()->localplayers[m_iPad]->containerMenu->containerId == m_menu->containerId) + { + Minecraft::GetInstance()->localplayers[m_iPad]->closeContainer(); + } ui.OverrideSFX(m_iPad,ACTION_MENU_A,false); ui.OverrideSFX(m_iPad,ACTION_MENU_OK,false); @@ -763,6 +766,21 @@ void UIScene_CraftingMenu::updateHighlightAndScrollPositions() } } +void UIScene_CraftingMenu::HandleMessage(EUIMessage message, void *data) +{ + switch(message) + { + case eUIMessage_InventoryUpdated: + handleInventoryUpdated(data); + break; + }; +} + +void UIScene_CraftingMenu::handleInventoryUpdated(LPVOID data) +{ + HandleInventoryUpdated(); +} + void UIScene_CraftingMenu::updateVSlotPositions(int iSlots, int i) { // Not needed |
