d_a_npc_md 99% for demo

This commit is contained in:
LagoLunatic
2026-05-22 20:08:54 -04:00
parent 47e01ede22
commit a3e422e481
5 changed files with 66 additions and 59 deletions
+13 -13
View File
@@ -65,31 +65,31 @@ public:
void setBitStatus(u32 status) { cLib_onBit<u32>(m30F0, status); }
void clearStatus(u32 status) { cLib_offBit<u32>(m30F0, status); }
bool checkStatus(u32 status) { return cLib_checkBit<u32>(m30F0, status); }
BOOL checkStatus(u32 status) { return cLib_checkBit<u32>(m30F0, status); }
void setStatus(u32 status) { m30F0 = status; }
void clearStatus() { m30F0 = 0; }
bool checkStatusFly() { return cLib_checkBit<u32>(m30F0, daMdStts_FLY); }
BOOL checkStatusFly() { return cLib_checkBit<u32>(m30F0, daMdStts_FLY); }
void onBitCamTagIn() { cLib_onBit<u32>(m30F0, daMdStts_CAM_TAG_IN); }
void offBitCamTagIn() { cLib_offBit<u32>(m30F0, daMdStts_CAM_TAG_IN); }
bool checkStatusCamTagIn() { return cLib_checkBit<u32>(m30F0, daMdStts_CAM_TAG_IN); }
BOOL checkStatusCamTagIn() { return cLib_checkBit<u32>(m30F0, daMdStts_CAM_TAG_IN); }
void onXYTalk() { cLib_onBit<u32>(m30F0, daMdStts_XY_TALK); }
void offXYTalk() { cLib_offBit<u32>(m30F0, daMdStts_XY_TALK); }
bool isXYTalk() { return cLib_checkBit<u32>(m30F0, daMdStts_XY_TALK); }
BOOL isXYTalk() { return cLib_checkBit<u32>(m30F0, daMdStts_XY_TALK); }
void noCarryAction() { cLib_onBit<u32>(m30F0, daMdStts_CARRY_ACTION); }
void offNoCarryAction() { cLib_offBit<u32>(m30F0, daMdStts_CARRY_ACTION); }
bool isNoCarryAction() { return cLib_checkBit<u32>(m30F0, daMdStts_CARRY_ACTION); }
BOOL isNoCarryAction() { return cLib_checkBit<u32>(m30F0, daMdStts_CARRY_ACTION); }
void onShipRide() { cLib_onBit<u32>(m30F0, daMdStts_SHIP_RIDE); }
void offShipRide() { cLib_offBit<u32>(m30F0, daMdStts_SHIP_RIDE); }
bool isShipRide() { return cLib_checkBit<u32>(m30F0, daMdStts_SHIP_RIDE); }
BOOL isShipRide() { return cLib_checkBit<u32>(m30F0, daMdStts_SHIP_RIDE); }
void onLightHit() { cLib_onBit<u32>(m30F0, daMdStts_LIGHT_HIT); }
void offLightHit() { cLib_offBit<u32>(m30F0, daMdStts_LIGHT_HIT); }
bool isLightHit() { return cLib_checkBit<u32>(m30F0, daMdStts_LIGHT_HIT); }
BOOL isLightHit() { return cLib_checkBit<u32>(m30F0, daMdStts_LIGHT_HIT); }
void onLightBodyHit() { cLib_onBit<u32>(m30F0, daMdStts_LIGHT_BODY_HIT); }
void offLightBodyHit() { cLib_offBit<u32>(m30F0, daMdStts_LIGHT_BODY_HIT); }
bool isLightBodyHit() { return cLib_checkBit<u32>(m30F0, daMdStts_LIGHT_BODY_HIT); }
BOOL isLightBodyHit() { return cLib_checkBit<u32>(m30F0, daMdStts_LIGHT_BODY_HIT); }
void onDefaultTalkXY() { cLib_onBit<u32>(m30F0, daMdStts_DEFAULT_TALK_XY); }
void offDefaultTalkXY() { cLib_offBit<u32>(m30F0, daMdStts_DEFAULT_TALK_XY); }
bool isDefaultTalkXY() { return cLib_checkBit<u32>(m30F0, daMdStts_DEFAULT_TALK_XY); }
BOOL isDefaultTalkXY() { return cLib_checkBit<u32>(m30F0, daMdStts_DEFAULT_TALK_XY); }
bool isOldLightBodyHit() { return mOldLightBodyHit; }
void setOldLightBodyHit() { mOldLightBodyHit = isLightBodyHit(); }
@@ -140,10 +140,11 @@ public:
}
}
u8 checkBitHairMode(u8 bit) { return m3134 & bit; }
void setBitHairMode(u8 bit) { m3134 |= bit; }
u8 checkBitHairMode(u8 bit) { return cLib_checkBit<u8>(m3134, bit); }
void setBitHairMode(u8 bit) { cLib_onBit<u8>(m3134, bit); }
u8 getPiyo2TalkCNT() { return m313C & 0xFF; } // TODO: fakematch?
u8 getPiyo2TalkCNT() { return m313C; }
void setPiyo2TalkCNT(u8 cnt) { m313C = cnt; }
void countPiyo2TalkCNT() {
m313C++;
if (m313C >= 3) {
@@ -165,7 +166,6 @@ public:
void setTalkType(u8 type) { mType = type; }
void setBitEffectStatus(u8 bit) { cLib_onBit<u8>(m3135, bit); }
void setEffectStatus(u8 status) { m3135 = status; }
void setPiyo2TalkCNT(u8 cnt) { m313C = cnt; }
~daNpc_Md_c();
+18 -17
View File
@@ -18,13 +18,13 @@ void mDoMtx_XrotM(Mtx, s16);
void mDoMtx_YrotM(Mtx, s16);
void mDoMtx_ZrotM(Mtx, s16);
void mDoMtx_MtxToRot(CMtxP, csXyz*);
void mDoMtx_lookAt(Mtx param_0, Vec const* param_1, Vec const* param_2, s16 param_3);
void mDoMtx_lookAt(Mtx param_0, Vec const* param_1, Vec const* param_2, Vec const* param_3,
void mDoMtx_lookAt(Mtx mtx, const Vec* param_1, const Vec* param_2, s16 param_3);
void mDoMtx_lookAt(Mtx mtx, const Vec* param_1, const Vec* param_2, const Vec* param_3,
s16 param_4);
void mDoMtx_concatProjView(f32 const (*param_0)[4], f32 const (*param_1)[4], f32 (*param_2)[4]);
void mDoMtx_ZrotM(Mtx mtx, s16 z);
bool mDoMtx_inverseTranspose(f32 const (*param_0)[4], f32 (*param_1)[4]);
void mDoMtx_QuatConcat(Quaternion const* param_0, Quaternion const* param_1, Quaternion* param_2);
void mDoMtx_QuatConcat(const Quaternion* param_0, const Quaternion* param_1, Quaternion* param_2);
void mDoMtx_concat(const Mtx a, const Mtx b, Mtx c);
inline void mDoMtx_multVecSR(const Mtx m, const Vec* src, Vec* dst) {
@@ -79,16 +79,16 @@ inline void cMtx_ZrotS(Mtx mtx, s16 z) {
mDoMtx_ZrotS(mtx, z);
}
inline void cMtx_lookAt(Mtx param_0, const Vec* param_1, const Vec* param_2, s16 param_3) {
mDoMtx_lookAt(param_0, param_1, param_2, param_3);
inline void cMtx_lookAt(Mtx mtx, const Vec* param_1, const Vec* param_2, s16 param_3) {
mDoMtx_lookAt(mtx, param_1, param_2, param_3);
}
inline void cMtx_multVec(const Mtx mtx, const Vec* src, Vec* dst) {
mDoMtx_multVec(mtx, src, dst);
}
inline void cMtx_lookAt(Mtx param_0, const Vec* param_1, const Vec* param_2, const Vec* param_3, s16 param_4) {
mDoMtx_lookAt(param_0,param_1,param_2,param_3,param_4);
inline void cMtx_lookAt(Mtx mtx, const Vec* param_1, const Vec* param_2, const Vec* param_3, s16 param_4) {
mDoMtx_lookAt(mtx, param_1, param_2, param_3, param_4);
}
inline void cMtx_copy(CMtxP src, MtxP dst) {
@@ -171,13 +171,13 @@ public:
* Translates the `now` Matrix by the given cXyz
* @param xyz The xyz translation vector
*/
static inline void transS(cXyz const& xyz) { transS(xyz.x, xyz.y, xyz.z); }
static inline void transS(const cXyz& xyz) { transS(xyz.x, xyz.y, xyz.z); }
/**
* Translates a new Matrix by the given cXyz and then concatenates it with the `now` matrix
* @param xyz The xyz translation vector
*/
static inline void transM(cXyz const& xyz) { transM(xyz.x, xyz.y, xyz.z); }
static inline void transM(const cXyz& xyz) { transM(xyz.x, xyz.y, xyz.z); }
/**
* Translates a new Matrix by the given X, Y, and Z values and then concatenates it with the `now` matrix
@@ -191,13 +191,13 @@ public:
* Scales the `now` Matrix by the given cXyz
* @param xyz The xyz scale vector
*/
static void scaleS(cXyz const& xyz);
static void scaleS(const cXyz& xyz);
/**
* Scales a new Matrix by the given cXyz and then concatenates it with the `now` matrix
* @param xyz The xyz scale vector
*/
static void scaleM(cXyz const& xyz) { scaleM(xyz.x, xyz.y, xyz.z); }
static void scaleM(const cXyz& xyz) { scaleM(xyz.x, xyz.y, xyz.z); }
/**
* Scales a new Matrix by the given X, Y, and Z values and then concatenates it with the `now` matrix
@@ -207,23 +207,25 @@ public:
*/
static void scaleM(f32 x, f32 y, f32 z);
static void XYZrotS(csXyz const& xyz);
static void XYZrotS(const csXyz& xyz);
/**
* Rotates the `now` matrix by the given csXyz in the order X, Y, Z
* @param xyz The xyz rotation vector
*/
static void XYZrotM(csXyz const& xyz) { XYZrotM(xyz.x, xyz.y, xyz.z); }
static void XYZrotM(const csXyz& xyz) { XYZrotM(xyz.x, xyz.y, xyz.z); }
static void ZXYrotS(csXyz const& xyz) { ZXYrotS(xyz.x, xyz.y, xyz.z); }
static void ZXYrotS(const csXyz& xyz) { ZXYrotS(xyz.x, xyz.y, xyz.z); }
/**
* Rotates the `now` matrix by the given csXyz in the order Z, X, Y
* @param xyz The xyz rotation vector
*/
static void ZXYrotM(csXyz const& xyz) { ZXYrotM(xyz.x, xyz.y, xyz.z); }
static void ZXYrotM(const csXyz& xyz) { ZXYrotM(xyz.x, xyz.y, xyz.z); }
static void quatM(Quaternion const*);
static void quatM(const Quaternion*);
static void quatS(const Quaternion* quat) { MTXQuat(now, quat); }
/**
* Returns the `now` Matrix
@@ -352,7 +354,6 @@ public:
}
// TODO
static void quatS(const Quaternion*) {}
static void rYrotS(f32) {}
static Mtx now;