aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp
diff options
context:
space:
mode:
authorLoki Rautio <lokirautio@gmail.com>2026-03-04 03:56:03 -0600
committerLoki Rautio <lokirautio@gmail.com>2026-03-04 03:56:03 -0600
commit42aec6dac53dffa6afe072560a7e1d4986112538 (patch)
tree0836426857391df1b6a83f6368a183f83ec9b104 /Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp
parentc9d58eeac7c72f0b3038e084667b4d89a6249fce (diff)
parentef9b6fd500dfabd9463267b0dd9e29577eea8a2b (diff)
Merge branch 'main' into pr/win64-world-saves
# Conflicts: # Minecraft.Client/MinecraftServer.cpp # README.md
Diffstat (limited to 'Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp')
-rw-r--r--Minecraft.Client/Common/UI/UIScene_CraftingMenu.cpp20
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