d_a_b_girahimu - first naming pass

This commit is contained in:
elijah-thomas774
2026-10-11 21:59:32 -04:00
parent e33e87d10a
commit c8d81e2d23
7 changed files with 440 additions and 440 deletions
@@ -117,7 +117,7 @@ fn_228_80A0__14dAcGirahimu2_cFv = .text:0x000080A0; // type:function size:0x38
fn_228_80E0__14dAcGirahimu2_cFv = .text:0x000080E0; // type:function size:0x1DC
fn_228_82C0__14dAcGirahimu2_cFv = .text:0x000082C0; // type:function size:0x61C
vt_0x1FC__14dAcGirahimu2_cFv = .text:0x000088E0; // type:function size:0x70
vt_0x200__14dAcGirahimu2_cFv = .text:0x00008950; // type:function size:0x38
loadMainResFile__14dAcGirahimu2_cFv = .text:0x00008950; // type:function size:0x38
vt_0x204__14dAcGirahimu2_cFv = .text:0x00008990; // type:function size:0x18
vt_0x228__14dAcGirahimu2_cFv = .text:0x000089B0; // type:function size:0xF4
vt_0x22C__14dAcGirahimu2_cFv = .text:0x00008AB0; // type:function size:0x18
@@ -181,7 +181,7 @@ fn_226_A070__17dAcGirahimuBase_cF4mAng = .text:0x0000A070; // type:function size
fn_226_A120__17dAcGirahimuBase_cF4mAngf = .text:0x0000A120; // type:function size:0x160
fn_226_A280__17dAcGirahimuBase_cF4mAng = .text:0x0000A280; // type:function size:0x8C
turn__17dAcGirahimuBase_cF4mAng = .text:0x0000A310; // type:function size:0xE4
fn_226_A400__17dAcGirahimuBase_cFP8cCcD_Obj = .text:0x0000A400; // type:function size:0x16C
adjustSpineHitRotation__17dAcGirahimuBase_cFP8cCcD_Obj = .text:0x0000A400; // type:function size:0x16C
fn_226_A570__17dAcGirahimuBase_cFv = .text:0x0000A570; // type:function size:0x34C
getPlayerHeadOffset__17dAcGirahimuBase_cFv = .text:0x0000A8C0; // type:function size:0x64
executeEarringTransform__17dAcGirahimuBase_cFv = .text:0x0000A930; // type:function size:0x198
@@ -202,34 +202,34 @@ fn_226_B960__17dAcGirahimuBase_cFf = .text:0x0000B960; // type:function size:0x1
vt_0x21C__17dAcGirahimuBase_cFb = .text:0x0000BAC0; // type:function size:0x134
fn_226_BC00__17dAcGirahimuBase_cFv = .text:0x0000BC00; // type:function size:0x200
setFrame__17dAcGirahimuBase_cFf = .text:0x0000BE00; // type:function size:0x90
fn_226_BE90__17dAcGirahimuBase_cFPCc = .text:0x0000BE90; // type:function size:0xF4
setSound__17dAcGirahimuBase_cFPCc = .text:0x0000BE90; // type:function size:0xF4
sprintf__15SizedString<64>FPCce = .text:0x0000BF90; // type:function size:0xD0
fn_226_C060__17dAcGirahimuBase_cFv = .text:0x0000C060; // type:function size:0x158
fn_226_C1C0__17dAcGirahimuBase_cFv = .text:0x0000C1C0; // type:function size:0x160
fn_226_C320__17dAcGirahimuBase_cFv = .text:0x0000C320; // type:function size:0x238
fn_226_C560__17dAcGirahimuBase_cFv = .text:0x0000C560; // type:function size:0x134
fn_226_C6A0__17dAcGirahimuBase_cFv = .text:0x0000C6A0; // type:function size:0xEC
fn_226_C790__17dAcGirahimuBase_cFR8cCcD_Objs = .text:0x0000C790; // type:function size:0x1F4
configureBodyShield__17dAcGirahimuBase_cFv = .text:0x0000C6A0; // type:function size:0xEC
configureSwordShield__17dAcGirahimuBase_cFR8cCcD_Objs = .text:0x0000C790; // type:function size:0x1F4
vt_0x1F4__17dAcGirahimuBase_cFv = .text:0x0000C990; // type:function size:0x7C
vt_0x1F8__17dAcGirahimuBase_cFv = .text:0x0000CA10; // type:function size:0x224
fn_226_CC40__17dAcGirahimuBase_cFv = .text:0x0000CC40; // type:function size:0x10
fn_226_CC50__17dAcGirahimuBase_cFv = .text:0x0000CC50; // type:function size:0x10
setTgVulnerable__17dAcGirahimuBase_cFv = .text:0x0000CC40; // type:function size:0x10
setTgInvulnerable__17dAcGirahimuBase_cFv = .text:0x0000CC50; // type:function size:0x10
vt_0x220__17dAcGirahimuBase_cFv = .text:0x0000CC60; // type:function size:0x18
fn_226_CC80__17dAcGirahimuBase_cFv = .text:0x0000CC80; // type:function size:0x28
vt_0x200__17dAcGirahimuBase_cFv = .text:0x0000CCB0; // type:function size:0x38
isAttackingLeft__17dAcGirahimuBase_cFv = .text:0x0000CC80; // type:function size:0x28
loadMainResFile__17dAcGirahimuBase_cFv = .text:0x0000CCB0; // type:function size:0x38
vt_0x204__17dAcGirahimuBase_cFv = .text:0x0000CCF0; // type:function size:0x24
vt_0x228__17dAcGirahimuBase_cFv = .text:0x0000CD20; // type:function size:0x7C
fn_226_CDA0__17dAcGirahimuBase_cFv = .text:0x0000CDA0; // type:function size:0x58
fn_226_CE00__17dAcGirahimuBase_cFv = .text:0x0000CE00; // type:function size:0x58
simplifyShoulderLAnmID__17dAcGirahimuBase_cFv = .text:0x0000CDA0; // type:function size:0x58
simplifyShoulderRAnmID__17dAcGirahimuBase_cFv = .text:0x0000CE00; // type:function size:0x58
vt_0x208__17dAcGirahimuBase_cFv = .text:0x0000CE60; // type:function size:0x1D0
vt_0x20C__17dAcGirahimuBase_cFv = .text:0x0000D030; // type:function size:0x18
vt_0x22C__17dAcGirahimuBase_cFv = .text:0x0000D050; // type:function size:0x18
fn_226_D070__17dAcGirahimuBase_cFv = .text:0x0000D070; // type:function size:0x18
fn_226_D090__17dAcGirahimuBase_cFv = .text:0x0000D090; // type:function size:0x20C
clearAnms__17dAcGirahimuBase_cFv = .text:0x0000D070; // type:function size:0x18
handleEnterExitEffect__17dAcGirahimuBase_cFv = .text:0x0000D090; // type:function size:0x20C
vt_0x214__17dAcGirahimuBase_cFv = .text:0x0000D2A0; // type:function size:0x18
fn_226_D2C0__17dAcGirahimuBase_cFv = .text:0x0000D2C0; // type:function size:0x4
fn_226_D2D0__17dAcGirahimuBase_cFv = .text:0x0000D2D0; // type:function size:0x2C8
fn_226_D5A0__17dAcGirahimuBase_cFv = .text:0x0000D5A0; // type:function size:0x58
notifyTgSwordBattleGame__17dAcGirahimuBase_cFv = .text:0x0000D5A0; // type:function size:0x58
vt_0x88__11dAcEnBase_cFi = .text:0x0000D600; // type:function size:0x8
vt_0x84__11dAcEnBase_cFv = .text:0x0000D610; // type:function size:0x4
vt_0x80__11dAcEnBase_cFv = .text:0x0000D620; // type:function size:0x4
+1 -1
View File
@@ -50,7 +50,7 @@ public:
virtual void vt_0x1F4() override;
virtual void vt_0x1F8() override;
virtual void vt_0x1FC() override;
virtual void vt_0x200() override;
virtual void loadMainResFile() override;
virtual void vt_0x204() override;
virtual void vt_0x20C() override;
virtual bool vt_0x210() override;
+76 -76
View File
@@ -70,8 +70,8 @@ public:
void fn_226_3130();
void fn_226_3150(mMtx_c &);
/* 0x004 */ mQuat_c field_0x004;
/* 0x014 */ f32 field_0x014;
/* 0x004 */ mQuat_c field_0x004; // Set, never used
/* 0x014 */ f32 field_0x014; // Set, never used
/* 0x018 */ u16 mNodeID_ShoulderR;
/* 0x01A */ u16 mNodeID_ShoulderL;
/* 0x01C */ u16 mNodeID_Hip;
@@ -100,96 +100,96 @@ public:
/* 0x04A */ u16 mNodeID_KneeR;
/* 0x04C */ u16 mNodeID_KneeL;
/* 0x04E */ bool field_0x04E;
/* 0x04F */ bool field_0x04F;
/* 0x050 */ bool field_0x050;
/* 0x052 */ mAng field_0x052;
/* 0x054 */ mAng field_0x054;
/* 0x056 */ mAng field_0x056;
/* 0x058 */ mAng field_0x058;
/* 0x05A */ mAng field_0x05A;
/* 0x05C */ mAng field_0x05C;
/* 0x05E */ mAng field_0x05E;
/* 0x060 */ mAng field_0x060;
/* 0x062 */ mAng3_c field_0x062;
/* 0x068 */ mAng field_0x068;
/* 0x06A */ mAng field_0x06A;
/* 0x06C */ mAng field_0x06C;
/* 0x06E */ mAng field_0x06E;
/* 0x070 */ mVec3_c field_0x070;
/* 0x07C */ mAng field_0x07C;
/* 0x07E */ mAng field_0x07E;
/* 0x080 */ mAng field_0x080;
/* 0x082 */ mAng field_0x082;
/* 0x084 */ mAng field_0x084;
/* 0x04F */ bool field_0x04F; // ??
/* 0x050 */ bool field_0x050; // ??
/* 0x052 */ mAng field_0x052; // unused
/* 0x054 */ mAng mLegRotationY; // Leg RotY
/* 0x056 */ mAng mLegRotationYTarget; // Leg RotY Target
/* 0x058 */ mAng mSpineRotationY; // Spine RotY
/* 0x05A */ mAng mSpineRotationX; // Spine RotX
/* 0x05C */ mAng mSpineRotationYTarget; // Spine RotY Target
/* 0x05E */ mAng mSpineRotationXTarget; // Spine RotX Target
/* 0x060 */ mAng mSpineRotationYCorrection; // Spine RotY Correction?
/* 0x062 */ mAng3_c field_0x062; // Used on Hair and Spine rots
/* 0x068 */ mAng field_0x068; // field_0x062 Y Target Adjusted
/* 0x06A */ mAng field_0x06A; // field_0x062 Z Target Adjusted
/* 0x06C */ mAng field_0x06C; // field_0x062 Z Target
/* 0x06E */ mAng field_0x06E; // field_0x062 Y Target
/* 0x070 */ mVec3_c mHairTranslation; // Hair translation
/* 0x07C */ mAng mHeadRotationY; // Head RotY
/* 0x07E */ mAng mHeadRotationX; // Head RotX
/* 0x080 */ mAng mHeadRotationYTarget; // Head RotY Target
/* 0x082 */ mAng mHeadRotationXTarget; // Head RotX Target
/* 0x084 */ mAng mHeadRotationYCorrection; // Head RotY Correction?
/* 0x086*/ u8 _0x086[0x088 - 0x086];
/* 0x088 */ bool field_0x088;
/* 0x08C */ mVec3_c field_0x08C; // Head Translation
/* 0x098 */ f32 field_0x098;
/* 0x08C */ mVec3_c mHeadTranslation; // Head Translation
/* 0x098 */ f32 field_0x098; // ??
/* 0x09C*/ u8 _0x09C[0x0A8 - 0x09C];
/* 0x0A8 */ mVec3_c field_0x0A8;
/* 0x0B4 */ mAng field_0x0B4;
/* 0x0A8 */ mVec3_c field_0x0A8; // Set, never used
/* 0x0B4 */ mAng field_0x0B4; // Set, never used
/* 0x0B6*/ u8 _0x0B6[0x0E8 - 0x0B6];
/* 0x0E8 */ mMtx_c field_0x0E8; // ElbowR Transform
/* 0x118 */ mQuat_c field_0x118; // EbowR Rotation
/* 0x128 */ mVec3_c field_0x128;
/* 0x0E8 */ mMtx_c mElbowRTransform; // ElbowR Transform
/* 0x118 */ mQuat_c mElbowRRotation; // EbowR Rotation
/* 0x128 */ mVec3_c field_0x128; // Set, never used
/* 0x134*/ u8 _0x134[0x164 - 0x134];
/* 0x164 */ mVec3_c field_0x164; // ElbowR Translation
/* 0x164 */ mVec3_c mElblowRTranslation; // ElbowR Translation
/* 0x170*/ u8 _0x170[0x17C - 0x170];
/* 0x17C */ mVec3_c field_0x17C; // ElbowR Scale
/* 0x18C */ f32 field_0x188; // ElbowR distance to HandR?
/* 0x18C */ mVec3_c field_0x18C; // ElbowR Translation from ArmR?
/* 0x198 */ bool field_0x198; // ElbowR first Retrieve
/* 0x19C */ mMtx_c field_0x19C; // ArmR Transform
/* 0x1CC */ mQuat_c field_0x1CC; // ArmR Rotation
/* 0x17C */ mVec3_c mElbowRScale; // ElbowR Scale
/* 0x18C */ f32 mArmRForearmLength; // ElbowR distance to HandR?
/* 0x18C */ mVec3_c mArmRUpperArmVector; // ElbowR Translation from ArmR?
/* 0x198 */ bool mbElbowRTransformGet; // ElbowR first Retrieve
/* 0x19C */ mMtx_c mArmRTransform; // ArmR Transform
/* 0x1CC */ mQuat_c mArmRRotation; // ArmR Rotation
/* 0x1DC*/ u8 _0x1DC[0x1E8 - 0x1DC];
/* 0x1E8 */ bool field_0x1E8; // ArmR first Retrieve
/* 0x1E8 */ bool mbArmRTransformGet; // ArmR first Retrieve
/* 0x1E9*/ u8 _0x1E9[0x21C - 0x1E9];
/* 0x21C */ mVec3_c field_0x21C; // ArmR Translation
/* 0x228*/ mVec3_c field_0x228; // ArmR Scale
/* 0x234 */ f32 field_0x234; // ArmR Distance to Elbow?
/* 0x238 */ mAng field_0x238;
/* 0x23A */ mAng field_0x23A;
/* 0x23C */ mAng field_0x23C;
/* 0x23E */ mAng field_0x23E;
/* 0x240 */ mAng field_0x240;
/* 0x242 */ mAng field_0x242;
/* 0x244 */ bool field_0x244;
/* 0x244 */ bool field_0x245;
/* 0x21C */ mVec3_c mArmRTranslation; // ArmR Translation
/* 0x228*/ mVec3_c mArmRScale; // ArmR Scale
/* 0x234 */ f32 mArmRUpperArmLength; // ArmR Distance to Elbow?
/* 0x238 */ mAng mElbowRRotationY; // ElbowR Y Rot
/* 0x23A */ mAng mElbowLRotation; // ElbowL Y Rot
/* 0x23C */ mAng mElbowRRotationYAmplitude; // ElbowR Y Rot Amp
/* 0x23E */ mAng mElbowLRotationYAmplitude; // ElbowL Y Rot Amp
/* 0x240 */ mAng mElbowRRotationYPhase; // ElbowR Y Rot Phase
/* 0x242 */ mAng mElbowLRotationYPhase; // ElbowL Y Rot Phase
/* 0x244 */ bool field_0x244; // Set, never used
/* 0x244 */ bool field_0x245; // Set, never used
/* 0x246*/ u8 _0x246[0x254 - 0x246];
/* 0x254 */ mVec3_c field_0x254;
/* 0x260 */ mVec3_c field_0x260; // HandR Translation
/* 0x254 */ mVec3_c mHandRAdjustedPosition;
/* 0x260 */ mVec3_c mHandRTranslation; // HandR Translation
/* 0x26C */ mVec3_c field_0x26C;
/* 0x278 */ mMtx_c field_0x278; // HandR Transform
/* 0x2A8 */ mQuat_c field_0x2A8; // HandR Rotation
/* 0x2B8 */ bool field_0x2B8; // HandR First Retrieve
/* 0x2BA */ mAng field_0x2BA; // HandR Pitch
/* 0x278 */ mMtx_c mHandRTransform; // HandR Transform
/* 0x2A8 */ mQuat_c mHandRRotation; // HandR Rotation
/* 0x2B8 */ bool mbHandRTransformGet; // HandR First Retrieve
/* 0x2BA */ mAng mHandRRotationY; // HandR Rot Y
/* 0x2BC */ s16 field_0x2BC;
/* 0x2C0 */ nw4r::g3d::WorldMtxManip *field_0x2C0;
/* 0x2C4 */ nw4r::g3d::WorldMtxManip *field_0x2C4;
/* 0x2C0 */ nw4r::g3d::WorldMtxManip *mpArmRManip; // ArmR Manip
/* 0x2C4 */ nw4r::g3d::WorldMtxManip *mpElbowRManip; // ElbowR Manip
/* 0x2C8 */ dAcGirahimuBase_c *mpGhirahim;
/* 0x2CC */ f32 field_0x2CC;
/* 0x2D0 */ f32 field_0x2D0; // slerp interpolation
/* 0x2D4 */ f32 field_0x2D4;
/* 0x2CC */ f32 mHandRPositionMaxStep;
/* 0x2D0 */ f32 mSlerpFactor; // slerp interpolation
/* 0x2D4 */ f32 mSlerpFactorTarget;
/* 0x2D8 */ f32 field_0x2D8;
/* 0x2DC */ f32 field_0x2DC;
/* 0x2DC */ f32 field_0x2DC; // unused
/* 0x2E0 */ mVec3_c field_0x2E0;
/* 0x2EC */ mVec3_c field_0x2EC;
/* 0x2EC */ mVec3_c field_0x2EC; // Set, never used
};
enum AnmID_e {
@@ -322,7 +322,7 @@ public:
/* vt 0x1F4 */ virtual void vt_0x1F4();
/* vt 0x1F8 */ virtual void vt_0x1F8();
/* vt 0x1FC */ virtual void vt_0x1FC() {}
/* vt 0x200 */ virtual void vt_0x200();
/* vt 0x200 */ virtual void loadMainResFile();
/* vt 0x204 */ virtual void vt_0x204();
/* vt 0x208 */ virtual bool vt_0x208();
/* vt 0x20C */ virtual void vt_0x20C();
@@ -392,7 +392,7 @@ public:
bool fn_226_A120(mAng, f32);
bool fn_226_A280(mAng);
bool turn(mAng);
void fn_226_A400(cCcD_Obj *pObj);
void adjustSpineHitRotation(cCcD_Obj *pObj);
bool fn_226_A570();
mVec3_c getPlayerHeadOffset();
void executeEarringTransform();
@@ -406,24 +406,24 @@ public:
void fn_226_BC00();
void setFrame(f32);
bool fn_226_BE90(const char *soundName);
bool setSound(const char *soundName);
void fn_226_C060();
void fn_226_C1C0();
void fn_226_C320();
void fn_226_C560();
void fn_226_C6A0();
void fn_226_C790(cCcD_Obj &cc, s16 anm);
void fn_226_CC40();
void fn_226_CC50();
bool fn_226_CC80();
void fn_226_CDA0();
void fn_226_CE00();
void configureBodyShield();
void configureSwordShield(cCcD_Obj &cc, s16 anm);
void setTgVulnerable();
void setTgInvulnerable();
bool isAttackingLeft();
void simplifyShoulderLAnmID();
void simplifyShoulderRAnmID();
void fn_226_D070();
void fn_226_D090();
void clearAnms();
void handleEnterExitEffect();
void fn_226_D2C0();
void fn_226_D2D0();
void fn_226_D5A0();
void notifyTgSwordBattleGame();
protected:
/* 0x0378 */ STATE_MGR_DECLARE(dAcGirahimuBase_c);
@@ -432,7 +432,7 @@ protected:
/* 0x0400 */ nw4r::g3d::ResFile mResAnmChr0;
/* 0x0404 */ nw4r::g3d::ResFile mResAnmChr1;
/* 0x0408 */ m3d::anmChr_c mAnmChrs[5];
/* 0x0520 */ dSoundSourceIf_c *pSoundIface;
/* 0x0520 */ dSoundSourceIf_c *mpSound;
/* 0x0524 */ void *mpSoundBrasd;
/* 0x0528 */ m3d::anmTexPat_c mAnmTexPatWink;
/* 0x0554 */ dNpcMdlCallbackEye_c mEyeMdlCallback;
+18 -18
View File
@@ -72,9 +72,9 @@ void dAcGirahimu_c::initializeState_G_SwordDemo() {
SceneflagManager::sInstance->setFlag(mRoomID, getFromParams(8, 0xFF));
}
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
field_0xD44 = 0;
mCallback.field_0x2D0 = 1.0f;
mCallback.mSlerpFactor = 1.0f;
mCyl0.SetR(50.0f);
mCyl2.OnTgSet();
mSph0.ClrTgSet();
@@ -151,7 +151,7 @@ void dAcGirahimu_c::executeState_G_SwordDemo() {
pCamera->setEventCamView(field_0x20F8, field_0x20EC, 35.0f, 0.0f);
if (field_0xD46 <= 0) {
fn_226_D070();
clearAnms();
setAnm("WaitA", ANM_WaitA, "WaitA", ANM_WaitA, "FaceTongue", ANM_NONE, m3d::PLAY_MODE_4, 15.0f, 1.0f);
field_0xD46 = 50;
field_0xD44++;
@@ -423,7 +423,7 @@ void dAcGirahimu_c::fn_227_1EA0() {
cCcD_Obj *pCc = mMdlSwordA.mCcList.findAtHit();
if (pCc != nullptr && pCc->ChkAtShieldReflect()) {
changeState(StateID_G_SwordDamage);
fn_226_D070();
clearAnms();
setAnm("GuardLSwordA", ANM_DamageHit, nullptr, m3d::PLAY_MODE_4, 5.0f, 1.0f);
field_0xD62 = 40;
mCallback.field_0x088 = true;
@@ -485,8 +485,8 @@ void dAcGirahimu_c::initializeState_Knife() {
if (mAnmChrs[ANMIDX_Body].getPlayMode() == m3d::PLAY_MODE_2) {
rate = -rate;
}
if (pSoundIface != nullptr) {
pSoundIface->setRate(rate);
if (mpSound != nullptr) {
mpSound->setRate(rate);
}
mSpeed = 0.0f;
field_0x1834 = -8.0f * mAnmChrs[ANMIDX_Body].getRate();
@@ -588,7 +588,7 @@ void dAcGirahimu_c::finalizeState_Knife() {}
void dAcGirahimu_c::initializeState_Death() {
field_0xD44 = 0;
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
field_0x1834 = 0.0f;
mSpeed = 0.0f;
field_0x1830 = 200.0f;
@@ -740,13 +740,13 @@ void dAcGirahimu_c::finalizeState_Death() {
void dAcGirahimu_c::initializeState_DeathMiniGame() {
mCollider.ClrTg();
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
field_0xD44 = 0;
field_0x1834 = 0.0f;
mSpeed = 0.0f;
field_0x1830 = 200.0f;
mCallback.field_0x088 = false;
fn_226_D5A0();
notifyTgSwordBattleGame();
setAnm("DamageHit", ANM_DamageHit, nullptr, m3d::PLAY_MODE_4, 5.0f, 1.0f);
field_0xD6C = 0;
}
@@ -822,8 +822,8 @@ int dAcGirahimu_c::actorExecute() {
}
mMdlBody.play();
if (pSoundIface != nullptr) {
pSoundIface->setFrame(mAnmChrs[ANMIDX_Body].getFrame());
if (mpSound != nullptr) {
mpSound->setFrame(mAnmChrs[ANMIDX_Body].getFrame());
}
mWorldMtx.transS(mPosition.x, mPosition.y + getYOffset(), mPosition.z);
mWorldMtx.ZXYrotM(mRotation);
@@ -860,7 +860,7 @@ int dAcGirahimu_c::actorExecute() {
mCallback.field_0x0A8.set(1.0f, 0.0f, 0.0f);
mCallback.field_0x0A8.rotY(mRotation.y);
mCallback.field_0x084 = mRotation.y;
mCallback.mHeadRotationYCorrection = mRotation.y;
mCallback.fn_226_3130();
mSwordLink.get()->setAngleCopy(mRotation);
@@ -900,15 +900,15 @@ int dAcGirahimu_c::actorExecute() {
}
mMdlBody.play();
if (pSoundIface != nullptr) {
pSoundIface->setFrame(mAnmChrs[ANMIDX_Body].getFrame());
if (mpSound != nullptr) {
mpSound->setFrame(mAnmChrs[ANMIDX_Body].getFrame());
}
mWorldMtx.transS(mPosition.x, mPosition.y + getYOffset(), mPosition.z);
mWorldMtx.ZXYrotM(mRotation);
mWorldMtx.scaleM(field_0x8B0.x, field_0x8B0.y, field_0x8B0.z);
mMdlBody.setLocalMtx(mWorldMtx);
mMdlBody.calc(false);
fn_226_D090();
handleEnterExitEffect();
fn_226_D2D0();
mAnmTexPatWink.play();
fn_226_9690();
@@ -986,8 +986,8 @@ int dAcGirahimu_c::actorExecute() {
}
void dAcGirahimu_c::initializeState_CatchDamage() {
mCallback.field_0x2D4 = 0.5f;
fn_226_D070();
mCallback.mSlerpFactorTarget = 0.5f;
clearAnms();
setAnm("Damage", ANM_Damage, nullptr, m3d::PLAY_MODE_4, 5.0f, 0.5f);
field_0xD6C = 1;
mCallback.field_0x088 = false;
@@ -1006,7 +1006,7 @@ void dAcGirahimu_c::executeState_CatchDamage() {
if (field_0xD81) {
mCyl2.ClrTgSet();
mSph0.ClrTgSet();
fn_226_CC40();
setTgVulnerable();
}
if (mAnmChrs[ANMIDX_Body].isStop()) {
+53 -53
View File
@@ -216,7 +216,7 @@ void dAcGirahimu2_c::finalizeState_CreateKnife() {}
void dAcGirahimu2_c::initializeState_KnifePreAttack() {
mCallback.field_0x088 = true;
fn_226_D070();
clearAnms();
if (field_0x1838 <= 1000.0f) {
setAnm("CallWalk", ANM_Call, nullptr, m3d::PLAY_MODE_4, 5.0f, 1.5f);
setAnmHip("Walk", ANM_Walk, m3d::PLAY_MODE_2, 15.0f, 1.2f);
@@ -413,7 +413,7 @@ void dAcGirahimu2_c::initializeState_ComeOn() {
field_0x221C = 0;
field_0x1834 = 0.0f;
mSpeed = 0.0f;
fn_226_D070();
clearAnms();
setAnm("WalkBt", ANM_Walk, nullptr, m3d::PLAY_MODE_4, 15.0f, 1.0f);
setAnm("PoseFree", ANM_PoseFree, m3d::PLAY_MODE_4, 5.0f, 1.0f);
field_0xD6C = 9;
@@ -483,9 +483,9 @@ void dAcGirahimu2_c::initializeState_G_SwordDemo() {
SceneflagManager::sInstance->setFlag(mRoomID, getFromParams(8, 0xFF));
}
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
field_0xD44 = 0;
mCallback.field_0x2D0 = 1.0f;
mCallback.mSlerpFactor = 1.0f;
mCyl0.SetR(30.0f);
mCyl2.OnTgSet();
mSph0.ClrTgSet();
@@ -986,7 +986,7 @@ void dAcGirahimu2_c::finalizeState_G_SwordPiyori() {
void dAcGirahimu2_c::initializeState_Death() {
field_0xD44 = 0;
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
field_0x1834 = 0.0f;
mSpeed = 0.0f;
field_0x1830 = 200.0f;
@@ -1220,14 +1220,14 @@ void dAcGirahimu2_c::fn_228_47F0(bool bVertical) {
void dAcGirahimu2_c::initializeState_DeathMiniGame() {
field_0xD44 = 0;
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
field_0x1834 = 0.0f;
mSpeed = 0.0f;
field_0x1830 = 200.0f;
mCallback.field_0x088 = false;
field_0xD6C = 0;
mCollider.ClrTg();
fn_226_D5A0();
notifyTgSwordBattleGame();
setAnm("End2A", ANM_EndA, nullptr, m3d::PLAY_MODE_4, 5.0f, 1.0f);
}
void dAcGirahimu2_c::executeState_DeathMiniGame() {
@@ -1274,7 +1274,7 @@ void dAcGirahimu2_c::fn_228_4A30() {
pCc = mCollider.findTgHit();
if (pCc != nullptr) {
if (pCc->GetTgAtHitType() == AT_TYPE_SWORD) {
fn_226_A400(pCc);
adjustSpineHitRotation(pCc);
}
}
}
@@ -1476,7 +1476,7 @@ void dAcGirahimu2_c::fn_228_5400() {
getSoundSource()->startSoundAtPosition(SE_Girahim_SWORD_HIT_SWORD, pCc->GetTgHitPos());
changeState(StateID_Counter);
} else {
fn_226_A400(pCc);
adjustSpineHitRotation(pCc);
changeState(StateID_G_SwordDamage);
}
} else if (field_0x221C == 1) {
@@ -1489,7 +1489,7 @@ void dAcGirahimu2_c::fn_228_5400() {
changeState(StateID_ComeOnGuard);
field_0x221C++;
} else {
fn_226_A400(pCc);
adjustSpineHitRotation(pCc);
changeState(StateID_G_SwordDamage);
}
} else if (pCc->GetTgShieldType() != AT_TYPE_NONE) {
@@ -1498,7 +1498,7 @@ void dAcGirahimu2_c::fn_228_5400() {
changeState(StateID_ComeOnGuard);
field_0x221C++;
} else {
fn_226_A400(pCc);
adjustSpineHitRotation(pCc);
changeState(StateID_G_SwordDamage);
}
}
@@ -1634,46 +1634,46 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
switch (mAnmIDShoulderR) {
case ANM_PoseC:
mCallback.field_0x245 = true;
mCallback.field_0x23C = mAng(0x1000);
mCallback.field_0x240 = 0;
mCallback.mElbowRRotationYAmplitude = mAng(0x1000);
mCallback.mElbowRRotationYPhase = 0;
break;
case ANM_PoseL:
mCallback.field_0x245 = true;
mCallback.field_0x23C = mAng(0x1000);
mCallback.field_0x240 = 0;
mCallback.mElbowRRotationYAmplitude = mAng(0x1000);
mCallback.mElbowRRotationYPhase = 0;
break;
case ANM_PoseR:
mCallback.field_0x245 = false;
mCallback.field_0x23C = mAng(0x1000);
mCallback.field_0x240 = 0;
mCallback.mElbowRRotationYAmplitude = mAng(0x1000);
mCallback.mElbowRRotationYPhase = 0;
break;
case ANM_PoseC2:
mCallback.field_0x245 = true;
mCallback.field_0x23C = mAng(0x1000);
mCallback.field_0x240 = 0;
mCallback.mElbowRRotationYAmplitude = mAng(0x1000);
mCallback.mElbowRRotationYPhase = 0;
break;
}
} else {
switch (mAnmIDShoulderL) {
case ANM_PoseC:
mCallback.field_0x244 = true;
mCallback.field_0x23E = -0x1000;
mCallback.field_0x242 = 0;
mCallback.mElbowLRotationYAmplitude = -0x1000;
mCallback.mElbowLRotationYPhase = 0;
break;
case ANM_PoseL:
mCallback.field_0x244 = false;
mCallback.field_0x23E = -0x1000;
mCallback.field_0x242 = 0;
mCallback.mElbowLRotationYAmplitude = -0x1000;
mCallback.mElbowLRotationYPhase = 0;
break;
case ANM_PoseR:
mCallback.field_0x244 = true;
mCallback.field_0x23E = -0x1000;
mCallback.field_0x242 = 0;
mCallback.mElbowLRotationYAmplitude = -0x1000;
mCallback.mElbowLRotationYPhase = 0;
break;
case ANM_PoseC2:
mCallback.field_0x244 = true;
mCallback.field_0x23E = -0x1000;
mCallback.field_0x242 = 0;
mCallback.mElbowLRotationYAmplitude = -0x1000;
mCallback.mElbowLRotationYPhase = 0;
break;
}
}
@@ -1704,8 +1704,8 @@ void dAcGirahimu2_c::vt_0x1F4() {
mCps1.ClrTgSet();
} else {
fn_226_C790(mCps0, mAnmIDShoulderR);
fn_226_C790(mCps1, mAnmIDShoulderL);
configureSwordShield(mCps0, mAnmIDShoulderR);
configureSwordShield(mCps1, mAnmIDShoulderL);
if (mCps0.ChkTgSet()) {
mCyl2.ClrTgSet();
}
@@ -1778,7 +1778,7 @@ bool dAcGirahimu2_c::createHeap() {
nw4r::g3d::ResFile bodyRes;
void *rawRes = getOarcResFile("GirahimBt02");
mResAnmChr0 = nw4r::g3d::ResFile(rawRes);
vt_0x200();
loadMainResFile();
nw4r::g3d::ResMdl resMdl = mResAnmChr0.GetResMdl("GirahimBt02");
if (!mMdlBody.create(resMdl, &mAllocator, 0x137, 1, nullptr)) {
return false;
@@ -1826,7 +1826,7 @@ bool dAcGirahimu2_c::createHeap() {
int id = m3d::getMatID(mMdlBody.getResMdl(), "m_Eyeball");
mEyeMdlCallback.create(mMdlBody, id, id, 1, 1, nullptr);
mEyeMdlCallback.mBlendWeight = 1;
pSoundIface = getSoundSource();
mpSound = getSoundSource();
return true;
}
@@ -1902,8 +1902,8 @@ int dAcGirahimu2_c::actorExecute() {
mAnmChrs[i].play();
}
mMdlBody.play();
if (pSoundIface != nullptr) {
pSoundIface->setFrame(mAnmChrs[ANMIDX_Body].getFrame());
if (mpSound != nullptr) {
mpSound->setFrame(mAnmChrs[ANMIDX_Body].getFrame());
}
mWorldMtx.transS(mPosition.x, mPosition.y + getYOffset(), mPosition.z);
mWorldMtx.ZXYrotM(mRotation);
@@ -1940,7 +1940,7 @@ int dAcGirahimu2_c::actorExecute() {
mCallback.field_0x0A8.set(1.0f, 0.0f, 0.0f);
mCallback.field_0x0A8.rotY(mRotation.y);
mCallback.field_0x084 = mRotation.y;
mCallback.mHeadRotationYCorrection = mRotation.y;
mCallback.fn_226_3130();
mSwordLink.get()->setAngleCopy(mRotation);
@@ -1971,12 +1971,12 @@ int dAcGirahimu2_c::actorExecute() {
}
mMdlBody.play();
if (pSoundIface != nullptr) {
pSoundIface->setFrame(mAnmChrs[ANMIDX_Body].getFrame());
if (mpSound != nullptr) {
mpSound->setFrame(mAnmChrs[ANMIDX_Body].getFrame());
}
mMdlBody.calc(false);
if (!isState(StateID_UpWarp)) {
fn_226_D090();
handleEnterExitEffect();
}
fn_226_D2D0();
mAnmTexPatWink.play();
@@ -2018,7 +2018,7 @@ int dAcGirahimu2_c::actorExecute() {
mKnives[i].get()->field_0x6F0.set(mRotation.x, mRotation.y, mRotation.z);
mKnives[i].get()->field_0x6D8.set(mPosition);
mKnives[i].get()->field_0x6E4.set(mCallback.field_0x260);
mKnives[i].get()->field_0x6E4.set(mCallback.mHandRTranslation);
if (mKnives[i].get()->isWaiting()) {
playerSound1 = true;
@@ -2053,15 +2053,15 @@ void dAcGirahimu2_c::initializeState_Walk() {
setAnm("Walk", ANM_Walk, nullptr, m3d::PLAY_MODE_4, 15.0f, 1.0f);
mCallback.field_0x088 = true;
mCallback.field_0x04E = false;
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
if (dAcPy_c::GetLinkM()->isUsingSword()) {
mCallback.field_0x04E = true;
mCallback.field_0x2D4 = 0.5f;
mCallback.field_0x2D0 = 0.0f;
mCallback.mSlerpFactorTarget = 0.5f;
mCallback.mSlerpFactor = 0.0f;
} else {
mCallback.field_0x04E = false;
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
}
field_0xD46 = 100;
}
@@ -2145,11 +2145,11 @@ void dAcGirahimu2_c::initializeState_CreateSpinKnife() {
field_0xD81 = true;
if (dAcPy_c::GetLinkM()->isUsingSword()) {
mCallback.field_0x04E = true;
mCallback.field_0x2D4 = 0.2f;
mCallback.field_0x2D0 = 0.2f;
mCallback.mSlerpFactorTarget = 0.2f;
mCallback.mSlerpFactor = 0.2f;
} else {
mCallback.field_0x04E = false;
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
}
}
void dAcGirahimu2_c::executeState_CreateSpinKnife() {
@@ -2177,8 +2177,8 @@ void dAcGirahimu2_c::finalizeState_CreateSpinKnife() {
}
void dAcGirahimu2_c::initializeState_CatchDamage() {
mCallback.field_0x2D4 = 0.5f;
fn_226_D070();
mCallback.mSlerpFactorTarget = 0.5f;
clearAnms();
setAnm("Damage", ANM_Damage, nullptr, m3d::PLAY_MODE_4, 5.0f, 0.5f);
field_0xD6C = 1;
mCallback.field_0x088 = false;
@@ -2197,7 +2197,7 @@ void dAcGirahimu2_c::executeState_CatchDamage() {
if (field_0xD81) {
mCyl2.ClrTgSet();
mSph0.ClrTgSet();
fn_226_CC40();
setTgVulnerable();
}
if (mAnmChrs[ANMIDX_Body].isStop()) {
if (getHealth() > 0) {
@@ -2264,7 +2264,7 @@ void dAcGirahimu2_c::initializeState_Catch() {
mCallback.field_0x088 = true;
dAcPy_c::GetLinkM()->set0x439F(this, 7);
mCallback.field_0x014 = 1.0f;
mCallback.field_0x2D4 = 0.5f;
mCallback.mSlerpFactorTarget = 0.5f;
field_0xD46 = 4;
field_0xD5E = 100;
}
@@ -2350,7 +2350,7 @@ void dAcGirahimu2_c::finalizeState_Catch() {
mCallback.field_0x04E = false;
field_0xD71 = false;
mCollider.CoSet();
mCallback.field_0x2D4 = 1.0f;
mCallback.mSlerpFactorTarget = 1.0f;
if ((s32)getFromParams(0, 0xFF) != 0xFF) {
SceneflagManager::sInstance->unsetFlag(mRoomID, getFromParams(0, 0xFF));
}
@@ -2410,7 +2410,7 @@ void dAcGirahimu2_c::fn_228_82C0() {
mVec3_c v1(0.0f, 100.0f, 200.0f);
v1.rotY(mRotation.y);
v0 += v1;
v0.y = mCallback.field_0x21C.y;
v0.y = mCallback.mArmRTranslation.y;
int rnd = cM::rndInt(90);
mAng a0;
@@ -2552,7 +2552,7 @@ void dAcGirahimu2_c::vt_0x1FC() {
}
}
void dAcGirahimu2_c::vt_0x200() {
void dAcGirahimu2_c::loadMainResFile() {
mResAnmChr1 = nw4r::g3d::ResFile(getOarcResFile("GirahimBt"));
}
@@ -2629,7 +2629,7 @@ void dAcGirahimu2_c::vt_0x234() {
return;
}
} else if (pCc == &mCyl2) {
fn_226_A400(pCc);
adjustSpineHitRotation(pCc);
if (pCc->GetTgAtCutDir() == CUT_DIR_STAB) {
changeState(StateID_BackStep);
} else {
File diff suppressed because it is too large Load Diff