mirror of
https://github.com/zeldaret/tww.git
synced 2026-09-07 11:01:40 -04:00
d_a_npc_md work
This commit is contained in:
@@ -110,7 +110,7 @@ public:
|
||||
cM3dGAab const& GetWorkAab() const { return mAab; }
|
||||
|
||||
static cXyz m_virtual_center;
|
||||
};
|
||||
}; // Size: 0x20
|
||||
|
||||
STATIC_ASSERT(0x20 == sizeof(cCcD_ShapeAttr));
|
||||
|
||||
@@ -155,6 +155,9 @@ struct cCcD_SrcCpsAttr {
|
||||
|
||||
class cCcD_CpsAttr : public cCcD_ShapeAttr, public cM3dGCps {
|
||||
public:
|
||||
/* 0x00 */ /* cCcD_ShapeAttr */
|
||||
/* 0x20 */ /* cM3dGCps */
|
||||
|
||||
cCcD_CpsAttr() {}
|
||||
void Set(const cCcD_SrcCpsAttr& pSrc) {
|
||||
cM3dGCps::Set(pSrc.mCps);
|
||||
|
||||
@@ -24,6 +24,9 @@ public:
|
||||
cM3dGTri(const Vec *pA, const Vec *pB, const Vec *pC);
|
||||
|
||||
bool cross(const cM3dGCyl* cyl, Vec* out) const;
|
||||
bool cross(const cM3dGLin* line, Vec* vec, bool param_3, bool param_4) const {
|
||||
return cM3d_Cross_LinTri(line, this, vec, param_3, param_4);
|
||||
}
|
||||
|
||||
bool Cross(const cM3dGCps& cps, Vec* out) const { return cM3d_Cross_CpsTri(cps, *this, out); }
|
||||
bool Cross(const cM3dGCyl& cyl, Vec* out) const { return cross(&cyl, out); }
|
||||
|
||||
@@ -214,6 +214,14 @@ public:
|
||||
void onXYTalk() { cLib_onBit(m30F0, 0x100UL); }
|
||||
void offXYTalk() { cLib_offBit(m30F0, 0x100UL); }
|
||||
bool isXYTalk() { return cLib_checkBit(m30F0, 0x100UL); }
|
||||
void noCarryAction() { cLib_onBit(m30F0, 0x800UL); }
|
||||
void offNoCarryAction() { cLib_offBit(m30F0, 0x800UL); }
|
||||
bool isNoCarryAction() { return cLib_checkBit(m30F0, 0x800UL); }
|
||||
void onLightHit() { cLib_onBit(m30F0, 0x2000UL); }
|
||||
void offLightHit() { cLib_offBit(m30F0, 0x2000UL); }
|
||||
bool isLightHit() { return cLib_checkBit(m30F0, 0x2000UL); }
|
||||
void onLightBodyHit() { cLib_onBit(m30F0, 0x8000UL); }
|
||||
void offLightBodyHit() { cLib_offBit(m30F0, 0x8000UL); }
|
||||
bool isOldLightBodyHit() { return cLib_checkBit(m30F0, 0x8000UL); }
|
||||
void onDefaultTalkXY() { cLib_onBit(m30F0, 0x10000UL); }
|
||||
void offDefaultTalkXY() { cLib_offBit(m30F0, 0x10000UL); }
|
||||
@@ -275,23 +283,15 @@ public:
|
||||
void getPiyo2TalkCNT() {}
|
||||
void getTalkType() {}
|
||||
void isLightBodyHit() {}
|
||||
void isLightHit() {}
|
||||
void isMirror() {}
|
||||
void isNoCarryAction() {}
|
||||
void isShipRide() {}
|
||||
void noCarryAction() {}
|
||||
void offBitCamTagIn() {}
|
||||
void offFlying() {}
|
||||
void offLightBodyHit() {}
|
||||
void offLightHit() {}
|
||||
void offMirror() {}
|
||||
void offNoCarryAction() {}
|
||||
void offPlayerRoom() {}
|
||||
void offShipRide() {}
|
||||
void onBitCamTagIn() {}
|
||||
void onFlying() {}
|
||||
void onLightBodyHit() {}
|
||||
void onLightHit() {}
|
||||
void onMirror() {}
|
||||
void onPlayerRoom() {}
|
||||
void onShipRide() {}
|
||||
@@ -327,10 +327,10 @@ public:
|
||||
void setHane03Emitter();
|
||||
void deleteHane03Emitter();
|
||||
void returnLinkPlayer();
|
||||
void shipRideCheck();
|
||||
BOOL shipRideCheck();
|
||||
BOOL isFallAction();
|
||||
void returnLinkCheck();
|
||||
void lightHitCheck();
|
||||
BOOL returnLinkCheck();
|
||||
BOOL lightHitCheck();
|
||||
int wallHitCheck();
|
||||
void NpcCall(int*);
|
||||
void checkCollision(int);
|
||||
|
||||
@@ -166,7 +166,7 @@ public:
|
||||
BOOL chkFlag(u32 flag) { return (mFlags & flag) ? TRUE : FALSE; }
|
||||
void setFlag(u32 flag) { mFlags |= flag; }
|
||||
void clrFlag(u32 flag) { mFlags &= ~flag; }
|
||||
bool Lockon() { return LockonTruth() || chkFlag(0x20000000); }
|
||||
bool Lockon() { return LockonTruth() || chkFlag(0x20000000); } // regswap
|
||||
void CatchRequest(fopAc_ac_c* param_0, u8 param_1, f32 param_2, f32 param_3,
|
||||
f32 param_4, s16 param_5, int param_6) {
|
||||
mCatch.request(param_0, param_1, param_2, param_3, param_4, param_5, param_6);
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
#ifndef D_CAMERA_H
|
||||
#define D_CAMERA_H
|
||||
|
||||
#include "f_op/f_op_camera.h"
|
||||
|
||||
s16 dCam_getControledAngleY(camera_class*);
|
||||
|
||||
#endif /* D_CAMERA_H */
|
||||
@@ -388,6 +388,9 @@ STATIC_ASSERT(sizeof(dCcD_GObjInf) == 0xF8);
|
||||
// Cylinder
|
||||
class dCcD_Cyl : public dCcD_GObjInf, public cCcD_CylAttr {
|
||||
public:
|
||||
/* 0x00 */ /* dCcD_GObjInf */
|
||||
/* 0xF8 */ /* cCcD_CylAttr */
|
||||
|
||||
void Set(dCcD_SrcCyl const&);
|
||||
cCcD_ShapeAttr* GetShapeAttr() { return this; }
|
||||
void StartCAt(cXyz&);
|
||||
@@ -413,6 +416,9 @@ public:
|
||||
// Capsule
|
||||
class dCcD_Cps : public dCcD_GObjInf, public cCcD_CpsAttr {
|
||||
public:
|
||||
/* 0x00 */ /* dCcD_GObjInf */
|
||||
/* 0xF8 */ /* cCcD_CpsAttr */
|
||||
|
||||
void Set(dCcD_SrcCps const&);
|
||||
cCcD_ShapeAttr* GetShapeAttr() { return (cCcD_ShapeAttr*)this; }
|
||||
void CalcAtVec() {
|
||||
|
||||
@@ -25,7 +25,7 @@ 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);
|
||||
|
||||
inline void mDoMtx_multVecSR(Mtx m, const Vec* src, Vec* dst) {
|
||||
inline void mDoMtx_multVecSR(const Mtx m, const Vec* src, Vec* dst) {
|
||||
MTXMultVecSR(m, src, dst);
|
||||
}
|
||||
|
||||
@@ -103,6 +103,10 @@ inline void mDoMtx_multVecZero(MtxP param_0, Vec* param_1) {
|
||||
param_1->z = param_0[2][3];
|
||||
}
|
||||
|
||||
inline void cMtx_multVecSR(const Mtx m, const Vec* src, Vec* dst) {
|
||||
mDoMtx_multVecSR(m, src, dst);
|
||||
}
|
||||
|
||||
inline void mDoMtx_quatMultiply(const Quaternion* a, const Quaternion* b, Quaternion* ab) {
|
||||
QUATMultiply(a,b,ab);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user