d_a_npc_coach work (#2579)

* data and class member work

* inline work

* got to SetCoachBlazing

* work on some calc functions

* all functions worked on

* pr cleanup

* more pr cleanup

* coach header cleanup
This commit is contained in:
Carco_21 2025-08-12 13:54:06 -04:00 committed by GitHub
parent 58a6d8d793
commit 4ade12fd64
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
14 changed files with 2482 additions and 1216 deletions

View File

@ -46,6 +46,8 @@ public:
void show() { mIsVisible = true; }
void hide() { mIsVisible = false; }
bool isVisible() { return mIsVisible ? true : false; }
void setHitCount(u8 i_hitCount) { mHitCount = i_hitCount; }
void setMaxHitCount(u8 i_maxHitCount) { mMaxHitCount = i_maxHitCount; }
/* 0x574 */ J2DScreen* mpScrn;
/* 0x578 */ J2DAnmTevRegKey* mpFireIconBrk;

View File

@ -18,6 +18,9 @@ class e_kr_class {
public:
/* 80705004 */ e_kr_class();
s32 getId() { return field_0xf00; }
s32 checkBombDrop() { return field_0xf04; }
/* 0x000 */ fopEn_enemy_c enemy;
/* 0x5AC */ request_of_phase_process_class mPhase;
/* 0x5B4 */ mDoExt_McaMorfSO* mpMorf;

View File

@ -2,6 +2,7 @@
#define D_A_NPC_COACH_H
#include "d/actor/d_a_npc.h"
#include "d/d_path.h"
/**
* @ingroup actors-npcs
@ -10,18 +11,233 @@
*
* @details
*
*/
*/
class daNpcCoach_Attr_c {
public:
/* 0x00 */ f32 gravity; // 重力 - Gravity
/* 0x04 */ f32 max_fall_speed; // 最大落下速度 - Maximum Fall Speed
/* 0x08 */ f32 jump_coeff; // 跳係数 - Jump Coefficient
/* 0x0C */ f32 field_0xc;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 max_speed; // 最大速度 - Maximum Speed
/* 0x20 */ f32 spring_constant; // バネ係数 - Spring Constant
/* 0x24 */ f32 damp_coeff[1]; // 減衰係数 - Damp Coefficient
/* 0x28 */ f32 field_0x28[1];
/* 0x2C */ f32 field_0x2c;
/* 0x30 */ f32 field_0x30;
/* 0x34 */ f32 field_0x34;
/* 0x38 */ f32 vert_swing_width; // 縦揺れ幅 - Vertical Swing Width
/* 0x3C */ f32 shake_dist; // 揺れ距離 - Shake Distance
/* 0x40 */ f32 jump_dist; // 跳ね距離 - Jump Distance
/* 0x44 */ f32 wheel_bounce; // 車輪跳ね - Wheel Bounce
/* 0x48 */ f32 field_0x48;
/* 0x4C */ f32 field_0x4c;
/* 0x50 */ f32 field_0x50;
/* 0x54 */ f32 field_0x54;
/* 0x58 */ f32 field_0x58;
/* 0x5C */ f32 field_0x5c;
/* 0x60 */ s16 field_0x60;
/* 0x62 */ s16 horse_rot_limit; // 馬Rot限度 - Horse Rot Limit
/* 0x64 */ s16 horiz_sway_range; // 横揺れ幅 - Horizontal Sway Range
/* 0x66 */ s16 field_0x66;
/* 0x68 */ s16 field_0x68;
/* 0x6A */ s8 field_0x6a;
/* 0x6B */ u8 field_0x6b;
/* 0x6C */ u8 field_0x6c;
/* 0x6D */ u8 shake_test; // 揺れ実験 - Shake Test
/* 0x6E */ s16 field_0x6e;
/* 0x70 */ int damage_reduction; // ダメージ減量 - Damage Reduction
/* 0x74 */ int damage_durability; // ダメージ耐久度 - Damage Durability
/* 0x78 */ u8 damage_extinguish_level; // ダメージ消火度 - Damage Extinguish Level
/* 0x79 */ u8 horse_camera; // 馬カメラ - Horse Camera
/* 0x7A */ u8 field_0x7a;
/* 0x7B */ u8 field_0x7b;
/* 0x7C */ f32 camera_dist; // カメラ距離 - Camera Distance
/* 0x80 */ s16 camera_elevation_angle; // カメラ仰角 - Camera Elevation Angle
/* 0x82 */ s16 camera_rotation_angle; // カメラ回転角 - Camera Rotation Angle
/* 0x84 */ s16 field_0x84;
/* 0x86 */ u8 field_0x86;
/* 0x87 */ u8 field_0x87;
/* 0x88 */ u8 field_0x88;
/* 0x89 */ u8 field_0x89;
/* 0x8A */ s16 field_0x8a;
/* 0x8C */ f32 field_0x8c;
/* 0x90 */ f32 field_0x90;
/* 0x94 */ f32 field_0x94;
/* 0x98 */ f32 deceleration_speed; // 減速速度 - Deceleration Speed
/* 0x9C */ s32 deceleration_time; // 減速時間 - Deceleration Time
};
class daNpcChReins_c {
public:
/* 0x000 */ mDoExt_3DlineMat1_c field_0x0;
/* 0x03C */ mDoExt_3DlineMat1_c field_0x3c;
/* 0x078 */ cXyz field_0x78[10];
/* 0x0F0 */ cXyz field_0xf0[10];
/* 0x168 */ f32 field_0x168;
/* 0x16C */ s8 field_0x16c;
/* 0x170 */ cXyz field_0x170;
};
class daNpcChHorse_c {
public:
/* 0x000 */ mDoExt_McaMorf2* mpModelMorf;
/* 0x004 */ mDoExt_btpAnm* mpBtpAnm;
/* 0x008 */ mDoExt_bckAnm* mpBckAnm;
/* 0x00C */ dBgS_ObjAcch mBgc;
/* 0x1F0 */ dCcD_Cyl field_0x1f0[4];
/* 0x6D4 */ Z2CreatureRide mSound;
/* 0x770 */ cXyz field_0x770;
/* 0x77C */ f32 mAnmRate;
/* 0x780 */ f32 mAimSpeed;
/* 0x784 */ f32 field_0x784;
/* 0x788 */ int field_0x788;
/* 0x78C */ int field_0x78c;
/* 0x790 */ int field_0x790;
/* 0x794 */ u32 mShadowKey;
/* 0x798 */ daNpcChReins_c mChReins;
};
class daNpcChWheel_c {
public:
/* 0x00 */ cXyz field_0x0;
/* 0x0C */ u32 field_0xc[2];
/* 0x14 */ csXyz mWheelRot;
/* 0x1A */ s16 field_0x1a;
/* 0x1C */ s16 field_0x1c;
/* 0x1E */ s16 field_0x1e;
/* 0x20 */ s16 field_0x20;
};
class daNpcChHarness_c {
public:
/* 809A3570 */ ~daNpcChHarness_c();
/* 0x000 */ J3DModel* mHarnessModel;
/* 0x004 */ dKy_tevstr_c mTevStr;
/* 0x38C */ dBgS_ObjAcch mBgc;
/* 0x564 */ dCcD_Cyl field_0x564;
/* 0x6A0 */ dBgW* field_0x6a0;
/* 0x6A4 */ Mtx mMtx;
/* 0x6D4 */ cXyz field_0x6d4;
/* 0x6E0 */ cXyz field_0x6e0;
/* 0x6EC */ cXyz field_0x6ec;
/* 0x6F8 */ u32 mShadowKey;
/* 0x6FC */ f32 field_0x6fc;
/* 0x700 */ csXyz field_0x700;
/* 0x706 */ csXyz field_0x706;
/* 0x70C */ daNpcChWheel_c field_0x70c;
/* 0x730 */ daNpcChWheel_c field_0x730;
};
class daNpcChCoach_c {
public:
/* 809A3674 */ ~daNpcChCoach_c();
/* 0x000 */ J3DModel* mCoachModel;
/* 0x004 */ dKy_tevstr_c mTevStr;
/* 0x38C */ dBgS_ObjAcch mBgc;
/* 0x564 */ dBgW* field_0x564;
/* 0x568 */ Mtx field_0x568;
/* 0x598 */ Mtx field_0x598;
/* 0x5C8 */ cXyz field_0x5c8;
/* 0x5D4 */ cXyz field_0x5d4;
/* 0x5E0 */ cXyz field_0x5e0;
/* 0x5EC */ cXyz field_0x5ec;
/* 0x5F8 */ JPABaseEmitter* field_0x5f8[10];
/* 0x620 */ Z2SoundObjCoach mSound;
/* 0x644 */ dCcD_Sph field_0x644;
/* 0x77C */ int field_0x77c;
/* 0x780 */ u32 mShadowKey;
/* 0x784 */ f32 field_0x784;
/* 0x788 */ f32 field_0x788;
/* 0x78C */ f32 mCoachTrans;
/* 0x790 */ f32 field_0x790;
/* 0x794 */ f32 field_0x794;
/* 0x798 */ s16 mCoachRot;
/* 0x79A */ csXyz field_0x79a;
/* 0x7A0 */ csXyz field_0x7a0;
/* 0x7A8 */ daNpcChWheel_c field_0x7a8;
/* 0x7CC */ daNpcChWheel_c field_0x7cc;
};
class daNpcChYelia_c {
public:
/* 0x000 */ mDoExt_McaMorfSO* mpModelMorf;
/* 0x004 */ dKy_tevstr_c mTevStr;
/* 0x38C */ Z2Creature mSound;
/* 0x41C */ dCcD_Cyl field_0x41c[2];
/* 0x694 */ cXyz field_0x694;
};
class daNpcChPath_c {
public:
BOOL setPath(int, int, cXyz*, bool);
BOOL isClose() { return dPath_ChkClose(mpPath); }
bool setNextPoint() {
mPntIndex++;
if (mPntIndex >= mpPath->m_num) {
if (isClose()) {
mPntIndex = 0;
} else {
mPntIndex--;
return FALSE;
}
}
return TRUE;
}
BOOL setPrevPoint() {
mPntIndex--;
if (mPntIndex < 0) {
if (isClose()) {
mPntIndex = mpPath->m_num - 1;
} else {
mPntIndex++;
return FALSE;
}
}
return TRUE;
}
void getTargetPoint(cXyz& param_1) {
if (mpPath != NULL) {
param_1 = dPath_GetPnt(mpPath, mPntIndex)->m_position;
}
}
bool isPath() { return mpPath != NULL; }
int getCurrentId() { return mCurrentID; }
s8 getArg0() { return mpPath->m_points[mPntIndex].mArg0; }
s8 getArg1() { return mpPath->m_points[mPntIndex].mArg1; }
s8 getArg2() { return mpPath->m_points[mPntIndex].mArg2; }
int getArg3() { return mpPath->m_points[mPntIndex].mArg3; }
inline int checkNearAttackPoint();
inline bool checkPoint(cXyz*, f32);
inline bool setNextTarget();
/* 0x00 */ dPath* mpPath;
/* 0x04 */ cXyz* field_0x4;
/* 0x08 */ f32 field_0x8;
/* 0x0C */ int mCurrentID;
/* 0x10 */ int mPntIndex;
};
class daNpcCoach_c : public fopAc_ac_c {
public:
/* 8099DA60 */ void hitFireArrow(cXyz);
/* 8099DBA4 */ void deleteFireArrow(unsigned int);
/* 8099DCE8 */ bool deleteFireArrowFromList(unsigned int);
/* 8099DD28 */ void setPosAngle(cXyz&, csXyz&);
/* 8099DD7C */ void ctrlJointHorse(J3DJoint*, J3DModel*);
/* 8099DD7C */ int ctrlJointHorse(J3DJoint*, J3DModel*);
/* 8099DE18 */ void initCoachPosition(Vec&, SVec&);
/* 8099E138 */ void changeAtherPath(s8, cXyz&, csXyz&);
/* 8099E4C0 */ void createHeap();
/* 8099EB40 */ void execute();
/* 8099E4C0 */ int createHeap();
/* 8099EB40 */ int execute();
/* 8099EEA0 */ void checkCoachDamage();
/* 8099F1B8 */ void setCoachBlazing(u8);
/* 8099F4BC */ void reinsExecute();
@ -33,9 +249,9 @@ public:
/* 809A1810 */ void calcHorseMotion();
/* 809A1BE0 */ void calcHorseAnm();
/* 809A2740 */ void calcHorsePath();
/* 809A2EB8 */ void draw();
/* 809A2EB8 */ int draw();
/* 809A3330 */ ~daNpcCoach_c();
/* 809A3884 */ void create();
/* 809A3884 */ cPhs__Step create();
/* 809A3928 */ void create_init();
/* 809A4078 */ void initCollision();
/* 809A43A0 */ void initBaseMtx();
@ -43,30 +259,97 @@ public:
/* 809A46C4 */ void initCoachBlazing();
/* 809A48A8 */ daNpcCoach_c();
bool checkCoachBlazing() { return field_0x1dc4; }
Mtx* getCoachMtx() { return &field_0x2490; }
inline bool checkCoachBlazing() { return mCoachBlazing; }
inline Mtx* getCoachMtx() { return &mCoachMtx; }
inline csXyz* getFrontWheelRot(int param_1) {
if (param_1 == 2) {
return &mChHarness.field_0x70c.mWheelRot;
}
static u8 const M_attr[160];
return &mChHarness.field_0x730.mWheelRot;
}
inline csXyz* getRearWheelRot(int param_1) {
if (param_1 == 1) {
return &mChCoach.field_0x7a8.mWheelRot;
}
return &mChCoach.field_0x7cc.mWheelRot;
}
inline s16 getCoachRotate() { return mChCoach.mCoachRot; }
inline f32 getCoachTrans() { return mChCoach.mCoachTrans; }
inline int getRailID() { return mChPath.getCurrentId(); }
inline void setDriverMtx();
inline void calcDriverMotion() { setDriverMtx(); }
inline void calcYeliaMotion();
inline void setYeliaMtx() {
mDoMtx_stack_c::copy(mChCoach.mCoachModel->getAnmMtx(6));
mDoMtx_stack_c::multVecZero(&mChYelia.field_0x694);
mChYelia.mpModelMorf->getModel()->setBaseTRMtx(mDoMtx_stack_c::get());
}
inline void setCoachCollision();
inline s16 getGroundSlope(dBgS_ObjAcch*, s16);
inline void calcSpringF(f32*, f32, f32*);
inline void calcSpringS(s16*, s16, f32*);
inline void setCoachMtx();
inline void setWheelSmoke(daNpcChWheel_c*, dBgS_ObjAcch*, dKy_tevstr_c*, csXyz*);
inline void setHarnessCollision();
inline f32 calcMaxSpeed();
inline void setHorseCollision();
inline void setHorseMtx();
inline void setHorseAnm(int);
inline void eyeWink();
inline BOOL checkKargoAttack();
inline BOOL setExpressionAnm(int, bool);
inline void resetOverAngle();
inline void reinsDraw();
inline u8 getPathID() { return fopAcM_GetParam(this) & 0xFF; }
inline int getMessageNo() { return home.angle.x; }
inline void setHarnessMtx();
const daNpcCoach_Attr_c& attr() { return M_attr; }
static daNpcCoach_Attr_c const M_attr;
static u16 const ParticleName[10];
private:
/* 0x568 */ u8 field_0x568[0x1dc4 - 0x568];
/* 0x1DC4 */ bool field_0x1dc4;
/* 0x1DC5 */ u8 field_0x1dc5[0x247c - 0x1dc5];
/* 0x247C */ u32 field_0x247c[4];
/* 0x248C */ u8 field_0x248c[0x2490 - 0x248c];
/* 0x2490 */ Mtx field_0x2490;
/* 0x24C0 */ u8 field_0x254c[0x2570 - 0x24c0];
/* 0x0568 */ daNpcChHorse_c mChHorse;
/* 0x0E7C */ daNpcChHarness_c mChHarness;
/* 0x15D0 */ daNpcChCoach_c mChCoach;
/* 0x1DC0 */ int field_0x1dc0;
/* 0x1DC4 */ bool mCoachBlazing;
/* 0x1DC5 */ u8 field_0x1dc5;
/* 0x1DC6 */ u8 field_0x1dc6;
/* 0x1DC7 */ u8 field_0x1dc7;
/* 0x1DC8 */ daNpcChYelia_c mChYelia;
/* 0x2468 */ daNpcChPath_c mChPath;
/* 0x247C */ fpc_ProcID field_0x247c[5];
/* 0x2490 */ Mtx mCoachMtx;
/* 0x24C0 */ int field_0x24c0;
/* 0x24C4 */ int field_0x24c4;
/* 0x24C8 */ f32 field_0x24c8;
/* 0x24CC */ dBgS_AcchCir mAcchCir;
/* 0x250C */ dCcD_Stts mStts;
/* 0x2548 */ request_of_phase_process_class mPhase;
/* 0x2550 */ int field_0x2550;
/* 0x2554 */ fpc_ProcID field_0x2554;
/* 0x2558 */ u8 field_0x2558;
/* 0x2559 */ u8 field_0x2559;
/* 0x255C */ cXyz field_0x255c;
/* 0x2568 */ int mPathID;
/* 0x256C */ u8 field_0x256c[0x2570 - 0x256c];
};
STATIC_ASSERT(sizeof(daNpcCoach_c) == 0x2570);
class daNpcChHarness_c {
struct daNpcCoach_Hio_c {
public:
/* 809A3570 */ ~daNpcChHarness_c();
};
void default_set() {
field_0xc = daNpcCoach_c::M_attr;
}
class daNpcChCoach_c {
public:
/* 809A3674 */ ~daNpcChCoach_c();
/* 0x0 */ u8 field_0x0[0x8 - 0x0];
/* 0x8 */ int field_0x8;
/* 0xC */ daNpcCoach_Attr_c field_0xc;
};
#endif /* D_A_NPC_COACH_H */

View File

@ -11,7 +11,7 @@
* @details
*
*/
class daNpcTheB_c : public fopAc_ac_c {
class daNpcTheB_c : public daNpcF_c {
public:
/* 80AFC76C */ daNpcTheB_c();
/* 80AFC980 */ ~daNpcTheB_c();
@ -23,17 +23,17 @@ public:
/* 80AFD2A8 */ void ctrlJoint(J3DJoint*, J3DModel*);
/* 80AFD49C */ void createHeapCallBack(fopAc_ac_c*);
/* 80AFD4BC */ void ctrlJointCallBack(J3DJoint*, int);
/* 80AFD508 */ void getHandPos1(int);
/* 80AFD5F0 */ void getHandPos2(int);
/* 80AFD508 */ cXyz getHandPos1(int);
/* 80AFD5F0 */ cXyz getHandPos2(int);
/* 80AFD6D8 */ void setHintEvent(s32, u16, int);
/* 80AFD6F0 */ void main();
/* 80AFD6F0 */ BOOL main();
/* 80AFD938 */ void setParam();
/* 80AFDAA4 */ void ctrlBtk();
/* 80AFDAA4 */ BOOL ctrlBtk();
/* 80AFDB70 */ void setAttnPos();
/* 80AFDEC0 */ void setExpressionAnm(int, bool);
/* 80AFE0BC */ void setExpressionBtp(int);
/* 80AFE1BC */ bool setMotionAnm(int, f32);
/* 80AFE398 */ bool drawDbgInfo();
/* 80AFDEC0 */ bool setExpressionAnm(int, bool);
/* 80AFE0BC */ bool setExpressionBtp(int);
/* 80AFE1BC */ void setMotionAnm(int, f32);
/* 80AFE398 */ BOOL drawDbgInfo();
/* 80AFE3A0 */ void reset();
/* 80AFE574 */ void playExpression();
/* 80AFE704 */ void playMotion();
@ -51,10 +51,15 @@ public:
/* 80AFFFE0 */ void EvCut_TheBHint(int);
/* 80B00204 */ void EvCut_CoachGuardGameOver(int);
void setTRMtx(MtxP mtx) { mpMorf->getModel()->setBaseTRMtx(mtx); }
void setGameOver() { mGameOver = 1; }
static u8 mEvtSeqList[72];
private:
/* 0x568 */ u8 field_0x568[0xe14 - 0x568];
/* 0xB48 */ u8 field_0xb48[0xe0d - 0xb48];
/* 0xE0D */ u8 mGameOver;
/* 0xE0E */ u8 field_0xe0e[0xe14 - 0xe0e];
};
STATIC_ASSERT(sizeof(daNpcTheB_c) == 0xe14);

View File

@ -174,6 +174,7 @@ public:
void OnLineCheckHit() { m_flags |= LINE_CHECK_HIT; }
bool ChkGroundAway() const { return (m_flags & GROUND_AWAY) != 0; }
void ClrGroundHit() { m_flags &= ~GROUND_HIT; }
void SetGroundCheckOffset(f32 offset) { m_gnd_chk_offset = offset; }
cM3dGCyl* GetWallBmdCylP() { return &m_wall_cyl; }
fopAc_ac_c* getMyAc() { return m_my_ac; }
@ -215,7 +216,7 @@ public:
/* 0x090 */ f32 field_0x90;
/* 0x094 */ f32 field_0x94;
/* 0x098 */ f32 m_ground_h;
/* 0x09C */ f32 field_0x9c;
/* 0x09C */ f32 m_gnd_chk_offset;
/* 0x0A0 */ cM3dGPla field_0xa0;
/* 0x0B4 */ bool field_0xb4;
/* 0x0B8 */ f32 field_0xb8;

View File

@ -328,6 +328,7 @@ public:
void SetCrrFunc(dBgW_CrrFunc func) { m_crr_func = func; }
void SetRideCallback(dBgW_RideCallback func) { m_ride_callback = func; }
void SetArrowStickCallback(dBgW_ArrowStickCallback func) { m_arrow_stick_callback = func; }
void OnMoveFlag() { m_flags |= 1; }
private:

View File

@ -9,8 +9,8 @@ struct cXyz;
struct dPnt {
/* 0x0 */ u8 mArg1;
/* 0x1 */ u8 field_0x1;
/* 0x2 */ u8 field_0x2;
/* 0x1 */ u8 mArg2;
/* 0x2 */ u8 mArg3;
/* 0x3 */ u8 mArg0;
/* 0x4 */ Vec m_position;
}; // Size: 0x10

View File

@ -98,6 +98,10 @@ public:
static void setNpcYkmPosition(int param_1, Vec* param_2) {
setPosition(param_1, 13, param_2, -1);
}
static void setCoachPosition(int param_1, Vec* param_2, int param_3) {
setPosition(param_1, 10, param_2, param_3);
}
};
#endif /* D_D_TRESURE_H */

View File

@ -403,11 +403,17 @@ public:
/* 800113FC */ virtual ~mDoExt_McaMorf2();
/* 800116F4 */ virtual void calc();
inline f32 getAnmRate() { return mAnmRate; }
inline void changeAnm(J3DAnmTransform* anm, J3DAnmTransform* anm2) {
mpAnm = anm;
field_0x40 = anm2;
}
inline J3DModel* getModel() { return mpModel; }
private:
/* 0x38 */ mDoExt_McaMorfCallBack1_c* mpCallback1;
/* 0x3C */ mDoExt_McaMorfCallBack2_c* mpCallback2;
/* 0x40 */ J3DAnmTransform* field_0x40;
/* 0x44 */ f32 field_0x44;
/* 0x44 */ f32 mAnmRate;
/* 0x48 */ Z2Creature* mpSound;
/* 0x4C */ void* mpBas;
};

File diff suppressed because it is too large Load Diff

View File

@ -767,7 +767,7 @@ SECTION_RODATA static u8 const lit_4396[24] = {
COMPILER_STRIP_GATE(0x80B00E00, &lit_4396);
/* 80AFD508-80AFD5F0 000E88 00E8+00 0/0 0/0 2/2 .text getHandPos1__11daNpcTheB_cFi */
void daNpcTheB_c::getHandPos1(int param_0) {
cXyz daNpcTheB_c::getHandPos1(int param_1) {
// NONMATCHING
}
@ -780,7 +780,7 @@ SECTION_RODATA static u8 const lit_4424[24] = {
COMPILER_STRIP_GATE(0x80B00E18, &lit_4424);
/* 80AFD5F0-80AFD6D8 000F70 00E8+00 0/0 0/0 2/2 .text getHandPos2__11daNpcTheB_cFi */
void daNpcTheB_c::getHandPos2(int param_0) {
cXyz daNpcTheB_c::getHandPos2(int param_1) {
// NONMATCHING
}
@ -801,7 +801,7 @@ SECTION_DEAD static char const* const stringBase_80B0100E = "F_SP121";
#pragma pop
/* 80AFD6F0-80AFD938 001070 0248+00 2/1 0/0 0/0 .text main__11daNpcTheB_cFv */
void daNpcTheB_c::main() {
BOOL daNpcTheB_c::main() {
// NONMATCHING
}
@ -816,7 +816,7 @@ SECTION_RODATA static f32 const lit_4581 = 1.0f / 5.0f;
COMPILER_STRIP_GATE(0x80B00E34, &lit_4581);
/* 80AFDAA4-80AFDB70 001424 00CC+00 1/0 0/0 0/0 .text ctrlBtk__11daNpcTheB_cFv */
void daNpcTheB_c::ctrlBtk() {
BOOL daNpcTheB_c::ctrlBtk() {
// NONMATCHING
}
@ -873,23 +873,23 @@ void daNpcTheB_c::setAttnPos() {
/* 80AFDEC0-80AFE0BC 001840 01FC+00 2/0 0/0 0/0 .text setExpressionAnm__11daNpcTheB_cFib
*/
void daNpcTheB_c::setExpressionAnm(int param_0, bool param_1) {
bool daNpcTheB_c::setExpressionAnm(int param_0, bool param_1) {
// NONMATCHING
}
/* 80AFE0BC-80AFE1BC 001A3C 0100+00 1/0 0/0 0/0 .text setExpressionBtp__11daNpcTheB_cFi
*/
void daNpcTheB_c::setExpressionBtp(int param_0) {
bool daNpcTheB_c::setExpressionBtp(int param_0) {
// NONMATCHING
}
/* 80AFE1BC-80AFE398 001B3C 01DC+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcTheB_cFif */
bool daNpcTheB_c::setMotionAnm(int param_0, f32 param_1) {
void daNpcTheB_c::setMotionAnm(int param_0, f32 param_1) {
// NONMATCHING
}
/* 80AFE398-80AFE3A0 001D18 0008+00 1/0 0/0 0/0 .text drawDbgInfo__11daNpcTheB_cFv */
bool daNpcTheB_c::drawDbgInfo() {
BOOL daNpcTheB_c::drawDbgInfo() {
return false;
}

View File

@ -182,7 +182,7 @@ int daTagWljump_c::execute() {
mLandArea = point_p->mArg0 * 10.0f;
if (point_p->field_0x1 == 1) {
if (point_p->mArg2 == 1) {
shape_angle.z = 1;
} else {
shape_angle.z = 0;

View File

@ -64,7 +64,7 @@ dBgS_Acch::dBgS_Acch() {
pm_speed = NULL;
m_ground_h = -1000000000.0f;
field_0x90 = 0.0f;
field_0x9c = 60.0f;
m_gnd_chk_offset = 60.0f;
field_0x94 = 0.0f;
field_0xb4 = 0;
field_0xb8 = 0.0f;
@ -151,7 +151,7 @@ void dBgS_Acch::GroundCheck(dBgS& i_bgs) {
if (!(m_flags & GRND_NONE)) {
cXyz grnd_pos;
grnd_pos = *pm_pos;
grnd_pos.y += field_0x94 + (field_0x9c - field_0x90);
grnd_pos.y += field_0x94 + (m_gnd_chk_offset - field_0x90);
if (!ChkGndThinCellingOff()) {
static dBgS_RoofChk tmpRoofChk;
@ -367,12 +367,12 @@ void dBgS_Acch::CrrPos(dBgS& i_bgs) {
field_0xb8 = GetPos()->y;
field_0xc0 = 0;
f32 fvar12 = tmp2 + GetOldPos()->y;
f32 fvar1 = field_0x9c + GetPos()->y;
f32 fvar1 = m_gnd_chk_offset + GetPos()->y;
bool bvar2 = false;
OffLineCheckHit();
if (!ChkLineCheckNone() && !cM3d_IsZero(tmp) &&
(dvar10 > (tmp * tmp) || fvar12 > fvar1 || dvar11 > field_0x9c || ChkLineCheck()))
(dvar10 > (tmp * tmp) || fvar12 > fvar1 || dvar11 > m_gnd_chk_offset || ChkLineCheck()))
{
bvar2 = true;
LineCheck(i_bgs);

View File

@ -1753,8 +1753,8 @@ void mDoExt_McaMorf2::calc() {
} else {
field_0x40->getTransform(jnt_no, &spF0[1]);
sp18[0] = 1.0f - field_0x44;
sp18[1] = field_0x44;
sp18[0] = 1.0f - mAnmRate;
sp18[1] = mAnmRate;
var_r30->mScale.x = spF0[0].mScale.x * sp18[0]
+ spF0[1].mScale.x * sp18[1];
@ -1810,8 +1810,8 @@ void mDoExt_McaMorf2::calc() {
mpAnm->getTransform(jnt_no, &spF0[0]);
field_0x40->getTransform(jnt_no, &spF0[1]);
sp10[0] = 1.0f - field_0x44;
sp10[1] = field_0x44;
sp10[0] = 1.0f - mAnmRate;
sp10[1] = mAnmRate;
sp80.mScale.x = spF0[0].mScale.x * sp10[0]
+ spF0[1].mScale.x * sp10[1];
@ -1866,7 +1866,7 @@ void mDoExt_McaMorf2::setAnm(J3DAnmTransform* param_0, J3DAnmTransform* param_1,
int i_attr, f32 i_morf, f32 i_speed, f32 i_start, f32 i_end) {
mpAnm = param_0;
field_0x40 = param_1;
field_0x44 = param_2;
mAnmRate = param_2;
setStartFrame(i_start);
@ -1912,9 +1912,9 @@ void mDoExt_McaMorf2::setAnm(J3DAnmTransform* param_0, J3DAnmTransform* param_1,
/* 80011FCC-800120A0 00C90C 00D4+00 0/0 0/0 2/2 .text setAnmRate__15mDoExt_McaMorf2Ff */
void mDoExt_McaMorf2::setAnmRate(f32 param_0) {
void* pBas = NULL;
field_0x44 = param_0;
mAnmRate = param_0;
if (mpSound != NULL) {
if (field_0x44 < 0.5f) {
if (mAnmRate < 0.5f) {
if (mpAnm != NULL) {
pBas = ((mDoExt_transAnmBas*)mpAnm)->getBas();
}