mirror of
https://github.com/zeldaret/tp
synced 2026-06-26 02:14:43 -04:00
Alink Documentation (#3159)
* some player work * more work * better name * fix compilation
This commit is contained in:
+30
-30
@@ -3174,7 +3174,7 @@ public:
|
||||
}
|
||||
virtual MtxP getModelMtx() { return mpLinkModel->getBaseTRMtx(); }
|
||||
virtual MtxP getInvMtx() { return mInvMtx; }
|
||||
virtual cXyz* getShadowTalkAtnPos() { return &field_0x375c; }
|
||||
virtual cXyz* getShadowTalkAtnPos() { return &mShadowTalkAtnPos; }
|
||||
virtual MtxP getLeftItemMatrix();
|
||||
virtual MtxP getRightItemMatrix();
|
||||
virtual MtxP getLeftHandMatrix();
|
||||
@@ -3373,7 +3373,7 @@ public:
|
||||
virtual void setDkCaught(fopAc_ac_c* i_dkActor);
|
||||
virtual void onPressedDamage(cXyz const&, s16);
|
||||
virtual bool checkPriActorOwn(fopAc_ac_c const* i_actor) const {
|
||||
return field_0x27f4 == i_actor;
|
||||
return mPriActorOwn == i_actor;
|
||||
}
|
||||
virtual bool onWolfEnemyBiteAll(fopAc_ac_c* i_enemy, daPy_py_c::daPy_FLG2 i_flag);
|
||||
virtual bool checkWolfEnemyBiteAllOwn(fopAc_ac_c const* i_actor) const {
|
||||
@@ -3605,10 +3605,10 @@ public:
|
||||
|
||||
void setEndGanonThrow() { mProcVar3.field_0x300e = 1; }
|
||||
|
||||
s16 getProcNeckX() { return field_0x30a0; }
|
||||
s16 getMidnaProcNeckY() { return field_0x30d4; }
|
||||
f32 getEyeMoveRateY() { return field_0x33f4; }
|
||||
f32 getMidnaEyeMoveRateX() { return field_0x33f8; }
|
||||
s16 getProcNeckX() { return mProcNeckX; }
|
||||
s16 getMidnaProcNeckY() { return mMidnaProcNeckY; }
|
||||
f32 getEyeMoveRateY() { return mEyeMoveRateY; }
|
||||
f32 getMidnaEyeMoveRateX() { return mMidnaEyeMoveRateX; }
|
||||
|
||||
J3DModel* getMidnaModel() {
|
||||
if (mClothesChangeWaitTimer != 0) {
|
||||
@@ -3629,16 +3629,16 @@ public:
|
||||
return &m_faceTexDataTable[i_anmID];
|
||||
}
|
||||
|
||||
s16 getCameraAngleX() const { return field_0x310a; }
|
||||
s16 getCameraAngleY() const { return field_0x310c; }
|
||||
cXyz* getSubjectEyePos() { return &field_0x3768; }
|
||||
s16 getCameraAngleX() const { return mCameraAngleX; }
|
||||
s16 getCameraAngleY() const { return mCameraAngleY; }
|
||||
cXyz* getSubjectEyePos() { return &mSubjectEyePos; }
|
||||
|
||||
u32 checkReinRide() const { return mRideStatus == RIDETYPE_HORSE || mRideStatus == RIDETYPE_BOAR; }
|
||||
int getGrassHowlEventActor() const { return field_0x3198; }
|
||||
MtxP getShieldMtx() const { return mShieldModel->getBaseTRMtx(); }
|
||||
MtxP getMagneBootsMtx() { return mMagneBootMtx; }
|
||||
MtxP getMagneBootsInvMtx() { return mMagneBootInvMtx; }
|
||||
s16 getMagneBootsModelShapeAngle() const { return field_0x3118; }
|
||||
s16 getMagneBootsModelShapeAngle() const { return mMagneBootsModelShapeAngle; }
|
||||
|
||||
BOOL checkFishingCastMode() const {
|
||||
return (mProcID == PROC_FISHING_CAST && !(mItemAcKeep.getActor() != NULL && mItemAcKeep.getActor()->eventInfo.checkCommandDemoAccrpt())) ||
|
||||
@@ -3672,7 +3672,7 @@ public:
|
||||
|
||||
f32 getFishingReelFrame() const { return mUpperFrameCtrl[2].getFrame(); }
|
||||
|
||||
void changeFishGetFace(u8 param_0) { field_0x2fc8 = param_0; }
|
||||
void changeFishGetFace(u8 param_0) { mFishGetFace = param_0; }
|
||||
|
||||
BOOL checkSlideMode() {
|
||||
return mProcID == PROC_SLIDE || mProcID == PROC_SLIDE_LAND ||
|
||||
@@ -4041,7 +4041,7 @@ public:
|
||||
/* 0x01F94 */ daPy_anmHeap_c mUpperAnmHeap[3];
|
||||
/* 0x01FD0 */ daPy_frameCtrl_c mUnderFrameCtrl[3];
|
||||
/* 0x02018 */ daPy_frameCtrl_c mUpperFrameCtrl[3];
|
||||
/* 0x02060 */ mDoExt_MtxCalcOldFrame* field_0x2060;
|
||||
/* 0x02060 */ mDoExt_MtxCalcOldFrame* m_oldFrameCalc;
|
||||
/* 0x02064 */ daAlink_sight_c mSight;
|
||||
#if PLATFORM_WII
|
||||
u8 unk_0x20f0[4];
|
||||
@@ -4069,7 +4069,7 @@ public:
|
||||
/* 0x027E8 */ dAttList_c* mAttList2;
|
||||
/* 0x027EC */ fopAc_ac_c* mTargetedActor;
|
||||
/* 0x027F0 */ fopAc_ac_c* field_0x27f0;
|
||||
/* 0x027F4 */ fopAc_ac_c* field_0x27f4;
|
||||
/* 0x027F4 */ fopAc_ac_c* mPriActorOwn;
|
||||
/* 0x027F8 */ fopAc_ac_c* field_0x27f8;
|
||||
/* 0x027FC */ fopAc_ac_c* field_0x27fc;
|
||||
/* 0x02800 */ daTagMmsg_c* mMidnaMsg;
|
||||
@@ -4109,7 +4109,7 @@ public:
|
||||
/* 0x02C78 */ Mtx mMagneBootInvMtx;
|
||||
/* 0x02CA8 */ Z2CreatureLink mZ2Link;
|
||||
/* 0x02D78 */ u8* field_0x2d78;
|
||||
/* 0x02D7C */ daPy_frameCtrl_c* field_0x2d7c;
|
||||
/* 0x02D7C */ daPy_frameCtrl_c* m_basFrameCtrl;
|
||||
/* 0x02D80 */ void* field_0x2d80;
|
||||
/* 0x02D84 */ Z2WolfHowlMgr mZ2WolfHowlMgr;
|
||||
/* 0x02E44 */ dJntCol_c field_0x2e44;
|
||||
@@ -4182,7 +4182,7 @@ public:
|
||||
/* 0x02FC5 */ u8 field_0x2fc5;
|
||||
/* 0x02FC6 */ u8 field_0x2fc6;
|
||||
/* 0x02FC7 */ u8 field_0x2fc7;
|
||||
/* 0x02FC8 */ u8 field_0x2fc8;
|
||||
/* 0x02FC8 */ u8 mFishGetFace;
|
||||
/* 0x02FC9 */ u8 field_0x2fc9;
|
||||
/* 0x02FCA */ u8 field_0x2fca;
|
||||
/* 0x02FCB */ u8 field_0x2fcb;
|
||||
@@ -4296,7 +4296,7 @@ public:
|
||||
/* 0x03092 */ s16 field_0x3092;
|
||||
/* 0x03094 */ s16 field_0x3094[3];
|
||||
/* 0x0309A */ s16 field_0x309a[3];
|
||||
/* 0x030A0 */ s16 field_0x30a0;
|
||||
/* 0x030A0 */ s16 mProcNeckX;
|
||||
/* 0x030A2 */ s16 field_0x30a2;
|
||||
/* 0x030A4 */ s16 field_0x30a4;
|
||||
/* 0x030A6 */ s16 field_0x30a6;
|
||||
@@ -4310,8 +4310,8 @@ public:
|
||||
/* 0x030B6 */ u16 field_0x30b6;
|
||||
/* 0x030B8 */ u16 mLeftHandJntNo;
|
||||
/* 0x030BA */ u16 mRightHandJntNo;
|
||||
/* 0x030BC */ u16 field_0x30bc;
|
||||
/* 0x030BE */ u16 field_0x30be;
|
||||
/* 0x030BC */ u16 mLeftFootJnt;
|
||||
/* 0x030BE */ u16 mRightFootJnt;
|
||||
/* 0x030C0 */ u16 mLeftItemJntNo;
|
||||
/* 0x030C2 */ u16 mRightItemJntNo;
|
||||
/* 0x030C4 */ u16 field_0x30c4;
|
||||
@@ -4322,7 +4322,7 @@ public:
|
||||
/* 0x030CE */ u16 mKeepItem;
|
||||
/* 0x030D0 */ s16 field_0x30d0;
|
||||
/* 0x030D2 */ s16 field_0x30d2;
|
||||
/* 0x030D4 */ s16 field_0x30d4;
|
||||
/* 0x030D4 */ s16 mMidnaProcNeckY;
|
||||
/* 0x030D6 */ s16 field_0x30d6;
|
||||
/* 0x030D8 */ u8 field_0x30d8[0x14];
|
||||
/* 0x030EC */ s16 field_0x30ec;
|
||||
@@ -4340,14 +4340,14 @@ public:
|
||||
/* 0x03104 */ s16 field_0x3104;
|
||||
/* 0x03106 */ u16 field_0x3106;
|
||||
/* 0x03108 */ s16 field_0x3108;
|
||||
/* 0x0310A */ s16 field_0x310a;
|
||||
/* 0x0310C */ s16 field_0x310c;
|
||||
/* 0x0310A */ s16 mCameraAngleX;
|
||||
/* 0x0310C */ s16 mCameraAngleY;
|
||||
/* 0x0310E */ s16 field_0x310e;
|
||||
/* 0x03110 */ s16 field_0x3110;
|
||||
/* 0x03112 */ u16 mExitID;
|
||||
/* 0x03114 */ s16 field_0x3114;
|
||||
/* 0x03116 */ s16 field_0x3116;
|
||||
/* 0x03118 */ s16 field_0x3118;
|
||||
/* 0x03118 */ s16 mMagneBootsModelShapeAngle;
|
||||
/* 0x0311A */ s16 field_0x311a;
|
||||
/* 0x0311C */ s16 field_0x311c;
|
||||
/* 0x0311E */ s16 field_0x311e;
|
||||
@@ -4418,8 +4418,8 @@ public:
|
||||
/* 0x032D8 */ firePointEff_c field_0x32d8[4];
|
||||
/* 0x03398 */ f32 mNormalSpeed;
|
||||
/* 0x0339C */ f32 mSpeedModifier;
|
||||
/* 0x033A0 */ f32 field_0x33a0;
|
||||
/* 0x033A4 */ f32 field_0x33a4;
|
||||
/* 0x033A0 */ f32 mFootSpeed;
|
||||
/* 0x033A4 */ f32 mOldStickValue;
|
||||
/* 0x033A8 */ f32 mStickValue;
|
||||
/* 0x033AC */ f32 mMoveValue;
|
||||
/* 0x033B0 */ f32 field_0x33b0;
|
||||
@@ -4428,7 +4428,7 @@ public:
|
||||
/* 0x033BC */ f32 field_0x33bc;
|
||||
/* 0x033C0 */ f32 field_0x33c0;
|
||||
/* 0x033C4 */ f32 mFallHeight;
|
||||
/* 0x033C8 */ f32 field_0x33c8;
|
||||
/* 0x033C8 */ f32 mJumpStartHeight;
|
||||
/* 0x033CC */ f32 field_0x33cc;
|
||||
/* 0x033D0 */ f32 field_0x33d0;
|
||||
/* 0x033D4 */ f32 field_0x33d4;
|
||||
@@ -4439,8 +4439,8 @@ public:
|
||||
/* 0x033E8 */ f32 field_0x33e8;
|
||||
/* 0x033EC */ f32 field_0x33ec;
|
||||
/* 0x033F0 */ f32 field_0x33f0;
|
||||
/* 0x033F4 */ f32 field_0x33f4;
|
||||
/* 0x033F8 */ f32 field_0x33f8;
|
||||
/* 0x033F4 */ f32 mEyeMoveRateY;
|
||||
/* 0x033F8 */ f32 mMidnaEyeMoveRateX;
|
||||
/* 0x033FC */ f32 field_0x33fc;
|
||||
/* 0x03400 */ f32 field_0x3400;
|
||||
/* 0x03404 */ f32 field_0x3404;
|
||||
@@ -4524,14 +4524,14 @@ public:
|
||||
/* 0x03738 */ cXyz field_0x3738;
|
||||
/* 0x03744 */ cXyz field_0x3744;
|
||||
/* 0x03750 */ cXyz field_0x3750;
|
||||
/* 0x0375C */ cXyz field_0x375c;
|
||||
/* 0x03768 */ cXyz field_0x3768;
|
||||
/* 0x0375C */ cXyz mShadowTalkAtnPos;
|
||||
/* 0x03768 */ cXyz mSubjectEyePos;
|
||||
/* 0x03774 */ cXyz mForcePutPos;
|
||||
/* 0x03780 */ cXyz field_0x3780;
|
||||
/* 0x0378C */ cXyz field_0x378c;
|
||||
/* 0x03798 */ cXyz field_0x3798;
|
||||
/* 0x037A4 */ cXyz field_0x37a4;
|
||||
/* 0x037B0 */ cXyz field_0x37b0[2];
|
||||
/* 0x037B0 */ cXyz mLastFootPos[2];
|
||||
/* 0x037C8 */ cXyz field_0x37c8;
|
||||
/* 0x037D4 */ cXyz field_0x37d4;
|
||||
/* 0x037E0 */ cXyz mHeldItemRootPos;
|
||||
|
||||
+177
-177
File diff suppressed because it is too large
Load Diff
@@ -218,7 +218,7 @@ void daAlink_c::throwBoomerang() {
|
||||
} else if (mLinkAcch.ChkGroundHit() && boomerang_item) {
|
||||
if (mTargetedActor == NULL && item != NULL) {
|
||||
mTargetedActor = item;
|
||||
field_0x27f4 = item;
|
||||
mPriActorOwn = item;
|
||||
}
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
@@ -228,7 +228,7 @@ void daAlink_c::throwBoomerang() {
|
||||
procAtnActorMoveInit();
|
||||
}
|
||||
|
||||
field_0x2060->initOldFrameMorf(0.0f, 0, 35);
|
||||
m_oldFrameCalc->initOldFrameMorf(0.0f, 0, 35);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ cXyz* daAlink_c::checkBowCameraArrowPosP(s16* o_angleX, s16* o_angleY) {
|
||||
if (checkHorseRide() && checkBoarSingleBattle() && dComIfGp_getHorseActor() != NULL) {
|
||||
angle_y = dComIfGp_getHorseActor()->shape_angle.y;
|
||||
} else if (checkMagneBootsOn()) {
|
||||
angle_y = field_0x3118;
|
||||
angle_y = mMagneBootsModelShapeAngle;
|
||||
} else {
|
||||
angle_y = shape_angle.y;
|
||||
}
|
||||
|
||||
@@ -205,15 +205,15 @@ void daAlink_c::setFishingWaitAction() {
|
||||
}
|
||||
|
||||
void daAlink_c::setFishGetFace() {
|
||||
if (field_0x2fc8 == 1) {
|
||||
if (mFishGetFace == 1) {
|
||||
setFacePriBck(dRes_ID_ALANM_BCK_FH_e);
|
||||
} else if (field_0x2fc8 == 2) {
|
||||
} else if (mFishGetFace == 2) {
|
||||
setFacePriTexture(FTANM_I_A);
|
||||
setFacePriBck(dRes_ID_ALANM_BCK_FI_e);
|
||||
} else if (field_0x2fc8 == 3) {
|
||||
} else if (mFishGetFace == 3) {
|
||||
setFacePriTexture(FTANM_J_A);
|
||||
setFacePriBck(dRes_ID_ALANM_BCK_FJ_e);
|
||||
} else if (field_0x2fc8 == 4) {
|
||||
} else if (mFishGetFace == 4) {
|
||||
setFacePriTexture(FTANM_K_A);
|
||||
setFacePriBck(dRes_ID_ALANM_BCK_FK_e);
|
||||
} else {
|
||||
@@ -338,9 +338,9 @@ int daAlink_c::checkNextActionCanoe() {
|
||||
int daAlink_c::procCanoeRideInit() {
|
||||
commonProcInit(PROC_CANOE_RIDE);
|
||||
setHeavyBoots(0);
|
||||
mRideAcKeep.setData(field_0x27f4);
|
||||
mRideAcKeep.setData(mPriActorOwn);
|
||||
deleteEquipItem(FALSE, FALSE);
|
||||
daCanoe_c* canoe = (daCanoe_c*)field_0x27f4;
|
||||
daCanoe_c* canoe = (daCanoe_c*)mPriActorOwn;
|
||||
|
||||
setSingleAnime(ANM_HANG_CLIMB_TOP, mpHIO->mWallHang.mWallCatch.m.mClimbAnm.mSpeed,
|
||||
mpHIO->mWallHang.mWallCatch.m.mClimbStartFrame,
|
||||
@@ -457,7 +457,7 @@ int daAlink_c::procCanoeGetOffInit() {
|
||||
mNormalSpeed = 0.0f;
|
||||
speed.y = 0.0f;
|
||||
|
||||
J3DTransformInfo* var_r28 = field_0x2060->getOldFrameTransInfo(0);
|
||||
J3DTransformInfo* var_r28 = m_oldFrameCalc->getOldFrameTransInfo(0);
|
||||
|
||||
cXyz sp4C(canoe->current.pos.x - cM_scos(shape_angle.y) * 150.0f, canoe->current.pos.y + 100.0f, canoe->current.pos.z + cM_ssin(shape_angle.y) * 150.0f);
|
||||
cXyz sp58(canoe->current.pos.x, sp4C.y, canoe->current.pos.z);
|
||||
@@ -523,7 +523,7 @@ int daAlink_c::procCanoeGetOff() {
|
||||
}
|
||||
} else {
|
||||
if (mProcVar3.field_0x300e == 0) {
|
||||
if (field_0x2060->getOldFrameRate() < 0.01f) {
|
||||
if (m_oldFrameCalc->getOldFrameRate() < 0.01f) {
|
||||
mProcVar3.field_0x300e = 1;
|
||||
setSingleAnimeParam(ANM_VJUMP_START, &mpHIO->mWallHang.mSmallJump.m.mSmallJumpAnm);
|
||||
field_0x33b0 = l_waitBaseAnime.y;
|
||||
@@ -563,7 +563,7 @@ int daAlink_c::procCanoeWaitInit(int param_0) {
|
||||
s16 var_r25 = shape_angle.y - canoe->shape_angle.y;
|
||||
|
||||
setOldRootQuaternion(0, var_r25, 0);
|
||||
J3DTransformInfo* transinfo = field_0x2060->getOldFrameTransInfo(0);
|
||||
J3DTransformInfo* transinfo = m_oldFrameCalc->getOldFrameTransInfo(0);
|
||||
|
||||
mDoMtx_stack_c::YrotS(-canoe->shape_angle.y);
|
||||
mDoMtx_stack_c::transM(-canoe->current.pos.x, -canoe->current.pos.y, -canoe->current.pos.z);
|
||||
@@ -1218,7 +1218,7 @@ int daAlink_c::procCanoeFishingReel() {
|
||||
} else if (checkUpperAnime(dRes_ID_ALANM_BCK_HIT_e)) {
|
||||
if (checkAnmEnd(&mUpperFrameCtrl[2])) {
|
||||
setArmReelAnime();
|
||||
field_0x2060->initOldFrameMorf(3.0f, field_0x30a8, field_0x30aa);
|
||||
m_oldFrameCalc->initOldFrameMorf(3.0f, field_0x30a8, field_0x30aa);
|
||||
}
|
||||
} else {
|
||||
dmg_rod_class* mg_rod = (dmg_rod_class*)mItemAcKeep.getActor();
|
||||
@@ -1282,10 +1282,10 @@ int daAlink_c::procCanoeFishingGet() {
|
||||
} else if (checkAnmEnd(framectrl)) {
|
||||
if (checkEndResetFlg0(ERFLG0_FISHING_RELEASE)) {
|
||||
setSingleAnimeBaseMorf(ANM_CANOE_RELEASE, 3.0f);
|
||||
field_0x2fc8 = 0;
|
||||
mFishGetFace = 0;
|
||||
offModeFlg(0x100);
|
||||
} else if (checkEndResetFlg2(ERFLG2_FISHING_KEEP)) {
|
||||
field_0x2fc8 = 0;
|
||||
mFishGetFace = 0;
|
||||
procCanoeFishingWaitInit();
|
||||
}
|
||||
} else if (framectrl->checkPass(field_0x3478)) {
|
||||
@@ -1323,8 +1323,8 @@ int daAlink_c::procCanoeSubjectivity() {
|
||||
if (checkUpperReadyThrowAnime()) {
|
||||
field_0x3190 = temp_r28;
|
||||
mBodyAngle.y = field_0x3190;
|
||||
field_0x310a = mBodyAngle.x;
|
||||
field_0x310c = shape_angle.y + field_0x3190;
|
||||
mCameraAngleX = mBodyAngle.x;
|
||||
mCameraAngleY = shape_angle.y + field_0x3190;
|
||||
}
|
||||
return 1;
|
||||
} else {
|
||||
@@ -1660,7 +1660,7 @@ int daAlink_c::procFishingCast() {
|
||||
|
||||
if (checkEndResetFlg0(ERFLG0_FISHING_RELEASE)) {
|
||||
setFaceBasicAnime(ANM_WAIT);
|
||||
field_0x2fc8 = 0;
|
||||
mFishGetFace = 0;
|
||||
}
|
||||
|
||||
if (checkEndResetFlg0(ERFLG0_FISHING_HIT) && mItemMode != 0xFF) {
|
||||
|
||||
@@ -170,7 +170,7 @@ void daAlink_c::throwCopyRod() {
|
||||
} else {
|
||||
procAtnActorMoveInit();
|
||||
}
|
||||
field_0x2060->initOldFrameMorf(0.0f, 0, 35);
|
||||
m_oldFrameCalc->initOldFrameMorf(0.0f, 0, 35);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -778,7 +778,7 @@ int daAlink_c::procCrawlAutoMove() {
|
||||
}
|
||||
}
|
||||
|
||||
field_0x310c = shape_angle.y;
|
||||
mCameraAngleY = shape_angle.y;
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -1617,7 +1617,7 @@ int daAlink_c::procCutJumpLandInit(int param_0) {
|
||||
setSingleAnimeParam(ANM_CUT_JUMP_LAND, &mpHIO->mCut.mCutJump.m.mLandAnm);
|
||||
|
||||
if (checkNoResetFlg0(FLG0_WATER_IN_MOVE)) {
|
||||
field_0x2060->initOldFrameMorf(5.0f * mpHIO->mCut.mCutJump.m.mLandAnm.mInterpolation,
|
||||
m_oldFrameCalc->initOldFrameMorf(5.0f * mpHIO->mCut.mCutJump.m.mLandAnm.mInterpolation,
|
||||
0, 0x23);
|
||||
}
|
||||
|
||||
|
||||
@@ -1188,7 +1188,7 @@ int daAlink_c::procCoLargeDamage() {
|
||||
}
|
||||
}
|
||||
} else if (checkBoarSingleBattle()) {
|
||||
if (!checkUnderMove0BckNoArc(ANM_FALL) && field_0x2060->getOldFrameRate() < 0.1f) {
|
||||
if (!checkUnderMove0BckNoArc(ANM_FALL) && m_oldFrameCalc->getOldFrameRate() < 0.1f) {
|
||||
if (mProcVar5.field_0x3012 != 0) {
|
||||
mProcVar5.field_0x3012--;
|
||||
} else {
|
||||
@@ -1962,7 +1962,7 @@ int daAlink_c::procCoLavaReturnInit(BOOL i_isSandReturn) {
|
||||
mGndPolyAtt1 = 0xFF;
|
||||
offModeFlg(0x40000);
|
||||
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.y += field_0x3458;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.y += field_0x3458;
|
||||
mSinkShapeOffset -= field_0x3458;
|
||||
field_0x2f99 = 0;
|
||||
field_0x32cc = 5;
|
||||
@@ -2009,7 +2009,7 @@ int daAlink_c::procCoSwimFreezeReturnInit() {
|
||||
}
|
||||
|
||||
onNoResetFlg0(FLG0_SWIM_UP);
|
||||
J3DTransformInfo* transInfo = field_0x2060->getOldFrameTransInfo(0);
|
||||
J3DTransformInfo* transInfo = m_oldFrameCalc->getOldFrameTransInfo(0);
|
||||
|
||||
f32 var_f31;
|
||||
if (checkWolf()) {
|
||||
|
||||
@@ -240,7 +240,7 @@ int daAlink_c::checkDemoAction() {
|
||||
}
|
||||
|
||||
if (var_r28 != 0) {
|
||||
field_0x2060->initOldFrameMorf(0.0f, 0, field_0x30c6);
|
||||
m_oldFrameCalc->initOldFrameMorf(0.0f, 0, field_0x30c6);
|
||||
}
|
||||
return var_r28;
|
||||
} else if (demoMode == daPy_demo_c::DEMO_UNK_9_e) {
|
||||
@@ -1221,7 +1221,7 @@ void daAlink_c::setDemoBodyBck(dDemo_actor_c* i_demoActor, u16 i_resID) {
|
||||
|
||||
dDemo_actor_c* demo_actor_p = dDemo_c::getActor(demoActorID);
|
||||
if (demo_actor_p->checkEnable(dDemo_actor_c::ENABLE_ANM_TRANSITION_e)) {
|
||||
field_0x2060->initOldFrameMorf(demo_actor_p->getPrm_Morf(), 0, field_0x30c6);
|
||||
m_oldFrameCalc->initOldFrameMorf(demo_actor_p->getPrm_Morf(), 0, field_0x30c6);
|
||||
}
|
||||
|
||||
field_0x2f8c = 0;
|
||||
@@ -1287,7 +1287,7 @@ BOOL daAlink_c::checkDeadAction(int param_0) {
|
||||
poly_exitId = 0x3F;
|
||||
}
|
||||
|
||||
if (((poly_exitId != 0x3F || mExitID != 0x3F) && mGroundCode == 5 && field_0x33c8 - current.pos.y > 500.0f) || ((mExitID & 0x8000) && checkModeFlg(2))) {
|
||||
if (((poly_exitId != 0x3F || mExitID != 0x3F) && mGroundCode == 5 && mJumpStartHeight - current.pos.y > 500.0f) || ((mExitID & 0x8000) && checkModeFlg(2))) {
|
||||
onNoResetFlg2(FLG2_FORCE_GAMEOVER);
|
||||
return procCoDeadInit(0);
|
||||
}
|
||||
@@ -1735,7 +1735,7 @@ int daAlink_c::procCoTalkInit() {
|
||||
|
||||
frameCtrl_p->setRate(0.0f);
|
||||
getNowAnmPackUnder(UNDER_0)->setFrame(frameCtrl_p->getFrame());
|
||||
field_0x2060->initOldFrameMorf(3.0f, 0, 40);
|
||||
m_oldFrameCalc->initOldFrameMorf(3.0f, 0, 40);
|
||||
}
|
||||
|
||||
dComIfGp_setPlayerStatus0(0, 0x8000000);
|
||||
|
||||
@@ -626,11 +626,11 @@ void daAlink_c::setEffect() {
|
||||
}
|
||||
|
||||
if (checkResetFlg1(RFLG1_UNK_10)) {
|
||||
setFootMark(&mLeftFootPos, field_0x30bc, var_r26);
|
||||
setFootMark(&mLeftFootPos, mLeftFootJnt, var_r26);
|
||||
}
|
||||
|
||||
if (checkResetFlg1(RFLG1_UNK_20)) {
|
||||
setFootMark(&mRightFootPos, field_0x30be, var_r26);
|
||||
setFootMark(&mRightFootPos, mRightFootJnt, var_r26);
|
||||
}
|
||||
|
||||
if (checkResetFlg1(RFLG1_UNK_4)) {
|
||||
|
||||
@@ -45,8 +45,8 @@ static fopAc_ac_c* daAlink_searchLightBall(fopAc_ac_c* i_actor, void* i_data) {
|
||||
}
|
||||
|
||||
BOOL daAlink_c::checkGrabLineCheck() {
|
||||
cXyz sp18(field_0x27f4->attention_info.position.x, field_0x27f4->attention_info.position.y + 10.0f, field_0x27f4->attention_info.position.z);
|
||||
if (fopAcM_lc_c::lineCheck(&attention_info.position, &sp18, field_0x27f4) && fopAcM_lc_c::checkWallHit()) {
|
||||
cXyz sp18(mPriActorOwn->attention_info.position.x, mPriActorOwn->attention_info.position.y + 10.0f, mPriActorOwn->attention_info.position.z);
|
||||
if (fopAcM_lc_c::lineCheck(&attention_info.position, &sp18, mPriActorOwn) && fopAcM_lc_c::checkWallHit()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -518,7 +518,7 @@ BOOL daAlink_c::checkNextActionGrab() {
|
||||
|
||||
if (mTargetedActor == NULL && mAttList != NULL && mAttList->mType == fopAc_attn_DOOR_e && fopAcM_CheckStatus(grabActor, fopAcStts_UNK_0x2000000_e)) {
|
||||
setDoStatus(BUTTON_STATUS_OPEN);
|
||||
} else if ((field_0x27f4 == NULL) || !checkGrabTalkActor(field_0x27f4) || !setTalkStatus()) {
|
||||
} else if ((mPriActorOwn == NULL) || !checkGrabTalkActor(mPriActorOwn) || !setTalkStatus()) {
|
||||
if (checkModeFlg(0x400)) {
|
||||
setDoStatus(BUTTON_STATUS_THROW);
|
||||
} else if ((!checkAttentionState() && mStickValue <= getGrabThrowRate()) || checkGrabNotThrow()) {
|
||||
@@ -529,7 +529,7 @@ BOOL daAlink_c::checkNextActionGrab() {
|
||||
}
|
||||
|
||||
if (doTrigger() && dComIfGp_getDoStatus() == BUTTON_STATUS_OPEN) {
|
||||
fopAcM_orderDoorEvent(this, field_0x27f4, 0, 0);
|
||||
fopAcM_orderDoorEvent(this, mPriActorOwn, 0, 0);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -704,24 +704,24 @@ void daAlink_c::setGrabItemActor(fopAc_ac_c* i_actor) {
|
||||
}
|
||||
|
||||
int daAlink_c::procGrabReadyInit() {
|
||||
if (fopAcM_checkCarryNow(field_0x27f4)) {
|
||||
if (fopAcM_checkCarryNow(mPriActorOwn)) {
|
||||
return checkWaitAction();
|
||||
}
|
||||
|
||||
if (mEquipItem != dItemNo_NONE_e) {
|
||||
return procPreActionUnequipInit(PROC_GRAB_READY, field_0x27f4);
|
||||
return procPreActionUnequipInit(PROC_GRAB_READY, mPriActorOwn);
|
||||
}
|
||||
|
||||
commonProcInit(PROC_GRAB_READY);
|
||||
setGrabItemActor(field_0x27f4);
|
||||
setGrabItemActor(mPriActorOwn);
|
||||
|
||||
if (fopAcM_searchActorDistanceXZ2(this, field_0x27f4) > 1.0f) {
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, field_0x27f4);
|
||||
if (fopAcM_searchActorDistanceXZ2(this, mPriActorOwn) > 1.0f) {
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, mPriActorOwn);
|
||||
}
|
||||
|
||||
current.angle.y = shape_angle.y;
|
||||
mProcVar2.field_0x300c = shape_angle.y;
|
||||
field_0x37c8 = field_0x27f4->current.pos - field_0x3510;
|
||||
field_0x37c8 = mPriActorOwn->current.pos - field_0x3510;
|
||||
mNormalSpeed = 0.0f;
|
||||
|
||||
if (checkEquipAnime()) {
|
||||
@@ -748,7 +748,7 @@ int daAlink_c::procGrabReadyInit() {
|
||||
mProcVar3.field_0x300e = 0;
|
||||
}
|
||||
|
||||
if (fopAcM_CheckCarryType(field_0x27f4, fopAcM_CARRY(fopAcM_CARRY_UNK_40 | fopAcM_CARRY_HEAVY | fopAcM_CARRY_TYPE_1))) {
|
||||
if (fopAcM_CheckCarryType(mPriActorOwn, fopAcM_CARRY(fopAcM_CARRY_UNK_40 | fopAcM_CARRY_HEAVY | fopAcM_CARRY_TYPE_1))) {
|
||||
field_0x3198 = 1;
|
||||
} else {
|
||||
field_0x3198 = 0;
|
||||
@@ -1116,7 +1116,7 @@ int daAlink_c::procGrabRebound() {
|
||||
}
|
||||
|
||||
if (field_0x3198 != 0) {
|
||||
if (field_0x2060->getOldFrameRate() < 0.1f) {
|
||||
if (m_oldFrameCalc->getOldFrameRate() < 0.1f) {
|
||||
setWaterInAnmRate(framectrl, mpHIO->mGrab.m.mCarryAnm.mSpeed);
|
||||
field_0x3198 = 0;
|
||||
}
|
||||
@@ -1178,18 +1178,18 @@ BOOL daAlink_c::checkInsectActorName(fopAc_ac_c* i_insectActor) {
|
||||
}
|
||||
|
||||
int daAlink_c::procInsectCatchInit() {
|
||||
if (fopAcM_checkCarryNow(field_0x27f4)) {
|
||||
if (fopAcM_checkCarryNow(mPriActorOwn)) {
|
||||
return checkWaitAction();
|
||||
}
|
||||
|
||||
if (mEquipItem != dItemNo_NONE_e) {
|
||||
return procPreActionUnequipInit(PROC_INSECT_CATCH, field_0x27f4);
|
||||
return procPreActionUnequipInit(PROC_INSECT_CATCH, mPriActorOwn);
|
||||
}
|
||||
|
||||
commonProcInit(PROC_INSECT_CATCH);
|
||||
mNormalSpeed = 0.0f;
|
||||
|
||||
if (field_0x27f4->attention_info.position.y > field_0x3834.y - 30.0f) {
|
||||
if (mPriActorOwn->attention_info.position.y > field_0x3834.y - 30.0f) {
|
||||
setSingleAnimeParam(ANM_BOTTLE_SWING, &mpHIO->mItem.mBottle.m.mSwingSideAnm);
|
||||
field_0x3478 = 4.0f;
|
||||
} else {
|
||||
@@ -1197,7 +1197,7 @@ int daAlink_c::procInsectCatchInit() {
|
||||
field_0x3478 = 8.0f;
|
||||
}
|
||||
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -1216,29 +1216,29 @@ int daAlink_c::procInsectCatch() {
|
||||
}
|
||||
|
||||
int daAlink_c::procPickUpInit() {
|
||||
if (fopAcM_checkCarryNow(field_0x27f4)) {
|
||||
if (fopAcM_checkCarryNow(mPriActorOwn)) {
|
||||
return checkWaitAction();
|
||||
}
|
||||
|
||||
if (mEquipItem != dItemNo_NONE_e) {
|
||||
return procPreActionUnequipInit(PROC_PICK_UP, field_0x27f4);
|
||||
return procPreActionUnequipInit(PROC_PICK_UP, mPriActorOwn);
|
||||
}
|
||||
|
||||
s16 temp_r3 = fopAcM_GetName(field_0x27f4);
|
||||
s16 temp_r3 = fopAcM_GetName(mPriActorOwn);
|
||||
if (temp_r3 == fpcNm_NPC_KS_e && !dComIfGp_event_compulsory(this, NULL, 0xFFFF)) {
|
||||
return checkWaitAction();
|
||||
}
|
||||
|
||||
commonProcInit(PROC_PICK_UP);
|
||||
mGrabItemAcKeep.setData(field_0x27f4);
|
||||
mGrabItemAcKeep.setData(mPriActorOwn);
|
||||
|
||||
if (fopAcM_searchActorDistanceXZ2(this, field_0x27f4) > 1.0f) {
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, field_0x27f4);
|
||||
if (fopAcM_searchActorDistanceXZ2(this, mPriActorOwn) > 1.0f) {
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, mPriActorOwn);
|
||||
}
|
||||
|
||||
current.angle.y = shape_angle.y;
|
||||
mProcVar2.field_0x300c = shape_angle.y;
|
||||
field_0x37c8 = field_0x27f4->current.pos - field_0x3510;
|
||||
field_0x37c8 = mPriActorOwn->current.pos - field_0x3510;
|
||||
|
||||
fopAc_ac_c* grabActor = mGrabItemAcKeep.getActor();
|
||||
mNormalSpeed = 0.0f;
|
||||
@@ -1259,7 +1259,7 @@ int daAlink_c::procPickUpInit() {
|
||||
mProcVar3.field_0x300e = 1;
|
||||
field_0x3478 = 7.0f;
|
||||
mProcVar4.field_0x3010 = 1;
|
||||
fopAcM_onSwitch(field_0x27f4, 63);
|
||||
fopAcM_onSwitch(mPriActorOwn, 63);
|
||||
var_r29 = FALSE;
|
||||
} else {
|
||||
setSingleAnimeParam(ANM_PICK_UP, &mpHIO->mItem.mPickUp.m.mGrabAnm);
|
||||
@@ -1268,7 +1268,7 @@ int daAlink_c::procPickUpInit() {
|
||||
var_r29 = TRUE;
|
||||
}
|
||||
|
||||
fopAcM_setCarryNow(field_0x27f4, var_r29);
|
||||
fopAcM_setCarryNow(mPriActorOwn, var_r29);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -1624,7 +1624,7 @@ BOOL daAlink_c::checkGoatCatchActor(fopAc_ac_c* i_actor) {
|
||||
}
|
||||
|
||||
f32 daAlink_c::getGoatCatchDistance2() {
|
||||
if (fopAcM_GetName(field_0x27f4) == fpcNm_B_MGN_e) {
|
||||
if (fopAcM_GetName(mPriActorOwn) == fpcNm_B_MGN_e) {
|
||||
return SQUARE(1000.0f);
|
||||
}
|
||||
|
||||
@@ -2437,25 +2437,25 @@ int daAlink_c::procGoatCatch() {
|
||||
|
||||
int daAlink_c::procGoatStrokeInit() {
|
||||
if (mEquipItem != dItemNo_NONE_e) {
|
||||
return procPreActionUnequipInit(PROC_GOAT_STROKE, field_0x27f4);
|
||||
return procPreActionUnequipInit(PROC_GOAT_STROKE, mPriActorOwn);
|
||||
}
|
||||
|
||||
commonProcInit(PROC_GOAT_STROKE);
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
setSingleAnimeBase(ANM_COW_STROKE);
|
||||
|
||||
static_cast<daCow_c*>(field_0x280c.getActor())->setNaderu();
|
||||
mNormalSpeed = 0.0f;
|
||||
|
||||
s16 var_r30 = fopAcM_searchActorAngleY(field_0x27f4, this) - field_0x27f4->shape_angle.y;
|
||||
s16 var_r30 = fopAcM_searchActorAngleY(mPriActorOwn, this) - mPriActorOwn->shape_angle.y;
|
||||
if (var_r30 > 0) {
|
||||
shape_angle.y = field_0x27f4->shape_angle.y - 0x4000;
|
||||
shape_angle.y = mPriActorOwn->shape_angle.y - 0x4000;
|
||||
} else {
|
||||
shape_angle.y = field_0x27f4->shape_angle.y + 0x4000;
|
||||
shape_angle.y = mPriActorOwn->shape_angle.y + 0x4000;
|
||||
}
|
||||
|
||||
current.pos.x = field_0x27f4->current.pos.x - cM_ssin(shape_angle.y) * 100.0f;
|
||||
current.pos.z = field_0x27f4->current.pos.z - cM_scos(shape_angle.y) * 100.0f;
|
||||
current.pos.x = mPriActorOwn->current.pos.x - cM_ssin(shape_angle.y) * 100.0f;
|
||||
current.pos.z = mPriActorOwn->current.pos.z - cM_scos(shape_angle.y) * 100.0f;
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -2525,9 +2525,9 @@ int daAlink_c::procGoronMove() {
|
||||
mProcVar3.field_0x300e = 0;
|
||||
}
|
||||
if (mProcVar3.field_0x300e != 0) {
|
||||
if (field_0x27f4->current.pos.abs2XZ(current.pos) < getGoatCatchDistance2()) {
|
||||
if (mPriActorOwn->current.pos.abs2XZ(current.pos) < getGoatCatchDistance2()) {
|
||||
offGoronSideMove();
|
||||
return procGoatCatchInit(field_0x27f4, 0.0f);
|
||||
return procGoatCatchInit(mPriActorOwn, 0.0f);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -472,7 +472,7 @@ int daAlink_c::procHangWaitInit() {
|
||||
}
|
||||
|
||||
setBowHangAnime();
|
||||
field_0x2d7c = NULL;
|
||||
m_basFrameCtrl = NULL;
|
||||
mNormalSpeed = 0.0f;
|
||||
speed.y = 0.0f;
|
||||
dComIfGp_setPlayerStatus0(0, 0x100);
|
||||
@@ -823,13 +823,13 @@ int daAlink_c::procHangReady() {
|
||||
|
||||
int daAlink_c::procHangLeverDownInit() {
|
||||
if (mEquipItem != dItemNo_NONE_e) {
|
||||
return procPreActionUnequipInit(PROC_HANG_LEVER_DOWN, field_0x27f4);
|
||||
return procPreActionUnequipInit(PROC_HANG_LEVER_DOWN, mPriActorOwn);
|
||||
}
|
||||
|
||||
commonProcInit(PROC_HANG_LEVER_DOWN);
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
setSingleAnimeParam(ANM_CLIMB_JUMP, &mpHIO->mWallHang.mWallCatch.m.mJumpAnm);
|
||||
mProcVar2.field_0x300c = field_0x27f4->shape_angle.y + 0x8000;
|
||||
mProcVar2.field_0x300c = mPriActorOwn->shape_angle.y + 0x8000;
|
||||
field_0x3198 = ANM_CLIMB_JUMP;
|
||||
|
||||
speed.y = 0.0f;
|
||||
@@ -1143,7 +1143,7 @@ int daAlink_c::setLadderInit() {
|
||||
|
||||
procLadderMoveInit(1, 0, ¤t.pos);
|
||||
field_0x33b0 = l_ladderAnmBaseTransY;
|
||||
field_0x2060->initOldFrameMorf(5.0f, 0, 35);
|
||||
m_oldFrameCalc->initOldFrameMorf(5.0f, 0, 35);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -1363,8 +1363,8 @@ int daAlink_c::procLadderUpEndInit(BOOL param_0) {
|
||||
mNormalSpeed = 0.0f;
|
||||
speedF = 0.0f;
|
||||
|
||||
field_0x30a0 = -0x0800;
|
||||
field_0x33f4 = -1.0f;
|
||||
mProcNeckX = -0x0800;
|
||||
mEyeMoveRateY = -1.0f;
|
||||
mProcVar2.field_0x300c = 1;
|
||||
mProcVar4.field_0x3010 = 1;
|
||||
dComIfGp_setPlayerStatus0(0, 0x2000000);
|
||||
@@ -1387,8 +1387,8 @@ int daAlink_c::procLadderUpEnd() {
|
||||
mProcVar2.field_0x300c = 0;
|
||||
mProcVar4.field_0x3010 = 0;
|
||||
} else if (frame_ctrl->getFrame() >= 11.0f) {
|
||||
field_0x30a0 = 0;
|
||||
field_0x33f4 = 0.0f;
|
||||
mProcNeckX = 0;
|
||||
mEyeMoveRateY = 0.0f;
|
||||
}
|
||||
|
||||
field_0x2f99 = 6;
|
||||
@@ -1474,8 +1474,8 @@ int daAlink_c::procLadderDownEndInit(BOOL param_0) {
|
||||
field_0x2f99 = 14;
|
||||
setSpecialGravity(0.0f, maxFallSpeed, 0);
|
||||
|
||||
field_0x30a0 = 0x2800;
|
||||
field_0x33f4 = 1.0f;
|
||||
mProcNeckX = 0x2800;
|
||||
mEyeMoveRateY = 1.0f;
|
||||
mProcVar2.field_0x300c = 0;
|
||||
mProcVar4.field_0x3010 = 0;
|
||||
dComIfGp_setPlayerStatus0(0, 0x2000000);
|
||||
@@ -1495,8 +1495,8 @@ int daAlink_c::procLadderDownEnd() {
|
||||
!checkNextAction(1))
|
||||
{
|
||||
if (frame_ctrl->getFrame() >= 11.0f) {
|
||||
field_0x30a0 = 0;
|
||||
field_0x33f4 = 0.0f;
|
||||
mProcNeckX = 0;
|
||||
mEyeMoveRateY = 0.0f;
|
||||
}
|
||||
|
||||
field_0x2f99 = 6;
|
||||
@@ -1558,11 +1558,11 @@ int daAlink_c::procLadderMoveInit(BOOL param_0, BOOL param_1, cXyz* param_2) {
|
||||
field_0x2f98 = param_1;
|
||||
|
||||
if (!param_1) {
|
||||
field_0x30a0 = -0x800;
|
||||
field_0x33f4 = -1.0f;
|
||||
mProcNeckX = -0x800;
|
||||
mEyeMoveRateY = -1.0f;
|
||||
} else {
|
||||
field_0x30a0 = 0x2800;
|
||||
field_0x33f4 = 1.0f;
|
||||
mProcNeckX = 0x2800;
|
||||
mEyeMoveRateY = 1.0f;
|
||||
}
|
||||
|
||||
field_0x2f99 = 14;
|
||||
@@ -2059,15 +2059,15 @@ int daAlink_c::procClimbUpStartInit(int param_0) {
|
||||
mProcVar5.field_0x3012 = 1;
|
||||
|
||||
field_0x37c8.set(l_waitBaseAnime.x, l_ladderAnmBaseTransY, l_waitBaseAnime.z);
|
||||
J3DTransformInfo* trans_info = field_0x2060->getOldFrameTransInfo(0);
|
||||
J3DTransformInfo* trans_info = m_oldFrameCalc->getOldFrameTransInfo(0);
|
||||
trans_info->mTranslate.z -= ((field_0x34ec.z - field_0x3798.z) * cM_scos(shape_angle.y)) +
|
||||
((field_0x34ec.x - field_0x3798.x) * cM_ssin(shape_angle.y));
|
||||
|
||||
field_0x3588.set(trans_info->mTranslate.x,
|
||||
trans_info->mTranslate.y - (current.pos.y - field_0x3798.y),
|
||||
l_waitBaseAnime.z);
|
||||
field_0x3588 = (field_0x3588 * field_0x2060->getOldFrameRate()) +
|
||||
(field_0x37c8 * (1.0f - field_0x2060->getOldFrameRate()));
|
||||
field_0x3588 = (field_0x3588 * m_oldFrameCalc->getOldFrameRate()) +
|
||||
(field_0x37c8 * (1.0f - m_oldFrameCalc->getOldFrameRate()));
|
||||
field_0x33b0 = field_0x3588.y;
|
||||
|
||||
current.pos.x = field_0x34ec.x;
|
||||
@@ -2091,8 +2091,8 @@ int daAlink_c::procClimbUpStart() {
|
||||
field_0x2f99 = 2;
|
||||
mProcVar5.field_0x3012 = 0;
|
||||
|
||||
field_0x3588 = (field_0x3588 * field_0x2060->getOldFrameRate()) +
|
||||
(field_0x37c8 * (1.0f - field_0x2060->getOldFrameRate()));
|
||||
field_0x3588 = (field_0x3588 * m_oldFrameCalc->getOldFrameRate()) +
|
||||
(field_0x37c8 * (1.0f - m_oldFrameCalc->getOldFrameRate()));
|
||||
field_0x33b0 = field_0x3588.y;
|
||||
|
||||
setClimbShapeOffset();
|
||||
@@ -2208,11 +2208,11 @@ int daAlink_c::procClimbMoveUpDownInit(int param_0) {
|
||||
}
|
||||
|
||||
if (field_0x2f98 == 0) {
|
||||
field_0x30a0 = -0x1800;
|
||||
field_0x33f4 = -1.0f;
|
||||
mProcNeckX = -0x1800;
|
||||
mEyeMoveRateY = -1.0f;
|
||||
} else {
|
||||
field_0x30a0 = 0x2800;
|
||||
field_0x33f4 = 1.0f;
|
||||
mProcNeckX = 0x2800;
|
||||
mEyeMoveRateY = 1.0f;
|
||||
}
|
||||
|
||||
field_0x2f99 = 10;
|
||||
@@ -2379,11 +2379,11 @@ int daAlink_c::procClimbWaitInit(int param_0, int param_1) {
|
||||
|
||||
if (param_0) {
|
||||
if (field_0x2f98 == 0) {
|
||||
field_0x30a0 = -0x1800;
|
||||
field_0x33f4 = -1.0f;
|
||||
mProcNeckX = -0x1800;
|
||||
mEyeMoveRateY = -1.0f;
|
||||
} else if (field_0x2f98 == 1) {
|
||||
field_0x30a0 = 0x2800;
|
||||
field_0x33f4 = 1.0f;
|
||||
mProcNeckX = 0x2800;
|
||||
mEyeMoveRateY = 1.0f;
|
||||
} else if (field_0x2f98 == 3) {
|
||||
field_0x30a2 = -0x1800;
|
||||
field_0x33f0 = -1.0f;
|
||||
@@ -2414,10 +2414,10 @@ int daAlink_c::procClimbWait() {
|
||||
if (mProcVar0.field_0x3008 != 0) {
|
||||
mProcVar0.field_0x3008--;
|
||||
} else {
|
||||
daPy_addCalcShort(&field_0x30a0, 0, 3, 0x800, 0x100);
|
||||
daPy_addCalcShort(&mProcNeckX, 0, 3, 0x800, 0x100);
|
||||
daPy_addCalcShort(&field_0x30a2, 0, 3, 0x800, 0x100);
|
||||
field_0x33f0 = field_0x30a2 * 0.00016276042f;
|
||||
field_0x33f4 = -field_0x30a0 * -0.00016276042f;
|
||||
mEyeMoveRateY = -mProcNeckX * -0.00016276042f;
|
||||
}
|
||||
}
|
||||
} else if (fabsf(frameCtrl->getRate()) > 0.01f) {
|
||||
@@ -2463,7 +2463,7 @@ int daAlink_c::procClimbToRoof() {
|
||||
current.angle.y = shape_angle.y;
|
||||
mPrevAngleY = shape_angle.y;
|
||||
setOldRootQuaternion(0, 0x8000, 0);
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.z *= -1.0f;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.z *= -1.0f;
|
||||
|
||||
cXyz sp38(current.pos.x + cM_ssin(shape_angle.y) * 95.0f, current.pos.y,
|
||||
current.pos.z + cM_scos(shape_angle.y) * 95.0f);
|
||||
@@ -2645,12 +2645,12 @@ int daAlink_c::procRoofHangWaitInit(int param_0) {
|
||||
current.pos.x += 25.0f * cM_ssin(this->shape_angle.y);
|
||||
current.pos.z += 25.0f * cM_scos(this->shape_angle.y);
|
||||
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.z -= 25.0f;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.z -= 25.0f;
|
||||
} else {
|
||||
current.pos.x -= 25.0f * cM_ssin(this->shape_angle.y);
|
||||
current.pos.z -= 25.0f * cM_scos(this->shape_angle.y);
|
||||
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.z += 25.0f;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.z += 25.0f;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2706,7 +2706,7 @@ int daAlink_c::procRoofHangFrontMoveInit() {
|
||||
if (frame >= 0) {
|
||||
mUnderFrameCtrl[0].setFrame(frame);
|
||||
getNowAnmPackUnder(UNDER_0)->setFrame(frame);
|
||||
field_0x2060->initOldFrameMorf(0.0f, 0, 0x23);
|
||||
m_oldFrameCalc->initOldFrameMorf(0.0f, 0, 0x23);
|
||||
}
|
||||
|
||||
setSpecialGravity(0.0f, maxFallSpeed, 0);
|
||||
@@ -2846,7 +2846,7 @@ int daAlink_c::procRoofHangTurnInit() {
|
||||
mProcVar0.field_0x3008 = 1;
|
||||
ANGLE_ADD_2(shape_angle.y, 0x8000);
|
||||
setOldRootQuaternion(0, -0x8000, 0);
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.z = -8.899365425109863f;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.z = -8.899365425109863f;
|
||||
mProcVar2.field_0x300c = mMoveAngle;
|
||||
field_0x3478 = 0.0f;
|
||||
field_0x347c = 10.0f;
|
||||
@@ -2886,7 +2886,7 @@ int daAlink_c::procRoofHangTurn() {
|
||||
ANGLE_ADD_2(shape_angle.y, 0x8000);
|
||||
current.angle.y = shape_angle.y;
|
||||
setOldRootQuaternion(0, -0x8000, 0);
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.z += 17.798730850219727f;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.z += 17.798730850219727f;
|
||||
}
|
||||
|
||||
checkNextActionRoofHang();
|
||||
|
||||
@@ -709,7 +709,7 @@ void daAlink_c::setHookshotReturnEnd() {
|
||||
|
||||
if (checkHookshotReadyAnime()) {
|
||||
mNowAnmPackUpper[2].setRatio(1.0f);
|
||||
field_0x2060->initOldFrameMorf(3.0f, field_0x30a8, field_0x30aa);
|
||||
m_oldFrameCalc->initOldFrameMorf(3.0f, field_0x30a8, field_0x30aa);
|
||||
} else if (checkHookshotShootAnime()) {
|
||||
int _;
|
||||
f32 anmSpeed;
|
||||
@@ -1717,8 +1717,8 @@ int daAlink_c::procHookshotRoofWait() {
|
||||
onResetFlg0(RFLG0_UNK_4000000);
|
||||
|
||||
if (dComIfGp_checkCameraAttentionStatus(field_0x317c, 0x1000)) {
|
||||
field_0x310c = shape_angle.y;
|
||||
field_0x310a = 0;
|
||||
mCameraAngleY = shape_angle.y;
|
||||
mCameraAngleX = 0;
|
||||
setSubjectMode();
|
||||
onModeFlg(0x60000000);
|
||||
}
|
||||
@@ -1967,23 +1967,23 @@ int daAlink_c::procHookshotWallWait() {
|
||||
offModeFlg(0x60000000);
|
||||
} else if (dComIfGp_checkPlayerStatus0(0, 0x2000)) {
|
||||
s16 old_angle = shape_angle.y;
|
||||
shape_angle.y = field_0x310c;
|
||||
shape_angle.y = mCameraAngleY;
|
||||
setBodyAngleToCamera();
|
||||
shape_angle.y = old_angle;
|
||||
|
||||
old_angle = field_0x310c - shape_angle.y;
|
||||
old_angle = mCameraAngleY - shape_angle.y;
|
||||
if (old_angle > 0x4000) {
|
||||
field_0x310c = shape_angle.y + 0x4000;
|
||||
mCameraAngleY = shape_angle.y + 0x4000;
|
||||
} else if (old_angle < -0x4000) {
|
||||
field_0x310c = shape_angle.y - 0x4000;
|
||||
mCameraAngleY = shape_angle.y - 0x4000;
|
||||
}
|
||||
}
|
||||
} else if (dCam_getBody()->ChangeModeOK(4)) {
|
||||
onResetFlg0(RFLG0_UNK_4000000);
|
||||
|
||||
if (dComIfGp_checkCameraAttentionStatus(field_0x317c, 0x1000)) {
|
||||
field_0x310c = shape_angle.y;
|
||||
field_0x310a = 0;
|
||||
mCameraAngleY = shape_angle.y;
|
||||
mCameraAngleX = 0;
|
||||
setSubjectMode();
|
||||
onModeFlg(0x60000000);
|
||||
}
|
||||
@@ -2044,7 +2044,7 @@ int daAlink_c::procHookshotWallShootInit() {
|
||||
mProcVar2.field_0x300c = 0;
|
||||
mProcVar3.field_0x300e = mBodyAngle.x;
|
||||
mProcVar4.field_0x3010 = shape_angle.y;
|
||||
field_0x310c = mProcVar4.field_0x3010;
|
||||
mCameraAngleY = mProcVar4.field_0x3010;
|
||||
setHookshotReadyMaterial();
|
||||
return 1;
|
||||
}
|
||||
@@ -2119,7 +2119,7 @@ int daAlink_c::procHookshotWallShoot() {
|
||||
|
||||
mProcVar3.field_0x300e = mBodyAngle.x;
|
||||
mBodyAngle.x = 0;
|
||||
field_0x310c = shape_angle.y;
|
||||
mCameraAngleY = shape_angle.y;
|
||||
mProcVar4.field_0x3010 = shape_angle.y;
|
||||
shape_angle.y = old_angle;
|
||||
}
|
||||
|
||||
@@ -62,9 +62,9 @@ BOOL daAlink_c::checkCowGame() {
|
||||
}
|
||||
|
||||
int daAlink_c::getReinRideDirection() {
|
||||
s16 angle = fopAcM_searchActorAngleY(field_0x27f4, this) - field_0x27f4->shape_angle.y;
|
||||
s16 angle = fopAcM_searchActorAngleY(mPriActorOwn, this) - mPriActorOwn->shape_angle.y;
|
||||
|
||||
if (fopAcM_GetName(field_0x27f4) == fpcNm_HORSE_e && abs(angle) > 0x6800) {
|
||||
if (fopAcM_GetName(mPriActorOwn) == fpcNm_HORSE_e && abs(angle) > 0x6800) {
|
||||
return DIR_BACKWARD;
|
||||
} else if (angle > 0) {
|
||||
return DIR_LEFT;
|
||||
@@ -99,7 +99,7 @@ int daAlink_c::checkReinRideBgCheck() {
|
||||
int direction = getReinRideDirection();
|
||||
|
||||
const Vec* offset_p;
|
||||
if (fopAcM_GetName(field_0x27f4) == fpcNm_HORSE_e) {
|
||||
if (fopAcM_GetName(mPriActorOwn) == fpcNm_HORSE_e) {
|
||||
if (direction == DIR_BACKWARD) {
|
||||
offset_p = &horseLocalBack;
|
||||
} else if (direction == DIR_LEFT) {
|
||||
@@ -114,10 +114,10 @@ int daAlink_c::checkReinRideBgCheck() {
|
||||
}
|
||||
|
||||
cXyz line_start_pos;
|
||||
cXyz line_end_pos(field_0x27f4->current.pos.x, field_0x27f4->current.pos.y, field_0x27f4->current.pos.z);
|
||||
cXyz line_end_pos(mPriActorOwn->current.pos.x, mPriActorOwn->current.pos.y, mPriActorOwn->current.pos.z);
|
||||
|
||||
mDoMtx_stack_c::transS(field_0x27f4->current.pos);
|
||||
mDoMtx_stack_c::YrotM(field_0x27f4->shape_angle.y);
|
||||
mDoMtx_stack_c::transS(mPriActorOwn->current.pos);
|
||||
mDoMtx_stack_c::YrotM(mPriActorOwn->shape_angle.y);
|
||||
mDoMtx_stack_c::multVec(offset_p, &line_start_pos);
|
||||
|
||||
dBgS_AcchCir* acchcir_p = mAcchCir;
|
||||
@@ -337,14 +337,14 @@ void daAlink_c::setHorseStirrup() {
|
||||
}
|
||||
|
||||
if (field_0x2fab & 1) {
|
||||
mDoMtx_stack_c::copy(mpLinkModel->getAnmMtx(field_0x30bc));
|
||||
mDoMtx_stack_c::copy(mpLinkModel->getAnmMtx(mLeftFootJnt));
|
||||
mDoMtx_stack_c::transM(-2.0f, -11.0f, 1.5f);
|
||||
mDoMtx_stack_c::ZXYrotM(0, -0x8000, 0x4000);
|
||||
mDoMtx_copy(mDoMtx_stack_c::get(), horse->getLeftStirrupMtx());
|
||||
}
|
||||
|
||||
if (field_0x2fab & 2) {
|
||||
mDoMtx_stack_c::copy(mpLinkModel->getAnmMtx(field_0x30be));
|
||||
mDoMtx_stack_c::copy(mpLinkModel->getAnmMtx(mRightFootJnt));
|
||||
mDoMtx_stack_c::transM(-2.0f, 11.0f, 1.5f);
|
||||
mDoMtx_stack_c::ZrotM(-0x4000);
|
||||
mDoMtx_copy(mDoMtx_stack_c::get(), horse->getRightStirrupMtx());
|
||||
@@ -1046,8 +1046,8 @@ int daAlink_c::setRideSubjectAngle(s16 param_0) {
|
||||
current.angle.y = param_0;
|
||||
|
||||
if (!checkNoResetFlg2(FLG2_UNK_100)) {
|
||||
field_0x310a = mBodyAngle.x;
|
||||
field_0x310c = param_0 + field_0x3190;
|
||||
mCameraAngleX = mBodyAngle.x;
|
||||
mCameraAngleY = param_0 + field_0x3190;
|
||||
}
|
||||
|
||||
return temp_r27;
|
||||
@@ -1152,7 +1152,7 @@ void daAlink_c::horseGetOffEnd() {
|
||||
mDoMtx_stack_c::YrotS(0x4000);
|
||||
}
|
||||
|
||||
J3DTransformInfo* transinfo_p = field_0x2060->getOldFrameTransInfo(0);
|
||||
J3DTransformInfo* transinfo_p = m_oldFrameCalc->getOldFrameTransInfo(0);
|
||||
transinfo_p->mTranslate.x = l_waitBaseAnime.x;
|
||||
transinfo_p->mTranslate.z = l_waitBaseAnime.z;
|
||||
current.angle.y = shape_angle.y;
|
||||
@@ -1266,14 +1266,14 @@ int daAlink_c::procHorseRideInit() {
|
||||
deleteEquipItem(TRUE, TRUE);
|
||||
}
|
||||
|
||||
mRideAcKeep.setData(field_0x27f4);
|
||||
mRideAcKeep.setData(mPriActorOwn);
|
||||
|
||||
daAlink_ANM anm;
|
||||
MtxP rideMtx;
|
||||
Vec* localRidePos_p;
|
||||
u32 mode;
|
||||
if (fopAcM_GetName(field_0x27f4) == fpcNm_HORSE_e) {
|
||||
daHorse_c* horse = (daHorse_c*)field_0x27f4;
|
||||
if (fopAcM_GetName(mPriActorOwn) == fpcNm_HORSE_e) {
|
||||
daHorse_c* horse = (daHorse_c*)mPriActorOwn;
|
||||
horse->onRideStartFlg();
|
||||
rideMtx = horse->getRootMtx();
|
||||
mRideStatus = RIDETYPE_HORSE;
|
||||
@@ -1282,7 +1282,7 @@ int daAlink_c::procHorseRideInit() {
|
||||
mode = horse->checkRodeoMode();
|
||||
mZ2Link.setRiding(true);
|
||||
} else {
|
||||
e_wb_class* boar = (e_wb_class*)field_0x27f4;
|
||||
e_wb_class* boar = (e_wb_class*)mPriActorOwn;
|
||||
boar->setPlayerRideNow();
|
||||
rideMtx = boar->getRideMtx();
|
||||
mRideStatus = RIDETYPE_BOAR;
|
||||
@@ -1306,7 +1306,7 @@ int daAlink_c::procHorseRideInit() {
|
||||
field_0x2fc0 = 2;
|
||||
mProcVar2.field_0x300c = 1;
|
||||
} else {
|
||||
if (checkHorseRide() && ((daHorse_c*)field_0x27f4)->checkEnemySearch()) {
|
||||
if (checkHorseRide() && ((daHorse_c*)mPriActorOwn)->checkEnemySearch()) {
|
||||
anm_speed *= 1.2f;
|
||||
mProcVar2.field_0x300c = 1;
|
||||
anm_endF = 0x30;
|
||||
@@ -1329,7 +1329,7 @@ int daAlink_c::procHorseRideInit() {
|
||||
}
|
||||
|
||||
if (mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK_7_e) {
|
||||
setOldRootQuaternion(0, (s16)(shape_angle.y - field_0x27f4->shape_angle.y), 0);
|
||||
setOldRootQuaternion(0, (s16)(shape_angle.y - mPriActorOwn->shape_angle.y), 0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1339,18 +1339,18 @@ int daAlink_c::procHorseRideInit() {
|
||||
cXyz sp20;
|
||||
|
||||
mDoMtx_multVec(rideMtx, localRidePos_p, &sp2C);
|
||||
mDoMtx_stack_c::transS(field_0x27f4->current.pos);
|
||||
mDoMtx_stack_c::YrotM(field_0x27f4->shape_angle.y);
|
||||
mDoMtx_stack_c::XrotM(-field_0x27f4->shape_angle.x);
|
||||
mDoMtx_stack_c::YrotM(-field_0x27f4->shape_angle.y);
|
||||
mDoMtx_stack_c::transM(-field_0x27f4->current.pos.x, -field_0x27f4->current.pos.y, -field_0x27f4->current.pos.z);
|
||||
mDoMtx_stack_c::transS(mPriActorOwn->current.pos);
|
||||
mDoMtx_stack_c::YrotM(mPriActorOwn->shape_angle.y);
|
||||
mDoMtx_stack_c::XrotM(-mPriActorOwn->shape_angle.x);
|
||||
mDoMtx_stack_c::YrotM(-mPriActorOwn->shape_angle.y);
|
||||
mDoMtx_stack_c::transM(-mPriActorOwn->current.pos.x, -mPriActorOwn->current.pos.y, -mPriActorOwn->current.pos.z);
|
||||
mDoMtx_stack_c::concat(rideMtx);
|
||||
mDoMtx_stack_c::multVec(localRidePos_p, &sp20);
|
||||
|
||||
var_f31 = current.pos.y;
|
||||
current.pos = field_0x27f4->current.pos + (sp2C - sp20);
|
||||
current.pos = mPriActorOwn->current.pos + (sp2C - sp20);
|
||||
|
||||
mDoMtx_stack_c::ZXYrotS(field_0x27f4->shape_angle.x, field_0x27f4->shape_angle.y, 0);
|
||||
mDoMtx_stack_c::ZXYrotS(mPriActorOwn->shape_angle.x, mPriActorOwn->shape_angle.y, 0);
|
||||
|
||||
if (checkBoarRide()) {
|
||||
static Vec const boarRideOffset = {-0.87f, 3.3299999f, -23.77f};
|
||||
@@ -1364,7 +1364,7 @@ int daAlink_c::procHorseRideInit() {
|
||||
|
||||
field_0x3478 = var_f31 - current.pos.y;
|
||||
current.pos.y = var_f31;
|
||||
shape_angle.y = field_0x27f4->shape_angle.y;
|
||||
shape_angle.y = mPriActorOwn->shape_angle.y;
|
||||
current.angle.y = shape_angle.y;
|
||||
speed.y = 0.0f;
|
||||
|
||||
@@ -1376,7 +1376,7 @@ int daAlink_c::procHorseRideInit() {
|
||||
field_0x3002 = 0;
|
||||
field_0x30a6 = 0;
|
||||
attention_info.field_0xa = 0x46;
|
||||
field_0x37c8 = field_0x27f4->current.pos;
|
||||
field_0x37c8 = mPriActorOwn->current.pos;
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -1461,7 +1461,7 @@ int daAlink_c::procHorseRide() {
|
||||
}
|
||||
|
||||
if (checkAnmEnd(framectrl)) {
|
||||
J3DTransformInfo* temp_r28 = field_0x2060->getOldFrameTransInfo(0);
|
||||
J3DTransformInfo* temp_r28 = m_oldFrameCalc->getOldFrameTransInfo(0);
|
||||
|
||||
if (checkHorseRide()) {
|
||||
horse->onRideFlg();
|
||||
@@ -1903,8 +1903,8 @@ int daAlink_c::procHorseSubjectivity() {
|
||||
if (checkUpperReadyThrowAnime()) {
|
||||
field_0x3190 = prev_3190;
|
||||
mBodyAngle.y = field_0x3190;
|
||||
field_0x310a = mBodyAngle.x;
|
||||
field_0x310c = shape_angle.y + field_0x3190;
|
||||
mCameraAngleX = mBodyAngle.x;
|
||||
mCameraAngleY = shape_angle.y + field_0x3190;
|
||||
}
|
||||
return 1;
|
||||
} else {
|
||||
@@ -2055,7 +2055,7 @@ int daAlink_c::procHorseCut() {
|
||||
} else {
|
||||
resetUpperAnime(UPPER_2, 4.0f);
|
||||
procHorseWaitInit();
|
||||
field_0x2060->initOldFrameMorf(field_0x3480, 0, 0x23);
|
||||
m_oldFrameCalc->initOldFrameMorf(field_0x3480, 0, 0x23);
|
||||
}
|
||||
} else if (framectrl->getFrame() > field_0x3484 && (checkNoResetFlg2(FLG2_COMBO_RESERB) || checkResetFlg0(RFLG0_UNK_40) || spActionButton())) {
|
||||
if (checkResetFlg0(RFLG0_UNK_40)) {
|
||||
@@ -2178,19 +2178,19 @@ int daAlink_c::procHorseCutTurn() {
|
||||
|
||||
if (checkAnmEnd(framectrl)) {
|
||||
procHorseWaitInit();
|
||||
field_0x2060->initOldFrameMorf(4.0f, 0, 0x23);
|
||||
m_oldFrameCalc->initOldFrameMorf(4.0f, 0, 0x23);
|
||||
} else {
|
||||
if (framectrl->getFrame() > mpHIO->mCut.mHorseCutCharge.m.mSpinAnm.mCancelFrame) {
|
||||
if (orderTalk(1)) {
|
||||
return 1;
|
||||
}
|
||||
if (checkNextActionHorse()) {
|
||||
field_0x2060->initOldFrameMorf(4.0f, 0, 0x23);
|
||||
m_oldFrameCalc->initOldFrameMorf(4.0f, 0, 0x23);
|
||||
return 1;
|
||||
}
|
||||
if (checkInputOnR()) {
|
||||
procHorseWaitInit();
|
||||
field_0x2060->initOldFrameMorf(4.0f, 0, 0x23);
|
||||
m_oldFrameCalc->initOldFrameMorf(4.0f, 0, 0x23);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -67,7 +67,7 @@ int daAlink_c::setHeavyBoots(int param_0) {
|
||||
|
||||
if (mProcID != PROC_BOOTS_EQUIP) {
|
||||
procWaitInit();
|
||||
field_0x2060->initOldFrameMorf(3.0f, 0, 35);
|
||||
m_oldFrameCalc->initOldFrameMorf(3.0f, 0, 35);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
@@ -187,7 +187,7 @@ void daAlink_c::setMagneBootsMtx(cBgS_PolyInfo* i_polyinfo, int param_1) {
|
||||
shape_angle.y += angle;
|
||||
current.angle.y += angle;
|
||||
mPrevAngleY += angle;
|
||||
field_0x310c += angle;
|
||||
mCameraAngleY += angle;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -331,7 +331,7 @@ int daAlink_c::procBoardRideInit() {
|
||||
voiceStart(Z2SE_AL_V_JUMP_S);
|
||||
field_0x2f99 = 0xF;
|
||||
|
||||
cXyz sp8 = field_0x27f4->current.pos - current.pos;
|
||||
cXyz sp8 = mPriActorOwn->current.pos - current.pos;
|
||||
speed.y = 24.0;
|
||||
shape_angle.y = sp8.atan2sX_Z();
|
||||
|
||||
@@ -342,7 +342,7 @@ int daAlink_c::procBoardRideInit() {
|
||||
field_0x33b0 = field_0x3588.y;
|
||||
field_0x34d4 = l_waitBaseAnime;
|
||||
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -547,7 +547,7 @@ int daAlink_c::procBoardTurn() {
|
||||
}
|
||||
|
||||
if (mProcVar5.field_0x3012 == 0) {
|
||||
if (field_0x2060->getOldFrameRate() < 0.01f) {
|
||||
if (m_oldFrameCalc->getOldFrameRate() < 0.01f) {
|
||||
mProcVar5.field_0x3012 = 1;
|
||||
setSingleAnime(ANM_RIDE_JUMP, 1.5f, 1.5f + mUnderFrameCtrl[0].getStart(), mpHIO->mItem.mBoard.m.mAirborneAnm.mEndFrame, -1.0f);
|
||||
}
|
||||
@@ -600,7 +600,7 @@ int daAlink_c::procBoardJump() {
|
||||
if (!checkModeFlg(2)) {
|
||||
setBoardLandAnime();
|
||||
procBoardWaitInit(NULL);
|
||||
} else if (mProcVar5.field_0x3012 != 0 && mProcVar4.field_0x3010 == 0 && field_0x2060->getOldFrameRate() < 0.0099999998f) {
|
||||
} else if (mProcVar5.field_0x3012 != 0 && mProcVar4.field_0x3010 == 0 && m_oldFrameCalc->getOldFrameRate() < 0.0099999998f) {
|
||||
setSingleAnime(ANM_RIDE_JUMP, mpHIO->mItem.mBoard.m.mAirborneAnm.mSpeed,
|
||||
mpHIO->mItem.mBoard.m.mAirborneAnm.mStartFrame,
|
||||
mpHIO->mItem.mBoard.m.mAirborneAnm.mEndFrame,
|
||||
|
||||
@@ -100,8 +100,8 @@ s16 daAlink_c::checkBodyAngleX(s16 i_angle) {
|
||||
|
||||
BOOL daAlink_c::setBodyAngleToCamera() {
|
||||
if (dComIfGp_checkCameraAttentionStatus(field_0x317c, 0x10)) {
|
||||
field_0x310e = field_0x310a;
|
||||
field_0x3110 = field_0x310c;
|
||||
field_0x310e = mCameraAngleX;
|
||||
field_0x3110 = mCameraAngleY;
|
||||
onEndResetFlg2(ERFLG2_UNK_20);
|
||||
|
||||
s16 sp8;
|
||||
@@ -138,8 +138,8 @@ BOOL daAlink_c::setBodyAngleToCamera() {
|
||||
|
||||
mBodyAngle.x = cLib_minMaxLimit<s16>((s16)sp8, var_r29, mpHIO->mItem.m.mItemFPMaxUnk);
|
||||
checkBodyAngleX(mBodyAngle.x);
|
||||
field_0x310a = mBodyAngle.x;
|
||||
field_0x310c = shape_angle.y;
|
||||
mCameraAngleX = mBodyAngle.x;
|
||||
mCameraAngleY = shape_angle.y;
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -225,7 +225,7 @@ int daAlink_c::procCoSubjectivity() {
|
||||
checkWaitAction();
|
||||
} else if (!checkWolf() && (checkItemAction() || checkItemChangeFromButton())) {
|
||||
if (checkUpperReadyThrowAnime()) {
|
||||
field_0x310a = mBodyAngle.x;
|
||||
mCameraAngleX = mBodyAngle.x;
|
||||
}
|
||||
|
||||
return 1;
|
||||
|
||||
@@ -238,7 +238,7 @@ int daAlink_c::procSpinnerWait() {
|
||||
mProcVar5.field_0x3012 = 1;
|
||||
setSpinnerStatus(BUTTON_STATUS_SPIN, BUTTON_STATUS_FLAG_CONTINUATION);
|
||||
|
||||
if (field_0x3198 != ANM_RIDE_KICK && field_0x2060->getOldFrameRate() < 0.01f) {
|
||||
if (field_0x3198 != ANM_RIDE_KICK && m_oldFrameCalc->getOldFrameRate() < 0.01f) {
|
||||
setSingleAnimeBaseSpeed(ANM_RIDE_CROUCH, mpHIO->mItem.mBoard.m.mSitAnmSpeed,
|
||||
mpHIO->mItem.mBoard.m.mFastPushInterpolation);
|
||||
field_0x3198 = ANM_RIDE_KICK;
|
||||
@@ -251,7 +251,7 @@ int daAlink_c::procSpinnerWait() {
|
||||
setSpinnerStatus(BUTTON_STATUS_SPIN, BUTTON_STATUS_FLAG_NONE);
|
||||
}
|
||||
|
||||
if ((field_0x3198 == ANM_RIDE_KICK && field_0x2060->getOldFrameRate() < 0.01f) ||
|
||||
if ((field_0x3198 == ANM_RIDE_KICK && m_oldFrameCalc->getOldFrameRate() < 0.01f) ||
|
||||
(field_0x3198 != ANM_RIDE_KICK && field_0x3198 != ANM_RIDE_WAIT)) {
|
||||
setSingleAnimeBaseSpeed(ANM_RIDE_WAIT, mpHIO->mItem.mBoard.m.mStandAnmSpeed,
|
||||
mpHIO->mItem.mBoard.m.mStandInterpolation);
|
||||
@@ -269,7 +269,7 @@ int daAlink_c::procSpinnerWait() {
|
||||
mpHIO->mItem.mBoard.m.mLandAnm.mStartFrame, 16,
|
||||
mpHIO->mItem.mBoard.m.mLandAnm.mInterpolation);
|
||||
field_0x3198 = ANM_RIDE_JUMP_LAND;
|
||||
} else if (mProcVar4.field_0x3010 == 0 && field_0x2060->getOldFrameRate() < 0.01f) {
|
||||
} else if (mProcVar4.field_0x3010 == 0 && m_oldFrameCalc->getOldFrameRate() < 0.01f) {
|
||||
setSingleAnime(ANM_RIDE_JUMP, mpHIO->mItem.mBoard.m.mAirborneAnm.mSpeed,
|
||||
mpHIO->mItem.mBoard.m.mAirborneAnm.mStartFrame,
|
||||
mpHIO->mItem.mBoard.m.mAirborneAnm.mEndFrame, -1.0f);
|
||||
|
||||
@@ -304,9 +304,9 @@ void daAlink_c::setSpeedAndAngleSwim() {
|
||||
sp14 = 8192.0f * var_f31;
|
||||
}
|
||||
|
||||
cLib_addCalcAngleS(&field_0x30a0, sp14, 5, 0x1000, 0x400);
|
||||
cLib_addCalcAngleS(&mProcNeckX, sp14, 5, 0x1000, 0x400);
|
||||
} else {
|
||||
field_0x30a0 = 0;
|
||||
mProcNeckX = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -324,7 +324,7 @@ int daAlink_c::checkNextActionSwim() {
|
||||
}
|
||||
|
||||
if (mAttList != NULL && mAttList->mType == fopAc_attn_ETC_e && checkNoResetFlg0(FLG0_SWIM_UP) &&
|
||||
fopAcM_GetName(field_0x27f4) == fpcNm_CANOE_e)
|
||||
fopAcM_GetName(mPriActorOwn) == fpcNm_CANOE_e)
|
||||
{
|
||||
setDoStatus(BUTTON_STATUS_GET_ON);
|
||||
|
||||
@@ -344,15 +344,15 @@ int daAlink_c::checkNextActionSwim() {
|
||||
}
|
||||
|
||||
int daAlink_c::checkSwimAction(int param_0) {
|
||||
f32 var_f31;
|
||||
f32 startHeight;
|
||||
if (checkWolf()) {
|
||||
if (getMoveBGActorName(mLinkAcch.m_gnd, 0) == fpcNm_Obj_ITA_e) {
|
||||
var_f31 = 200.0f;
|
||||
startHeight = 200.0f;
|
||||
} else {
|
||||
var_f31 = mpHIO->mWolf.mWlSwim.m.mStartHeight;
|
||||
startHeight = mpHIO->mWolf.mWlSwim.m.mStartHeight;
|
||||
}
|
||||
} else {
|
||||
var_f31 = mpHIO->mSwim.m.mStartHeight;
|
||||
startHeight = mpHIO->mSwim.m.mStartHeight;
|
||||
}
|
||||
|
||||
if (checkNoResetFlg0(FLG0_UNK_80)
|
||||
@@ -362,37 +362,37 @@ int daAlink_c::checkSwimAction(int param_0) {
|
||||
&& ((mProcID != PROC_WOLF_LOCK_ATTACK && mProcID != PROC_WOLF_LOCK_ATTACK_TURN) || mProcVar5.field_0x3012 == 0)
|
||||
&& mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK_17_e)
|
||||
{
|
||||
f32 var_f29;
|
||||
f32 var_f28;
|
||||
f32 var_f30;
|
||||
f32 maxFrontSpeed;
|
||||
f32 maxFallSpeed;
|
||||
f32 bodyY;
|
||||
|
||||
if (checkWolf()) {
|
||||
if (checkWolfDashMode()) {
|
||||
var_f29 = mpHIO->mWolf.mWlSwim.m.mMaxSpeed;
|
||||
maxFrontSpeed = mpHIO->mWolf.mWlSwim.m.mMaxSpeed;
|
||||
} else {
|
||||
var_f29 = mpHIO->mWolf.mWlSwim.m.mMaxSpeedWeak;
|
||||
maxFrontSpeed = mpHIO->mWolf.mWlSwim.m.mMaxSpeedWeak;
|
||||
}
|
||||
|
||||
var_f28 = mpHIO->mWolf.mWlSwim.m.mMaxFallSpeed;
|
||||
maxFallSpeed = mpHIO->mWolf.mWlSwim.m.mMaxFallSpeed;
|
||||
} else {
|
||||
var_f29 = getSwimFrontMaxSpeed();
|
||||
var_f28 = getSwimMaxFallSpeed();
|
||||
maxFrontSpeed = getSwimFrontMaxSpeed();
|
||||
maxFallSpeed = getSwimMaxFallSpeed();
|
||||
}
|
||||
|
||||
if (dComIfGp_checkPlayerStatus1(0, 0x10000)) {
|
||||
var_f30 = mLeftFootPos.y;
|
||||
bodyY = mLeftFootPos.y;
|
||||
} else if (dComIfGp_checkPlayerStatus1(0, 0x2000000)) {
|
||||
var_f30 = (-65.0f + current.pos.y) - var_f31;
|
||||
bodyY = (-65.0f + current.pos.y) - startHeight;
|
||||
} else {
|
||||
var_f30 = current.pos.y;
|
||||
bodyY = current.pos.y;
|
||||
}
|
||||
|
||||
if (mWaterY - var_f30 > var_f31 || (param_0 != 0 && mWaterY >= var_f30 && mWaterY - mLinkAcch.GetGroundH() > var_f31)) {
|
||||
if (mWaterY - bodyY > startHeight || (param_0 != 0 && mWaterY >= bodyY && mWaterY - mLinkAcch.GetGroundH() > startHeight)) {
|
||||
cXyz sp14;
|
||||
offNoResetFlg0(FLG0_SWIM_UP);
|
||||
mZ2Link.setInWater(true);
|
||||
|
||||
mMaxSpeed = var_f29;
|
||||
mMaxSpeed = maxFrontSpeed;
|
||||
|
||||
if (!param_0) {
|
||||
mNormalSpeed *= 0.75f;
|
||||
@@ -421,11 +421,11 @@ int daAlink_c::checkSwimAction(int param_0) {
|
||||
|
||||
if (checkModeFlg(2) && !checkPossibleWaterInMode()) {
|
||||
dComIfGp_getVibration().StartShock(VIBMODE_S_POWER2, 1, cXyz(0.0f, 1.0f, 0.0f));
|
||||
current.pos.y = var_f30 + var_f31;
|
||||
current.pos.y = bodyY + startHeight;
|
||||
|
||||
speed.y = 0.75f * field_0x3528.y;
|
||||
if (speed.y < var_f28) {
|
||||
speed.y = var_f28;
|
||||
if (speed.y < maxFallSpeed) {
|
||||
speed.y = maxFallSpeed;
|
||||
} else if (speed.y > 0.0f) {
|
||||
speed.y = 0.0f;
|
||||
}
|
||||
@@ -470,7 +470,7 @@ int daAlink_c::checkSwimAction(int param_0) {
|
||||
return procSwimUpInit();
|
||||
}
|
||||
} else if (!checkNoResetFlg0(FLG0_SWIM_UP) && !checkBootsOrArmorHeavy() && !checkPossibleWaterInMode() && !checkModeFlg(0x40000)) {
|
||||
if (checkNoResetFlg0(FLG0_UNK_80) && mWaterY - current.pos.y > var_f31) {
|
||||
if (checkNoResetFlg0(FLG0_UNK_80) && mWaterY - current.pos.y > startHeight) {
|
||||
if (checkWolf()) {
|
||||
return procWolfSwimWaitInit(0);
|
||||
}
|
||||
@@ -670,7 +670,7 @@ void daAlink_c::setSwimMoveAnime() {
|
||||
|
||||
if (!checkSwimMoveHandAnime() && !checkZoraSwimDamageAnime()) {
|
||||
f32 var_f28;
|
||||
if (field_0x2060->getOldFrameMorfCounter() > 5.0f) {
|
||||
if (m_oldFrameCalc->getOldFrameMorfCounter() > 5.0f) {
|
||||
var_f28 = -1.0f;
|
||||
} else {
|
||||
var_f28 = 3.0f;
|
||||
|
||||
@@ -63,7 +63,7 @@ void daAlink_c::setHorseWhistleModel() {
|
||||
|
||||
int daAlink_c::procGrassWhistleGetInit() {
|
||||
if (mEquipItem != dItemNo_NONE_e) {
|
||||
return procPreActionUnequipInit(PROC_GRASS_WHISTLE_GET, field_0x27f4);
|
||||
return procPreActionUnequipInit(PROC_GRASS_WHISTLE_GET, mPriActorOwn);
|
||||
}
|
||||
|
||||
commonProcInit(PROC_GRASS_WHISTLE_GET);
|
||||
@@ -73,9 +73,9 @@ int daAlink_c::procGrassWhistleGetInit() {
|
||||
|
||||
setSingleAnimeParam(ANM_BOTTLE_SWING_DOWN, &mpHIO->mItem.mBottle.m.mSwingDownAnm);
|
||||
mLeftHandIndex = 0xFE;
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
|
||||
daObjYobikusa_c* yobikusa_p = (daObjYobikusa_c*)field_0x27f4;
|
||||
daObjYobikusa_c* yobikusa_p = (daObjYobikusa_c*)mPriActorOwn;
|
||||
mProcVar2.field_0x300c = yobikusa_p->getType();
|
||||
mProcVar3.field_0x300e = yobikusa_p->getPathID();
|
||||
mProcVar4.field_0x3010 = yobikusa_p->isPlayerCorrect();
|
||||
|
||||
@@ -73,7 +73,7 @@ void daAlink_c::changeCommon() {
|
||||
fopAcM_SetMtx(this, mpLinkModel->getBaseTRMtx());
|
||||
model = mpLinkModel;
|
||||
|
||||
field_0x2060->offOldFrameFlg();
|
||||
m_oldFrameCalc->offOldFrameFlg();
|
||||
field_0x2f8c = 0;
|
||||
resetUpperAnime(UPPER_2, -1.0f);
|
||||
|
||||
@@ -120,7 +120,7 @@ void daAlink_c::changeCommon() {
|
||||
mItemTrigger = 0;
|
||||
mItemButton = 0;
|
||||
field_0x2ba4 = 0.0f;
|
||||
field_0x33a0 = 0.0f;
|
||||
mFootSpeed = 0.0f;
|
||||
field_0x2fcc = 0;
|
||||
|
||||
field_0x32a0[0].r = 0;
|
||||
@@ -244,8 +244,8 @@ void daAlink_c::changeWolf() {
|
||||
mRightItemJntNo = 24;
|
||||
field_0x30c4 = 3;
|
||||
field_0x30b4 = 4;
|
||||
field_0x30bc = 31;
|
||||
field_0x30be = 36;
|
||||
mLeftFootJnt = 31;
|
||||
mRightFootJnt = 36;
|
||||
field_0x32c4[0] = 1;
|
||||
field_0x32c4[1] = 2;
|
||||
field_0x30b6 = 2;
|
||||
@@ -452,7 +452,7 @@ void daAlink_c::changeLink(int param_0) {
|
||||
if (param_0) {
|
||||
fopAcM_SetMtx(this, mpLinkModel->getBaseTRMtx());
|
||||
model = mpLinkModel;
|
||||
field_0x2060->offOldFrameFlg();
|
||||
m_oldFrameCalc->offOldFrameFlg();
|
||||
} else {
|
||||
changeCommon();
|
||||
offNoResetFlg1(FLG1_IS_WOLF);
|
||||
@@ -503,8 +503,8 @@ void daAlink_c::changeLink(int param_0) {
|
||||
mRightItemJntNo = 15;
|
||||
field_0x30c4 = 3;
|
||||
field_0x30b4 = 4;
|
||||
field_0x30bc = 21;
|
||||
field_0x30be = 26;
|
||||
mLeftFootJnt = 21;
|
||||
mRightFootJnt = 26;
|
||||
field_0x30b6 = 5;
|
||||
field_0x32c4[0] = 2;
|
||||
field_0x32c4[1] = 16;
|
||||
@@ -1227,7 +1227,7 @@ int daAlink_c::setDoubleAnimeWolf(f32 param_0, f32 param_1, f32 param_2,
|
||||
commonDoubleAnime(var_r29, NULL, var_r28, NULL, param_0, param_1, param_2, param_5);
|
||||
|
||||
if (param_6 >= 0.0f) {
|
||||
field_0x2060->initOldFrameMorf(param_6, 0, 40);
|
||||
m_oldFrameCalc->initOldFrameMorf(param_6, 0, 40);
|
||||
}
|
||||
|
||||
setFaceBasicTexture(FTANM_WL_MABA01);
|
||||
@@ -1281,7 +1281,7 @@ int daAlink_c::setSingleAnimeWolf(daAlink_c::daAlink_WANM i_anmID, f32 i_speed,
|
||||
commonSingleAnime(var_r30, NULL, i_speed, i_start, i_endFrame);
|
||||
|
||||
if (i_morf >= 0.0f) {
|
||||
field_0x2060->initOldFrameMorf(i_morf, 0, 40);
|
||||
m_oldFrameCalc->initOldFrameMorf(i_morf, 0, 40);
|
||||
}
|
||||
|
||||
setFaceBasicTexture(FTANM_WL_MABA01);
|
||||
@@ -1839,7 +1839,7 @@ void daAlink_c::setWolfFootMatrix() {
|
||||
}
|
||||
}
|
||||
|
||||
if (!field_0x2060->getOldFrameFlg()) {
|
||||
if (!m_oldFrameCalc->getOldFrameFlg()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1905,7 +1905,7 @@ void daAlink_c::setWolfFootMatrix() {
|
||||
void daAlink_c::wolfFootBgCheck() {
|
||||
int i;
|
||||
int j;
|
||||
if (field_0x2060->getOldFrameFlg()) {
|
||||
if (m_oldFrameCalc->getOldFrameFlg()) {
|
||||
cXyz spBC;
|
||||
cXyz spB0;
|
||||
|
||||
@@ -3415,7 +3415,7 @@ int daAlink_c::procWolfStepMoveInit() {
|
||||
current.pos.x -= cM_ssin(shape_angle.y) * 10.0f;
|
||||
current.pos.z -= cM_scos(shape_angle.y) * 10.0f;
|
||||
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.z += 10.0f;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.z += 10.0f;
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -3487,7 +3487,7 @@ int daAlink_c::procWolfSlip() {
|
||||
current.pos.x += cM_scos(shape_angle.y) * 30.0f;
|
||||
current.pos.z -= cM_ssin(shape_angle.y) * 30.0f;
|
||||
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.x -= 30.0f;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.x -= 30.0f;
|
||||
checkNextActionWolf(0);
|
||||
}
|
||||
} else {
|
||||
@@ -3866,14 +3866,14 @@ int daAlink_c::procWolfHowlDemoInit() {
|
||||
mDemo.setSpecialDemoType();
|
||||
|
||||
s16 name;
|
||||
if (field_0x27f4 != NULL) {
|
||||
name = fopAcM_GetName(field_0x27f4);
|
||||
if (mPriActorOwn != NULL) {
|
||||
name = fopAcM_GetName(mPriActorOwn);
|
||||
} else {
|
||||
name = fpcNm_ALINK_e;
|
||||
}
|
||||
|
||||
if (name == fpcNm_Tag_WaraHowl_e) {
|
||||
shape_angle.y = field_0x27f4->shape_angle.y;
|
||||
shape_angle.y = mPriActorOwn->shape_angle.y;
|
||||
current.angle.y = shape_angle.y;
|
||||
} else {
|
||||
f32 var_f31 = cM_ssin(shape_angle.y) * 200.0f;
|
||||
@@ -3918,7 +3918,7 @@ int daAlink_c::procWolfHowlDemoInit() {
|
||||
|
||||
if (name != fpcNm_ALINK_e) {
|
||||
if (name == fpcNm_Obj_Yobikusa_e) {
|
||||
daObjYobikusa_c* yobikusa_p = (daObjYobikusa_c*)field_0x27f4;
|
||||
daObjYobikusa_c* yobikusa_p = (daObjYobikusa_c*)mPriActorOwn;
|
||||
|
||||
mZ2WolfHowlMgr.setCorrectCurve(yobikusa_p->getType());
|
||||
mProcVar5.field_0x3012 = yobikusa_p->getPathID();
|
||||
@@ -3931,16 +3931,16 @@ int daAlink_c::procWolfHowlDemoInit() {
|
||||
field_0x3198 = 0xEE;
|
||||
}
|
||||
} else if (name == fpcNm_TAG_HOWL_e) {
|
||||
mZ2WolfHowlMgr.setCorrectCurve(static_cast<daTag_Howl_c*>(field_0x27f4)->getCurveID());
|
||||
mZ2WolfHowlMgr.setCorrectCurve(static_cast<daTag_Howl_c*>(mPriActorOwn)->getCurveID());
|
||||
} else if (name == fpcNm_Obj_WindStone_e) {
|
||||
mZ2WolfHowlMgr.setCorrectCurve(static_cast<daWindStone_c*>(field_0x27f4)->getTuneId());
|
||||
mProcVar0.field_0x3008 = static_cast<daWindStone_c*>(field_0x27f4)->getNextSceneId();
|
||||
mZ2WolfHowlMgr.setCorrectCurve(static_cast<daWindStone_c*>(mPriActorOwn)->getTuneId());
|
||||
mProcVar0.field_0x3008 = static_cast<daWindStone_c*>(mPriActorOwn)->getNextSceneId();
|
||||
mProcVar4.field_0x3010 = 1;
|
||||
} else if (name == fpcNm_Obj_SmWStone_e) {
|
||||
mZ2WolfHowlMgr.setCorrectCurve(static_cast<daSmWStone_c*>(field_0x27f4)->getTuneId());
|
||||
mZ2WolfHowlMgr.setCorrectCurve(static_cast<daSmWStone_c*>(mPriActorOwn)->getTuneId());
|
||||
mProcVar4.field_0x3010 = 1;
|
||||
} else if (name == fpcNm_Tag_WaraHowl_e) {
|
||||
mZ2WolfHowlMgr.setCorrectCurve(static_cast<daTagWrHowl_c*>(field_0x27f4)->getTuneId());
|
||||
mZ2WolfHowlMgr.setCorrectCurve(static_cast<daTagWrHowl_c*>(mPriActorOwn)->getTuneId());
|
||||
} else {
|
||||
mZ2WolfHowlMgr.setCorrectCurve(-1);
|
||||
}
|
||||
@@ -4058,7 +4058,7 @@ int daAlink_c::procWolfHowlDemo() {
|
||||
} else {
|
||||
if (mZ2WolfHowlMgr.getReleaseTimer() == 30) {
|
||||
frameCtrl_p->setFrame(56.0f);
|
||||
field_0x2060->initOldFrameMorf(3.0f, 0, 40);
|
||||
m_oldFrameCalc->initOldFrameMorf(3.0f, 0, 40);
|
||||
}
|
||||
|
||||
mProcVar1.field_0x300a = 0;
|
||||
@@ -4359,7 +4359,7 @@ int daAlink_c::procWolfRopeMoveInit(int param_0, int param_1) {
|
||||
|
||||
setWolfRopeOffsetY(setWolfRopePosY());
|
||||
if (checkWolfGrabAnime()) {
|
||||
field_0x30a0 = -0x1800;
|
||||
mProcNeckX = -0x1800;
|
||||
}
|
||||
|
||||
mProcVar3.field_0x300e = 0;
|
||||
@@ -4596,7 +4596,7 @@ int daAlink_c::procWolfRopeHang() {
|
||||
|
||||
if (checkAnmEnd(framectrl)) {
|
||||
if (mProcVar3.field_0x300e != 0) {
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.z -= 15.0f;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.z -= 15.0f;
|
||||
|
||||
if (field_0x3198 == 2) {
|
||||
ANGLE_ADD_2(shape_angle.y, 0x4000);
|
||||
@@ -4633,7 +4633,7 @@ int daAlink_c::procWolfRopeHang() {
|
||||
current.pos.x -= 80.0f * cM_ssin(shape_angle.y);
|
||||
current.pos.z -= 80.0f * cM_scos(shape_angle.y);
|
||||
|
||||
field_0x2060->getOldFrameTransInfo(0)->mTranslate.z += 80.0f;
|
||||
m_oldFrameCalc->getOldFrameTransInfo(0)->mTranslate.z += 80.0f;
|
||||
return procWolfFallInit(2, mpHIO->mWolf.mWlAutoJump.m.mNormalFallInterp);
|
||||
}
|
||||
}
|
||||
@@ -4659,7 +4659,7 @@ int daAlink_c::procWolfRopeHang() {
|
||||
rope->setBackJoint(31);
|
||||
|
||||
if (checkWolfGrabAnime()) {
|
||||
field_0x30a0 = -0x1800;
|
||||
mProcNeckX = -0x1800;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -4682,7 +4682,7 @@ int daAlink_c::procWolfRopeHang() {
|
||||
rope->setFrontJoint(36);
|
||||
|
||||
if (checkWolfGrabAnime()) {
|
||||
field_0x30a0 = -0x1800;
|
||||
mProcNeckX = -0x1800;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4788,7 +4788,7 @@ int daAlink_c::procWolfRopeStaggerInit(int param_0) {
|
||||
current.angle.y = shape_angle.y;
|
||||
|
||||
if (checkWolfGrabAnime()) {
|
||||
field_0x30a0 = -0x1800;
|
||||
mProcNeckX = -0x1800;
|
||||
}
|
||||
|
||||
daObjCrope_c* rope_p = (daObjCrope_c*)field_0x280c.getActor();
|
||||
@@ -4899,7 +4899,7 @@ int daAlink_c::procWolfRopeSubjectivityInit() {
|
||||
setWolfRopeOffsetY(setWolfRopePosY());
|
||||
|
||||
if (checkWolfGrabAnime()) {
|
||||
field_0x30a0 = -0x1800;
|
||||
mProcNeckX = -0x1800;
|
||||
}
|
||||
|
||||
setSubjectMode();
|
||||
@@ -4987,8 +4987,8 @@ const cXyz* daAlink_c::checkMidnaLockJumpPoint() const {
|
||||
|
||||
if (mProcID == PROC_WOLF_TAG_JUMP && field_0x280c.getActorConst() != NULL) {
|
||||
wljump_p = field_0x280c.getActorConst();
|
||||
} else if (field_0x27f4 != NULL && fopAcM_GetName(field_0x27f4) == fpcNm_Tag_Wljump_e) {
|
||||
wljump_p = field_0x27f4;
|
||||
} else if (mPriActorOwn != NULL && fopAcM_GetName(mPriActorOwn) == fpcNm_Tag_Wljump_e) {
|
||||
wljump_p = mPriActorOwn;
|
||||
} else if (partner_p != NULL && fopAcM_GetName(partner_p) == fpcNm_Tag_Wljump_e) {
|
||||
wljump_p = partner_p;
|
||||
}
|
||||
@@ -5564,7 +5564,7 @@ int daAlink_c::procWolfHangFallStartInit(cM3dGPla* i_tripla) {
|
||||
int daAlink_c::procWolfHangFallStart() {
|
||||
daPy_frameCtrl_c* frameCtrl_p = mUnderFrameCtrl;
|
||||
|
||||
if (field_0x2060->getOldFrameRate() < 0.1f && changeWolfHangEndProc()) {
|
||||
if (m_oldFrameCalc->getOldFrameRate() < 0.1f && changeWolfHangEndProc()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -6052,7 +6052,7 @@ BOOL daAlink_c::checkWolfLieContinue(int param_0) {
|
||||
int daAlink_c::checkNextActionWolfFromLie() {
|
||||
if (checkNextActionWolf(0)) {
|
||||
if (field_0x2f8c == 1 || field_0x2f8c == 2 || field_0x2f8c == 3) {
|
||||
field_0x2060->initOldFrameMorf(mpHIO->mWolf.mWlLie.m.mStandUpInterp, 0, 40);
|
||||
m_oldFrameCalc->initOldFrameMorf(mpHIO->mWolf.mWlLie.m.mStandUpInterp, 0, 40);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -6416,7 +6416,7 @@ int daAlink_c::procWolfLieAutoMove() {
|
||||
}
|
||||
}
|
||||
|
||||
field_0x310c = shape_angle.y;
|
||||
mCameraAngleY = shape_angle.y;
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -6485,10 +6485,10 @@ int daAlink_c::decideDoStatusSwimWolf() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (field_0x27f4 != NULL && fopAcM_GetName(field_0x27f4) == fpcNm_Obj_Drop_e) {
|
||||
if (mPriActorOwn != NULL && fopAcM_GetName(mPriActorOwn) == fpcNm_Obj_Drop_e) {
|
||||
setDoStatus(BUTTON_STATUS_UNK_57);
|
||||
if (doTrigger()) {
|
||||
fopAcM_setCarryNow(field_0x27f4, 0);
|
||||
fopAcM_setCarryNow(mPriActorOwn, 0);
|
||||
onResetFlg0(RFLG0_GRAB_UP_START);
|
||||
}
|
||||
} else if (checkNoResetFlg0(FLG0_SWIM_UP) && field_0x30d2 == 0 && !checkWolfSwimDashAnime() &&
|
||||
@@ -7058,7 +7058,7 @@ int daAlink_c::procWolfRollAttackCharge() {
|
||||
checkWolfAttackAction();
|
||||
} else
|
||||
#endif
|
||||
if (field_0x2060->getOldFrameRate() < 0.1f) {
|
||||
if (m_oldFrameCalc->getOldFrameRate() < 0.1f) {
|
||||
procWolfRollAttackMoveInit();
|
||||
} else {
|
||||
cLib_chaseF(&mNormalSpeed, 0.0f, mpHIO->mWolf.mWlMoveNoP.m.mDeceleration);
|
||||
@@ -8340,19 +8340,19 @@ int daAlink_c::procWolfEnemyHangBite() {
|
||||
}
|
||||
|
||||
int daAlink_c::procWolfGrabUpInit() {
|
||||
if (fopAcM_checkCarryNow(field_0x27f4)) {
|
||||
if (fopAcM_checkCarryNow(mPriActorOwn)) {
|
||||
return checkNextActionWolf(0);
|
||||
}
|
||||
|
||||
if (fopAcM_GetName(field_0x27f4) == fpcNm_Obj_MasterSword_e) {
|
||||
setGrabItemActor(field_0x27f4);
|
||||
if (fopAcM_GetName(mPriActorOwn) == fpcNm_Obj_MasterSword_e) {
|
||||
setGrabItemActor(mPriActorOwn);
|
||||
return 1;
|
||||
}
|
||||
|
||||
commonProcInit(PROC_WOLF_GRAB_UP);
|
||||
|
||||
f32 var_f31;
|
||||
if (!fopAcM_CheckCarryType(field_0x27f4, fopAcM_CARRY_ITEM)) {
|
||||
if (!fopAcM_CheckCarryType(mPriActorOwn, fopAcM_CARRY_ITEM)) {
|
||||
setSingleAnimeWolfParam(WANM_PICKUP_A, &mpHIO->mWolf.mWlGrab.m.mPotGrabAnm);
|
||||
var_f31 = 120.0f;
|
||||
field_0x3478 = 10.0f;
|
||||
@@ -8364,26 +8364,26 @@ int daAlink_c::procWolfGrabUpInit() {
|
||||
field_0x347c = mpHIO->mWolf.mWlGrab.m.mBoneGrabAnm.mCancelFrame;
|
||||
}
|
||||
|
||||
setGrabItemActor(field_0x27f4);
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, field_0x27f4);
|
||||
setGrabItemActor(mPriActorOwn);
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, mPriActorOwn);
|
||||
current.angle.y = shape_angle.y;
|
||||
mProcVar2.field_0x300c = shape_angle.y;
|
||||
field_0x37c8 = field_0x27f4->current.pos - field_0x3510;
|
||||
field_0x37c8 = mPriActorOwn->current.pos - field_0x3510;
|
||||
mProcVar3.field_0x300e = 0;
|
||||
|
||||
if (fopAcM_GetName(field_0x27f4) != fpcNm_Obj_Drop_e &&
|
||||
fopAcM_GetName(field_0x27f4) != fpcNm_Obj_Sword_e)
|
||||
if (fopAcM_GetName(mPriActorOwn) != fpcNm_Obj_Drop_e &&
|
||||
fopAcM_GetName(mPriActorOwn) != fpcNm_Obj_Sword_e)
|
||||
{
|
||||
f32 prev_x = current.pos.x;
|
||||
f32 prev_z = current.pos.z;
|
||||
|
||||
current.pos.x = field_0x27f4->current.pos.x - var_f31 * cM_ssin(shape_angle.y);
|
||||
current.pos.z = field_0x27f4->current.pos.z - var_f31 * cM_scos(shape_angle.y);
|
||||
current.pos.x = mPriActorOwn->current.pos.x - var_f31 * cM_ssin(shape_angle.y);
|
||||
current.pos.z = mPriActorOwn->current.pos.z - var_f31 * cM_scos(shape_angle.y);
|
||||
field_0x37c8.x -= current.pos.x - prev_x;
|
||||
field_0x37c8.z -= current.pos.z - prev_z;
|
||||
}
|
||||
|
||||
field_0x33e4 = field_0x27f4->current.pos.absXZ(current.pos) - 100.0f;
|
||||
field_0x33e4 = mPriActorOwn->current.pos.absXZ(current.pos) - 100.0f;
|
||||
if (field_0x33e4 < 0.0f) {
|
||||
field_0x33e4 = 0.0f;
|
||||
}
|
||||
@@ -8522,7 +8522,7 @@ int daAlink_c::procWolfPushInit() {
|
||||
mProcVar3.field_0x300e = 18;
|
||||
|
||||
s16 end_frame;
|
||||
if (fopAcM_CheckCarryType(field_0x27f4, fopAcM_CARRY_TYPE_1)) {
|
||||
if (fopAcM_CheckCarryType(mPriActorOwn, fopAcM_CARRY_TYPE_1)) {
|
||||
mProcVar2.field_0x300c = 1;
|
||||
end_frame = 24;
|
||||
} else {
|
||||
@@ -8533,7 +8533,7 @@ int daAlink_c::procWolfPushInit() {
|
||||
mUnderFrameCtrl[0].setAttribute(0);
|
||||
|
||||
mNormalSpeed = 0.0f;
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, field_0x27f4);
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, mPriActorOwn);
|
||||
current.angle.y = shape_angle.y;
|
||||
field_0x3588 = l_wolfBaseAnime;
|
||||
field_0x2f99 = 12;
|
||||
@@ -8542,13 +8542,13 @@ int daAlink_c::procWolfPushInit() {
|
||||
current.pos.x += cM_ssin(shape_angle.y) * 50.0f;
|
||||
current.pos.z += cM_scos(shape_angle.y) * 50.0f;
|
||||
|
||||
if (fopAcM_CheckCarryType(field_0x27f4, fopAcM_CARRY_TYPE_1)) {
|
||||
if (fopAcM_CheckCarryType(mPriActorOwn, fopAcM_CARRY_TYPE_1)) {
|
||||
mProcVar2.field_0x300c = 1;
|
||||
} else {
|
||||
mProcVar2.field_0x300c = 0;
|
||||
}
|
||||
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -8699,14 +8699,14 @@ int daAlink_c::procWolfGanonCatchInit() {
|
||||
}
|
||||
|
||||
mDemo.setSpecialDemoType();
|
||||
field_0x27f4->actor_status |= fopAcStts_STAFF_EXTRA_e;
|
||||
mPriActorOwn->actor_status |= fopAcStts_STAFF_EXTRA_e;
|
||||
|
||||
commonProcInit(PROC_WOLF_GANON_CATCH);
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
static_cast<fopEn_enemy_c*>(field_0x27f4)->setThrowModeCatch();
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
static_cast<fopEn_enemy_c*>(mPriActorOwn)->setThrowModeCatch();
|
||||
setSingleAnimeWolfBase(WANM_PIG_GANON_CATCH_ST);
|
||||
|
||||
shape_angle.y = cLib_targetAngleY(¤t.pos, &field_0x27f4->current.pos);
|
||||
shape_angle.y = cLib_targetAngleY(¤t.pos, &mPriActorOwn->current.pos);
|
||||
current.angle.y = shape_angle.y + 0x8000;
|
||||
|
||||
mNormalSpeed = 50.0f;
|
||||
@@ -8791,7 +8791,7 @@ int daAlink_c::procWolfGanonCatch() {
|
||||
|
||||
int daAlink_c::procWolfChainReadyInit() {
|
||||
commonProcInit(PROC_WOLF_CHAIN_READY);
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
setSingleAnimeWolfParam(WANM_ATTACK_A_START, &mpHIO->mWolf.mWlAttack.mWlAtNjump.m.mAerialAttackAnm);
|
||||
mNormalSpeed = 0.0f;
|
||||
mProcVar2.field_0x300c = 0;
|
||||
@@ -8952,8 +8952,8 @@ int daAlink_c::procWolfChainWait() {
|
||||
int daAlink_c::procWolfDigInit() {
|
||||
BOOL var_r28 = TRUE;
|
||||
|
||||
if (checkEndResetFlg1(ERFLG1_UNK_100000) && field_0x27f4 != NULL && fopAcM_GetName(field_0x27f4) == fpcNm_Obj_Digpl_e) {
|
||||
int type = ((daObjDigpl_c*)field_0x27f4)->getType();
|
||||
if (checkEndResetFlg1(ERFLG1_UNK_100000) && mPriActorOwn != NULL && fopAcM_GetName(mPriActorOwn) == fpcNm_Obj_Digpl_e) {
|
||||
int type = ((daObjDigpl_c*)mPriActorOwn)->getType();
|
||||
if (type == 0 || type == 2 || type == 3) {
|
||||
var_r28 = FALSE;
|
||||
}
|
||||
@@ -8974,15 +8974,15 @@ int daAlink_c::procWolfDigInit() {
|
||||
|
||||
mFallVoiceInit = var_r28;
|
||||
|
||||
if (field_0x27f4 != NULL) {
|
||||
mProcVar1.mDigActorName = fopAcM_GetName(field_0x27f4);
|
||||
if (mPriActorOwn != NULL) {
|
||||
mProcVar1.mDigActorName = fopAcM_GetName(mPriActorOwn);
|
||||
} else {
|
||||
mProcVar1.mDigActorName = fpcNm_ALINK_e;
|
||||
}
|
||||
|
||||
fopAc_ac_c* var_r29;
|
||||
if (checkEndResetFlg1(ERFLG1_UNK_100000) && mProcVar1.mDigActorName != fpcNm_Obj_Lv4DigSand_e && mProcVar1.mDigActorName != fpcNm_Obj_DigSnow_e) {
|
||||
var_r29 = field_0x27f4;
|
||||
var_r29 = mPriActorOwn;
|
||||
} else {
|
||||
var_r29 = NULL;
|
||||
}
|
||||
@@ -9016,11 +9016,11 @@ int daAlink_c::procWolfDigInit() {
|
||||
|
||||
if (checkEndResetFlg1(ERFLG1_UNK_100000)) {
|
||||
if (mProcVar1.mDigActorName == fpcNm_Obj_DigSnow_e) {
|
||||
((daObjDigSnow_c* )field_0x27f4)->startDig();
|
||||
((daObjDigSnow_c* )mPriActorOwn)->startDig();
|
||||
} else if (mProcVar1.mDigActorName == fpcNm_Obj_Lv4DigSand_e) {
|
||||
((daObjL4DigSand_c*)field_0x27f4)->startDig();
|
||||
((daObjL4DigSand_c*)mPriActorOwn)->startDig();
|
||||
}
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
} else {
|
||||
field_0x280c.clearData();
|
||||
}
|
||||
@@ -9187,19 +9187,19 @@ int daAlink_c::procWolfDigThroughInit(int param_0) {
|
||||
int poly_att = mGndPolyAtt0;
|
||||
|
||||
if (param_0 == 0) {
|
||||
if (fopAcM_seenActorAngleY(field_0x27f4, this) <= 0x4000) {
|
||||
shape_angle.y = field_0x27f4->shape_angle.y + 0x8000;
|
||||
if (fopAcM_seenActorAngleY(mPriActorOwn, this) <= 0x4000) {
|
||||
shape_angle.y = mPriActorOwn->shape_angle.y + 0x8000;
|
||||
} else {
|
||||
shape_angle.y = field_0x27f4->shape_angle.y;
|
||||
shape_angle.y = mPriActorOwn->shape_angle.y;
|
||||
}
|
||||
|
||||
current.angle.y = shape_angle.y;
|
||||
current.pos.x = field_0x27f4->current.pos.x;
|
||||
current.pos.z = field_0x27f4->current.pos.z;
|
||||
current.pos.x = mPriActorOwn->current.pos.x;
|
||||
current.pos.z = mPriActorOwn->current.pos.z;
|
||||
|
||||
((daObjDigholl_c*)field_0x27f4)->onDigStart();
|
||||
((daObjDigholl_c*)mPriActorOwn)->onDigStart();
|
||||
|
||||
mProcVar4.field_0x3010 = ((daObjDigholl_c*)field_0x27f4)->getSceneNum();
|
||||
mProcVar4.field_0x3010 = ((daObjDigholl_c*)mPriActorOwn)->getSceneNum();
|
||||
if (mProcVar4.field_0x3010 >= 0) {
|
||||
field_0x3198 = 1;
|
||||
} else {
|
||||
@@ -9208,7 +9208,7 @@ int daAlink_c::procWolfDigThroughInit(int param_0) {
|
||||
|
||||
dCam_getBody()->StartEventCamera(0x1E, fopAcM_GetID(this), "Type", 1, &field_0x3198, 0);
|
||||
|
||||
cXyz sp8(current.pos.x, 30.0f + field_0x27f4->current.pos.y, current.pos.z);
|
||||
cXyz sp8(current.pos.x, 30.0f + mPriActorOwn->current.pos.y, current.pos.z);
|
||||
if (fopAcM_gc_c::gndCheck(&sp8)) {
|
||||
poly_att = fopAcM_gc_c::getPolyAtt0();
|
||||
}
|
||||
@@ -9316,17 +9316,17 @@ int daAlink_c::procWolfGetSmellInit() {
|
||||
mpHIO->mWolf.mWlChain.m.mSniffInterp);
|
||||
voiceStartLevel(Z2SE_WL_V_SNIFF);
|
||||
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, field_0x27f4);
|
||||
shape_angle.y = fopAcM_searchActorAngleY(this, mPriActorOwn);
|
||||
current.angle.y = shape_angle.y;
|
||||
|
||||
current.pos.x = field_0x27f4->current.pos.x - cM_ssin(shape_angle.y) * 100.0f;
|
||||
current.pos.z = field_0x27f4->current.pos.z - cM_scos(shape_angle.y) * 100.0f;
|
||||
current.pos.x = mPriActorOwn->current.pos.x - cM_ssin(shape_angle.y) * 100.0f;
|
||||
current.pos.z = mPriActorOwn->current.pos.z - cM_scos(shape_angle.y) * 100.0f;
|
||||
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
static_cast<kytag03_class*>(field_0x27f4)->field_0x588 = 1;
|
||||
static_cast<kytag03_class*>(field_0x27f4)->field_0x587 = 0;
|
||||
mProcVar5.field_0x3012 = static_cast<kytag03_class*>(field_0x27f4)->field_0x589;
|
||||
fopAcM_OnStatus(field_0x27f4, 0x800);
|
||||
field_0x280c.setData(mPriActorOwn);
|
||||
static_cast<kytag03_class*>(mPriActorOwn)->field_0x588 = 1;
|
||||
static_cast<kytag03_class*>(mPriActorOwn)->field_0x587 = 0;
|
||||
mProcVar5.field_0x3012 = static_cast<kytag03_class*>(mPriActorOwn)->field_0x589;
|
||||
fopAcM_OnStatus(mPriActorOwn, 0x800);
|
||||
|
||||
dComIfGp_setPlayerStatus1(0, 0x4000000);
|
||||
mProcVar2.field_0x300c = 0;
|
||||
|
||||
Reference in New Issue
Block a user