diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/a/d_a_player.h | 7 | ||||
| -rw-r--r-- | include/d/bg/d_bg_s_movebg_actor.h | 23 | ||||
| -rw-r--r-- | include/d/com/d_com_inf_game.h | 6 | ||||
| -rw-r--r-- | include/f_op/f_op_actor.h | 21 | ||||
| -rw-r--r-- | include/f_op/f_op_actor_mng.h | 16 | ||||
| -rw-r--r-- | include/rel/d/a/d_a_spinner/d_a_spinner.h | 2 | ||||
| -rw-r--r-- | include/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h | 24 |
7 files changed, 66 insertions, 33 deletions
diff --git a/include/d/a/d_a_player.h b/include/d/a/d_a_player.h index f48e1abd10..32ec70e407 100644 --- a/include/d/a/d_a_player.h +++ b/include/d/a/d_a_player.h @@ -311,9 +311,12 @@ public: ERFLG0_UNK_2000 = 0x2000, ERFLG0_UNK_1000 = 0x1000, ERFLG0_UNK_400 = 0x400, + ERFLG0_FORCE_AUTO_JUMP = 0x200, ERFLG0_UNK_100 = 0x100, ERFLG0_UNK_80 = 0x80, ERFLG0_UNK_40 = 0x40, + ERFLG0_NOT_AUTO_JUMP = 0x20, + ERFLG0_NOT_HANG = 0x10, ERFLG0_UNK_8 = 8, ERFLG0_UNK_4 = 4, ERFLG0_UNK_2 = 2, @@ -695,6 +698,10 @@ public: bool checkSceneChangeAreaStart() const { return i_checkNoResetFlg2(FLG2_SCN_CHG_START); } bool checkFrontRollCrash() const { return i_checkResetFlg0(RFLG0_FRONT_ROLL_CRASH); } + void onForceAutoJump() { i_onEndResetFlg0(ERFLG0_FORCE_AUTO_JUMP); } + void onNotAutoJump() { i_onEndResetFlg0(ERFLG0_NOT_AUTO_JUMP); } + void onNotHang() { i_onEndResetFlg0(ERFLG0_NOT_HANG); } + void offGoronSideMove() { if (i_checkGoronSideMove()) { mSpecialMode = 0; diff --git a/include/d/bg/d_bg_s_movebg_actor.h b/include/d/bg/d_bg_s_movebg_actor.h index 2eacdec49e..3321d77db9 100644 --- a/include/d/bg/d_bg_s_movebg_actor.h +++ b/include/d/bg/d_bg_s_movebg_actor.h @@ -10,25 +10,24 @@ typedef void (*MoveBGActor_SetFunc)(dBgW*, void*, cBgS_PolyInfo const&, bool, cX csXyz*); class dBgS_MoveBgActor : public fopAc_ac_c { -private: +public: /* 0x568 */ dBgW* field_0x568; /* 0x56C */ Mtx field_0x56c; -public: /* 80078624 */ dBgS_MoveBgActor(); /* 800786C8 */ int MoveBGCreateHeap(); /* 800787BC */ int MoveBGCreate(char const*, int, MoveBGActor_SetFunc, u32, Mtx*); - /* 800788DC */ bool MoveBGDelete(); - /* 80078950 */ bool MoveBGExecute(); + /* 800788DC */ int MoveBGDelete(); + /* 80078950 */ int MoveBGExecute(); - /* 80078688 */ virtual s32 CreateHeap(); - /* 80078690 */ virtual bool Create(); - /* 80078698 */ virtual bool Execute(f32 (**)[3][4]); - /* 800786A0 */ virtual bool Draw(); - /* 800786A8 */ virtual bool Delete(); - /* 800786B0 */ virtual bool IsDelete(); - /* 800786B8 */ virtual bool ToFore(); - /* 800786C0 */ virtual bool ToBack(); + /* 80078688 */ virtual int CreateHeap(); + /* 80078690 */ virtual int Create(); + /* 80078698 */ virtual int Execute(f32 (**)[3][4]); + /* 800786A0 */ virtual int Draw(); + /* 800786A8 */ virtual int Delete(); + /* 800786B0 */ virtual int IsDelete(); + /* 800786B8 */ virtual int ToFore(); + /* 800786C0 */ virtual int ToBack(); static const char* m_name; static int m_dzb_id; diff --git a/include/d/com/d_com_inf_game.h b/include/d/com/d_com_inf_game.h index 85a7ab14a8..e520e4639b 100644 --- a/include/d/com/d_com_inf_game.h +++ b/include/d/com/d_com_inf_game.h @@ -6,6 +6,7 @@ #include "d/cc/d_cc_s.h" #include "d/d_attention.h" #include "d/d_drawlist.h" +#include "d/d_procname.h" #include "d/d_resorce.h" #include "d/d_simple_model.h" #include "d/d_stage.h" @@ -14,7 +15,6 @@ #include "d/event/d_event_manager.h" #include "d/particle/d_particle.h" #include "d/save/d_save.h" -#include "dolphin/types.h" #include "f_op/f_op_camera_mng.h" #include "f_op/f_op_scene_mng.h" @@ -790,6 +790,10 @@ inline u8 dComIfG_getBrightness() { return g_dComIfG_gameInfo.mFadeBrightness; } +inline int dComIfG_getObjctResName2Index(const char* i_arcName, const char* i_resName) { + return g_dComIfG_gameInfo.mResControl.getObjectResName2Index(i_arcName, i_resName); +} + u8 dComIfGs_getMixItemIndex(int i_no); void dComIfGs_setSelectItemIndex(int i_no, u8 item_index); void dComIfGs_setMixItemIndex(int i_no, u8 item_index); diff --git a/include/f_op/f_op_actor.h b/include/f_op/f_op_actor.h index fec05717df..a1a27fd1a7 100644 --- a/include/f_op/f_op_actor.h +++ b/include/f_op/f_op_actor.h @@ -8,17 +8,16 @@ #include "f_pc/f_pc_leaf.h" struct actor_method_class { - /* 0x00 */ process_method_class mBase; - /* 0x10 */ process_method_func mpDrawFunc; + /* 0x00 */ leafdraw_method_class base; /* 0x14 */ u8 field_0x14[0xC]; // Likely padding }; struct actor_process_profile_definition { /* 0x00 */ leaf_process_profile_definition mBase; /* 0x24 */ actor_method_class* mSubMtd; - /* 0x28 */ int field_0x28; // mStatus - /* 0x2C */ u8 field_0x2c; // mActorType - /* 0x2D */ u8 field_0x2d; // mCullType + /* 0x28 */ u32 mStatus; + /* 0x2C */ u8 mActorType; + /* 0x2D */ u8 mCullType; /* 0x2E */ u8 field_0x2e[2]; // Likely padding }; @@ -77,7 +76,7 @@ struct actor_place { /* 0x00 */ cXyz pos; /* 0x0C */ csXyz angle; - /* 0x12 */ s8 mRoomNo; + /* 0x12 */ s8 roomNo; /* 0x13 */ u8 field_0x13; }; @@ -117,7 +116,7 @@ public: /* 0x4D0 */ actor_place current; /* 0x4E4 */ csXyz shape_angle; /* 0x4EC */ cXyz mScale; - /* 0x4F8 */ cXyz mSpeed; + /* 0x4F8 */ cXyz speed; /* 0x504 */ MtxP mCullMtx; union { struct { @@ -132,7 +131,7 @@ public: /* 0x520 */ f32 mCullSizeFar; /* 0x524 */ J3DModel* field_0x524; /* 0x528 */ dJntCol_c* mJntCol; - /* 0x52C */ f32 mSpeedF; + /* 0x52C */ f32 speedF; /* 0x530 */ f32 mGravity; /* 0x534 */ f32 mMaxFallSpeed; /* 0x538 */ cXyz mEyePos; @@ -148,7 +147,7 @@ public: const cXyz& getPosition() const { return current.pos; } const csXyz& getAngle() const { return current.angle; } - s8 getRoomNo() const { return current.mRoomNo; } + s8 getRoomNo() const { return current.roomNo; } }; // Size: 0x568 STATIC_ASSERT(sizeof(fopAc_ac_c) == 0x568); @@ -156,7 +155,7 @@ STATIC_ASSERT(sizeof(fopAc_ac_c) == 0x568); class fopEn_enemy_c : public fopAc_ac_c { public: /* 80019404 */ bool initBallModel(); - /* 800194FC */ int checkBallModelDraw(); + /* 800194FC */ bool checkBallModelDraw(); /* 80019520 */ void setBallModelEffect(dKy_tevstr_c*); /* 800196A0 */ void drawBallModel(dKy_tevstr_c*); @@ -182,4 +181,6 @@ public: s32 fopAc_IsActor(void* actor); +extern actor_method_class g_fopAc_Method; + #endif diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index bfadd5f5a7..2651274405 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -105,7 +105,7 @@ struct DOUBLE_POS { }; inline s32 fopAcM_GetRoomNo(const fopAc_ac_c* pActor) { - return (s8)pActor->current.mRoomNo; + return (s8)pActor->current.roomNo; } inline u32 fopAcM_GetID(const void* pActor) { @@ -195,7 +195,7 @@ inline cXyz& fopAcM_GetOldPosition_p(fopAc_ac_c* pActor) { } inline cXyz& fopAcM_GetSpeed_p(fopAc_ac_c* pActor) { - return pActor->mSpeed; + return pActor->speed; } inline csXyz& fopAcM_GetAngle_p(fopAc_ac_c* pActor) { @@ -223,7 +223,7 @@ inline BOOL fopAcM_IsActor(void* actor) { } inline void fopAcM_SetRoomNo(fopAc_ac_c* actor, s8 roomNo) { - actor->current.mRoomNo = roomNo; + actor->current.roomNo = roomNo; } inline void fopAcM_setHookCarryNow(fopAc_ac_c* actor) { @@ -235,7 +235,7 @@ inline void fopAcM_cancelHookCarryNow(fopAc_ac_c* actor) { } inline s8 fopAcM_GetHomeRoomNo(const fopAc_ac_c* pActor) { - return pActor->orig.mRoomNo; + return pActor->orig.roomNo; } inline void fopAcM_SetGravity(fopAc_ac_c* actor, f32 gravity) { @@ -247,11 +247,11 @@ inline void fopAcM_SetMtx(fopAc_ac_c* actor, MtxP m) { } inline void fopAcM_SetSpeed(fopAc_ac_c* actor, f32 x, f32 y, f32 z) { - actor->mSpeed.set(x, y, z); + actor->speed.set(x, y, z); } inline void fopAcM_SetSpeedF(fopAc_ac_c* actor, f32 f) { - actor->mSpeedF = f; + actor->speedF = f; } inline void fopAcM_SetStatus(fopAc_ac_c* actor, u32 status) { @@ -267,7 +267,7 @@ inline BOOL fopAcM_IsExecuting(unsigned int id) { } inline f32 fopAcM_GetSpeedF(const fopAc_ac_c* p_actor) { - return p_actor->mSpeedF; + return p_actor->speedF; } inline f32 fopAcM_GetGravity(const fopAc_ac_c* p_actor) { @@ -279,7 +279,7 @@ inline f32 fopAcM_GetMaxFallSpeed(const fopAc_ac_c* p_actor) { } inline const cXyz& fopAcM_GetSpeed_p(const fopAc_ac_c* p_actor) { - return p_actor->mSpeed; + return p_actor->speed; } inline const cXyz& fopAcM_GetPosition_p(const fopAc_ac_c* p_actor) { diff --git a/include/rel/d/a/d_a_spinner/d_a_spinner.h b/include/rel/d/a/d_a_spinner/d_a_spinner.h index 383bfe5b76..2e096d5e87 100644 --- a/include/rel/d/a/d_a_spinner/d_a_spinner.h +++ b/include/rel/d/a/d_a_spinner/d_a_spinner.h @@ -43,7 +43,7 @@ public: void setMove(f32 speedF, s16 param_1) { fopAcM_SetParam(this, 1); - mSpeedF = speedF; + speedF = speedF; field_0xa7a = param_1; mCyl.OnAtSetBit(); } diff --git a/include/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h b/include/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h index e3928195c5..eafbdabf4c 100644 --- a/include/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h +++ b/include/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h @@ -1,6 +1,28 @@ #ifndef D_A_OBJ_CBOARD_H #define D_A_OBJ_CBOARD_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/com/d_com_inf_game.h" + +class daObjBoard_c : public dBgS_MoveBgActor { +public: + /* 8057B958 */ void initBaseMtx(); + /* 8057B978 */ void setBaseMtx(); + /* 8057BA78 */ int create1st(); + + /* 8057BA70 */ virtual int CreateHeap(); + /* 8057B9C8 */ virtual int Create(); + /* 8057BB74 */ virtual int Execute(Mtx**); + /* 8057BCC0 */ virtual int Draw(); + /* 8057BCC8 */ virtual int Delete(); + + u8 getNameArg() { return fopAcM_GetParamBit(this, 0, 4); } + u8 getArg0() { return fopAcM_GetParamBit(this, 4, 4); } + u8 getSwNo() { return fopAcM_GetParamBit(this, 8, 8); } + +private: + /* 0x5A0 */ request_of_phase_process_class mPhase; + /* 0x5A8 */ Mtx field_0x5a8; +}; // Size: 0x5D8 #endif /* D_A_OBJ_CBOARD_H */ |
