mirror of
https://github.com/zeldaret/tww.git
synced 2026-09-10 03:52:05 -04:00
d_a_bwdg 100%, weak order not matching
This commit is contained in:
@@ -223,6 +223,7 @@ public:
|
||||
}
|
||||
int GetVtxNum() const { return pm_bgd->m_v_num; }
|
||||
Vec* GetVtxTbl() const { return pm_vtx_tbl; }
|
||||
void SetVtxTbl(Vec* v) { pm_vtx_tbl = v; }
|
||||
bool GroundCross(cBgS_GndChk* chk) {
|
||||
return GroundCrossGrpRp(chk, m_rootGrpIdx, 1);
|
||||
}
|
||||
@@ -238,7 +239,6 @@ public:
|
||||
void ChkWallRegist() {}
|
||||
void OffRoofRegist() {}
|
||||
void SetBaseMtxP(Mtx* mtx_p) { pm_base = mtx_p; }
|
||||
void SetVtxTbl(Vec* v) { pm_vtx_tbl = v; }
|
||||
void ShdwDraw(cBgS_ShdwDraw* shdw) {
|
||||
ShdwDrawGrpRp(shdw, m_rootGrpIdx);
|
||||
}
|
||||
|
||||
@@ -6,6 +6,12 @@
|
||||
class bwd_class : public fopAc_ac_c {
|
||||
public:
|
||||
/* Place member variables here */
|
||||
/* 0x0290 */ u8 m0290[0x17C8 - 0x0290];
|
||||
/* 0x17C8 */ cXyz m17C8;
|
||||
/* 0x17D4 */ f32 m17D4;
|
||||
/* 0x17D8 */ s16 m17D8;
|
||||
/* 0x17DC */ f32 m17DC;
|
||||
/* 0x17E0 */ f32 m17E0;
|
||||
};
|
||||
|
||||
class daBwd_HIO_c {
|
||||
|
||||
+36
-12
@@ -2,20 +2,44 @@
|
||||
#define D_A_BWDG_H
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "JSystem/J3DGraphBase/J3DPacket.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
class dBgWHf;
|
||||
|
||||
class daBwdg_packet_c : public J3DPacket {
|
||||
public:
|
||||
daBwdg_packet_c() {
|
||||
m00010 = 0;
|
||||
}
|
||||
virtual ~daBwdg_packet_c() {}
|
||||
|
||||
MtxP getMtx() { return mMtx; }
|
||||
void setTevStr(dKy_tevstr_c* tevstr) { mpTevStr = tevstr; }
|
||||
cXyz* getPos() { return &mPos[m00010 * 0x1081]; }
|
||||
cXyz* getNrm() { return &mNrm[m00010 * 0x1081]; }
|
||||
|
||||
void draw();
|
||||
|
||||
public:
|
||||
/* 0x00010 */ u8 m00010;
|
||||
/* 0x00014 */ Mtx mMtx;
|
||||
/* 0x00044 */ dKy_tevstr_c* mpTevStr;
|
||||
/* 0x00048 */ cXyz mPos[0x1081 * 2];
|
||||
/* 0x18C60 */ cXyz mNrm[0x1081 * 2];
|
||||
}; // Size: 0x31878
|
||||
|
||||
class bwdg_class : public fopAc_ac_c {
|
||||
public:
|
||||
/* Place member variables here */
|
||||
};
|
||||
|
||||
class daBwdg_packet_c {
|
||||
public:
|
||||
void getMtx() {}
|
||||
void getNrm() {}
|
||||
void getPos() {}
|
||||
void setTevStr(dKy_tevstr_c*) {}
|
||||
|
||||
void draw();
|
||||
};
|
||||
/* 0x00290 */ u8 m00290[0x002AC - 0x00290];
|
||||
/* 0x002AC */ request_of_phase_process_class mPhase;
|
||||
/* 0x002B4 */ s16 m002B4;
|
||||
/* 0x002B6 */ u8 m002B6[0x002B8 - 0x002B6];
|
||||
/* 0x002B8 */ s16 m002B8;
|
||||
/* 0x002BC */ dBgWHf* mpBgW;
|
||||
/* 0x002C0 */ f32 m002C0[0x1081];
|
||||
/* 0x044C4 */ daBwdg_packet_c mBwdgPacket;
|
||||
/* 0x35D3C */ u8 m35D3C[0x35D40 - 0x35D3C];
|
||||
}; // Size: 0x35D40
|
||||
|
||||
#endif /* D_A_BWDG_H */
|
||||
|
||||
@@ -24,7 +24,7 @@ public:
|
||||
class daMajuu_Flag_c : public fopAc_ac_c {
|
||||
public:
|
||||
void setBaseScale(float) {}
|
||||
void setOtherMatrix(float(*)[3][4]) {}
|
||||
void setOtherMatrix(Mtx*) {}
|
||||
void setOtherOffset(cXyz*) {}
|
||||
|
||||
public:
|
||||
|
||||
@@ -32,10 +32,10 @@ public:
|
||||
|
||||
public:
|
||||
/* 0x0010 */ u8 m0010[0x00A4 - 0x0010];
|
||||
/* 0x00A4 */ cXyz m00A4[0xA8];
|
||||
/* 0x00A4 */ cXyz m00A4[0x54 * 2];
|
||||
/* 0x0884 */ cXyz m0884[0x54];
|
||||
/* 0x0C74 */ cXyz m0C74[0xA8];
|
||||
/* 0x1454 */ cXyz m1454[0xA8];
|
||||
/* 0x0C74 */ cXyz m0C74[0x54 * 2];
|
||||
/* 0x1454 */ cXyz m1454[0x54 * 2];
|
||||
/* 0x1C34 */ s16 m1C34;
|
||||
/* 0x1C36 */ s16 m1C36;
|
||||
/* 0x1C38 */ s16 m1C38;
|
||||
@@ -51,7 +51,7 @@ class sail_class : public fopAc_ac_c {
|
||||
public:
|
||||
/* 0x0290 */ request_of_phase_process_class mClothPhase;
|
||||
/* 0x0298 */ request_of_phase_process_class mKaizokusenPhase;
|
||||
/* 0x02A0 */ daSail_packet_c m02A0;
|
||||
/* 0x02A0 */ daSail_packet_c mSailPacket;
|
||||
/* 0x1EEC */ u8 m1EEC[0x1EF4 - 0x1EEC];
|
||||
};
|
||||
|
||||
|
||||
+43
-2
@@ -13,6 +13,8 @@ class cM3dGTri;
|
||||
class dBgS_CrrPos;
|
||||
class cBgS_PolyInfo;
|
||||
class fopAc_ac_c;
|
||||
class dBgS_CaptPoly;
|
||||
typedef struct _GXColor GXColor;
|
||||
|
||||
class dBgW : public cBgW {
|
||||
public:
|
||||
@@ -56,12 +58,51 @@ public:
|
||||
virtual bool ChkGrpThrough(int, cBgS_GrpPassChk*, int);
|
||||
virtual void CrrPos(cBgS_PolyInfo&, void*, bool, cXyz*, csXyz*, csXyz*);
|
||||
virtual void TransPos(cBgS_PolyInfo&, void*, bool, cXyz*, csXyz*, csXyz*);
|
||||
virtual void MatrixCrrPos(cBgS_PolyInfo&, void*, bool, cXyz*, csXyz*, csXyz*);
|
||||
virtual void MatrixCrrPos(cBgS_PolyInfo& poly, void* user, bool accept, cXyz* pos, csXyz* angle, csXyz* shape_angle) {
|
||||
CrrPos(poly, user, accept, pos, angle, shape_angle);
|
||||
}
|
||||
|
||||
void SetCrrFunc(dBgW_CrrFunc func) { m_crr_func = func; }
|
||||
void SetRideCallback(dBgW_RideCallBack func) { mpRideCb = func; }
|
||||
void SetPushPullCallback(dBgW_PPCallBack func) { mpPushPullCb = func; }
|
||||
|
||||
void CalcDiffShapeAngleY(s16) {}
|
||||
void CaptPoly(dBgS_CaptPoly&) {}
|
||||
void CaptPolyGrpRp(dBgS_CaptPoly&, int) {}
|
||||
void CaptPolyRp(dBgS_CaptPoly&, int) {}
|
||||
void ChkMoveFlag() {}
|
||||
void ClrGrpRoomInf() {}
|
||||
void ClrRoomId() {}
|
||||
void DebugDraw() {}
|
||||
void DrawBox() {}
|
||||
void DrawPoly(cBgS_PolyInfo&, GXColor&) {}
|
||||
void GetDiffShapeAngleY() {}
|
||||
void GetGrpRoomInf() {}
|
||||
void GetMaskPolyInfo0(int, u32, u32) {}
|
||||
void GetMaskPolyInfo3_NoShift(int, u32) {}
|
||||
void GetPolyArrowThrough(int) {}
|
||||
void GetPolyBombThrough(int) {}
|
||||
void GetPolyBoomerangThrough(int) {}
|
||||
void GetPolyCamThrough(int) {}
|
||||
void GetPolyHSStick(int) {}
|
||||
void GetPolyLinkThrough(int) {}
|
||||
void GetPolyObjThrough(int) {}
|
||||
void GetPolyRopeThrough(int) {}
|
||||
void GetPushPullCallback() {}
|
||||
void GetRideCallback() {}
|
||||
void GetRoomId() {}
|
||||
void GetShdwThrough(int) {}
|
||||
void OffMoveFlag() {}
|
||||
void OnMoveFlag() {}
|
||||
void RoofChk(dBgS_RoofChk*) {}
|
||||
void RwgCaptPoly(int, dBgS_CaptPoly&) {}
|
||||
void SetGrpRoomInf(int) {}
|
||||
void SetOldShapeAngleY(s16) {}
|
||||
void SetRoomId(u16) {}
|
||||
void SphChk(dBgS_SphChk*, void*) {}
|
||||
void SplGrpChk(dBgS_SplGrpChk*) {}
|
||||
void WallCorrect(dBgS_Acch*) {}
|
||||
|
||||
/* 0xA8 */ dBgW_CrrFunc m_crr_func;
|
||||
/* 0xAC */ s16 mOldRotY;
|
||||
/* 0xAE */ s16 mRotYDelta;
|
||||
@@ -72,6 +113,6 @@ public:
|
||||
/* 0xBB */ u8 mRoomNo2;
|
||||
}; // Size: 0xBC
|
||||
|
||||
dBgW* dBgW_NewSet(cBgD_t*, unsigned long, float(*)[3][4]);
|
||||
dBgW* dBgW_NewSet(cBgD_t*, u32, Mtx*);
|
||||
|
||||
#endif /* D_BG_W_H */
|
||||
|
||||
@@ -6,6 +6,9 @@
|
||||
|
||||
class dBgWDeform : public dBgWSv, public J3DSkinDeform {
|
||||
public:
|
||||
void MoveAfterAnmCalc(J3DModel*) {}
|
||||
void SetVtx(Vec*) {}
|
||||
|
||||
bool Set(cBgD_t*, J3DModel*, u32);
|
||||
|
||||
public:
|
||||
|
||||
@@ -7,6 +7,15 @@ class dBgWHf : public dBgWSv {
|
||||
public:
|
||||
virtual ~dBgWHf() {}
|
||||
|
||||
void SetVtx(Vec* vtx) {
|
||||
if (GetVtxTbl() == NULL) {
|
||||
SetVtxTbl(vtx);
|
||||
CopyBackVtx();
|
||||
} else {
|
||||
SetVtxTbl(vtx);
|
||||
}
|
||||
}
|
||||
|
||||
bool Set(cBgD_t*, u16*, f32, int, int, u32);
|
||||
void CalcPlane();
|
||||
void ClassifyPlane();
|
||||
|
||||
@@ -5,6 +5,9 @@
|
||||
|
||||
class dBgWSv : public dBgW {
|
||||
public:
|
||||
dBgWSv() {
|
||||
mBackVtx = NULL;
|
||||
}
|
||||
virtual ~dBgWSv() {}
|
||||
|
||||
virtual void MatrixCrrPos(cBgS_PolyInfo&, void*, bool, cXyz*, csXyz*, csXyz*) {}
|
||||
|
||||
@@ -447,5 +447,6 @@ cXyz dKy_get_hokuto_pos();
|
||||
void dKy_DayProc();
|
||||
u8 dKy_get_schbit();
|
||||
int dKy_rain_check();
|
||||
void dKy_setLight_mine(dKy_tevstr_c* pTevStr);
|
||||
|
||||
#endif /* D_KANKYO_D_KANKYO_H */
|
||||
|
||||
@@ -139,6 +139,10 @@ inline void cMtx_inverse(const Mtx a, Mtx b) {
|
||||
mDoMtx_inverse(a, b);
|
||||
}
|
||||
|
||||
inline void cMtx_inverseTranspose(const Mtx a, Mtx b) {
|
||||
mDoMtx_inverseTranspose(a, b);
|
||||
}
|
||||
|
||||
class mDoMtx_stack_c {
|
||||
public:
|
||||
mDoMtx_stack_c() {
|
||||
|
||||
Reference in New Issue
Block a user