diff options
| author | Léo Lam <leo@leolam.fr> | 2021-01-09 15:45:07 +0100 |
|---|---|---|
| committer | Léo Lam <leo@leolam.fr> | 2021-01-10 02:14:31 +0100 |
| commit | 29817a3e21f73d061f68e80d372b21060abd0efd (patch) | |
| tree | 753617ce408b1f68002ea18f529e9429c2964c53 /src/Game/UI/uiPauseMenuDataMgr.h | |
| parent | 65261d02a6f119ea788396ebe0c287e4080873bf (diff) | |
uking/act: Add most of the weapon modifier utils
Diffstat (limited to 'src/Game/UI/uiPauseMenuDataMgr.h')
| -rw-r--r-- | src/Game/UI/uiPauseMenuDataMgr.h | 38 |
1 files changed, 23 insertions, 15 deletions
diff --git a/src/Game/UI/uiPauseMenuDataMgr.h b/src/Game/UI/uiPauseMenuDataMgr.h index 23b4fbb1..c6026e80 100644 --- a/src/Game/UI/uiPauseMenuDataMgr.h +++ b/src/Game/UI/uiPauseMenuDataMgr.h @@ -89,6 +89,21 @@ struct CookTagInfo { class PouchItem { public: + struct CookData { + int mStaminaRecoverX; + int mStaminaRecoverY; + int mCookEffect1; + sead::Vector2f mCookEffect0; + }; + + struct WeaponData { + u32 mAddValue; + u32 b; + u32 mAddType; + u32 d; + u32 e; + }; + PouchItem(); virtual ~PouchItem() = default; @@ -103,26 +118,19 @@ public: s32 getValue() const { return mValue; } void setValue(s32 value) { mValue = value; } + // Only valid if this is not a weapon. + CookData& getCookData() { return mData.cook; } + const CookData& getCookData() const { return mData.cook; } + + // Only valid if this is a weapon. + WeaponData& getWeaponData() { return mData.weapon; } + const WeaponData& getWeaponData() const { return mData.weapon; } + static auto getListNodeOffset() { return offsetof(PouchItem, mListNode); } private: friend class PauseMenuDataMgr; - struct CookData { - int mStaminaRecoverX; - int mStaminaRecoverY; - int mCookEffect1; - sead::Vector2f mCookEffect0; - }; - - struct WeaponData { - u32 mAddValue; - u32 b; - u32 mAddType; - u32 d; - u32 e; - }; - union Data { CookData cook; WeaponData weapon; |
