d_a_bridge (#811)

* d_a_bridge

* PR
This commit is contained in:
Maide
2025-07-22 06:44:41 +01:00
committed by GitHub
parent b324f4b1fc
commit 9461730b10
6 changed files with 1453 additions and 59 deletions
+1 -3
View File
@@ -182,9 +182,7 @@ public:
/* 0x798 */ f32 m798;
/* 0x79C */ cXyz* m79C;
/* 0x7A0 */ cXyz m7A0;
/* 0x7AC */ u8 m7AC[0x7AE - 0x7AC];
/* 0x7AE */ s16 m7AE;
/* 0x7B0 */ u8 m7B0[0x7B2 - 0x7B0];
/* 0x7AC */ csXyz m7AC;
/* 0x7B2 */ s16 m7B2;
/* 0x7B4 */ s16 m7B4;
/* 0x7B6 */ u8 m7B6;
+21 -18
View File
@@ -11,7 +11,8 @@ class JPABaseEmitter;
struct br_s {
/* 0x000 */ J3DModel* mpModel;
/* 0x004 */ u8 m004[0x0B4 - 0x004];
/* 0x004 */ J3DLightObj mLight;
/* 0x078 */ u8 m078[0xB4 - 0x78];
/* 0x0B4 */ J3DModel* mpModelRope1;
/* 0x0B8 */ J3DModel* mpModelRope0;
/* 0x0BC */ mDoExt_3DlineMat1_c mLineMat1;
@@ -19,8 +20,8 @@ struct br_s {
/* 0x11C */ cXyz m11C[3];
/* 0x140 */ dCcD_Cyl mCyl[2];
/* 0x3A0 */ s16 m3A0[2];
/* 0x3A4 */ u8 m3A4;
/* 0x3A5 */ u8 m3A5;
/* 0x3A4 */ s8 m3A4;
/* 0x3A5 */ s8 m3A5;
/* 0x3A6 */ u8 m3A6[0x3A8 - 0x3A6];
/* 0x3A8 */ cXyz m3A8[2];
/* 0x3C0 */ s16 m3C0;
@@ -34,31 +35,33 @@ struct br_s {
/* 0x3EC */ f32 m3EC;
/* 0x3F0 */ f32 m3F0;
/* 0x3F4 */ f32 m3F4;
/* 0x3F8 */ u8 m3F8[0x3FC - 0x3F8];
/* 0x3F8 */ f32 m3F8;
/* 0x3FC */ f32 m3FC;
/* 0x400 */ s16 m400;
/* 0x402 */ u8 m402[0x406 - 0x402];
/* 0x402 */ s16 m402;
/* 0x404 */ s16 m404;
/* 0x406 */ u8 m406;
/* 0x407 */ u8 m407[0x408 - 0x407];
/* 0x407 */ u8 m407;
/* 0x408 */ u8 m408;
/* 0x409 */ u8 m409[0x40C - 0x409];
/* 0x40C */ cXyz mScale;
/* 0x418 */ s16 m418;
/* 0x41A */ u8 m41A[0x41C - 0x41A];
}; // Size: 0x41C
STATIC_ASSERT(sizeof(br_s) == 0x41C);
class bridge_class : public fopAc_ac_c {
public:
/* 0x0290 */ request_of_phase_process_class mPhsBridge;
struct bridge_class {
/* 0x0000 */ fopAc_ac_c actor;
/* 0x0290 */ request_of_phase_process_class mPhase;
/* 0x0298 */ s16 mMoveProcMode;
/* 0x029A */ u8 m029A[0x029C - 0x029A];
/* 0x029C */ mDoExt_3DlineMat1_c mLineMat;
/* 0x02D8 */ u8 mTypeBits;
/* 0x02D9 */ u8 mUnk_2;
/* 0x02D9 */ u8 m02D9;
/* 0x02DA */ u8 mPathId;
/* 0x02DB */ u8 mPathIdP;
/* 0x02DC */ s8 mBrCount;
/* 0x02DD */ u8 m02DD;
/* 0x02DD */ s8 m02DD;
/* 0x02DE */ u8 m02DE[0x02E0 - 0x02DE];
/* 0x02E0 */ f32 m02E0;
/* 0x02E4 */ f32 m02E4;
@@ -69,24 +72,24 @@ public:
/* 0x02F2 */ s16 m02F2;
/* 0x02F4 */ f32 m02F4;
/* 0x02F8 */ f32 m02F8;
/* 0x02FC */ u8 m02FC[0x0300 - 0x02FC];
/* 0x02FC */ f32 m02FC;
/* 0x0300 */ s16 m0300;
/* 0x0302 */ s16 m0302;
/* 0x0304 */ int m0304;
/* 0x0308 */ u8 m0308[0x030C - 0x0308];
/* 0x030C */ int m030C;
/* 0x0304 */ s32 m0304;
/* 0x0308 */ s32 m0308;
/* 0x030C */ s32 m030C;
/* 0x0310 */ u8 m0310[0x0312 - 0x0310];
/* 0x0312 */ s16 m0312;
/* 0x0314 */ cXyz mEndPos;
/* 0x0320 */ cXyz m0320;
/* 0x032C */ cXyz m032C;
/* 0x0338 */ bridge_class* mpAite;
/* 0x033C */ u8 m033C;
/* 0x033C */ s8 m033C;
/* 0x033D */ u8 m033D[0x0340 - 0x033D];
/* 0x0340 */ br_s mBr[50];
/* 0xD0B8 */ u8 mbStopDraw;
/* 0xD0B8 */ s8 mbStopDraw;
/* 0xD0B9 */ u8 mD0B9[0xD0BC - 0xD0B9];
/* 0xD0BC */ dCcD_Stts mStts;
};
}; // size = 0xD0F8
#endif /* D_A_BRIDGE_H */
+4 -2
View File
@@ -17,13 +17,15 @@ public:
/* 0x22F */ s8 field_0x22f;
/* 0x230 */ csXyz mAngle;
/* 0x238 */ int field_0x238;
};
}; // size = 0x23C
STATIC_ASSERT(sizeof(camera_process_class) == 0x23C);
class camera_class : public camera_process_class {
public:
/* 0x23C */ request_of_phase_process_class phase_request;
/* 0x244 */ dCamera_c mCamera;
};
}; // size = 0xA44
STATIC_ASSERT(sizeof(camera_class) == 0xA44);
struct camera_process_profile_definition {
/* 0x00 */ view_process_profile_definition base;
+4
View File
@@ -596,6 +596,8 @@ public:
class mDoExt_3DlineMat0_c : public mDoExt_3DlineMat_c {
public:
~mDoExt_3DlineMat0_c() {}
BOOL init(u16 numLines, u16 numSegments, BOOL hasSize);
void setMaterial();
void draw();
@@ -618,6 +620,8 @@ public:
class mDoExt_3DlineMat1_c : public mDoExt_3DlineMat_c {
public:
~mDoExt_3DlineMat1_c() {}
BOOL init(u16 numLines, u16 numSegments, ResTIMG* i_img, BOOL hasSize);
void setMaterial();
void draw();
+2 -2
View File
@@ -3213,14 +3213,14 @@ static void b_hang(bk_class* i_this) {
actor->speed.x = 0.0f;
actor->speedF = 0.0f;
actor->speed.y = 0.0f;
cMtx_YrotS(*calc_mtx, i_this->dr.m7AE);
cMtx_YrotS(*calc_mtx, i_this->dr.m7AC.y);
cXyz sp18;
sp18.x = 0.0f;
sp18.y = REG12_F(10) + 25.0f;
sp18.z = REG12_F(11) + 50.0f;
cXyz sp0C;
MtxPosition(&sp18, &sp0C);
cLib_addCalcAngleS2(&actor->current.angle.y, i_this->dr.m7AE, 1, 0x1000);
cLib_addCalcAngleS2(&actor->current.angle.y, i_this->dr.m7AC.y, 1, 0x1000);
if (i_this->dr.m7B8 != fpcM_ERROR_PROCESS_ID_e) {
cLib_addCalc2(&actor->current.pos.x, i_this->dr.m79C->x + sp0C.x, 1.0f, i_this->dr.m798);
cLib_addCalc2(&actor->current.pos.y, i_this->dr.m79C->y + sp0C.y, 1.0f, i_this->dr.m798);
+1421 -34
View File
File diff suppressed because it is too large Load Diff