diff options
| author | LagoLunatic <LagoLunatic@users.noreply.github.com> | 2023-11-25 23:53:05 -0500 |
|---|---|---|
| committer | LagoLunatic <LagoLunatic@users.noreply.github.com> | 2023-11-25 23:53:05 -0500 |
| commit | 5039fe661cd3882d77b22dd72a2b3555aa658acd (patch) | |
| tree | 6160e28e8421a08b0559f716d802cd6bc58fa30c /include | |
| parent | 30357c1712773d6538fc597cde60f2fe15e10c86 (diff) | |
Finished porting all actor classes to headers
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/actor/d_a_bomb2.h | 2 | ||||
| -rw-r--r-- | include/d/actor/d_a_ep.h | 4 | ||||
| -rw-r--r-- | include/d/actor/d_a_kantera.h | 14 | ||||
| -rw-r--r-- | include/d/actor/d_a_mozo.h | 57 | ||||
| -rw-r--r-- | include/d/actor/d_a_nh.h | 2 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_AjavW.h | 14 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_Vteng.h | 9 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_dragonhead.h | 15 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_eayogn.h | 18 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_hfuck1.h | 17 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_hole.h | 55 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_paper.h | 57 | ||||
| -rw-r--r-- | include/d/actor/d_a_scene_change.h | 14 | ||||
| -rw-r--r-- | include/d/actor/d_a_st.h | 10 | ||||
| -rw-r--r-- | include/d/actor/d_a_swhit0.h | 2 | ||||
| -rw-r--r-- | include/d/actor/d_a_switem.h | 17 | ||||
| -rw-r--r-- | include/d/actor/d_a_swtact.h | 29 | ||||
| -rw-r--r-- | include/d/actor/d_a_tag_msg.h | 20 | ||||
| -rw-r--r-- | include/d/actor/d_a_tbox.h | 5 | ||||
| -rw-r--r-- | include/d/d_cc_d.h | 1 | ||||
| -rw-r--r-- | include/d/d_throwstone.h | 23 | ||||
| -rw-r--r-- | include/f_op/f_op_actor_mng.h | 3 |
22 files changed, 333 insertions, 55 deletions
diff --git a/include/d/actor/d_a_bomb2.h b/include/d/actor/d_a_bomb2.h index 389a33f0..804f1bcf 100644 --- a/include/d/actor/d_a_bomb2.h +++ b/include/d/actor/d_a_bomb2.h @@ -87,7 +87,7 @@ namespace daBomb2 { void set_no_hit(); bool chk_explode(); - static int solidHeapCB(fopAc_ac_c*); + static BOOL solidHeapCB(fopAc_ac_c*); bool create_heap_nut(); bool create_heap(); void crr_init(); diff --git a/include/d/actor/d_a_ep.h b/include/d/actor/d_a_ep.h index 87a1c5c8..551e9067 100644 --- a/include/d/actor/d_a_ep.h +++ b/include/d/actor/d_a_ep.h @@ -8,6 +8,10 @@ #include "JSystem/JParticle/JPAEmitter.h" #include "SSystem/SComponent/c_phase.h" +struct ep_ga_s { + +}; + class ep_class : public fopAc_ac_c { public: /* 0x290 */ request_of_phase_process_class mPhsLoad_Ep; diff --git a/include/d/actor/d_a_kantera.h b/include/d/actor/d_a_kantera.h index e26d571d..dba6d512 100644 --- a/include/d/actor/d_a_kantera.h +++ b/include/d/actor/d_a_kantera.h @@ -9,6 +9,20 @@ #include "m_Do/m_Do_ext.h" #include "SSystem/SComponent/c_phase.h" +struct mo_ga_s { + /* 0x00 */ J3DModel* mpModel; + /* 0x04 */ cXyz mPos; + /* 0x10 */ cXyz m10; + /* 0x1C */ s16 mRotX; + /* 0x1E */ s16 mRotY; + /* 0x20 */ u8 m20[0x24 - 0x20]; + /* 0x24 */ f32 mScale; + /* 0x28 */ f32 mScaleY; + /* 0x2C */ s16 m2C; + /* 0x2E */ u8 m2E; + /* 0x2F */ u8 m2F; +}; + class kantera_class : public fopAc_ac_c { public: /* 0x290 */ request_of_phase_process_class mPhs; diff --git a/include/d/actor/d_a_mozo.h b/include/d/actor/d_a_mozo.h index 4d6076d9..8c4ebf38 100644 --- a/include/d/actor/d_a_mozo.h +++ b/include/d/actor/d_a_mozo.h @@ -2,28 +2,71 @@ #define D_A_MOZO_H #include "f_op/f_op_actor.h" +#include "SSystem/SComponent/c_phase.h" +#include "m_Do/m_Do_ext.h" +#include "d/d_cc_d.h" class daMozo_c : public fopAc_ac_c { public: + typedef void(daMozo_c::*proc_t)(void); + void setProcess(void (daMozo_c::*)()) {} - void set_mtx(); + s32 _create(); + bool _delete(); + bool _draw(); + bool _execute(); void anime_proc(); - void wait_proc_init(); - void wait_proc(); + void checkRange(int); + BOOL CreateHeap(); + s32 CreateInit(); + void event_move(); + void getBeamActor(u32); void search_beam_proc_init(); void search_beam_proc(); void search_fire_proc_init(); void search_fire_proc(); void towait_proc_init(); void towait_proc(); - void checkRange(int); + void wait_proc_init(); + void wait_proc(); + void set_mtx(); void setAnm(int, float); - void getBeamActor(u32); - void event_move(); public: - /* Place member variables here */ + // TODO: add offset comments + proc_t mCurrentProc; + request_of_phase_process_class mPhs; + mDoExt_McaMorf* mAnimMorf; + mDoExt_brkAnm mBrkAnm; + J3DAnmTevRegKey* m_brk; + mDoExt_btkAnm mBtkAnm; + J3DAnmTextureSRTKey* m_btk; + // TODO: insert missing members + Quaternion mQuatRotation; + dCcD_Stts mColStatus; + dCcD_Cps mCapsuleCol; +}; + +class daMozo_HIO_c { +public: + daMozo_HIO_c(); + ~daMozo_HIO_c() {} +}; + +class daMozo_childHIO_c { +public: + ~daMozo_childHIO_c() {} +}; + +class daMozo_FireChildHIO_c { +public: + ~daMozo_FireChildHIO_c() {} +}; + +class daMozo_BeamChildHIO_c { +public: + ~daMozo_BeamChildHIO_c() {} }; #endif /* D_A_MOZO_H */ diff --git a/include/d/actor/d_a_nh.h b/include/d/actor/d_a_nh.h index 8f7d0d12..c78d3852 100644 --- a/include/d/actor/d_a_nh.h +++ b/include/d/actor/d_a_nh.h @@ -106,7 +106,7 @@ class daNh_HIO_c : public JORReflexible { public: daNh_HIO_c(); - virtual ~daNh_HIO_c(); + virtual ~daNh_HIO_c() {} public: /* 0x04 */ s8 mChildID; diff --git a/include/d/actor/d_a_obj_AjavW.h b/include/d/actor/d_a_obj_AjavW.h index 4e12bfd5..71674d1d 100644 --- a/include/d/actor/d_a_obj_AjavW.h +++ b/include/d/actor/d_a_obj_AjavW.h @@ -8,10 +8,18 @@ class daObjAjavW_c : public fopAc_ac_c { public: + s32 _create(); + bool _execute(); + bool _draw(); + bool _delete(); + bool create_heap(); + static BOOL solidHeapCB(fopAc_ac_c *i_this); + +public: /* 0x290 */ request_of_phase_process_class mPhs; - /* 0x298 */ J3DModel* mModel; - /* 0x29C */ mDoExt_btkAnm mBtk; - /* 0x2B0 */ dBgW* mBgW; + /* 0x298 */ J3DModel * mpModel; + /* 0x29C */ mDoExt_btkAnm mBtkAnm; + /* 0x2B0 */ dBgW * mpBgW; }; #endif /* D_A_OBJ_AJAVW_H */ diff --git a/include/d/actor/d_a_obj_Vteng.h b/include/d/actor/d_a_obj_Vteng.h index 94a493ef..76ce591f 100644 --- a/include/d/actor/d_a_obj_Vteng.h +++ b/include/d/actor/d_a_obj_Vteng.h @@ -9,13 +9,20 @@ class daObjVteng_c : public fopAc_ac_c { public: void init_mtx(); + s32 _create(); + bool _execute(); + bool _draw(); + bool _delete(); + bool create_heap(); + bool jokai_demo(); + static BOOL solidHeapCB(fopAc_ac_c *i_this); public: /* 0x290 */ request_of_phase_process_class mPhs; /* 0x298 */ J3DModel* mpModel; /* 0x29C */ mDoExt_McaMorf* mpMorf; /* 0x2A0 */ dBgW* mpBgW; - /* 0x2A4 */ Mtx mMtx; + /* 0x2A4 */ Mtx mtx; }; #endif /* D_A_OBJ_VTENG_H */ diff --git a/include/d/actor/d_a_obj_dragonhead.h b/include/d/actor/d_a_obj_dragonhead.h index 2c9c8cb5..293cc593 100644 --- a/include/d/actor/d_a_obj_dragonhead.h +++ b/include/d/actor/d_a_obj_dragonhead.h @@ -2,6 +2,9 @@ #define D_A_OBJ_DRAGONHEAD_H #include "f_op/f_op_actor.h" +#include "SSystem/SComponent/c_phase.h" +#include "d/d_cc_d.h" +#include "d/d_bg_w.h" class daObjDragonhead_c : public fopAc_ac_c { public: @@ -10,11 +13,21 @@ public: inline BOOL _draw(); inline BOOL _execute(); + BOOL CreateHeap(); void CreateInit(); void set_mtx(); public: - /* Place member variables here */ + /* 0x290 */ request_of_phase_process_class mPhs; + /* 0x298 */ J3DModel * mpModel; + /* 0x29C */ dCcD_Stts mStts; + /* 0x2D8 */ dCcD_Sph mSph; + /* 0x404 */ u8 mAlpha; + /* 0x405 */ bool mSwitchOn; + /* 0x408 */ dBgW * mpBgW; + /* 0x40C */ u8 field_0x40c; + /* 0x410 */ cXyz mSphCenter; + /* 0x41C */ Mtx mtx; }; #endif /* D_A_OBJ_DRAGONHEAD_H */ diff --git a/include/d/actor/d_a_obj_eayogn.h b/include/d/actor/d_a_obj_eayogn.h index e80fa4e7..5825dc7e 100644 --- a/include/d/actor/d_a_obj_eayogn.h +++ b/include/d/actor/d_a_obj_eayogn.h @@ -2,15 +2,29 @@ #define D_A_OBJ_EAYOGN_H #include "f_op/f_op_actor.h" +#include "SSystem/SComponent/c_phase.h" +#include "d/d_bg_w.h" +// #include "d/d_com_inf_game.h" class daObjEayogn_c : public fopAc_ac_c { public: - void check_ev_bit() const {} + // TODO: this function is marked as weak in the REL symbol map, but it does not get inlined for some reason? + // BOOL check_ev_bit() const { return dComIfGs_isSymbol(1); } + BOOL check_ev_bit() const; + s32 _create(); + bool _execute(); + bool _draw(); + bool _delete(); + BOOL create_heap(); + static BOOL solidHeapCB(fopAc_ac_c *i_this); void init_mtx(); + static const char M_arcname[7]; public: - /* Place member variables here */ + /* 0x290 */ J3DModel * mpModel; + /* 0x294 */ request_of_phase_process_class mPhs; + /* 0x2A0 */ dBgW * mpBgW; }; #endif /* D_A_OBJ_EAYOGN_H */ diff --git a/include/d/actor/d_a_obj_hfuck1.h b/include/d/actor/d_a_obj_hfuck1.h index ad71ada6..2dbaaaf6 100644 --- a/include/d/actor/d_a_obj_hfuck1.h +++ b/include/d/actor/d_a_obj_hfuck1.h @@ -2,13 +2,28 @@ #define D_A_OBJ_HFUCK1_H #include "f_op/f_op_actor.h" +#include "SSystem/SComponent/c_phase.h" +#include "d/d_bg_w.h" +#include "d/d_cc_d.h" class daObjHfuck1_c : public fopAc_ac_c { public: void init_mtx(); + s32 _create(); + bool _execute(); + bool _draw(); + bool _delete(); + bool create_heap(); + bool checkCollision(); + static BOOL solidHeapCB(fopAc_ac_c *i_this); public: - /* Place member variables here */ + /* 0x290 */ request_of_phase_process_class mPhs; + /* 0x298 */ J3DModel * mpModel; + /* 0x29C */ dBgW * mpBgW; + /* 0x2A0 */ dCcD_Stts mStts; + /* 0x408 */ dCcD_Sph mSph; + /* 0x40C */ fopAc_ac_c * mpHookshotActor; }; #endif /* D_A_OBJ_HFUCK1_H */ diff --git a/include/d/actor/d_a_obj_hole.h b/include/d/actor/d_a_obj_hole.h index 8ddd9149..628c0820 100644 --- a/include/d/actor/d_a_obj_hole.h +++ b/include/d/actor/d_a_obj_hole.h @@ -3,10 +3,24 @@ #include "f_op/f_op_actor.h" #include "d/d_bg_s_lin_chk.h" +#include "d/d_bg_s_acch.h" class daObj_Hole_c : public fopAc_ac_c { public: - void modeProcInit(int) {} + enum Proc_e { + PROC_INIT = 0, + PROC_EXEC = 1 + }; + + enum Mode { + MODE_WAIT = 0, + MODE_EVENT = 1, + MODE_NULL, + }; + + static const char m_arc_name[]; + + void modeProcInit(int newMode) { modeProc(PROC_INIT, newMode); } void setMtx(); void getPosAndAngle(); @@ -14,22 +28,39 @@ public: void modeWait(); void modeEventInit(); void modeEvent(); - void modeProc(daObj_Hole_c::Proc_e mode, int i_nextState); + void modeProc(Proc_e proc, int newMode); void debugDraw(); void createInit(); void getArg(); + bool _execute(); + bool _draw(); + BOOL _createHeap(); + s32 _create(); + bool _delete(); + public: - /* 0x290 */ int mState; - /* 0x294 */ u8 mbHasModel; - /* 0x295 */ u8 mSclsNum; - /* 0x296 */ s16 mScale; - /* 0x298 */ u8 m298[0x2A0 - 0x298]; - /* 0x2A0 */ J3DModel* mpModel; - /* 0x2A4 */ dBgS_LinChk mLinChk; - /* 0x310 */ u8 m310[0x338 - 0x310]; - /* 0x338 */ int m338; - /* 0x33C */ u8 m33C[0x800 - 0x33C]; + /* 0x0290 */ s32 mMode; + /* 0x0294 */ u8 mHasModel; + /* 0x0295 */ u8 mExitIdx; + /* 0x0296 */ u16 mScaleLocal; + /* 0x0298 */ request_of_phase_process_class mPhs; + /* 0x02A0 */ J3DModel* mpMdl; + /* 0x02A4 */ dBgS_ObjLinChk mLinChk; + /* 0x0310 */ dBgS_ObjAcch mAcch; + /* 0x04D4 */ dBgS_AcchCir mAcchCir; +}; + +class daObj_Hole_HIO_c { +public: + daObj_Hole_HIO_c(); + virtual ~daObj_Hole_HIO_c() {} + + /* 0x04 */ s8 m04; + /* 0x05 */ u8 m05; + /* 0x08 */ f32 m08; + /* 0x0C */ s16 m0C; + /* 0x10 */ f32 m10; }; #endif /* D_A_OBJ_HOLE_H */ diff --git a/include/d/actor/d_a_obj_paper.h b/include/d/actor/d_a_obj_paper.h index 4d37fd16..7c2cdc3c 100644 --- a/include/d/actor/d_a_obj_paper.h +++ b/include/d/actor/d_a_obj_paper.h @@ -5,24 +5,65 @@ #include "d/d_cc_d.h" #include "SSystem/SComponent/c_phase.h" #include "f_op/f_op_msg.h" +#include "d/d_a_obj.h" namespace daObjPaper { + enum Type_e { + Opaper_e, + Ppos_e, + Piwa_e, + }; + class Act_c : public fopAc_ac_c { public: - void prm_get_msgNo() const {} - void prm_get_type() const {} + enum Prm_e { + PRM_MSG_NO_W = 0x10, + PRM_MSG_NO_S = 0x00, + + PRM_TYPE_W = 0x04, + PRM_TYPE_S = 0x10, + }; + + enum Act_Mode_e { + ActMode_WAIT_e, + ActMode_TALKBEGIN_e, + ActMode_GETMSG_e, + ActMode_TALKWAIT_e, + }; + + u32 prm_get_msgNo() const { return daObj::PrmAbstract<Prm_e>(this, PRM_MSG_NO_W, PRM_MSG_NO_S); } + Type_e prm_get_type() const { return (Type_e)daObj::PrmAbstract<Prm_e>(this, PRM_TYPE_W, PRM_TYPE_S); } + + static const dCcD_SrcCyl M_cyl_src; + + static int solidHeapCB(fopAc_ac_c*); + bool create_heap(); + s32 _create(); + bool _delete(); + void mode_wait_init(); + void mode_wait(); + void mode_talk0_init(); + void mode_talk0(); + void mode_talk1_init(); + void mode_talk1(); + void mode_talk2_init(); + void mode_talk2(); + void set_mtx(); + void init_mtx(); + void damage_cc_proc(); + bool _execute(); + bool _draw(); public: /* 0x290 */ request_of_phase_process_class mPhs; /* 0x298 */ J3DModel* mpModel; - /* 0x29C */ dCcD_Cyl mCyl; - /* 0x3CC */ dCcD_Stts mStts; - /* 0x408 */ u8 mbHasCc; - /* 0x409 */ u8 m409[0x40C - 0x409]; + /* 0x29C */ dCcD_Cyl mCylinderCol; + /* 0x3CC */ dCcD_Stts mColStatus; + /* 0x408 */ bool mbHasCc; /* 0x40C */ int mMode; - /* 0x410 */ int mMsgId; + /* 0x410 */ u32 mMsgId; /* 0x414 */ msg_class* mpMsg; - /* 0x418 */ int mType; + /* 0x418 */ Type_e mType; }; }; diff --git a/include/d/actor/d_a_scene_change.h b/include/d/actor/d_a_scene_change.h index e1586bde..e3b51d97 100644 --- a/include/d/actor/d_a_scene_change.h +++ b/include/d/actor/d_a_scene_change.h @@ -5,7 +5,19 @@ class d_a_scene_change_c : public fopAc_ac_c { public: - /* Place member variables here */ + /* 0x290 */ Mtx mTransformMtx; +}; + +class daSceneChgHIO_c { +public: + daSceneChgHIO_c(); + virtual ~daSceneChgHIO_c() { + m0004 = -1; + } + + s8 m0004; + s8 m0005; + f32 m0008; }; #endif /* D_A_SCENE_CHANGE_H */ diff --git a/include/d/actor/d_a_st.h b/include/d/actor/d_a_st.h index 06b3de6f..c4d80e14 100644 --- a/include/d/actor/d_a_st.h +++ b/include/d/actor/d_a_st.h @@ -8,10 +8,18 @@ #include "m_Do/m_Do_ext.h" #include "c/c_damagereaction.h" +struct st_p { + +}; + +struct st_ke_s { + +}; + class st_class : public fopAc_ac_c { public: /* 0x02AC */ u8 m02AC[0x02B4 - 0x02AC]; - /* 0x02B4 */ daSt__BehaviorTypes mBehaviorType; + /* 0x02B4 */ u8 mBehaviorType; /* 0x02B5 */ u8 mAmbushSightRange; /* 0x02B6 */ u8 mUnusedParam; /* 0x02B7 */ u8 mAmbushSwitch; diff --git a/include/d/actor/d_a_swhit0.h b/include/d/actor/d_a_swhit0.h index d8f48681..9af1a38e 100644 --- a/include/d/actor/d_a_swhit0.h +++ b/include/d/actor/d_a_swhit0.h @@ -21,7 +21,7 @@ public: s32 getTimer(); s32 getSwNo2(); - s32 CreateHeap(); + BOOL CreateHeap(); void decisionRtType(); s32 CreateInit(); diff --git a/include/d/actor/d_a_switem.h b/include/d/actor/d_a_switem.h index d9088c02..4e05d6f3 100644 --- a/include/d/actor/d_a_switem.h +++ b/include/d/actor/d_a_switem.h @@ -3,15 +3,30 @@ #include "f_op/f_op_actor.h" #include "d/d_cc_d.h" +#include "f_op/f_op_actor_mng.h" class daSwItem_c : public fopAc_ac_c { public: + bool _delete(); + BOOL CreateInit(); + s32 _create(); + bool _execute(); + BOOL isRupeeInAllCreateTable(int); + bool _draw(); + +public: /* 0x290 */ u8 m290[0x29C - 0x290]; /* 0x29C */ dCcD_Stts mStts; /* 0x2D8 */ dCcD_Cyl mCyl; /* 0x408 */ u8 mAtTypeTrigger; - /* 0x409 */ bool m409; + /* 0x409 */ bool mSpawnedItem; /* 0x40A */ u8 m40A[0x40C - 0x40A]; }; +namespace daSwItem_prm { + inline u32 getAtType(daSwItem_c* item) { return (fopAcM_GetParam(item) >> 0x00) & 0xFF; } + inline u32 getItemTbl(daSwItem_c* item) { return (fopAcM_GetParam(item) >> 0x08) & 0x3F; } + inline u32 getItemBitNo(daSwItem_c* item) { return (fopAcM_GetParam(item) >> 0x0E) & 0x7F; } +} + #endif /* D_A_SWITEM_H */ diff --git a/include/d/actor/d_a_swtact.h b/include/d/actor/d_a_swtact.h index 7dbc6b71..0ed6af36 100644 --- a/include/d/actor/d_a_swtact.h +++ b/include/d/actor/d_a_swtact.h @@ -3,23 +3,40 @@ #include "f_op/f_op_actor.h" #include "SSystem/SComponent/c_phase.h" +#include "f_op/f_op_actor_mng.h" class daSwTact_c : public fopAc_ac_c { public: - void getR() {} + f32 getR() { return mRadius * mScale.x; } + bool _delete(); + BOOL CreateHeap(); void CreateInit(); void set_mtx(); + s32 getAnswer(); + s32 _create(); + bool _execute(); + bool _draw(); + + static const char * m_arcname; + static const f32 mDefaultR; + static const f32 mDefaultRwM; + static const u32 m_heapsize; public: /* 0x290 */ request_of_phase_process_class mPhs; - /* 0x298 */ J3DModel* mpModel; + /* 0x298 */ J3DModel * model; /* 0x29C */ f32 mRadius; - /* 0x2A0 */ u32 m2A0; + /* 0x2A0 */ u32 mSwitchNo; /* 0x2A4 */ u8 mAnswer; - /* 0x2A5 */ u8 m2A5; - /* 0x2A6 */ u8 m2A6; - /* 0x2A7 */ u8 m2A7[0x2A8 - 0x2A7]; + /* 0x2A5 */ bool mTrigger; + /* 0x2A6 */ u8 mPlayerStatus; }; +namespace daSwTact_prm { + inline u32 getSwitchNo(daSwTact_c * i_this) { return (fopAcM_GetParam(i_this) >> 0) & 0xFF; } + inline u32 getAnswer(daSwTact_c * i_this) { return (fopAcM_GetParam(i_this) >> 8) & 0xFF; } + inline u32 getModel(daSwTact_c * i_this) { return (fopAcM_GetParam(i_this) >> 16) & 0x0F; } +} + #endif /* D_A_SWTACT_H */ diff --git a/include/d/actor/d_a_tag_msg.h b/include/d/actor/d_a_tag_msg.h index faf2d143..9bc295ce 100644 --- a/include/d/actor/d_a_tag_msg.h +++ b/include/d/actor/d_a_tag_msg.h @@ -5,13 +5,29 @@ class daTag_Msg_c : public fopAc_ac_c { public: + typedef BOOL (ActionFunc)(daTag_Msg_c*); + inline s32 create(); inline BOOL draw(); inline BOOL execute(); - void setActio(unsigned char) {} + void setActio(u8 action) { mAction = action; } + + u32 getEventNo(); + u32 getSwbit(); + u32 getSwbit2(); + u32 getType2(); + const char* myDemoName(); + u16 getMessage(); + u16 getEventFlag(); + BOOL arrivalTerms(); + int rangeCheck(); + int otherCheck(); public: - /* 0x290 */ u8 m290[0x294 - 0x290]; + /* 0x290 */ u8 mAction; + /* 0x291 */ u8 field_0x291; + /* 0x292 */ u8 field_0x292; + /* 0x293 */ u8 field_0x293; }; #endif /* D_A_TAG_MSG_H */ diff --git a/include/d/actor/d_a_tbox.h b/include/d/actor/d_a_tbox.h index 796eb31b..2340fdd2 100644 --- a/include/d/actor/d_a_tbox.h +++ b/include/d/actor/d_a_tbox.h @@ -10,6 +10,7 @@ #include "d/d_particle.h" #include "d/d_bg_s_acch.h" #include "f_op/f_op_actor_mng.h" +#include "m_Do/m_Do_hostIO.h" class daTbox_c : public fopAc_ac_c { public: @@ -54,7 +55,7 @@ public: s32 getShapeType(); s32 getFuncType(); BOOL checkNormal(); - s32 CreateHeap(); + BOOL CreateHeap(); void CreateInit(); s32 boxCheck(); void lightUpProc(); @@ -120,7 +121,7 @@ public: /* 0x76C */ u8 mOpenedSwitch; }; -class daTbox_HIO_c { +class daTbox_HIO_c : public JORReflexible { public: daTbox_HIO_c(); virtual ~daTbox_HIO_c() { } diff --git a/include/d/d_cc_d.h b/include/d/d_cc_d.h index 575e0d78..e5fa723f 100644 --- a/include/d/d_cc_d.h +++ b/include/d/d_cc_d.h @@ -344,7 +344,6 @@ public: bool ChkCoHitNoActor() const { return mGObjCo.ChkRPrm(1); } bool ChkAtHitNoActor() const { return mGObjAt.ChkRPrm(2); } bool ChkTgHitNoActor() const { return mGObjTg.ChkRPrm(1); } - bool ChkTgWolfSpNoDamage() { return mGObjTg.ChkSPrm(0x800); } bool ChkAtNoHitMark() { return mGObjAt.ChkSPrm(2); } bool ChkTgNoHitMark() { return mGObjTg.ChkSPrm(4); } bool ChkTgHookShotNoHitMark() { return mGObjTg.ChkSPrm(0x400); } diff --git a/include/d/d_throwstone.h b/include/d/d_throwstone.h new file mode 100644 index 00000000..aa849726 --- /dev/null +++ b/include/d/d_throwstone.h @@ -0,0 +1,23 @@ +#ifndef D_THROWSTONE_H +#define D_THROWSTONE_H + +#include "f_op/f_op_actor.h" +#include "SSystem/SComponent/c_phase.h" + +class daThrowstone_c : public fopAc_ac_c { +public: + BOOL CreateHeap(); + inline s32 _create(); + inline BOOL _delete(); + inline BOOL _execute(); + inline bool _draw(); + + static const char M_arcname[5]; + +public: + /* 0x290 */ request_of_phase_process_class mPhs; + /* 0x298 */ J3DModel * mpModel; + /* 0x29C */ Mtx mMtx; +}; + +#endif /* D_THROWSTONE_H */ diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index bda6eff8..baa4c4ca 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -382,8 +382,6 @@ s32 fopAcM_createChildFromOffset(s16 procName, unsigned int parentProcID, u32 ac void fopAcM_DeleteHeap(fopAc_ac_c* p_actor); -s32 fopAcM_callCallback(fopAc_ac_c* p_actor, heapCallbackFunc p_callbackFunc, JKRHeap* p_heap); - bool fopAcM_entrySolidHeap(fopAc_ac_c* p_actor, heapCallbackFunc p_heapCallback, u32 size); inline void fopAcM_SetMin(fopAc_ac_c* p_actor, f32 minX, f32 minY, f32 minZ) { @@ -428,7 +426,6 @@ f32 fopAcM_searchActorDistanceXZ2(fopAc_ac_c* p_actorA, fopAc_ac_c* p_actorB); s32 fopAcM_rollPlayerCrash(fopAc_ac_c* i_this, f32 distAdjust, u32 flag); s32 fopAcM_checkCullingBox(Mtx, f32, f32, f32, f32, f32, f32); s32 fopAcM_cullingCheck(fopAc_ac_c*); -void* event_second_actor(u16); s32 fopAcM_orderTalkEvent(fopAc_ac_c*, fopAc_ac_c*); s32 fopAcM_orderSpeakEvent(fopAc_ac_c* i_actor); s32 fopAcM_orderDoorEvent(fopAc_ac_c*, fopAc_ac_c*); |
