Alink Documentation (#3159)

* some player work

* more work

* better  name

* fix compilation
This commit is contained in:
Luzagar
2026-06-21 05:37:24 +02:00
committed by GitHub
parent ecafc81d53
commit db28ce3942
22 changed files with 479 additions and 479 deletions
+30 -30
View File
@@ -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
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -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);
}
}
+1 -1
View File
@@ -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;
}
+15 -15
View File
@@ -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) {
+1 -1
View File
@@ -170,7 +170,7 @@ void daAlink_c::throwCopyRod() {
} else {
procAtnActorMoveInit();
}
field_0x2060->initOldFrameMorf(0.0f, 0, 35);
m_oldFrameCalc->initOldFrameMorf(0.0f, 0, 35);
}
}
+1 -1
View File
@@ -778,7 +778,7 @@ int daAlink_c::procCrawlAutoMove() {
}
}
field_0x310c = shape_angle.y;
mCameraAngleY = shape_angle.y;
return 1;
}
+1 -1
View File
@@ -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);
}
+3 -3
View File
@@ -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()) {
+4 -4
View File
@@ -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);
+2 -2
View File
@@ -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)) {
+35 -35
View File
@@ -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 {
+38 -38
View File
@@ -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, &current.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();
+11 -11
View File
@@ -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;
}
+33 -33
View File
@@ -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;
}
}
+2 -2
View File
@@ -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;
}
}
+4 -4
View File
@@ -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,
+5 -5
View File
@@ -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;
+3 -3
View File
@@ -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);
+25 -25
View File
@@ -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;
+3 -3
View File
@@ -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();
+83 -83
View File
@@ -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(&current.pos, &field_0x27f4->current.pos);
shape_angle.y = cLib_targetAngleY(&current.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;