d_a_boko start

This commit is contained in:
LagoLunatic
2024-04-17 13:35:53 -04:00
parent a116292705
commit c93901ce2c
5 changed files with 249 additions and 55 deletions
+40 -23
View File
@@ -9,12 +9,18 @@
#include "m_Do/m_Do_ext.h"
#include "SSystem/SComponent/c_phase.h"
class dBgS_ObjLinChk;
struct ke_c_s {
};
class daBoko_c : public fopAc_ac_c {
public:
typedef BOOL (daBoko_c::*ProcFunc_t)();
daBoko_c();
static Vec m_top_offset[6];
static Vec m_blur_root_offset[6];
static Vec m_root_offset[6];
@@ -25,50 +31,54 @@ public:
static f32 m_blur_rate[6];
static u8 m_se_type[6];
static dBgS_ObjGndChk m_ground_check;
static dBgS_ObjLinChk m_line_check;
f32 getCpsR() { return m_cps_r[fopAcM_GetParam(this)]; }
s32 getAtPoint() { return m_at_point[fopAcM_GetParam(this)]; }
u32 getAtType() { return m_at_type[fopAcM_GetParam(this)]; }
void getBlurRate() {}
f32 getCpsR() { return m_cps_r[fopAcM_GetParam(this)]; }
void getFlameTimer() {}
void getJumpBlurRate() {}
void getNowMode() {}
f32 getJumpBlurRate() { return m_jump_blur_rate[fopAcM_GetParam(this)]; }
f32 getBlurRate() { return m_blur_rate[fopAcM_GetParam(this)]; }
u8 getSeType() { return m_se_type[fopAcM_GetParam(this)]; }
void getFlameTimer() {}
void getNowMode() {}
void setNowMode(int) {}
void moveStateInit(f32 speedForward, f32 speedY, s16 angleY) {
speed.y = speedY;
speedF = speedForward;
current.angle.y = angleY;
}
void onFloorFlg() {}
void onFloorFlg() {} // maybe: m2BC = 1;
void setMatrix(Mtx mtx) {
if (mpModel) {
mpModel->setBaseTRMtx(mtx);
}
}
void setNowMode(int) {}
void setRotAngleSpeed(s16 speed) { m2C2 = speed; }
void setThrow(s16) {}
void setThrow(s16) {} // maybe m2BA
void getTopPos(cXyz *);
void getBlurRootPos(cXyz *);
void getTopPos(cXyz*);
void getBlurRootPos(cXyz*);
void keDraw();
void keCalc1(ke_c_s*, int);
void keCalc();
BOOL draw();
void setTopRootPos(int);
void setBaseMatrix();
void checkNoDraw();
BOOL checkNoDraw();
void setFlameEffect();
void setRoomInfo();
void setThrowReverse(short);
void procWait_init();
void procWait();
void procMove_init();
void procMove();
void procThrow();
void procCarry();
void setThrowReverse(s16);
BOOL procWait_init();
BOOL procWait();
BOOL procMove_init();
BOOL procMove();
BOOL procThrow();
BOOL procCarry();
BOOL execute();
void bokoDelete();
void createHeap();
BOOL createHeap();
s32 create();
public:
@@ -77,7 +87,7 @@ public:
/* 0x29C */ mDoExt_brkAnm mBrkAnm;
/* 0x2B4 */ u8 m2B4[0x2B8 - 0x2B4];
/* 0x2B8 */ u8 mCurrentAction;
/* 0x2B9 */ u8 m2B9[0x2BA - 0x2B9];
/* 0x2B9 */ u8 m2B9;
/* 0x2BA */ u8 m2BA;
/* 0x2BB */ u8 m2BB;
/* 0x2BC */ u8 m2BC;
@@ -87,14 +97,15 @@ public:
/* 0x2C4 */ s16 m2C4;
/* 0x2C6 */ u8 m2C6[0x2C8 - 0x2C6];
/* 0x2C8 */ s16 m2C8;
/* 0x2CA */ u8 m2CA[0x2D0 - 0x2CA];
/* 0x2CA */ s16 m2CA;
/* 0x2CC */ u8 m2CC[0x2D0 - 0x2CC];
/* 0x2D0 */ cXyz m2D0;
/* 0x2DC */ u8 m2DC[0x2F4 - 0x2DC];
/* 0x2F4 */ cXyz m2F4;
/* 0x300 */ LIGHT_INFLUENCE mLight;
/* 0x320 */ cXyz m320;
/* 0x32C */ dPa_followEcallBack mParticleCallBack;
/* 0x340 */ dBgS_Acch mAcch;
/* 0x340 */ dBgS_ObjAcch mAcch;
/* 0x504 */ dBgS_AcchCir mAcchCir;
/* 0x544 */ dCcD_Stts mStts;
/* 0x580 */ dCcD_Sph mSph;
@@ -103,7 +114,13 @@ public:
/* 0x7E8 */ Mtx mAlphaModelMtx[2];
/* 0x848 */ u8 m848[0x8A8 - 0x848];
/* 0x8A8 */ mDoExt_3DlineMat0_c* mpLineMat;
/* 0x8AC */ int (daBoko_c::*mCurrentProc)();
/* 0x8AC */ ProcFunc_t mCurrentProc;
};
class daBoko_HIO_c0 {
public:
static const s16 throw_timer;
static const f32 throw_speed;
};
#endif /* D_A_BOKO_H */
+1 -1
View File
@@ -1052,7 +1052,7 @@ public:
void resetCurse();
void checkLightHit();
void setSwordAtCollision();
void getBlurTopRate();
f32 getBlurTopRate();
void setCollision();
void setAttentionPos();
int setRoomInfo();
+1
View File
@@ -38,6 +38,7 @@ class J2DOrthoGraph;
enum daPy__PlayerStatus0 {
daPyStts0_UNK1_e = 0x00000001,
daPyStts0_UNK10_e = 0x00000010,
daPyStts0_UNK80_e = 0x00000080,
daPyStts0_UNK100_e = 0x00000100,
daPyStts0_BOW_AIM_e = 0x00001000,
daPyStts0_SWORD_SWING_e = 0x00008000,