document the item manager and UnkStruct_027e0ce0

This commit is contained in:
Yanis002
2025-07-23 14:39:15 +02:00
parent 1d131370ea
commit ac11ed00e5
3 changed files with 56 additions and 11 deletions
+5
View File
@@ -0,0 +1,5 @@
#pragma once
#include "types.h"
#define MAX_POTIONS 2
+31
View File
@@ -0,0 +1,31 @@
#pragma once
#include "Item/Item.hpp"
#include "System/SysNew.hpp"
#include "types.h"
class ItemManager : public SysObject {
public:
/* 00 */ unk32 mEquippedItem;
/* 04 */ unk32 mForcedItem;
/* 08 */ unk16 mUnk_08; // inventory items bitfield
/* 0a */ unk16 mUnk_0a; // collection/equipment bitfield
/* 0c */ unk32 mUnk_0c;
/* 10 */ unk16 mNumRupees;
/* 12 */ unk16 mUnk_12; // "toggle bitfield"
/* 14 */ unk16 mItemRestrictions; // bitfield
/* 16 */ unk8 mTearsAmount; // number of tears of light
/* 17 */ unk8 mKeyAmount; // number of small keys
/* 18 */ unk8 mQuiverCapacity;
/* 19 */ unk8 mBombBagCapacity;
/* 1a */ unk8 mArrowAmount;
/* 1b */ unk8 mBombAmount;
/* 1c */ unk8 mPotions[MAX_POTIONS];
/* 1e */ unk16 mUnk_1e;
/* 20 */ unk32 *mUnk_20;
/* 24 */ unk32 mUnk_24;
/* 28 */
ItemManager();
~ItemManager();
};
+20 -11
View File
@@ -3,24 +3,33 @@
#include "global.h"
#include "types.h"
#include "Item/ItemManager.hpp"
#include "System/SysNew.hpp"
// PlayerManager?
class UnkStruct_027e0ce0 {
public:
/* 00 */ unk32 mUnk_00;
/* 00 */ unk8 mHealth;
/* 04 */ unk8 mHealthMax;
/* 02 */ unk32 mUnk_02;
/* 03 */ unk32 mUnk_03;
/* 04 */ unk32 mUnk_04;
/* 08 */ unk32 mUnk_08;
/* 0c */ unk32 mUnk_0c;
/* 10 */ unk32 mUnk_10;
/* 14 */ unk32 mUnk_14;
/* 18 */ unk32 mUnk_18;
/* 1c */ unk32 mUnk_1c;
/* 20 */ unk32 mUnk_20;
/* 08 */ unk32 *mUnk_08;
/* 0c */ unk32 *mUnk_0c;
/* 10 */ unk32 *mUnk_10;
/* 14 */ unk32 *mUnk_14;
/* 18 */ unk32 *mUnk_18;
/* 1c */ unk32 *mUnk_1c;
/* 20 */ unk32 *mUnk_20;
/* 24 */ unk32 mUnk_24;
/* 28 */ unk32 mUnk_28;
/* 2c */ unk32 mUnk_2c;
/* 30 */
/* 28 */ ItemManager *mUnk_28;
/* 2c */ ItemManager *mUnk_2c; // same as above
/* 30 */ unk32 *mUnk_30; // ?
/* 34 */ unk32 *mUnk_34;
/* 38 */ unk32 *mUnk_38; // pointer to data_027e0478 when on the train
/* 3c */ unk32 mUnk_3c;
/* 40 */ unk32 *mUnk_40; // pointer to data_027e0478 when not on the train
/* 44 */
void func_01fff148();