From 9d35c385f9ed410a409bcedf7c319e37c6a6f074 Mon Sep 17 00:00:00 2001 From: savage13 Date: Sat, 26 Feb 2022 09:01:44 -0500 Subject: Match two small functions in PauseMenuDataMgr (#86) --- src/Game/UI/uiPauseMenuDataMgr.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/Game/UI/uiPauseMenuDataMgr.cpp') diff --git a/src/Game/UI/uiPauseMenuDataMgr.cpp b/src/Game/UI/uiPauseMenuDataMgr.cpp index b3997c5e..3d1f6569 100644 --- a/src/Game/UI/uiPauseMenuDataMgr.cpp +++ b/src/Game/UI/uiPauseMenuDataMgr.cpp @@ -2749,4 +2749,28 @@ void PauseMenuDataMgr::updateDivineBeastClearFlags(int num_cleared_beasts) { } } +void PauseMenuDataMgr::equipWeapon(PouchItem* weapon) { + if (!weapon) { + return; + } + auto lock = sead::makeScopedLock(mCritSection); + auto* item = mItemLists.list1.nth(0); + while (item && item->isWeapon()) { + if (item->mType == weapon->mType) { + item->mEquipped = false; + } + item = mItemLists.list1.next(item); + } + weapon->mEquipped = true; + saveToGameData(mItemLists.list1); +} + +void PauseMenuDataMgr::unequip(PouchItem* item) { + if (!item) { + return; + } + auto lock = sead::makeScopedLock(mCritSection); + item->mEquipped = false; + saveToGameData(mItemLists.list1); +} } // namespace uking::ui -- cgit v1.2.3