diff options
| author | TakaRikka <38417346+TakaRikka@users.noreply.github.com> | 2024-08-12 11:34:01 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-08-12 21:34:01 +0300 |
| commit | 2bcec113fb9e64e77c73e8beed33faf1998197a5 (patch) | |
| tree | 4ba8748474e5ee4124f3a0b0794f461cae9331e6 /include/rel | |
| parent | 2fa4bf9f51942e893d9f0a9d20d23b9b118fd48f (diff) | |
firewood/tornado/tag_camera done, obj_drop almost (#2190)
* firewood done, obj_drop mostly done
* obj_tornado done, cleanup obj_tornado2
* tag_camera done
* remove asm
* tag_msg done
Diffstat (limited to 'include/rel')
| -rw-r--r-- | include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h | 1 | ||||
| -rw-r--r-- | include/rel/d/a/e/d_a_e_ymb/d_a_e_ymb.h | 6 | ||||
| -rw-r--r-- | include/rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h | 88 | ||||
| -rw-r--r-- | include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h | 48 | ||||
| -rw-r--r-- | include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h | 16 | ||||
| -rw-r--r-- | include/rel/d/a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h | 22 | ||||
| -rw-r--r-- | include/rel/d/a/tag/d_a_tag_camera/d_a_tag_camera.h | 22 | ||||
| -rw-r--r-- | include/rel/d/a/tag/d_a_tag_msg/d_a_tag_msg.h | 50 |
8 files changed, 185 insertions, 68 deletions
diff --git a/include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h b/include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h index dd09c4a64a..17b981af1f 100644 --- a/include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h +++ b/include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h @@ -131,6 +131,7 @@ public: void setFriendFlag(u8 i_flag) { mFriendFlag |= i_flag; } u8 getFriendFlag() { return mFriendFlag; } + u8 getSwitchBit() { return mSwitchBit; } private: /* 0x5AC */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/e/d_a_e_ymb/d_a_e_ymb.h b/include/rel/d/a/e/d_a_e_ymb/d_a_e_ymb.h index e122c693b9..18a0151f18 100644 --- a/include/rel/d/a/e/d_a_e_ymb/d_a_e_ymb.h +++ b/include/rel/d/a/e/d_a_e_ymb/d_a_e_ymb.h @@ -77,9 +77,11 @@ public: /* 80820DD0 */ void create(); int getMaxLockAttack() { return 6; } + u8 getSwitchBit() { return mSwitchBit; } -private: - /* 0x5AC */ u8 field_0x5ac[0x1524 - 0x5ac]; + /* 0x5AC */ u8 field_0x5ac[0x6C0 - 0x5ac]; + /* 0x6C0 */ u8 mSwitchBit; + /* 0x6C1 */ u8 field_0x6c1[0x1524 - 0x6C1]; }; STATIC_ASSERT(sizeof(daE_YMB_c) == 0x1524); diff --git a/include/rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h b/include/rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h index 1e69c71215..97e0ef3d8b 100644 --- a/include/rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h +++ b/include/rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h @@ -2,6 +2,9 @@ #define D_A_OBJ_DROP_H #include "f_op/f_op_actor_mng.h" +#include "d/particle/d_particle.h" +#include "d/cc/d_cc_d.h" +#include "d/bg/d_bg_s_acch.h" /** * @ingroup actors-objects @@ -13,29 +16,80 @@ */ class daObjDrop_c : public fopAc_ac_c { public: - /* 80BDFD8C */ void Create(); - /* 80BDFE58 */ void create(); + enum MODE_e { + MODE_INIT_e, + MODE_PARENT_WAIT_e, + MODE_NO_PARENT_e, + MODE_WAIT_e, + }; + + enum DEMOMODE_e { + DEMOMODE_COMPLETE_WAIT_e, + DEMOMODE_ORDER_COMPLETE_DEMO_e, + DEMOMODE_COMPLETE_DEMO_e, + DEMOMODE_WAIT_COMPLETE_GET_DEMO_e, + DEMOMODE_COMPLETE_GET_DEMO_e, + }; + + /* 80BDFD8C */ int Create(); + /* 80BDFE58 */ int create(); /* 80BE0358 */ void dropGet(); - /* 80BE0430 */ void checkGetArea(); + /* 80BE0430 */ BOOL checkGetArea(); /* 80BE05DC */ void checkCompleteDemo(); /* 80BE0658 */ void createLineEffect(); /* 80BE071C */ void removeLineEffect(); /* 80BE077C */ void createBodyEffect(); /* 80BE0840 */ void removeBodyEffect(); - /* 80BE08A0 */ void modeInit(); - /* 80BE0994 */ void modeNoParent(); - /* 80BE09F4 */ void modeParentWait(); - /* 80BE0C08 */ void modeWait(); - /* 80BE1928 */ bool actionCompleteWait(); - /* 80BE1930 */ void actionOrderCompleteDemo(); - /* 80BE19D0 */ void actionCompleateDemo(); - /* 80BE1ACC */ void actionWaitCompleteGetDemo(); - /* 80BE1B5C */ void actionCompleteGetDemo(); - /* 80BE1BC4 */ void execute(); - /* 80BE1DCC */ void _delete(); - -private: - /* 0x568 */ u8 field_0x568[0xa7c - 0x568]; + /* 80BE08A0 */ int modeInit(); + /* 80BE0994 */ int modeNoParent(); + /* 80BE09F4 */ int modeParentWait(); + /* 80BE0C08 */ int modeWait(); + /* 80BE1928 */ int actionCompleteWait(); + /* 80BE1930 */ int actionOrderCompleteDemo(); + /* 80BE19D0 */ int actionCompleateDemo(); + /* 80BE1ACC */ int actionWaitCompleteGetDemo(); + /* 80BE1B5C */ int actionCompleteGetDemo(); + /* 80BE1BC4 */ int execute(); + /* 80BE1DCC */ int _delete(); + + u8 getYmSwbit() { return fopAcM_GetParamBit(this, 8, 8); } + u8 getSave() { return fopAcM_GetParamBit(this, 0, 6); } + + void setDemoMode(u8 i_mode) { mDemoMode = i_mode; } + void setMode(u8 i_mode) { mMode = i_mode; } + u8 chkDemoMode() { return mDemoMode; } + + /* 0x568 */ cXyz mLinePos[3]; + /* 0x58C */ cXyz mLineMovePos[3]; + /* 0x5B0 */ csXyz mTargetAngle[3]; + /* 0x5C2 */ s16 mTargetRelAngle[3]; + /* 0x5C8 */ u8 mLineIsCross[3]; + /* 0x5CC */ JPABaseEmitter* mpLineEffEmtrs[3]; + /* 0x5D8 */ dPa_followEcallBack mLineEffCallbacks[3]; + /* 0x614 */ JPABaseEmitter* mpBodyEffEmtrs[6]; + /* 0x62C */ dPa_followEcallBack mBodyEffCallbacks[6]; + /* 0x6A4 */ int mCounter; + /* 0x6A8 */ fpc_ProcID mPtI_Id; + /* 0x6AC */ u32 field_0x6ac; + /* 0x6B0 */ u8 mMode; + /* 0x6B1 */ s8 mModeTimer; + /* 0x6B2 */ u8 mModeAction; + /* 0x6B3 */ u8 field_0x6B3[0x6B5 - 0x6B3]; + /* 0x6B5 */ u8 mDeleteTimer; + /* 0x6B6 */ u8 mDrawInTimer; + /* 0x6B7 */ u8 field_0x6b7; + /* 0x6B8 */ u8 mAppear; + /* 0x6B9 */ u8 mSetCollectDrop; + /* 0x6BA */ u8 mDemoMode; + /* 0x6BB */ u8 mFadeoutTimer; + /* 0x6BC */ u8 field_0x6bc; + /* 0x6C0 */ Z2SoundObjSimple mSound; + /* 0x6E0 */ dBgS_AcchCir mAcchCir; + /* 0x720 */ dBgS_ObjAcch mAcch; + /* 0x8F8 */ dCcD_Stts mCcStts; + /* 0x934 */ dCcD_Sph mCcSph; + /* 0xA6C */ cXyz mTargetPos; + /* 0xA78 */ u8 field_0xa78[0xA7C - 0xA78]; }; STATIC_ASSERT(sizeof(daObjDrop_c) == 0xa7c); diff --git a/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h b/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h index 765cba224f..08048b6985 100644 --- a/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h +++ b/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h @@ -4,6 +4,7 @@ #include "d/com/d_com_inf_game.h" #include "m_Do/m_Do_hostIO.h" #include "f_op/f_op_actor_mng.h" +#include "d/cc/d_cc_d.h" /** * @ingroup actors-objects @@ -16,49 +17,40 @@ class daFireWood_c : public fopAc_ac_c { public: /* 80BE76B0 */ void setBaseMtx(); - /* 80BE7708 */ void create(); + /* 80BE7708 */ int create(); /* 80BE79A0 */ void lightInit(); /* 80BE7A14 */ void setLight(); - /* 80BE7A38 */ void Execute(); - /* 80BE7E74 */ bool Draw(); - /* 80BE7E7C */ void Delete(); + /* 80BE7A38 */ int Execute(); + /* 80BE7E74 */ int Draw(); + /* 80BE7E7C */ int Delete(); - static u8 const mCcDObjInfo[48]; - static u8 mCcDCyl[68]; + static const dCcD_SrcGObjInf mCcDObjInfo; + static dCcD_SrcCyl mCcDCyl; private: /* 0x568 */ u8 field_0x568[0x574 - 0x568]; - /* 0x574 */ dCcD_Stts mStts; - /* 0x5B0 */ dCcD_Cyl mCyl; - /* 0x6EC */ cXyz field_0x6ec; - /* 0x6F8 */ u8 field_0x6f8; - /* 0x6F9 */ u8 field_0x6f9; - /* 0x6FC */ u32 field_0x6fc[4]; - /* 0x70C */ u8 field_0x70c; - /* 0x710 */ cXyz field_0x710; + /* 0x574 */ dCcD_Stts mCcStts; + /* 0x5B0 */ dCcD_Cyl mCcCyl; + /* 0x6EC */ cXyz mFlamePos; + /* 0x6F8 */ u8 mIsSwitch; + /* 0x6F9 */ u8 mIsLit; + /* 0x6FC */ u32 mFlameEmtrIDs[4]; + /* 0x70C */ u8 mFlameType; + /* 0x710 */ cXyz mLightPos; /* 0x71C */ LIGHT_INFLUENCE mLightInfluence; - /* 0x73C */ u8 field_0x73c; + /* 0x73C */ u8 mSwWaitTime; }; STATIC_ASSERT(sizeof(daFireWood_c) == 0x740); -#ifdef NONMATCHING class daFireWood_HIO_c : public mDoHIO_entry_c { public: /* 80BE762C */ daFireWood_HIO_c(); - /* 80BE7F24 */ virtual ~daFireWood_HIO_c(); + /* 80BE7F24 */ virtual ~daFireWood_HIO_c() {} - /* 0x4 */ f32 field_0x4; - /* 0x8 */ f32 field_0x8; - /* 0xC */ u8 field_0xc; + /* 0x4 */ f32 mFlameOffsetY; + /* 0x8 */ f32 mCollisionRadius; + /* 0xC */ u8 mWaitTime; }; -#else -struct daFireWood_HIO_c { - /* 80BE762C */ daFireWood_HIO_c(); - /* 80BE7F24 */ ~daFireWood_HIO_c(); -}; -#endif - - #endif /* D_A_OBJ_FIREWOOD_H */ diff --git a/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h b/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h index b05ab911b1..51261f8664 100644 --- a/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h +++ b/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h @@ -7,7 +7,7 @@ /** * @ingroup actors-objects * @class daObjTrnd_c - * @brief Tornado + * @brief Wind Column * * @details * @@ -27,17 +27,17 @@ public: /* 80D1C298 */ int _delete(); u32 checkSE() { return fopAcM_GetParamBit(this, 8, 1); } - u32 getTimer() { return fopAcM_GetParamBit(this, 0, 8); } - u32 getSwbit() { return fopAcM_GetParamBit(this, 0x18, 8); } + u8 getTimer() { return fopAcM_GetParamBit(this, 0, 8); } + u8 getSwbit() { return fopAcM_GetParamBit(this, 0x18, 8); } private: /* 0x568 */ dCcD_Stts mStts; /* 0x5A4 */ dCcD_Cps mCps; - /* 0x6E8 */ cM3dGCpsS field_0x6e8; - /* 0x704 */ f32 field_0x704; - /* 0x708 */ Mtx field_0x708; - /* 0x738 */ s16 field_0x738; - /* 0x73C */ f32 field_0x73c; + /* 0x6E8 */ cM3dGCpsS mWindCps; + /* 0x704 */ f32 mNowLength; + /* 0x708 */ Mtx mMtx; + /* 0x738 */ s16 mTimer; + /* 0x73C */ f32 mTargetLength; /* 0x740 */ WIND_INFLUENCE mWindInfluence; /* 0x76C */ f32 mWindPower; }; diff --git a/include/rel/d/a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h b/include/rel/d/a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h index 2fbe9f7c60..379a4ad4c1 100644 --- a/include/rel/d/a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h +++ b/include/rel/d/a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h @@ -7,7 +7,7 @@ /** * @ingroup actors-objects * @class daObjTrnd2_c - * @brief Tornado 2 + * @brief Strong Wind Column * * @details * @@ -30,9 +30,9 @@ public: /* 80D1D2E0 */ int draw(); /* 80D1D2E8 */ int _delete(); - f32 getTargetLength() { return field_0x738; } - f32 getNowLength() { return field_0x704; } - Vec& getWindEndPos() { return field_0x6e8.mEnd; } + f32 getTargetLength() { return mTargetLength; } + f32 getNowLength() { return mNowLength; } + Vec& getWindEndPos() { return mWindCps.mEnd; } u32 getPower() { return fopAcM_GetParamBit(this, 8, 8); } u32 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); } u32 getSwType() { return fopAcM_GetParamBit(this, 16, 4); } @@ -42,16 +42,16 @@ public: /* 0x568 */ dCcD_Stts mStts; /* 0x5A4 */ dCcD_Cps mCps; - /* 0x6E8 */ cM3dGCpsS field_0x6e8; - /* 0x704 */ f32 field_0x704; - /* 0x708 */ Mtx field_0x708; - /* 0x738 */ f32 field_0x738; + /* 0x6E8 */ cM3dGCpsS mWindCps; + /* 0x704 */ f32 mNowLength; + /* 0x708 */ Mtx mMtx; + /* 0x738 */ f32 mTargetLength; /* 0x73C */ WIND_INFLUENCE mWindInfluence; - /* 0x768 */ f32 field_0x768; - /* 0x76C */ f32 field_0x76c; + /* 0x768 */ f32 mDefaultRadius; + /* 0x76C */ f32 mDefaultLength; /* 0x770 */ int mTimer; /* 0x774 */ f32 mWindPower; - /* 0x778 */ bool field_0x778; + /* 0x778 */ bool mColumnOn; /* 0x778 */ JPABaseEmitter* mParticles[3]; }; diff --git a/include/rel/d/a/tag/d_a_tag_camera/d_a_tag_camera.h b/include/rel/d/a/tag/d_a_tag_camera/d_a_tag_camera.h index 71609f35d6..7d9da89f08 100644 --- a/include/rel/d/a/tag/d_a_tag_camera/d_a_tag_camera.h +++ b/include/rel/d/a/tag/d_a_tag_camera/d_a_tag_camera.h @@ -1,6 +1,26 @@ #ifndef D_A_TAG_CAMERA_H #define D_A_TAG_CAMERA_H -#include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" + +class daTag_Cam_c : public fopAc_ac_c { +public: + /* 80489F14 */ u8 getSwType(); + /* 80489F20 */ u8 getPrio(); + /* 80489F2C */ u8 getSwBit(); + /* 80489F38 */ u8 getCondition(); + /* 80489F44 */ u8 getCameraId(); + /* 80489F50 */ u8 getRailID(); + /* 80489F5C */ u16 getAreaType(); + /* 80489F68 */ u16 getAreaNoChk(); + /* 80489F74 */ int execute(); + + inline int create(); + + /* 0x568 */ u8 field_0x568[0x570 - 0x568]; + /* 0x570 */ bool (*mCheckFunc)(); + /* 0x574 */ cXyz mBoundsLo; + /* 0x580 */ cXyz mBoundsHi; +}; #endif /* D_A_TAG_CAMERA_H */ diff --git a/include/rel/d/a/tag/d_a_tag_msg/d_a_tag_msg.h b/include/rel/d/a/tag/d_a_tag_msg/d_a_tag_msg.h index 7d8e651b86..ed2e94d001 100644 --- a/include/rel/d/a/tag/d_a_tag_msg/d_a_tag_msg.h +++ b/include/rel/d/a/tag/d_a_tag_msg/d_a_tag_msg.h @@ -1,6 +1,54 @@ #ifndef D_A_TAG_MSG_H #define D_A_TAG_MSG_H -#include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" +#include "d/msg/d_msg_flow.h" + +class daTag_Msg_HIO_Param_c { +public: + /* 0x0 */ u8 mDebugAdjustON; +}; + +class daTag_Msg_Param_c { +public: + /* 80490128 */ virtual ~daTag_Msg_Param_c() {} + + static const daTag_Msg_HIO_Param_c m; +}; + +class daTag_Msg_c : public fopAc_ac_c { +public: + /* 8048F7F8 */ virtual ~daTag_Msg_c(); + /* 8048F878 */ int create(); + /* 8048F954 */ int createHeap(); + /* 8048F9B4 */ int destroy(); + /* 8048F9E8 */ int execute(); + /* 8048FC68 */ int draw(); + /* 8048FC70 */ BOOL rangeCheck(); + /* 8048FE18 */ BOOL otherCheck(); + /* 8048FF8C */ char* getResName(); + /* 8048FF9C */ void getParam(); + /* 8049004C */ BOOL cut_speak(int, BOOL); + + static char* mEvtCutTBL[2]; + + /* 0x56C */ char mStaffName[8]; + /* 0x574 */ request_of_phase_process_class mPhase; + /* 0x57C */ int mFlowID; + /* 0x580 */ dMsgFlow_c mMsgFlow; + /* 0x5CC */ int mOrderEvtNum; + /* 0x5D0 */ s16 mEventIdx; + /* 0x5D2 */ u8 field_0x5D2[0x5D8 - 0x5D2]; + /* 0x5D8 */ daTag_Msg_Param_c* mParam; + /* 0x5DC */ u8 field_0x5dc; + /* 0x5DD */ u8 field_0x5dd; + /* 0x5DE */ u8 mOnSwitch; + /* 0x5DF */ u8 mOffSwitch; + /* 0x5E0 */ u16 mOnSaveLabel; + /* 0x5E2 */ u16 mOffSaveLabel; + /* 0x5E4 */ u8 field_0x5e4; +}; + +STATIC_ASSERT(sizeof(daTag_Msg_c) == 0x5E8); #endif /* D_A_TAG_MSG_H */ |
