class structure work

This commit is contained in:
carter-ktb21 2025-07-24 12:12:52 -04:00
parent ea1c649eb1
commit 4d405ea481
2 changed files with 73 additions and 28 deletions

View File

@ -11,7 +11,7 @@
* @details
*
*/
class daNpcShad_c : public fopAc_ac_c {
class daNpcShad_c : public daNpcF_c {
public:
/* 80AD820C */ daNpcShad_c();
/* 80AD8420 */ ~daNpcShad_c();
@ -23,9 +23,9 @@ public:
/* 80AD9280 */ void ctrlJoint(J3DJoint*, J3DModel*);
/* 80AD944C */ void createHeapCallBack(fopAc_ac_c*);
/* 80AD946C */ void ctrlJointCallBack(J3DJoint*, int);
/* 80AD94B8 */ void setExpressionAnm(int, bool);
/* 80AD974C */ void setExpressionBtp(int);
/* 80AD982C */ bool setMotionAnm(int, f32);
/* 80AD94B8 */ bool setExpressionAnm(int, bool);
/* 80AD974C */ bool setExpressionBtp(int);
/* 80AD982C */ void setMotionAnm(int, f32);
/* 80AD99B4 */ void reset();
/* 80AD9C0C */ void setWaitAction();
/* 80AD9E04 */ void getPathPoint(u8, int, Vec*);
@ -51,27 +51,48 @@ public:
/* 80ADFB70 */ void EvCut_WiretapSponsor(int);
/* 80ADFE74 */ void EvCut_WiretapEntrant(int);
/* 80AE01BC */ void setParam();
/* 80AE0438 */ void main();
/* 80AE0438 */ BOOL main();
/* 80AE04D8 */ void playMotion();
/* 80AE0B58 */ void playExpression();
/* 80AE0ED0 */ void ctrlBtk();
/* 80AE0ED0 */ BOOL ctrlBtk();
/* 80AE0FAC */ void setAttnPos();
/* 80AE1320 */ void lookat();
/* 80AE153C */ bool drawDbgInfo();
/* 80AE153C */ BOOL drawDbgInfo();
static u8 mEvtSeqList[168];
private:
/* 0x568 */ u8 field_0x568[0xe24 - 0x568];
/* 0xB48 */ J3DModel* field_0xb48;
/* 0xB4C */ J3DModel* field_0xb4c;
/* 0xB50 */ Z2Creature mSound;
/* 0xBE0 */ daNpcF_MatAnm_c* mpMatAnm;
/* 0xBE4 */ daNpcF_Lookat_c mLookat;
/* 0xC80 */ daNpcF_ActorMngr_c mActorMngr[5];
/* 0xCA8 */ daPy_py_c* field_0xca8;
/* 0xCAC */ u8 field_0xcac[0xcb0 - 0xcac];
/* 0xCB0 */ dCcD_Cyl field_0xcb0;
/* 0xDEC */ u8 field_0xdec[0xe08 - 0xdec];
/* 0xE08 */ fpc_ProcID field_0xe08;
/* 0xE0C */ u8 field_0xe0c[0xe14 - 0xe0c];
/* 0xE14 */ s16 field_0xe14;
/* 0xE16 */ s16 field_0xe16;
/* 0xE18 */ s16 field_0xe18;
/* 0xE1A */ u8 field_0xe1a[0xe20 - 0xe1a];
/* 0xE20 */ u8 field_0xe20;
};
STATIC_ASSERT(sizeof(daNpcShad_c) == 0xe24);
struct daNpcShad_HIOParam {
/* 0x00 */ daNpcF_HIOParam common;
/* 0x6C */ f32 traveling_speed; // 走行速度 (Traveling Speed)
};
class daNpcShad_Param_c {
public:
/* 80AE1F70 */ ~daNpcShad_Param_c();
static u8 const m[112];
static const daNpcShad_HIOParam m;
};

View File

@ -848,16 +848,42 @@ daNpcShad_c::~daNpcShad_c() {
/* ############################################################################################## */
/* 80AE1FDC-80AE204C 000000 0070+00 19/19 0/0 0/0 .rodata m__17daNpcShad_Param_c */
SECTION_RODATA u8 const daNpcShad_Param_c::m[112] = {
0x42, 0x0C, 0x00, 0x00, 0xC0, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00,
0x43, 0x7F, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x34, 0x00, 0x00, 0xC2, 0x34, 0x00, 0x00,
0x41, 0xF0, 0x00, 0x00, 0xC1, 0x20, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0xC2, 0x20, 0x00, 0x00,
0x3F, 0x19, 0x99, 0x9A, 0x41, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x06, 0x00, 0x05, 0x00, 0x06,
0x42, 0xA0, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
0x00, 0x3C, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x40, 0x00, 0x00,
const daNpcShad_HIOParam daNpcShad_Param_c::m = {
35.0f,
-3.0f,
1.0f,
400.0f,
255.0f,
200.0f,
35.0f,
30.0f,
0.0f,
0.0f,
45.0f,
-45.0f,
30.0f,
-10.0f,
40.0f,
-40.0f,
0.6f,
12.0f,
3,
6,
5,
6,
80.0f,
500.0f,
300.0f,
-300.0f,
60,
8,
0,
0,
0,
false,
false,
12.0f,
};
COMPILER_STRIP_GATE(0x80AE1FDC, &daNpcShad_Param_c::m);
/* 80AE204C-80AE2050 000070 0004+00 0/1 0/0 0/0 .rodata @4402 */
#pragma push
@ -1040,20 +1066,18 @@ void daNpcShad_c::ctrlJointCallBack(J3DJoint* param_0, int param_1) {
// NONMATCHING
}
/* 80AD94B8-80AD974C 001398 0294+00 2/0 0/0 0/0 .text setExpressionAnm__11daNpcShad_cFib
*/
void daNpcShad_c::setExpressionAnm(int param_0, bool param_1) {
/* 80AD94B8-80AD974C 001398 0294+00 2/0 0/0 0/0 .text setExpressionAnm__11daNpcShad_cFib */
bool daNpcShad_c::setExpressionAnm(int param_0, bool param_1) {
// NONMATCHING
}
/* 80AD974C-80AD982C 00162C 00E0+00 1/0 0/0 0/0 .text setExpressionBtp__11daNpcShad_cFi
*/
void daNpcShad_c::setExpressionBtp(int param_0) {
/* 80AD974C-80AD982C 00162C 00E0+00 1/0 0/0 0/0 .text setExpressionBtp__11daNpcShad_cFi */
bool daNpcShad_c::setExpressionBtp(int param_0) {
// NONMATCHING
}
/* 80AD982C-80AD99B4 00170C 0188+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcShad_cFif */
bool daNpcShad_c::setMotionAnm(int param_0, f32 param_1) {
void daNpcShad_c::setMotionAnm(int param_0, f32 param_1) {
// NONMATCHING
}
@ -2325,7 +2349,7 @@ void daNpcShad_c::setParam() {
}
/* 80AE0438-80AE04D8 008318 00A0+00 1/0 0/0 0/0 .text main__11daNpcShad_cFv */
void daNpcShad_c::main() {
BOOL daNpcShad_c::main() {
// NONMATCHING
}
@ -2345,7 +2369,7 @@ SECTION_RODATA static f32 const lit_6995 = 1.0f / 5.0f;
COMPILER_STRIP_GATE(0x80AE24B0, &lit_6995);
/* 80AE0ED0-80AE0FAC 008DB0 00DC+00 1/0 0/0 0/0 .text ctrlBtk__11daNpcShad_cFv */
void daNpcShad_c::ctrlBtk() {
BOOL daNpcShad_c::ctrlBtk() {
// NONMATCHING
}
@ -2383,7 +2407,7 @@ void daNpcShad_c::lookat() {
}
/* 80AE153C-80AE1544 00941C 0008+00 1/0 0/0 0/0 .text drawDbgInfo__11daNpcShad_cFv */
bool daNpcShad_c::drawDbgInfo() {
BOOL daNpcShad_c::drawDbgInfo() {
return false;
}