mirror of
https://github.com/zeldaret/ph
synced 2026-05-24 15:20:55 -04:00
74 lines
1.8 KiB
C++
74 lines
1.8 KiB
C++
#pragma once
|
|
|
|
#include "types.h"
|
|
#include "SysNew.hpp"
|
|
|
|
typedef u32 EquipItem;
|
|
enum EquipItem_ {
|
|
EquipItem_None = -1,
|
|
EquipItem_Boomerang = 2,
|
|
EquipItem_Shovel = 3,
|
|
EquipItem_Bomb = 4,
|
|
EquipItem_Bow = 5,
|
|
EquipItem_GrapplingHook = 6,
|
|
EquipItem_Bombchu = 7,
|
|
EquipItem_Hammer = 8,
|
|
EquipItem_COUNT = 11,
|
|
};
|
|
|
|
enum ItemId {
|
|
|
|
};
|
|
|
|
class Inventory : public SysObject {
|
|
private:
|
|
/* 000 */ EquipItem mEquippedItem;
|
|
/* 004 */ EquipItem mPrevEquippedItem;
|
|
/* 008 */ u32 mUnk_008;
|
|
/* 00c */ u32 mUnk_00c;
|
|
/* 010 */ u32 mUnk_010;
|
|
/* 014 */ void *mUnk_014;
|
|
/* 018 */ void *mUnk_018;
|
|
/* 01c */ void *mUnk_01c;
|
|
/* 020 */ u16 mEquipLoadTimer;
|
|
/* 022 */ u16 mNumRupees;
|
|
/* 024 */ u8 mNumCourageGems;
|
|
/* 025 */ u8 mNumPowerGems;
|
|
/* 026 */ u8 mNumWisdomGems;
|
|
/* 027 */ u8 mUnk_027;
|
|
/* 028 */ u8 mUnk_028[0x20];
|
|
/* 048 */ s32 mUnk_048[0x14];
|
|
/* 098 */ s32 mUnk_098;
|
|
/* 09c */ s32 mUnk_09c;
|
|
/* 0a0 */ s32 mUnk_0a0;
|
|
/* 0a4 */ s32 mUnk_0a4;
|
|
/* 0a8 */ s32 mUnk_0a8;
|
|
/* 0ac */ void *(*mItemInfo)[EquipItem_COUNT];
|
|
/* 0b0 */ u16 (*mAmmo)[EquipItem_COUNT];
|
|
/* 0b4 */ u16 mQuiverSize;
|
|
/* 0b6 */ u16 mBombBagSize;
|
|
/* 0b8 */ u16 mBombchuBagSize;
|
|
/* 0ba */ u16 mUnk_0ba;
|
|
/* 0bc */ u8 mUnk_0bc[4];
|
|
/* 0c0 */ void *mUnk_0c0[16];
|
|
/* 100 */ s32 mUnk_100[5];
|
|
/* 114 */ void *mUnk_114;
|
|
/* 118 */ s32 mUnk_118;
|
|
/* 11c */ s32 mUnk_11c;
|
|
/* 120 */ void *mUnk_120;
|
|
/* 124 */ void *mUnk_124;
|
|
/* 128 */ u32 mItemFlags[4]; // Todo (aetias): Set this to ceil(ItemId::COUNT / 32)
|
|
/* 138 */ u8 mUnk_138[0x18];
|
|
/* 150 */
|
|
|
|
public:
|
|
static Inventory* Create();
|
|
static void Destroy();
|
|
Inventory();
|
|
~Inventory();
|
|
|
|
void ClearPrevEquippedItem();
|
|
};
|
|
|
|
extern Inventory *gInventory;
|