diff options
| author | YunataSavior <58997725+YunataSavior@users.noreply.github.com> | 2026-01-11 19:49:05 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-01-11 19:49:05 -0800 |
| commit | 24c08d322e32677f804c970c68930295afeb7475 (patch) | |
| tree | bde0adda8176471e8167ae064b5412aff1992db1 /include | |
| parent | 6a59c5231fb6807c05532267927c023f6475bed9 (diff) | |
e_rd, npc_ks dbg work (#3029)
* Partial e_rd, npc_ks dbg work
* More e_rd matching
* e_rd fixes and dbg ctor matched
* obj_ita dbg equiv
* e_st dbg almost equiv
* Some obj_ladder dbg work
* dbg e_rd PR comments
* Further e_rd dbg clangd fixes
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/actor/d_a_e_rd.h | 30 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_kago.h | 6 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_ladder.h | 24 | ||||
| -rw-r--r-- | include/d/d_s_play.h | 52 | ||||
| -rw-r--r-- | include/global.h | 7 |
5 files changed, 58 insertions, 61 deletions
diff --git a/include/d/actor/d_a_e_rd.h b/include/d/actor/d_a_e_rd.h index 90b48ca3f5..90a3fec56a 100644 --- a/include/d/actor/d_a_e_rd.h +++ b/include/d/actor/d_a_e_rd.h @@ -7,6 +7,7 @@ #include "d/d_msg_flow.h" #include "d/d_path.h" #include "f_op/f_op_actor_mng.h" +#include "m_Do/m_Do_ext.h" /** * @ingroup actors-enemies @@ -45,9 +46,7 @@ public: /* 0x06A0 */ s8 field_0x6a0; /* 0x06A4 */ cXyz field_0x6a4; /* 0x06B0 */ cXyz field_0x6b0; - /* 0x06BC */ u8 field_0x6bc[0x6be - 0x6bc]; - /* 0x06BE */ s16 field_0x6be; - /* 0x06C0 */ s16 field_0x6c0; + /* 0x06BC */ csXyz field_0x6bc; /* 0x06C2 */ s8 field_0x6c2; /* 0x06C3 */ u8 field_0x6c3; /* 0x06C4 */ J3DModel* mpEyeModels[2]; @@ -101,22 +100,17 @@ public: /* 0x09CE */ s16 field_0x9ce; /* 0x09D0 */ s16 field_0x9d0; /* 0x09D4 */ cXyz field_0x9d4; - /* 0x09E0 */ u8 field_0x9e0[0x9ec - 0x9e0]; + /* 0x09E0 */ cXyz field_0x9e0; // unused, dbg offset 0xa18 /* 0x09EC */ f32 field_0x9ec; /* 0x09F0 */ f32 field_0x9f0; /* 0x09F4 */ s16 field_0x9f4; /* 0x09F6 */ s16 field_0x9f6; /* 0x09F8 */ s8 field_0x9f8; - /* 0x09F9 */ u8 field_0x9f9[0xa0c - 0x9f9]; - /* 0x0A0C */ s16 field_0xa0c; - /* 0x0A0E */ s16 field_0xa0e; - /* 0x0A10 */ u8 field_0xa10[0xa12 - 0xa10]; - /* 0x0A12 */ s16 field_0xa12; - /* 0x0A14 */ u8 field_0xa14[0xa16 - 0xa14]; - /* 0x0A16 */ s16 field_0xa16; - /* 0x0A18 */ s16 field_0xa18; - /* 0x0A1A */ u8 field_0xa1a[0xa1c - 0xa1a]; - /* 0x0A1C */ s16 field_0xa1c; + /* 0x09FC */ cXyz field_0x9fc; // unused, dbg offset 0xa34 + /* 0x0A08 */ u8 field_0xa08[0x0A0C - 0x0A08]; + /* 0x0A0C */ csXyz field_0xa0c; + /* 0x0A12 */ csXyz field_0xa12; + /* 0x0A18 */ csXyz field_0xa18; /* 0x0A1E */ s8 field_0xa1e; /* 0x0A1F */ s8 field_0xa1f; /* 0x0A20 */ u32 field_0xa20; @@ -136,12 +130,8 @@ public: /* 0x0AD2 */ s16 field_0xad2[4]; /* 0x0ADA */ s16 field_0xada; /* 0x0ADC */ s16 field_0xadc; - /* 0x0ADE */ s16 field_0xade; - /* 0x0AE0 */ s16 field_0xae0; - /* 0x0AE2 */ u8 field_0xae2[0xae4 - 0xae2]; - /* 0x0AE4 */ s16 field_0xae4; - /* 0x0AE6 */ s16 field_0xae6; - /* 0x0AE8 */ u8 field_0xae8[0xaec - 0xae8]; + /* 0x0ADE */ csXyz field_0xade; // dbg offset 0xb1c + /* 0x0AE4 */ csXyz field_0xae4; /* 0x0AEC */ f32 field_0xaec; /* 0x0AF0 */ s16 field_0xaf0; /* 0x0AF2 */ s16 field_0xaf2; diff --git a/include/d/actor/d_a_obj_kago.h b/include/d/actor/d_a_obj_kago.h index 0ffa07fd61..10806570dd 100644 --- a/include/d/actor/d_a_obj_kago.h +++ b/include/d/actor/d_a_obj_kago.h @@ -34,10 +34,10 @@ public: void setHamonPrtcl(); u8 getType() { - int iVar1 = fopAcM_GetParam(this) & 0xFF; - u8 rv; + u8 adj_arg = argument & 0x7F; + u8 iVar1 = fopAcM_GetParam(this) & 0xFF; - switch ((argument & 127)) { + switch (adj_arg) { case 0: switch (iVar1) { case 0: diff --git a/include/d/actor/d_a_obj_ladder.h b/include/d/actor/d_a_obj_ladder.h index ff3a376eaf..eb48cf0f16 100644 --- a/include/d/actor/d_a_obj_ladder.h +++ b/include/d/actor/d_a_obj_ladder.h @@ -13,6 +13,15 @@ * */ namespace daObjLadder { + enum Type_e { + TYPE_0, + TYPE_1, + TYPE_2, + TYPE_3, + TYPE_4, + TYPE_5, + }; + class Act_c : public dBgS_MoveBgActor { public: enum Prm_e { @@ -22,15 +31,6 @@ namespace daObjLadder { PRM_16 = 16, }; - enum Type_e { - TYPE_0, - TYPE_1, - TYPE_2, - TYPE_3, - TYPE_4, - TYPE_5, - }; - enum Mode { MODE_WAIT, MODE_DEMOREQ, @@ -62,15 +62,15 @@ namespace daObjLadder { int Execute(Mtx**); int Draw(); - u8 prm_get_evId() { + u8 prm_get_evId() const { return daObj::PrmAbstract(this, PRM_8, PRM_16); } - int prm_get_swSave() { + int prm_get_swSave() const { return daObj::PrmAbstract(this,PRM_8, PRM_8); } - Type_e prm_get_type() { + Type_e prm_get_type() const { return(Type_e)daObj::PrmAbstract(this,PRM_3, PRM_0); } diff --git a/include/d/d_s_play.h b/include/d/d_s_play.h index 5736f0838c..6698a628e9 100644 --- a/include/d/d_s_play.h +++ b/include/d/d_s_play.h @@ -205,107 +205,107 @@ extern dScnPly_preset_HIO_c g_presetHIO; #define tREG_S(i) g_regHIO.mChildReg[25].mShortReg[i] #else // Morita -#define TREG_F(i) (0) +#define TREG_F(i) (0.0f) #define TREG_S(i) (0) // Matsutani -#define DREG_F(i) (0) +#define DREG_F(i) (0.0f) #define DREG_S(i) (0) // Iwawaki -#define IREG_F(i) (0) +#define IREG_F(i) (0.0f) #define IREG_S(i) (0) // Sasa -#define SREG_F(i) (0) +#define SREG_F(i) (0.0f) #define SREG_S(i) (0) // Umemiya -#define UREG_F(i) (0) +#define UREG_F(i) (0.0f) #define UREG_S(i) (0) // Ogawa -#define OREG_F(i) (0) +#define OREG_F(i) (0.0f) #define OREG_S(i) (0) // Sakaguchi -#define YREG_F(i) (0) +#define YREG_F(i) (0.0f) #define YREG_S(i) (0) // Sakai -#define KREG_F(i) (0) +#define KREG_F(i) (0.0f) #define KREG_S(i) (0) // Hara -#define BREG_F(i) (0) +#define BREG_F(i) (0.0f) #define BREG_S(i) (0) // Sumiyoshi -#define MREG_F(i) (0) +#define MREG_F(i) (0.0f) #define MREG_S(i) (0) // Takeshita -#define AREG_F(i) (0) +#define AREG_F(i) (0.0f) #define AREG_S(i) (0) // Yoshida -#define PREG_F(i) (0) +#define PREG_F(i) (0.0f) #define PREG_S(i) (0) // Noma -#define NREG_F(i) (0) +#define NREG_F(i) (0.0f) #define NREG_S(i) (0) // Nishiwaki -#define WREG_F(i) (0) +#define WREG_F(i) (0.0f) #define WREG_S(i) (0) // Masaro -#define JREG_F(i) (0) +#define JREG_F(i) (0.0f) #define JREG_S(i) (0) // Hayakawa -#define HREG_F(i) (0) +#define HREG_F(i) (0.0f) #define HREG_S(i) (0) // Sadamoto -#define VREG_F(i) (0) +#define VREG_F(i) (0.0f) #define VREG_S(i) (0) // Nishikawa -#define XREG_F(i) (0) +#define XREG_F(i) (0.0f) #define XREG_S(i) (0) // Suzuki -#define ZREG_F(i) (0) +#define ZREG_F(i) (0.0f) #define ZREG_S(i) (0) // Nakanishi -#define nREG_F(i) (0) +#define nREG_F(i) (0.0f) #define nREG_S(i) (0) // Kuwajima -#define kREG_F(i) (0) +#define kREG_F(i) (0.0f) #define kREG_S(i) (0) // Okajima -#define oREG_F(i) (0) +#define oREG_F(i) (0.0f) #define oREG_S(i) (0) // Yamazaki -#define yREG_F(i) (0) +#define yREG_F(i) (0.0f) #define yREG_S(i) (0) // Ashida -#define aREG_F(i) (0) +#define aREG_F(i) (0.0f) #define aREG_S(i) (0) // Okada -#define hREG_F(i) (0) +#define hREG_F(i) (0.0f) #define hREG_S(i) (0) // Takahashi -#define tREG_F(i) (0) +#define tREG_F(i) (0.0f) #define tREG_S(i) (0) #endif diff --git a/include/global.h b/include/global.h index cf8e285c23..d9e3511b22 100644 --- a/include/global.h +++ b/include/global.h @@ -138,4 +138,11 @@ static const float INF = 2000000000.0f; #define ASM #endif +// potential fakematch? +#if PLATFORM_SHIELD + #define UNSET_FLAG(var, flag) (var) &= (u16)~(flag) +#else + #define UNSET_FLAG(var, flag) (var) &= ~(flag) +#endif + #endif |
