diff options
| author | TakaRikka <38417346+TakaRikka@users.noreply.github.com> | 2021-08-28 07:25:03 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-08-28 16:25:03 +0200 |
| commit | daf45f768d9ae091a97dce1be8d048ac2b7bd54c (patch) | |
| tree | 138798649ad35cb95ff5a0dd49bc7884ed6cdff0 /include/d | |
| parent | e14b04c54a40e95f0117df44f1186f2d44799ac7 (diff) | |
move J2D / JUTResFont (#144)
* move some JSystem and meter2_info stuff
* more J2D / JUTTexture / JUTPalette
* setup dScnKy_env_light_c
Diffstat (limited to 'include/d')
| -rw-r--r-- | include/d/a/d_a_alink.h | 2 | ||||
| -rw-r--r-- | include/d/com/d_com_inf_game.h | 38 | ||||
| -rw-r--r-- | include/d/kankyo/d_kankyo.h | 594 | ||||
| -rw-r--r-- | include/d/meter/d_meter2_info.h | 54 | ||||
| -rw-r--r-- | include/d/meter/d_meter_HIO.h | 48 | ||||
| -rw-r--r-- | include/d/msg/d_msg_flow.h | 24 | ||||
| -rw-r--r-- | include/d/pane/d_pane_class.h | 44 | ||||
| -rw-r--r-- | include/d/pane/d_pane_class_alpha.h | 43 | ||||
| -rw-r--r-- | include/d/save/d_save.h | 624 |
9 files changed, 1140 insertions, 331 deletions
diff --git a/include/d/a/d_a_alink.h b/include/d/a/d_a_alink.h index 726d58950c..d2b0c5dc92 100644 --- a/include/d/a/d_a_alink.h +++ b/include/d/a/d_a_alink.h @@ -307,7 +307,7 @@ public: /* 8009D87C */ bool getE3Zhint(); /* 8009D884 */ char* getAlinkArcName(); /* 8009DA60 */ static bool checkStageName(char const*); - /* 8009DA98 */ void tgHitCallback(fopAc_ac_c*, dCcD_GObjInf*, dCcD_GObjInf*); + /* 8009DA98 */ static void tgHitCallback(fopAc_ac_c*, dCcD_GObjInf*, dCcD_GObjInf*); /* 8009DB64 */ void coHitCallback(fopAc_ac_c*, dCcD_GObjInf*); /* 8009DC6C */ void setMatrixWorldAxisRot(f32 (*)[4], s16, s16, s16, int, cXyz const*); /* 8009DD90 */ void jointControll(int); diff --git a/include/d/com/d_com_inf_game.h b/include/d/com/d_com_inf_game.h index 70a50b7c5c..814364f39f 100644 --- a/include/d/com/d_com_inf_game.h +++ b/include/d/com/d_com_inf_game.h @@ -110,6 +110,8 @@ public: void setSelectItem(int idx, u8 itemId) { mSelectItem[idx] = itemId; } + void setSelectEquip(int idx, u8 item_id) { mSelectEquip[idx] = item_id; } + u8 getSelectItem(int idx) { return mSelectItem[idx]; } void setZStatus(u8 status, u8 flag) { @@ -161,6 +163,7 @@ public: inline JKRHeap* getExpHeap2D() { return mExpHeap2D; } inline dEvent_manager_c& getEvtManager() { return mEvtManager; } inline dAttention_c& getAttention() { return mAttention; } + JKRArchive* getMsgDtArchive(int idx) { return mMsgDtArchive[idx]; } public: /* 0x00000 */ dBgS mDBgS; @@ -453,6 +456,9 @@ int dComIfGp_checkEmptySubHeap2D(); int dComIfGp_searchUseSubHeap2D(int); void dComIfGs_setLastWarpMarkItemData(const char*, cXyz, s16, s8, u8, u8); u16 dComIfGs_getMaxLifeGauge(); +void dComIfGs_setWarpMarkFlag(u8); +void dComIfGs_setSelectEquipSword(u8); +void dComIfGs_setSelectEquipShield(u8); inline void dComIfGp_setRStatus(u8 status, u8 flag) { g_dComIfG_gameInfo.play.setRStatus(status, flag); @@ -937,4 +943,36 @@ inline void dComIfGs_addBottleNum(u8 param_0, s16 param_1) { g_dComIfG_gameInfo.info.getPlayer().getItemRecord().addBottleNum(param_0, param_1); } +inline void dComIfGs_resetLastWarpAcceptStage() { + g_dComIfG_gameInfo.info.getPlayer().getPlayerLastMarkInfo().resetWarpAcceptStage(); +} + +inline void dComIfGp_setSelectEquipClothes(u8 i_clothId) { + g_dComIfG_gameInfo.play.setSelectEquip(COLLECT_CLOTHING, i_clothId); +} + +inline void dComIfGp_setSelectEquipSword(u8 i_swordId) { + g_dComIfG_gameInfo.play.setSelectEquip(COLLECT_SWORD, i_swordId); +} + +inline void dComIfGp_setSelectEquipShield(u8 i_shieldId) { + g_dComIfG_gameInfo.play.setSelectEquip(COLLECT_SHIELD, i_shieldId); +} + +inline void dComIfGs_offItemFirstBit(u8 param_0) { + g_dComIfG_gameInfo.info.getPlayer().getGetItem().offFirstBit(param_0); +} + +inline BOOL dComIfGs_isLetterGetFlag(int param_0) { + return g_dComIfG_gameInfo.info.getPlayer().getLetterInfo().isLetterGetFlag(param_0); +} + +inline JKRArchive* dComIfGp_getMsgDtArchive(int idx) { + return g_dComIfG_gameInfo.play.getMsgDtArchive(idx); +} + +inline u8 dComIfGs_getArrowNum() { + return g_dComIfG_gameInfo.info.getPlayer().getItemRecord().getArrowNum(); +} + #endif /* D_COM_D_COM_INF_GAME_H */ diff --git a/include/d/kankyo/d_kankyo.h b/include/d/kankyo/d_kankyo.h index a54f18f9d7..166b9633a9 100644 --- a/include/d/kankyo/d_kankyo.h +++ b/include/d/kankyo/d_kankyo.h @@ -1,10 +1,15 @@ #ifndef D_KANKYO_D_KANKYO_H #define D_KANKYO_D_KANKYO_H +#include "JSystem/J3DGraphAnimator/J3DModelData.h" +#include "JSystem/J3DGraphBase/J3DPacket.h" #include "JSystem/J3DGraphBase/J3DStruct.h" +#include "JSystem/JParticle/JPAParticle.h" +#include "SSystem/SComponent/c_sxyz.h" #include "SSystem/SComponent/c_xyz.h" #include "dolphin/gx/GXTexture.h" #include "dolphin/types.h" +#include "m_Do/m_Do_ext.h" struct LIGHT_INFLUENCE { /* 800CFC7C */ ~LIGHT_INFLUENCE(); @@ -26,6 +31,85 @@ struct WIND_INFLUENCE { /* 0x29 */ u8 field_0x29; }; +struct WIND_INF_ENTITY { + /* 8019F4B8 */ ~WIND_INF_ENTITY(); + /* 8019F4F4 */ WIND_INF_ENTITY(); + + /* 0x00 */ u8 field_0x0[0x10]; + /* 0x10 */ WIND_INFLUENCE field_0x10; +}; // Size: 0x3C + +struct EFLIGHT_PROC { + /* 0x00 */ u8 field_0x0; + /* 0x01 */ u8 field_0x1; + /* 0x04 */ int field_0x4; + /* 0x08 */ LIGHT_INFLUENCE field_0x8; +}; + +struct SND_INFLUENCE { + /* 0x00 */ cXyz field_0x0; + /* 0x0C */ int field_0xc; + /* 0x10 */ int field_0x10; + /* 0x14 */ u32 field_0x14; +}; + +struct DALKMIST_INFLUENCE { + /* 0x00 */ u8 field_0x0[0x10]; +}; + +struct DUNGEON_LIGHT { + /* 8019F478 */ ~DUNGEON_LIGHT(); + /* 8019F4B4 */ DUNGEON_LIGHT(); + + /* 0x00 */ cXyz field_0x0; + /* 0x0C */ u8 field_0xc[0x20]; + /* 0x2C */ // LIGHT_INFLUENCE field_0x2c; this breaks ctor for some reason + u8 field_0x2c[0x20]; +}; // Size: 0x4C + +struct BOSS_LIGHT { + /* 8019F438 */ ~BOSS_LIGHT(); + /* 8019F474 */ BOSS_LIGHT(); + + /* 0x00 */ cXyz field_0x0; + /* 0x0C */ int field_0xc; + /* 0x10 */ int field_0x10; + /* 0x14 */ int field_0x14; + /* 0x18 */ int field_0x18; + /* 0x1C */ int field_0x1c; + /* 0x20 */ int field_0x20; + /* 0x24 */ u8 field_0x24; + /* 0x25 */ u8 field_0x25; + /* 0x26 */ u8 field_0x26; +}; // Size: 0x28 + +struct GB_WIND_INFLUENCE { + /* 0x00 */ cXyz pos; + /* 0x0C */ int field_0xc; + /* 0x10 */ f32 pow; +}; + +struct EF_THUNDER { + /* 0x00 */ u8 field_0x0; + /* 0x01 */ u8 field_0x1; + /* 0x02 */ u8 field_0x2; + /* 0x04 */ int field_0x4; + /* 0x08 */ f32 field_0x8; + /* 0x0C */ f32 field_0xc; + /* 0x10 */ f32 field_0x10; + /* 0x14 */ f32 field_0x14; + /* 0x18 */ f32 field_0x18; + /* 0x1C */ f32 field_0x1c; + /* 0x20 */ u8 field_0x20[4]; + /* 0x24 */ LIGHT_INFLUENCE field_0x24; +}; + +struct GB_MAPLE_COL_CHANGE { + /* 8019F400 */ GB_MAPLE_COL_CHANGE(); + + /* 0x00 */ J3DLightObj field_0x0; +}; // Size: 0x74 + class dKy_tevstr_c { public: private: @@ -63,6 +147,516 @@ private: STATIC_ASSERT(sizeof(dKy_tevstr_c) == 0x388); +class dKankyo_sun_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_sun_Packet(); + +private: + /* 0x10 */ cXyz field_0x10[2]; +}; + +class dKankyo_sunlenz_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_sunlenz_Packet(); + +private: + /* 0x10 */ u8 field_0x10[0x14]; + /* 0x24 */ cXyz field_0x24[8]; +}; + +struct RAIN_EFF { + /* 0x00 */ u8 field_0x0[4]; + /* 0x04 */ cXyz field_0x04; + /* 0x10 */ cXyz field_0x10; + /* 0x1C */ u8 field_0x1c[0x1c]; +}; // Size: 0x38 + +class dKankyo_rain_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_rain_Packet(); + +private: + /* 0x10 */ u8 field_0x10[8]; + /* 0x18 */ RAIN_EFF field_0x18[250]; +}; + +struct SNOW_EFF { + /* 0x00 */ u8 field_0x0[4]; + /* 0x04 */ cXyz field_0x04; + /* 0x10 */ cXyz field_0x10; + /* 0x1C */ u8 field_0x1c[0x1c]; +}; // Size: 0x38 + +class dKankyo_snow_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_snow_Packet(); + +private: + /* 0x10 */ u8 field_0x10[4]; + /* 0x14 */ SNOW_EFF field_0x14[500]; +}; + +struct STAR_EFF { + /* 0x00 */ u8 field_0x0[4]; + /* 0x04 */ cXyz field_0x04; + /* 0x10 */ cXyz field_0x10; + /* 0x1C */ u8 field_0x1c[0x18]; +}; // Size: 0x34 + +class dKankyo_star_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_star_Packet(); + +private: + /* 0x10 */ u8 field_0x10[4]; + /* 0x14 */ STAR_EFF field_0x14[1]; +}; + +struct HOUSI_EFF { + /* 0x00 */ u8 field_0x0[4]; + /* 0x04 */ cXyz field_0x04; + /* 0x10 */ cXyz field_0x10; + /* 0x1C */ cXyz field_0x1c; + /* 0x28 */ u8 field_0x28[0x28]; +}; // Size: 0x50 + +class dKankyo_housi_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_housi_Packet(); + +private: + /* 0x10 */ u8 field_0x10[0x10]; + /* 0x20 */ HOUSI_EFF field_0x18[300]; +}; + +struct CLOUD_EFF { + /* 0x00 */ u8 field_0x0[4]; + /* 0x04 */ cXyz field_0x04; + /* 0x10 */ cXyz field_0x10; + /* 0x1C */ cXyz field_0x1c; + /* 0x28 */ u8 field_0x28[0x10]; +}; // Size: 0x38 + +class dKankyo_cloud_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_cloud_Packet(); + +private: + /* 0x10 */ u8 field_0x10[8]; + /* 0x18 */ CLOUD_EFF field_0x18[50]; +}; + +struct VRKUMO_EFF { + /* 0x00 */ u8 field_0x0[4]; + /* 0x04 */ cXyz field_0x04; + /* 0x10 */ cXyz field_0x10; + /* 0x1C */ u8 field_0x1c[0x10]; +}; // Size: 0x2C + +class dKankyo_vrkumo_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_vrkumo_Packet(); + +private: + /* 0x10 */ u8 field_0x10[0x10]; + /* 0x20 */ VRKUMO_EFF field_0x18[100]; +}; + +// might be fake +class dKankyo_shstar_Packet : public J3DPacket {}; + +struct ODOUR_EFF { + /* 0x00 */ u8 field_0x0[4]; + /* 0x04 */ cXyz field_0x04; + /* 0x10 */ cXyz field_0x10; + /* 0x1C */ u8 field_0x1c[0x14]; +}; // Size: 0x30 + +class dKankyo_odour_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_odour_Packet(); + +private: + /* 0x10 */ u8 field_0x10[4]; + /* 0x14 */ ODOUR_EFF field_0x18[2000]; +}; + +struct MUD_EFF { + /* 0x00 */ u8 field_0x0[4]; + /* 0x04 */ cXyz field_0x04; + /* 0x10 */ cXyz field_0x10; + /* 0x1C */ cXyz field_0x1c; + /* 0x28 */ u8 field_0x28[0x20]; +}; // Size: 0x48 + +class dKankyo_mud_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_mud_Packet(); + +private: + /* 0x10 */ u8 field_0x10[8]; + /* 0x18 */ MUD_EFF field_0x18[100]; +}; + +struct EVIL_EFF { + /* 0x00 */ u8 field_0x0[4]; + /* 0x04 */ cXyz field_0x04; + /* 0x10 */ cXyz field_0x10; + /* 0x1C */ csXyz field_0x1c; + /* 0x22 */ u8 field_0x22[0x22]; +}; // Size: 0x44 + +class dKankyo_evil_Packet : public J3DPacket { +public: + virtual void draw(); + virtual ~dKankyo_evil_Packet(); + +private: + /* 0x10 */ u8 field_0x10[8]; + /* 0x18 */ EVIL_EFF field_0x18[2000]; +}; + +struct GXFogAdjTable { + u16 field_0x0[10]; +}; + +class fopAc_ac_c; + +class dScnKy_env_light_c { +public: + /* 8019F2E8 */ dScnKy_env_light_c(); + /* 8019F4FC */ void setDaytime(); + /* 8019F788 */ void setSunpos(); + /* 8019FA08 */ f32 getDaytime(); + /* 8019FBCC */ void getDarkDaytime(); + /* 8019FBD4 */ void setLight_palno_get(u8*, u8*, u8*, u8*, u8*, u8*, u8*, u8*, f32*, int*, int*, + f32*, u8*); + /* 801A040C */ void setLight(); + /* 801A133C */ void setLight_bg(dKy_tevstr_c*, _GXColorS10*, _GXColorS10*, f32*, f32*); + /* 801A16C0 */ void setLight_actor(dKy_tevstr_c*, _GXColorS10*, f32*, f32*); + /* 801A1D64 */ void settingTevStruct_colget_actor(cXyz*, dKy_tevstr_c*, _GXColorS10*, + _GXColorS10*, f32*, f32*); + /* 801A1F58 */ void settingTevStruct_colget_player(dKy_tevstr_c*); + /* 801A2128 */ void settingTevStruct_plightcol_plus(cXyz*, dKy_tevstr_c*, _GXColorS10, + _GXColorS10, u8); + /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); + /* 801A441C */ void setLightTevColorType(J3DModelData*, dKy_tevstr_c*); + /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); + /* 801A4E90 */ void CalcTevColor(); + /* 801A4F24 */ void Sndpos(); + /* 801A4F64 */ void Eflight_flush_proc(); + /* 801A516C */ void SetBaseLight(); + /* 801A5288 */ void exeKankyo(); + /* 801A56DC */ void drawKankyo(); + + /* 801ADBBC */ virtual ~dScnKy_env_light_c(); + +public: + /* 0x0000 */ // vtable + /* 0x0004 */ void* field_0x4; + /* 0x0008 */ void* field_0x8; + /* 0x000C */ void* field_0xc; + /* 0x0010 */ void* field_0x10; + /* 0x0014 */ void* field_0x14; + /* 0x0018 */ LIGHT_INFLUENCE field_0x18; + /* 0x0038 */ LIGHT_INFLUENCE field_0x38[30]; + /* 0x03F8 */ LIGHT_INFLUENCE* mPLight[100]; + /* 0x0588 */ LIGHT_INFLUENCE* mEfPLight[5]; + /* 0x059C */ u8 field_0x59c[400]; + /* 0x072C */ int field_0x72c[5]; + /* 0x0740 */ LIGHT_INFLUENCE field_0x740; + /* 0x0760 */ u8 field_0x760[4]; + /* 0x0764 */ LIGHT_INFLUENCE mBGpartsActiveLight[2]; + /* 0x07A4 */ EFLIGHT_PROC field_0x7a4; + /* 0x07CC */ void* stagPlightInfo; // might be part of EFLIGHT_PROC + /* 0x07D0 */ WIND_INFLUENCE* mPntWind[30]; + /* 0x0848 */ WIND_INF_ENTITY field_0x848[5]; + /* 0x0974 */ SND_INFLUENCE mSound; + /* 0x098C */ u8 field_0x98c; + /* 0x0990 */ DALKMIST_INFLUENCE* mDalkmistInf[10]; + /* 0x09B8 */ DUNGEON_LIGHT field_0x9b8[8]; + /* 0x0C18 */ BOSS_LIGHT field_0x0c18[8]; + /* 0x0D58 */ BOSS_LIGHT field_0x0d58[6]; + /* 0x0E48 */ GB_WIND_INFLUENCE field_0xe48; + /* 0x0E5C */ f32 custom_windpower; + /* 0x0E60 */ f32 field_0xe60; + /* 0x0E64 */ u16 field_0xe64; + /* 0x0E66 */ u16 field_0xe66; + /* 0x0E68 */ s16 field_0xe68; + /* 0x0E6A */ s16 field_0xe6a; + /* 0x0E6C */ u8 field_0xe6c; + /* 0x0E6D */ u8 field_0xe6d; + /* 0x0E6E */ u8 field_0xe6e; // E5C - E6E might all be part of GB_WIND_INFLUENCE + /* 0x0E6F */ u8 field_0xe6f; + /* 0x0E70 */ u8 field_0xe70; + /* 0x0E74 */ dKankyo_sun_Packet* field_0xe74; + /* 0x0E78 */ dKankyo_sunlenz_Packet* field_0xe78; + /* 0x0E7C */ u8 field_0xe7c; + /* 0x0E80 */ int mRainCheck; + /* 0x0E84 */ dKankyo_rain_Packet* field_0xe84; + /* 0x0E88 */ u8 field_0xe88; + /* 0x0E8C */ int field_0xe8c; + /* 0x0E90 */ u8 field_0xe90; + /* 0x0E91 */ u8 field_0xe91; + /* 0x0E92 */ u8 field_0xe92; + /* 0x0E94 */ dKankyo_snow_Packet* field_0xe94; + /* 0x0E98 */ u8 field_0xe98; + /* 0x0E9C */ int field_0xe9c; + /* 0x0EA0 */ f32 field_0xea0; + /* 0x0EA4 */ dKankyo_star_Packet* field_0xea4; + /* 0x0EA8 */ u8 field_0xea8; + /* 0x0EA9 */ u8 field_0xea9; + /* 0x0EAC */ int field_0xeac; + /* 0x0EB0 */ dKankyo_housi_Packet* field_0xeb0; + /* 0x0EB4 */ u8 field_0xeb4; + /* 0x0EB5 */ u8 field_0xeb5; + /* 0x0EB8 */ int field_0xeb8; + /* 0x0EBC */ f32 field_0xebc; + /* 0x0EC0 */ dKankyo_cloud_Packet* field_0xec0; + /* 0x0EC4 */ u8 field_0xec4; + /* 0x0EC8 */ int field_0xec8; + /* 0x0ECC */ f32 field_0xecc; + /* 0x0ED0 */ dKankyo_vrkumo_Packet* field_0xed0; + /* 0x0ED4 */ EF_THUNDER field_0xef4; + /* 0x0F18 */ u8 field_0xf18[4]; + /* 0x0F1C */ dKankyo_shstar_Packet* field_0xf1c; + /* 0x0F20 */ u8 field_0xf20; + /* 0x0F21 */ u8 field_0xf21; + /* 0x0F24 */ int field_0xf24; + /* 0x0F28 */ dKankyo_odour_Packet* field_0xf28; + /* 0x0F2C */ u8 field_0xf2c; + /* 0x0F30 */ J3DModel* field_0xf30; + /* 0x0F34 */ f32 field_0xf34; + /* 0x0F38 */ int field_0xf38; + /* 0x0F3C */ u8 field_0xf3c; + /* 0x0F3D */ u8 field_0xf3d; + /* 0x0F40 */ f32 field_0xf40; + /* 0x0F44 */ JPABaseEmitter* field_0xf44; + /* 0x0F48 */ JPABaseEmitter* field_0xf48; + /* 0x0F4C */ JPABaseEmitter* field_0xf4c; + /* 0x0F50 */ GB_MAPLE_COL_CHANGE field_0xf50[2]; + /* 0x1038 */ u8 field_0x1038; + /* 0x103C */ int field_0x103c; + /* 0x1040 */ u8 field_0x1040[4]; + /* 0x1044 */ u8 field_0x1044; + /* 0x1048 */ int field_0x1048; + /* 0x104C */ dKankyo_mud_Packet* field_0x104c; + /* 0x1050 */ u8 field_0x1050; + /* 0x1051 */ u8 field_0x1051; + /* 0x1054 */ int field_0x1054; + /* 0x1058 */ dKankyo_evil_Packet* field_0x1058; + /* 0x105C */ mDoExt_btkAnm* field_0x105c; + /* 0x1060 */ fopAc_ac_c* field_0x1060; + /* 0x1064 */ f32 field_0x1064; + /* 0x1068 */ f32 field_0x1068; + /* 0x106C */ f32 field_0x106c; + /* 0x1070 */ cXyz field_0x1070; + /* 0x107C */ cXyz mPLightNearPos; + /* 0x1088 */ cXyz field_0x1088; + /* 0x1094 */ cXyz field_0x1094; + /* 0x10A0 */ cXyz field_0x10a0; + /* 0x10AC */ GXFogAdjTable field_0x10ac; + /* 0x10C0 */ u16 field_0x10c0; + /* 0x10C2 */ u16 field_0x10c2; + /* 0x10C4 */ u16 field_0x10c4; + /* 0x10C6 */ u16 field_0x10c6; + /* 0x10C8 */ u16 field_0x10c8; + /* 0x10CA */ u16 field_0x10ca; + /* 0x10CC */ u16 field_0x10cc; + /* 0x10CE */ u16 field_0x10ce; + /* 0x10D0 */ u16 field_0x10d0; + /* 0x10D2 */ u16 field_0x10d2; + /* 0x10D4 */ u16 field_0x10d4; + /* 0x10D6 */ u16 field_0x10d6; + /* 0x10D8 */ u16 field_0x10d8; + /* 0x10DA */ u16 field_0x10da; + /* 0x10DC */ u16 field_0x10dc; + /* 0x10DE */ u16 field_0x10de; + /* 0x10E0 */ u16 field_0x10e0; + /* 0x10E2 */ u16 field_0x10e2; + /* 0x10E4 */ u16 field_0x10e4; + /* 0x10E6 */ u16 field_0x10e6; + /* 0x10E8 */ u16 field_0x10e8; + /* 0x10EA */ u16 field_0x10ea; + /* 0x10EC */ u16 field_0x10ec; + /* 0x10EE */ u16 field_0x10ee; + /* 0x10F0 */ s16 field_0x10f0; + /* 0x10F2 */ s16 field_0x10f2; + /* 0x10F4 */ s16 field_0x10f4; + /* 0x10F6 */ s16 field_0x10f6; + /* 0x10F8 */ s16 field_0x10f8; + /* 0x10FA */ s16 field_0x10fa; + /* 0x10FC */ s16 field_0x10fc; + /* 0x10FE */ s16 field_0x10fe; + /* 0x1100 */ _GXColorS10 field_0x1100; + /* 0x1108 */ _GXColorS10 field_0x1108; + /* 0x1110 */ s16 field_0x1110; + /* 0x1112 */ s16 field_0x1112; + /* 0x1114 */ s16 field_0x1114; + /* 0x1116 */ s16 field_0x1116; + /* 0x1118 */ s16 field_0x1118; + /* 0x111A */ s16 field_0x111a; + /* 0x111C */ s16 field_0x111c; + /* 0x111E */ s16 field_0x111e; + /* 0x1120 */ s16 field_0x1120; + /* 0x1122 */ s16 field_0x1122; + /* 0x1124 */ s16 field_0x1124; + /* 0x1126 */ s16 field_0x1126; + /* 0x1128 */ _GXColorS10 field_0x1128; + /* 0x1130 */ u8 field_0x1130[0x28]; + /* 0x1158 */ _GXColorS10 field_0x1158; + /* 0x1160 */ s16 field_0x1160; + /* 0x1162 */ s16 field_0x1162; + /* 0x1164 */ s16 field_0x1164; + /* 0x1166 */ u8 field_0x1166[10]; + /* 0x1170 */ s16 field_0x1170; + /* 0x1172 */ s16 field_0x1172; + /* 0x1174 */ s16 field_0x1174; + /* 0x1176 */ u8 field_0x1176[10]; + /* 0x1180 */ s16 field_0x1180; + /* 0x1182 */ s16 field_0x1182; + /* 0x1184 */ s16 field_0x1184; + /* 0x1186 */ u8 field_0x1186[10]; + /* 0x1190 */ s16 field_0x1190; + /* 0x1192 */ s16 field_0x1192; + /* 0x1194 */ s16 field_0x1194; + /* 0x1196 */ u8 field_0x1196[10]; + /* 0x11A0 */ s16 field_0x11a0; + /* 0x11A2 */ s16 field_0x11a2; + /* 0x11A4 */ s16 field_0x11a4; + /* 0x11A6 */ u8 field_0x11a6[10]; + /* 0x11B0 */ s16 field_0x11b0; + /* 0x11B2 */ s16 field_0x11b2; + /* 0x11B4 */ s16 field_0x11b4; + /* 0x11B6 */ s16 field_0x11b6; + /* 0x11B8 */ s16 field_0x11b8; + /* 0x11BA */ s16 field_0x11ba; + /* 0x11BC */ s16 field_0x11bc; + /* 0x11BE */ u8 field_0x11be[2]; + /* 0x11C0 */ s16 field_0x11c0; + /* 0x11C2 */ s16 field_0x11c2; + /* 0x11C4 */ s16 field_0x11c4; + /* 0x11C8 */ f32 field_0x11c8; + /* 0x11CC */ f32 field_0x11cc; + /* 0x11D0 */ f32 field_0x11d0; + /* 0x11D4 */ f32 field_0x11d4; + /* 0x11D8 */ f32 field_0x11d8; + /* 0x11DC */ f32 field_0x11dc; + /* 0x11E0 */ f32 field_0x11e0; + /* 0x11E4 */ f32 field_0x11e4; + /* 0x11E8 */ f32 field_0x11e8; + /* 0x11EC */ f32 field_0x11ec; + /* 0x11F0 */ f32 field_0x11f0; + /* 0x11F4 */ f32 field_0x11f4; + /* 0x11F8 */ f32 field_0x11f8; + /* 0x11FC */ f32 field_0x11fc; + /* 0x1200 */ f32 field_0x1200; + /* 0x1204 */ f32 field_0x1204; + /* 0x1208 */ f32 field_0x1208; + /* 0x120C */ f32 field_0x120c; + /* 0x1210 */ f32 field_0x1210; + /* 0x1214 */ f32 mAllcolRatio; + /* 0x1218 */ f32 mActcolRatio; + /* 0x121C */ f32 mBgcolRatio; + /* 0x1220 */ f32 mFogcolRatio; + /* 0x1224 */ f32 mVrboxSoracolRatio; + /* 0x1228 */ f32 mVrboxKumocolRatio; + /* 0x122C */ f32 field_0x122c; + /* 0x1230 */ f32 field_0x1230; + /* 0x1234 */ f32 field_0x1234; + /* 0x1238 */ f32 field_0x1238; + /* 0x123C */ f32 field_0x123c; + /* 0x1240 */ f32 field_0x1240; + /* 0x1244 */ f32 mDaytime; + /* 0x1248 */ f32 mNexttime; + /* 0x124C */ f32 field_0x124c; + /* 0x1250 */ f32 mDarkDaytime; + /* 0x1254 */ f32 field_0x1254; + /* 0x1258 */ f32 field_0x1258; + /* 0x125C */ f32 field_0x125c; + /* 0x1260 */ f32 field_0x1260; + /* 0x1264 */ f32 field_0x1264; + /* 0x1268 */ f32 field_0x1268; + /* 0x126C */ f32 field_0x126c; + /* 0x1270 */ f32 field_0x1270; + /* 0x1274 */ f32 field_0x1274; + /* 0x1278 */ f32 field_0x1278; + /* 0x127C */ f32 field_0x127c; + /* 0x1280 */ int field_0x1280; + /* 0x1284 */ u8 field_0x1284[4]; + /* 0x1288 */ int field_0x1288; + /* 0x128C */ u8 field_0x128c[12]; + /* 0x1298 */ int field_0x1298; + /* 0x129C */ int field_0x129c; + /* 0x12A0 */ int field_0x12a0; + /* 0x12A4 */ int field_0x12a4; + /* 0x12A8 */ int field_0x12a8; + /* 0x12AC */ u8 field_0x12ac[4]; + /* 0x12B0 */ int field_0x12b0; + /* 0x12B4 */ int field_0x12b4; + /* 0x12B8 */ u8 field_0x12b8[4]; + /* 0x12BC */ u16 field_0x12bc; + /* 0x12BE */ u16 field_0x12be; + /* 0x12C0 */ u16 field_0x12c0; + /* 0x12C2 */ u8 field_0x12c2; + /* 0x12C3 */ u8 field_0x12c3; + /* 0x12C4 */ u8 field_0x12c4; + /* 0x12C5 */ u8 field_0x12c5; + /* 0x12C6 */ u8 field_0x12c6; + /* 0x12C7 */ u8 field_0x12c7; + /* 0x12C8 */ u8 field_0x12c8; + /* 0x12C9 */ u8 field_0x12c9; + /* 0x12CA */ u8 field_0x12ca; + /* 0x12CB */ u8 field_0x12cb; + /* 0x12CC */ u8 field_0x12cc; + /* 0x12CD */ u8 field_0x12cd; + /* 0x12CE */ u8 field_0x12ce; + /* 0x12CF */ u8 field_0x12cf; + /* 0x12D0 */ u8 field_0x12d0; + /* 0x12D1 */ u8 mItemGetCol_chg; + /* 0x12D2 */ u8 field_0x12d2; + /* 0x12D3 */ u8 field_0x12d3; + /* 0x12D4 */ u8 field_0x12d4; + /* 0x12D5 */ u8 field_0x12d5; + /* 0x12D6 */ u8 field_0x12d6; + /* 0x12D7 */ u8 mShadowMode; + /* 0x12D8 */ u8 mCameraInWater; + /* 0x12DC */ void* field_0x12dc; + /* 0x12E0 */ void* field_0x12e0; + /* 0x12E4 */ void* field_0x12e4; + /* 0x12E8 */ void* field_0x12e8; + /* 0x12EC */ void* field_0x12ec; + /* 0x12F0 */ void* field_0x12f0; + /* 0x12F4 */ void* field_0x12f4; + /* 0x12F8 */ u8 field_0x12f8; + /* 0x12F9 */ u8 field_0x12f9; + /* 0x12FA */ u8 field_0x12fa; + /* 0x12FB */ u8 field_0x12fb; + /* 0x12FC */ u8 field_0x12fc; + /* 0x12FD */ u8 mDarktimeWeek; + /* 0x12FE */ u8 field_0x12fe; + /* 0x1300 */ u16 field_0x1300; + /* 0x1302 */ u16 field_0x1302; + /* 0x1304 */ f32 field_0x1304; + /* 0x1308 */ u8 field_0x1308; + /* 0x1309 */ u8 field_0x1309; + /* 0x130A */ u8 field_0x130a; + /* 0x130B */ u8 field_0x130b; + /* 0x130C */ u8 field_0x130c; +}; // Size: 0x1310 + +STATIC_ASSERT(sizeof(dScnKy_env_light_c) == 4880); + BOOL dKy_darkworld_stage_check(char const*, int); #endif /* D_KANKYO_D_KANKYO_H */ diff --git a/include/d/meter/d_meter2_info.h b/include/d/meter/d_meter2_info.h index c058da0d98..686bd99c69 100644 --- a/include/d/meter/d_meter2_info.h +++ b/include/d/meter/d_meter2_info.h @@ -5,19 +5,19 @@ #include "d/d_resorce.h" #include "d/menu/d_menu_window.h" #include "d/msg/d_msg_flow.h" +#include "d/pane/d_pane_class.h" #include "dolphin/types.h" #include "f_op/f_op_actor.h" -//#include "JSystem/JUtility/JUTFont.h" struct dMsgObject_c { - /* 802384C4 */ void setLetterNameID(u16); + /* 802384C4 */ static void setLetterNameID(u16); /* 802379AC */ void setKillMessageFlag(); /* 8023822C */ void getStatus(); }; class dMeterMap_c { public: - /* 8020D900 */ bool isMapOpenCheck(); + /* 8020D900 */ static bool isMapOpenCheck(); /* 8020D650 */ void isEnableDispMapAndMapDispSizeTypeNo(); /* 8020D874 */ void setDispPosInsideFlg_SE_On(); /* 8020D8BC */ void setDispPosOutsideFlg_SE_On(); @@ -31,18 +31,26 @@ struct J2DTextBox { /* 8021C7F4 */ void getFont() const; }; -struct JUTFont {}; +struct dMenu_LetterData { + u16 mSubject; + u16 mName; + u16 mText; + u16 mEventFlag; +}; struct dMenu_Letter { - static u8 letter_data[512]; + static u16 getLetterSubject(int idx) { return letter_data[idx].mSubject; } + static u16 getLetterName(int idx) { return letter_data[idx].mName; } + static u16 getLetterText(int idx) { return letter_data[idx].mText; } + static u16 getLetterEventFlag(int idx) { return letter_data[idx].mEventFlag; } + + static dMenu_LetterData letter_data[64]; }; struct dItem_data { static void* item_resource[1530]; }; -struct CPaneMgr {}; - class dMw_c; class dMeter2_c { @@ -65,7 +73,7 @@ public: dMeter2Info_c(); virtual ~dMeter2Info_c(); void init(void); - void setFloatingMessage(u16, s16, bool); + int setFloatingMessage(u16, s16, bool); void setFloatingFlow(u16, s16, bool); int isFloatingMessageVisible(void); int decFloatingMessageTimer(void); @@ -115,8 +123,7 @@ public: private: /* 0x04 */ u8 unk4[4]; - /* 0x08 */ u32 unk8; - /* 0x0C */ u32 unk12; + /* 0x08 */ u64 unk8; /* 0x10 */ void* mMsgResource; /* 0x14 */ void* mStageMsgResource; /* 0x18 */ void* mMsgUnitResource; @@ -161,26 +168,27 @@ private: /* 0xBA */ u8 unk186; /* 0xBB */ u8 mMaxCount; /* 0xBC */ u8 mNowCount; - /* 0xBD */ u8 mShopTalkFlag; + /* 0xBD */ bool mShopTalkFlag; /* 0xBE */ u8 unk190; /* 0xBF */ u8 mMapStatus; /* 0xC0 */ u8 mWarpStatus; /* 0xC1 */ u8 mPauseStatus; /* 0xC2 */ u8 mGameOverType; /* 0xC3 */ u8 mInsectSelectType; - /* 0xC4 */ u32 unk196; - /* 0xC8 */ u32 unk200; + /* 0xC4 */ u8 unk196[4]; + /* 0xC8 */ u8 unk200[4]; /* 0xCC */ u8 unk204; - /* 0xCD */ u8 unk205; - /* 0xCE */ u8 unk206; - /* 0xCF */ u8 unk207; - /* 0xD0 */ f64 unk208; - /* 0xD8 */ u8 unk216; - /* 0xD9 */ u8 unk217; - /* 0xDA */ u8 unk218; - /* 0xDB */ u8 unk219; + /* 0xCD */ u8 unk205; // arrow num + /* 0xCE */ u8 unk206; // item 1 + /* 0xCF */ u8 unk207; // item 2 + /* 0xD0 */ u8 unk208[4]; + /* 0xD4 */ u8 unk212[4]; + /* 0xD8 */ u8 unk216; // bomb num + /* 0xD9 */ u8 unk217; // arrow num? + /* 0xDA */ u8 unk218; // item 1? + /* 0xDB */ u8 unk219; // item 2 /* 0xDC */ u8 mRentalBombBag; - /* 0xDD */ u8 mMiniGameItemSetFlag; + /* 0xDD */ u8 mMiniGameItemSetFlag; // 1: rented in game, 3: rented not in game /* 0xDE */ u8 mMiniGameCount; /* 0xDF */ u8 mCollectCursorPosX; /* 0xE0 */ u8 mCollectCursorPosY; @@ -191,7 +199,7 @@ private: /* 0xE7 */ u8 unk231; /* 0xE8 */ u8 mItemExplainWindowStatus; /* 0xE9 */ char mSaveStageName[8]; - /* 0xF1 */ u8 mFloatingMessageWakuVisible; + /* 0xF1 */ bool mFloatingMessageWakuVisible; /* 0xF2 */ u8 mMapDrugFlag; /* 0xF3 */ u8 unk243[5]; }; diff --git a/include/d/meter/d_meter_HIO.h b/include/d/meter/d_meter_HIO.h index a7cbb3418c..b7a0313b69 100644 --- a/include/d/meter/d_meter_HIO.h +++ b/include/d/meter/d_meter_HIO.h @@ -1,6 +1,54 @@ #ifndef D_METER_D_METER_HIO_H #define D_METER_D_METER_HIO_H +#include "JSystem/JUtility.h" +#include "SSystem/SComponent/c_Xyz.h" +#include "SSystem/SComponent/c_sXyz.h" #include "dolphin/types.h" +class dMeter_drawCollectHIO_c { +public: + dMeter_drawCollectHIO_c(); + virtual ~dMeter_drawCollectHIO_c(); + +private: + /* 0x00 */ // vtable + /* 0x04 */ u8 field_0x04[4]; + /* 0x08 */ f32 mItemScaleSmall; + /* 0x0C */ f32 mItemScaleLarge; + /* 0x10 */ f32 mSaveOptionItemScaleSmall; + /* 0x14 */ f32 mSaveOptionItemScaleLarge; + /* 0x18 */ f32 mBlueFuzzPosX; + /* 0x1C */ f32 mBlueFuzzPosY; + /* 0x20 */ f32 mBlueFuzzScale; + /* 0x24 */ f32 mBlueFuzzAlpha; + /* 0x28 */ cXyz mMaskMirrorPos; + /* 0x34 */ f32 mMaskMirrorScale; + /* 0x38 */ f32 mMaskMirrorAnimation; + /* 0x3C */ f32 mHeartVesselPosX; + /* 0x40 */ f32 mHeartVesselPosY; + /* 0x44 */ f32 mHeartVesselScale; + /* 0x48 */ f32 mAButtonPosX; + /* 0x4C */ f32 mAButtonPosY; + /* 0x50 */ f32 mAButtonScale; + /* 0x54 */ f32 mBButtonPosX; + /* 0x58 */ f32 mBButtonPosY; + /* 0x5C */ f32 mBButtonScale; + /* 0x60 */ f32 mAButtonTextPosX; + /* 0x64 */ f32 mAButtonTextPosY; + /* 0x68 */ f32 mAButtonTextScale; + /* 0x6C */ f32 mBButtonTextPosX; + /* 0x70 */ f32 mBButtonTextPosY; + /* 0x74 */ f32 mBButtonTextScale; + /* 0x78 */ JUtility::TColor mBasBlack[2]; // ht_n_bas, h_kaz_n + /* 0x80 */ JUtility::TColor mBasWhite[2]; // same as above + /* 0x88 */ f32 mHeartPiecePosX; + /* 0x8C */ f32 mHeartPiecePosY; + /* 0x90 */ f32 mHeartPieceScale; + /* 0x94 */ csXyz mMaskMirrorAngle; + /* 0x9A */ bool field_0x9a; + /* 0x9B */ bool mColorDebugON; + /* 0x9C */ bool mButtonDebugON; +}; // Size = 0xA0 + #endif /* D_METER_D_METER_HIO_H */ diff --git a/include/d/msg/d_msg_flow.h b/include/d/msg/d_msg_flow.h index 30e1ae2625..f387463e3e 100644 --- a/include/d/msg/d_msg_flow.h +++ b/include/d/msg/d_msg_flow.h @@ -4,9 +4,15 @@ #include "dolphin/types.h" #include "f_op/f_op_actor.h" -struct mesg_flow_node_branch {}; +struct mesg_flow_node_branch { + /* 0x00 */ int field_0x0; + /* 0x04 */ u16 param; +}; -struct mesg_flow_node_event {}; +struct mesg_flow_node_event { + /* 0x00 */ int field_0x0; + /* 0x04 */ u8 param; +}; struct mesg_flow_node {}; @@ -34,9 +40,9 @@ public: /* 8024AD54 */ void branchNodeProc(fopAc_ac_c*, fopAc_ac_c**); /* 8024ADEC */ void eventNodeProc(fopAc_ac_c*, fopAc_ac_c**); /* 8024AFF8 */ void nodeProc(fopAc_ac_c*, fopAc_ac_c**); - /* 8024B0F0 */ void getParam(u16*, u16*, u8*); + /* 8024B0F0 */ int getParam(u16*, u16*, u8*); /* 8024B108 */ void getParam(u8*, u8*); - /* 8024B130 */ void getParam(u8*); + /* 8024B130 */ int getParam(u8*); /* 8024B138 */ void query001(mesg_flow_node_branch*, fopAc_ac_c*, int); /* 8024B180 */ void query002(mesg_flow_node_branch*, fopAc_ac_c*, int); /* 8024B208 */ void query003(mesg_flow_node_branch*, fopAc_ac_c*, int); @@ -90,11 +96,11 @@ public: /* 8024C340 */ void query051(mesg_flow_node_branch*, fopAc_ac_c*, int); /* 8024C3A0 */ void query052(mesg_flow_node_branch*, fopAc_ac_c*, int); /* 8024C3D4 */ void query053(mesg_flow_node_branch*, fopAc_ac_c*, int); - /* 8024C3FC */ void event000(mesg_flow_node_event*, fopAc_ac_c*); - /* 8024C488 */ void event001(mesg_flow_node_event*, fopAc_ac_c*); - /* 8024C514 */ void event002(mesg_flow_node_event*, fopAc_ac_c*); - /* 8024C550 */ void event003(mesg_flow_node_event*, fopAc_ac_c*); - /* 8024C590 */ void event004(mesg_flow_node_event*, fopAc_ac_c*); + /* 8024C3FC */ int event000(mesg_flow_node_event*, fopAc_ac_c*); + /* 8024C488 */ int event001(mesg_flow_node_event*, fopAc_ac_c*); + /* 8024C514 */ int event002(mesg_flow_node_event*, fopAc_ac_c*); + /* 8024C550 */ int event003(mesg_flow_node_event*, fopAc_ac_c*); + /* 8024C590 */ int event004(mesg_flow_node_event*, fopAc_ac_c*); /* 8024C5F0 */ void event005(mesg_flow_node_event*, fopAc_ac_c*); /* 8024C654 */ void event006(mesg_flow_node_event*, fopAc_ac_c*); /* 8024C694 */ void event007(mesg_flow_node_event*, fopAc_ac_c*); diff --git a/include/d/pane/d_pane_class.h b/include/d/pane/d_pane_class.h index 3a02e0bed0..8a0cc7c06e 100644 --- a/include/d/pane/d_pane_class.h +++ b/include/d/pane/d_pane_class.h @@ -1,6 +1,50 @@ #ifndef D_PANE_D_PANE_CLASS_H #define D_PANE_D_PANE_CLASS_H +#include "d/pane/d_pane_class_alpha.h" #include "dolphin/types.h" +class CPaneMgr : public CPaneMgrAlpha { +public: + /* 80253A18 */ virtual ~CPaneMgr(); + /* 80253AB4 */ virtual void setAlpha(u8); + + /* 80253984 */ CPaneMgr(J2DScreen*, u64, u8, JKRExpHeap*); + /* 80253930 */ CPaneMgr(); + /* 80253B2C */ void reinit(); + /* 80253C08 */ void initiate(J2DPane*, JKRExpHeap*); + /* 80254018 */ void childPaneGetSize(J2DPane*); + /* 80254134 */ void childPaneSetSize(J2DPane*, f32, f32); + /* 802542E8 */ void getGlobalPosX(); + /* 80254364 */ void getGlobalPosY(); + /* 80254458 */ void setBlackWhite(JUtility::TColor, JUtility::TColor); + /* 802545B0 */ void paneTrans(f32, f32); + /* 80254638 */ void paneScale(f32, f32); + /* 802547CC */ void scaleAnime(s16, f32, f32, u8); + /* 802548BC */ void colorAnime(s16, JUtility::TColor, JUtility::TColor, JUtility::TColor, + JUtility::TColor, u8); + /* 80254C90 */ void getGlobalVtx(J2DPane*, f32 (*)[3][4], u8, bool, s16); + /* 80254EBC */ void getGlobalVtxCenter(J2DPane*, bool, s16); + /* 80254FB8 */ void getBounds(J2DPane*); + +private: + /* 0x1C */ void* field_0x1c; + /* 0x20 */ void* field_0x20; + /* 0x24 */ JGeometry::TVec2<f32> mInitPos; + /* 0x2C */ JGeometry::TVec2<f32> mGlobalPos; + /* 0x34 */ JGeometry::TVec2<f32> mInitSize; + /* 0x3C */ JGeometry::TVec2<f32> mInitScale; + /* 0x44 */ JGeometry::TVec2<f32> field_0x44; + /* 0x4C */ f32 field_0x4c; + /* 0x50 */ JGeometry::TVec2<f32> field_0x50; + /* 0x58 */ JUtility::TColor mInitWhite; + /* 0x5C */ JUtility::TColor mInitBlack; + /* 0x60 */ s16 field_0x60; + /* 0x62 */ s16 field_0x62; + /* 0x64 */ s16 mScaleAnime; + /* 0x66 */ s16 field_0x66; + /* 0x68 */ s16 field_0x68; + /* 0x6A */ s16 mColorAnime; +}; + #endif /* D_PANE_D_PANE_CLASS_H */ diff --git a/include/d/pane/d_pane_class_alpha.h b/include/d/pane/d_pane_class_alpha.h index ae3f3d7ca5..6fcadd7b2b 100644 --- a/include/d/pane/d_pane_class_alpha.h +++ b/include/d/pane/d_pane_class_alpha.h @@ -1,6 +1,49 @@ #ifndef D_PANE_D_PANE_CLASS_ALPHA_H #define D_PANE_D_PANE_CLASS_ALPHA_H +#include "JSystem/J2DGraph/J2DScreen.h" +#include "JSystem/JKernel/JKRExpHeap.h" #include "dolphin/types.h" +struct CPaneMgrAlphaMorf { + /* 80255C68 */ CPaneMgrAlphaMorf(J2DScreen*, u64, u8, JKRExpHeap*); + /* 80255CAC */ ~CPaneMgrAlphaMorf(); + /* 80255D48 */ void initiateAlphaMorf(); + /* 80255DD0 */ void setBackupAlpha(); + /* 80255E28 */ void setAlphaMorfRate(f32); + /* 80255E98 */ void childPaneBackupAlpha(J2DPane*); + /* 80255F28 */ void childPaneSetAlphaMorf(J2DPane*, f32); +}; + +class CPaneMgrAlpha { +public: + /* 8025546C */ virtual ~CPaneMgrAlpha(); + /* 80255758 */ virtual void setAlpha(u8); + + /* 802553EC */ CPaneMgrAlpha(); + /* 802553FC */ CPaneMgrAlpha(J2DScreen*, u64, u8, JKRExpHeap*); + /* 802554E0 */ void initiateAlpha(J2DPane*, JKRExpHeap*); + /* 802555C8 */ void show(); + /* 80255608 */ void hide(); + /* 8025564C */ void isVisible(); + /* 80255658 */ void rateCalc(s16, s16, u8); + /* 802557D0 */ void setAlphaRate(f32); + /* 80255828 */ void getAlphaRate(); + /* 80255878 */ void alphaAnime(s16, u8, u8, u8); + /* 80255964 */ void alphaAnimeLoop(s16, u8, u8, u8); + /* 80255A60 */ void childPaneCount(J2DPane*); + /* 80255ACC */ void childPaneGetAlpha(J2DPane*); + /* 80255B5C */ void childPaneSetAlpha(J2DPane*, u8); + +private: + /* 0x04 */ J2DPane* mPanePtr; + /* 0x08 */ JKRHeap* heap; + /* 0x0C */ void* field_0x0c; + /* 0x10 */ int field_0x10; + /* 0x14 */ s16 mChildPaneCount; + /* 0x16 */ s16 mAlphaTimer; + /* 0x18 */ u8 mInitAlpha; + /* 0x19 */ u8 mFlags; +}; + #endif /* D_PANE_D_PANE_CLASS_ALPHA_H */ diff --git a/include/d/save/d_save.h b/include/d/save/d_save.h index e6cfc1e681..cf0cdeef5d 100644 --- a/include/d/save/d_save.h +++ b/include/d/save/d_save.h @@ -22,310 +22,335 @@ #define ITEM_ZONE_MAX 0x20 #define ITEM_ONE_ZONE_MAX 0x10 -enum Wallets { WALLET, BIG_WALLET, GIANT_WALLET }; +enum Wallets { + /* 0x0 */ WALLET, + /* 0x1 */ BIG_WALLET, + /* 0x2 */ GIANT_WALLET +}; enum ItemSlots { - SLOT_0, - SLOT_1, - SLOT_2, - SLOT_3, - SLOT_4, - SLOT_5, - SLOT_6, - SLOT_7, - SLOT_8, - SLOT_9, - SLOT_10, - SLOT_11, - SLOT_12, - SLOT_13, - SLOT_14, - SLOT_15, - SLOT_16, - SLOT_17, - SLOT_18, - SLOT_19, - SLOT_20, - SLOT_21, - SLOT_22, - SLOT_23 + /* 0x00 */ SLOT_0, + /* 0x01 */ SLOT_1, + /* 0x02 */ SLOT_2, + /* 0x03 */ SLOT_3, + /* 0x04 */ SLOT_4, + /* 0x05 */ SLOT_5, + /* 0x06 */ SLOT_6, + /* 0x07 */ SLOT_7, + /* 0x08 */ SLOT_8, + /* 0x09 */ SLOT_9, + /* 0x0A */ SLOT_10, + /* 0x0B */ SLOT_11, + /* 0x0C */ SLOT_12, + /* 0x0D */ SLOT_13, + /* 0x0E */ SLOT_14, + /* 0x0F */ SLOT_15, + /* 0x10 */ SLOT_16, + /* 0x11 */ SLOT_17, + /* 0x12 */ SLOT_18, + /* 0x13 */ SLOT_19, + /* 0x14 */ SLOT_20, + /* 0x15 */ SLOT_21, + /* 0x16 */ SLOT_22, + /* 0x17 */ SLOT_23 }; enum ItemTable { - HEART, - GREEN_RUPEE, - BLUE_RUPEE, - YELLOW_RUPEE, - RED_RUPEE, - PURPLE_RUPEE, - ORANGE_RUPEE, - SILVER_RUPEE, - S_MAGIC, - L_MAGIC, - BOMB_5, - BOMB_10, - BOMB_20, - BOMB_30, - ARROW_10, - ARROW_20, - ARROW_30, - ARROW_1, - PACHINKO_SHOT, - noentry1, - noentry2, - noentry3, - WATER_BOMB_5, - WATER_BOMB_10, - WATER_BOMB_20, - WATER_BOMB_30, - BOMB_INSECT_5, - BOMB_INSECT_10, - BOMB_INSECT_20, - BOMB_INSECT_30, - RECOVERY_FAILY, - TRIPLE_HEART, - SMALL_KEY, - KAKERA_HEART, - UTAWA_HEART, - MAP, - COMPUS, - DUNGEON_EXIT, - BOSS_KEY, - DUNGEON_BACK, - SWORD, - MASTER_SWORD, - WOOD_SHIELD, - SHIELD, - HYLIA_SHIELD, - TKS_LETTER, - WEARS_CASUAL, - WEAR_KOKIRI, - ARMOR, - WEAR_ZORA, - MAGIC_LV1, - DUNGEON_EXIT_2, - WALLET_LV1, - WALLET_LV2, - WALLET_LV3, - noentry4, - noentry5, - noentry6, - noentry7, - noentry8, - noentry9, - ZORAS_JEWEL, - HAWK_EYE, - WOOD_STICK, - BOOMERANG, - SPINNER, - IRONBALL, - BOW, - HOOKSHOT, - HVY_BOOTS, - COPY_ROD, - W_HOOKSHOT, - KANTERA, - LIGHT_SWORD, - FISHING_ROD_1, - PACHINKO, - COPY_ROD_2, - noentry10, - noentry11, - BOMB_BAG_LV2, - BOMB_BAG_LV1, - BOMB_IN_BAG, - noentry12, - LIGHT_ARROW, - ARROW_LV1, - ARROW_LV2, - ARROW_LV3, - noentry13, - LURE_ROD, - BOMB_ARROW, - HAWK_ARROW, - BEE_ROD, - JEWEL_ROD, - WORM_ROD, - JEWEL_BEE_ROD, - JEWEL_WORM_ROD, - EMPTY_BOTTLE, - RED_BOTTLE, - GREEN_BOTTLE, - BLUE_BOTTLE, - MILK_BOTTLE, - HALF_MILK_BOTTLE, - OIL_BOTTLE, - WATER_BOTTLE, - OIL_BOTTLE_2, - RED_BOTTLE_2, - UGLY_SOUP, - HOT_SPRING, - FAIRY, - HOT_SPRING_2, - OIL2, - OIL, - NORMAL_BOMB, - WATER_BOMB, - POKE_BOMB, - FAIRY_DROP, - WORM, - DROP_BOTTLE, - BEE_CHILD, - CHUCHU_RARE, - CHUCHU_RED, - CHUCHU_BLUE, - CHUCHU_GREEN, - CHUCHU_YELLOW, - CHUCHU_PURPLE, - LV1_SOUP, - LV2_SOUP, - LV3_SOUP, - LETTER, - BILL, - WOOD_STATUE, - IRIAS_PENDANT, - HORSE_FLUTE, - noentry14, - noentry15, - noentry16, - noentry17, - noentry18, - noentry19, - noentry20, - noentry21, - noentry22, - noentry23, - noentry24, - RAFRELS_MEMO, - ASHS_SCRIBBLING, - noentry25, - noentry26, - noentry27, - noentry28, - noentry29, - noentry30, - noentry31, - noentry32, - noentry33, - noentry34, - CHUCHU_YELLOW2, - OIL_BOTTLE3, - SHOP_BEE_CHILD, - CHUCHU_BLACK, - LIGHT_DROP, - DROP_CONTAINER, - DROP_CONTAINER02, - DROP_CONTAINER03, - FILLED_CONTAINER, - MIRROR_PIECE_2, - MIRROR_PIECE_3, - MIRROR_PIECE_4, - noentry35, - noentry36, - noentry37, - noentry38, - noentry39, - noentry40, - noentry41, - noentry42, - SMELL_YELIA_POUCH, - SMELL_PUMPKIN, - SMELL_POH, - SMELL_FISH, - SMELL_CHILDREN, - SMELL_MEDICINE, - noentry43, - noentry44, - noentry45, - noentry46, - noentry47, - noentry48, - noentry49, - noentry50, - noentry51, - noentry52, - M_BEETLE, - F_BEETLE, - M_BUTTERFLY, - F_BUTTERFLY, - M_STAG_BEETLE, - F_STAG_BEETLE, - M_GRASSHOPPER, - F_GRASSHOPPER, - M_NANAFUSHI, - F_NANAFUSHI, - M_DANGOMUSHI, - F_DANGOMUSHI, - M_MANTIS, - F_MANTIS, - M_LADYBUG, - F_LADYBUG, - M_SNAIL, - F_SNAIL, - M_DRAGONFLY, - F_DRAGONFLY, - M_ANT, - F_ANT, - M_MAYFLY, - F_MAYFLY, - noentry53, - noentry54, - noentry55, - noentry56, - noentry57, - noentry58, - noentry59, - noentry60, - POU_SPIRIT, - noentry61, - noentry62, - noentry63, - noentry64, - noentry65, - noentry66, - noentry67, - noentry68, - ANCIENT_DOCUMENT, - AIR_LETTER, - ANCIENT_DOCUMENT2, - LV7_DUNGEON_EXIT, - LINKS_SAVINGS, - SMALL_KEY2, - POU_FIRE1, - POU_FIRE2, - POU_FIRE3, - POU_FIRE4, - BOSSRIDER_KEY, - TOMATO_PUREE, - TASTE, - LV5_BOSS_KEY, - SURFBOARD, - KANTERA2, - L2_KEY_PIECES1, - L2_KEY_PIECES2, - L2_KEY_PIECES3, - KEY_OF_CARAVAN, - LV2_BOSS_KEY, - KEY_OF_FILONE, - NO_ITEM + /* 0x00 */ HEART, + /* 0x01 */ GREEN_RUPEE, + /* 0x02 */ BLUE_RUPEE, + /* 0x03 */ YELLOW_RUPEE, + /* 0x04 */ RED_RUPEE, + /* 0x05 */ PURPLE_RUPEE, + /* 0x06 */ ORANGE_RUPEE, + /* 0x07 */ SILVER_RUPEE, + /* 0x08 */ S_MAGIC, + /* 0x09 */ L_MAGIC, + /* 0x0A */ BOMB_5, + /* 0x0B */ BOMB_10, + /* 0x0C */ BOMB_20, + /* 0x0D */ BOMB_30, + /* 0x0E */ ARROW_10, + /* 0x0F */ ARROW_20, + /* 0x10 */ ARROW_30, + /* 0x11 */ ARROW_1, + /* 0x12 */ PACHINKO_SHOT, + /* 0x13 */ noentry1, + /* 0x14 */ noentry2, + /* 0x15 */ noentry3, + /* 0x16 */ WATER_BOMB_5, + /* 0x17 */ WATER_BOMB_10, + /* 0x18 */ WATER_BOMB_20, + /* 0x19 */ WATER_BOMB_30, + /* 0x1A */ BOMB_INSECT_5, + /* 0x1B */ BOMB_INSECT_10, + /* 0x1C */ BOMB_INSECT_20, + /* 0x1D */ BOMB_INSECT_30, + /* 0x1E */ RECOVERY_FAILY, + /* 0x1F */ TRIPLE_HEART, + /* 0x20 */ SMALL_KEY, + /* 0x21 */ KAKERA_HEART, + /* 0x22 */ UTAWA_HEART, + /* 0x23 */ MAP, + /* 0x24 */ COMPUS, + /* 0x25 */ DUNGEON_EXIT, + /* 0x26 */ BOSS_KEY, + /* 0x27 */ DUNGEON_BACK, + /* 0x28 */ SWORD, + /* 0x29 */ MASTER_SWORD, + /* 0x2A */ WOOD_SHIELD, + /* 0x2B */ SHIELD, + /* 0x2C */ HYLIA_SHIELD, + /* 0x2D */ TKS_LETTER, + /* 0x2E */ WEARS_CASUAL, + /* 0x2F */ WEAR_KOKIRI, + /* 0x30 */ ARMOR, + /* 0x31 */ WEAR_ZORA, + /* 0x32 */ MAGIC_LV1, + /* 0x33 */ DUNGEON_EXIT_2, + /* 0x34 */ WALLET_LV1, + /* 0x35 */ WALLET_LV2, + /* 0x36 */ WALLET_LV3, + /* 0x37 */ noentry4, + /* 0x38 */ noentry5, + /* 0x39 */ noentry6, + /* 0x3A */ noentry7, + /* 0x3B */ noentry8, + /* 0x3C */ noentry9, + /* 0x3D */ ZORAS_JEWEL, + /* 0x3E */ HAWK_EYE, + /* 0x3F */ WOOD_STICK, + /* 0x40 */ BOOMERANG, + /* 0x41 */ SPINNER, + /* 0x42 */ IRONBALL, + /* 0x43 */ BOW, + /* 0x44 */ HOOKSHOT, + /* 0x45 */ HVY_BOOTS, + /* 0x46 */ COPY_ROD, + /* 0x47 */ W_HOOKSHOT, + /* 0x48 */ KANTERA, + /* 0x49 */ LIGHT_SWORD, + /* 0x4A */ FISHING_ROD_1, + /* 0x4B */ PACHINKO, + /* 0x4C */ COPY_ROD_2, + /* 0x4D */ noentry10, + /* 0x4E */ noentry11, + /* 0x4F */ BOMB_BAG_LV2, + /* 0x50 */ BOMB_BAG_LV1, + /* 0x51 */ BOMB_IN_BAG, + /* 0x52 */ noentry12, + /* 0x53 */ LIGHT_ARROW, + /* 0x54 */ ARROW_LV1, + /* 0x55 */ ARROW_LV2, + /* 0x56 */ ARROW_LV3, + /* 0x57 */ noentry13, + /* 0x58 */ LURE_ROD, + /* 0x59 */ BOMB_ARROW, + /* 0x5A */ HAWK_ARROW, + /* 0x5B */ BEE_ROD, + /* 0x5C */ JEWEL_ROD, + /* 0x5D */ WORM_ROD, + /* 0x5E */ JEWEL_BEE_ROD, + /* 0x5F */ JEWEL_WORM_ROD, + /* 0x60 */ EMPTY_BOTTLE, + /* 0x61 */ RED_BOTTLE, + /* 0x62 */ GREEN_BOTTLE, + /* 0x63 */ BLUE_BOTTLE, + /* 0x64 */ MILK_BOTTLE, + /* 0x65 */ HALF_MILK_BOTTLE, + /* 0x66 */ OIL_BOTTLE, + /* 0x67 */ WATER_BOTTLE, + /* 0x68 */ OIL_BOTTLE_2, + /* 0x69 */ RED_BOTTLE_2, + /* 0x6A */ UGLY_SOUP, + /* 0x6B */ HOT_SPRING, + /* 0x6C */ FAIRY, + /* 0x6D */ HOT_SPRING_2, + /* 0x6E */ OIL2, + /* 0x6F */ OIL, + /* 0x70 */ NORMAL_BOMB, + /* 0x71 */ WATER_BOMB, + /* 0x72 */ POKE_BOMB, + /* 0x73 */ FAIRY_DROP, + /* 0x74 */ WORM, + /* 0x75 */ DROP_BOTTLE, + /* 0x76 */ BEE_CHILD, + /* 0x77 */ CHUCHU_RARE, + /* 0x78 */ CHUCHU_RED, + /* 0x79 */ CHUCHU_BLUE, + /* 0x7A */ CHUCHU_GREEN, + /* 0x7B */ CHUCHU_YELLOW, + /* 0x7C */ CHUCHU_PURPLE, + /* 0x7D */ LV1_SOUP, + /* 0x7E */ LV2_SOUP, + /* 0x7F */ LV3_SOUP, + /* 0x80 */ LETTER, + /* 0x81 */ BILL, + /* 0x82 */ WOOD_STATUE, + /* 0x83 */ IRIAS_PENDANT, + /* 0x84 */ HORSE_FLUTE, + /* 0x85 */ noentry14, + /* 0x86 */ noentry15, + /* 0x87 */ noentry16, + /* 0x88 */ noentry17, + /* 0x89 */ noentry18, + /* 0x8A */ noentry19, + /* 0x8B */ noentry20, + /* 0x8C */ noentry21, + /* 0x8D */ noentry22, + /* 0x8E */ noentry23, + /* 0x8F */ noentry24, + /* 0x90 */ RAFRELS_MEMO, + /* 0x91 */ ASHS_SCRIBBLING, + /* 0x92 */ noentry25, + /* 0x93 */ noentry26, + /* 0x94 */ noentry27, + /* 0x95 */ noentry28, + /* 0x96 */ noentry29, + /* 0x97 */ noentry30, + /* 0x98 */ noentry31, + /* 0x99 */ noentry32, + /* 0x9A */ noentry33, + /* 0x9B */ noentry34, + /* 0x9C */ CHUCHU_YELLOW2, + /* 0x9D */ OIL_BOTTLE3, + /* 0x9E */ SHOP_BEE_CHILD, + /* 0x9F */ CHUCHU_BLACK, + /* 0xA0 */ LIGHT_DROP, + /* 0xA1 */ DROP_CONTAINER, + /* 0xA2 */ DROP_CONTAINER02, + /* 0xA3 */ DROP_CONTAINER03, + /* 0xA4 */ FILLED_CONTAINER, + /* 0xA5 */ MIRROR_PIECE_2, + /* 0xA6 */ MIRROR_PIECE_3, + /* 0xA7 */ MIRROR_PIECE_4, + /* 0xA8 */ noentry35, + /* 0xA9 */ noentry36, + /* 0xAA */ noentry37, + /* 0xAB */ noentry38, + /* 0xAC */ noentry39, + /* 0xAD */ noentry40, + /* 0xAE */ noentry41, + /* 0xAF */ noentry42, + /* 0xB0 */ SMELL_YELIA_POUCH, + /* 0xB1 */ SMELL_PUMPKIN, + /* 0xB2 */ SMELL_POH, + /* 0xB3 */ SMELL_FISH, + /* 0xB4 */ SMELL_CHILDREN, + /* 0xB5 */ SMELL_MEDICINE, + /* 0xB6 */ noentry43, + /* 0xB7 */ noentry44, + /* 0xB8 */ noentry45, + /* 0xB9 */ noentry46, + /* 0xBA */ noentry47, + /* 0xBB */ noentry48, + /* 0xBC */ noentry49, + /* 0xBD */ noentry50, + /* 0xBE */ noentry51, + /* 0xBF */ noentry52, + /* 0xC0 */ M_BEETLE, + /* 0xC1 */ F_BEETLE, + /* 0xC2 */ M_BUTTERFLY, + /* 0xC3 */ F_BUTTERFLY, + /* 0xC4 */ M_STAG_BEETLE, + /* 0xC5 */ F_STAG_BEETLE, + /* 0xC6 */ M_GRASSHOPPER, + /* 0xC7 */ F_GRASSHOPPER, + /* 0xC8 */ M_NANAFUSHI, + /* 0xC9 */ F_NANAFUSHI, + /* 0xCA */ M_DANGOMUSHI, + /* 0xCB */ F_DANGOMUSHI, + /* 0xCC */ M_MANTIS, + /* 0xCD */ F_MANTIS, + /* 0xCE */ M_LADYBUG, + /* 0xCF */ F_LADYBUG, + /* 0xD0 */ M_SNAIL, + /* 0xD1 */ F_SNAIL, + /* 0xD2 */ M_DRAGONFLY, + /* 0xD3 */ F_DRAGONFLY, + /* 0xD4 */ M_ANT, + /* 0xD5 */ F_ANT, + /* 0xD6 */ M_MAYFLY, + /* 0xD7 */ F_MAYFLY, + /* 0xD8 */ noentry53, + /* 0xD9 */ noentry54, + /* 0xDA */ noentry55, + /* 0xDB */ noentry56, + /* 0xDC */ noentry57, + /* 0xDD */ noentry58, + /* 0xDE */ noentry59, + /* 0xDF */ noentry60, + /* 0xE0 */ POU_SPIRIT, + /* 0xE1 */ noentry61, + /* 0xE2 */ noentry62, + /* 0xE3 */ noentry63, + /* 0xE4 */ noentry64, + /* 0xE5 */ noentry65, + /* 0xE6 */ noentry66, + /* 0xE7 */ noentry67, + /* 0xE8 */ noentry68, + /* 0xE9 */ ANCIENT_DOCUMENT, + /* 0xEA */ AIR_LETTER, + /* 0xEB */ ANCIENT_DOCUMENT2, + /* 0xEC */ LV7_DUNGEON_EXIT, + /* 0xED */ LINKS_SAVINGS, + /* 0xEE */ SMALL_KEY2, + /* 0xEF */ POU_FIRE1, + /* 0xF0 */ POU_FIRE2, + /* 0xF1 */ POU_FIRE3, + /* 0xF2 */ POU_FIRE4, + /* 0xF3 */ BOSSRIDER_KEY, + /* 0xF4 */ TOMATO_PUREE, + /* 0xF5 */ TASTE, + /* 0xF6 */ LV5_BOSS_KEY, + /* 0xF7 */ SURFBOARD, + /* 0xF8 */ KANTERA2, + /* 0xF9 */ L2_KEY_PIECES1, + /* 0xFA */ L2_KEY_PIECES2, + /* 0xFB */ L2_KEY_PIECES3, + /* 0xFC */ KEY_OF_CARAVAN, + /* 0xFD */ LV2_BOSS_KEY, + /* 0xFE */ KEY_OF_FILONE, + /* 0xFF */ NO_ITEM }; -enum CollectItem { COLLECT_CLOTHING, COLLECT_SWORD, COLLECT_SHIELD, COLLECT_SMELL, B_BUTTON_ITEM }; +enum CollectItem { + /* 0x0 */ COLLECT_CLOTHING, + /* 0x1 */ COLLECT_SWORD, + /* 0x2 */ COLLECT_SHIELD, + /* 0x3 */ COLLECT_SMELL, + /* 0x4 */ B_BUTTON_ITEM +}; enum Swords { - COLLECT_ORDON_SWORD, - COLLECT_MASTER_SWORD, - COLLECT_WOODEN_SWORD, - COLLECT_LIGHT_SWORD + /* 0x0 */ COLLECT_ORDON_SWORD, + /* 0x1 */ COLLECT_MASTER_SWORD, + /* 0x2 */ COLLECT_WOODEN_SWORD, + /* 0x3 */ COLLECT_LIGHT_SWORD }; -enum Shields { COLLECT_WOODEN_SHIELD, COLLECT_ORDON_SHIELD, COLLECT_HYLIAN_SHIELD }; +enum Shields { + /* 0x0 */ COLLECT_WOODEN_SHIELD, + /* 0x1 */ COLLECT_ORDON_SHIELD, + /* 0x2 */ COLLECT_HYLIAN_SHIELD +}; -enum Armors { KOKIRI_CLOTHES_FLAG }; +enum Clothes { + /* 0x0 */ KOKIRI_CLOTHES_FLAG +}; -enum LightDropStages { FARON_VESSEL, ELDIN_VESSEL, LANAYRU_VESSEL }; +enum LightDropStages { + /* 0x0 */ FARON_VESSEL, + /* 0x1 */ ELDIN_VESSEL, + /* 0x2 */ LANAYRU_VESSEL +}; -enum ItemMax { ARROW_MAX, NORMAL_BOMB_MAX, WATER_BOMB_MAX, POKE_BOMB_MAX = 6 }; +enum ItemMax { + /* 0x0 */ ARROW_MAX, + /* 0x1 */ NORMAL_BOMB_MAX, + /* 0x2 */ WATER_BOMB_MAX, + /* 0x6 */ POKE_BOMB_MAX = 6 +}; class dSv_player_status_a_c { public: @@ -451,6 +476,7 @@ public: s16 getAngleY() { return mAngleY; } s8 getRoomNo() { return mRoomNo; } char getWarpAcceptStage() { return mWarpAcceptStage; } + void resetWarpAcceptStage() { mWarpAcceptStage = -1; } private: /* 0x00 */ cXyz mPos; @@ -514,6 +540,7 @@ public: u8 addBottleNum(u8, s16); u8 getBottleNum(u8) const; + u8 getArrowNum() const { return mArrowNum; } void setArrowNum(u8 amount) { mArrowNum = amount; } u8 getPachinkoNum() const { return mPachinkoNum; } void setPachinkoNum(u8 num) { mPachinkoNum = num; } @@ -680,6 +707,7 @@ public: dSv_light_drop_c& getLightDrop() { return mLightDrop; } dSv_player_get_item_c& getGetItem() { return mGetItem; } dSv_player_config_c& getConfig() { return mConfig; } + dSv_letter_info_c& getLetterInfo() { return mLetterInfo; } private: /* 0x000 */ dSv_player_status_a_c mPlayerStatusA; @@ -704,14 +732,14 @@ private: class dSv_memBit_c { public: enum { - MAP, - COMPASS, - BOSS_KEY, - STAGE_BOSS_ENEMY, - STAGE_LIFE, - STAGE_BOSS_DEMO, - OOCCOO_NOTE, - STAGE_BOSS_ENEMY_2 + /* 0x0 */ MAP, + /* 0x1 */ COMPASS, + /* 0x2 */ BOSS_KEY, + /* 0x3 */ STAGE_BOSS_ENEMY, + /* 0x4 */ STAGE_LIFE, + /* 0x5 */ STAGE_BOSS_DEMO, + /* 0x6 */ OOCCOO_NOTE, + /* 0x7 */ STAGE_BOSS_ENEMY_2 }; void init(); |
