summaryrefslogtreecommitdiff
path: root/src/d
diff options
context:
space:
mode:
authorLagoLunatic <LagoLunatic@users.noreply.github.com>2025-04-11 15:02:53 -0400
committerLagoLunatic <LagoLunatic@users.noreply.github.com>2025-04-11 15:02:53 -0400
commit6aeaaef643db58fd2ed26d78eada3a33666f6a3b (patch)
tree5bb1ecef08ae668df57794075cad9f5660ea82ff /src/d
parent309158e274a0613594ffabddec48765cbd4f9c83 (diff)
Added enum for Link's movement direction
Diffstat (limited to 'src/d')
-rw-r--r--src/d/actor/d_a_player_battle.inc2
-rw-r--r--src/d/actor/d_a_player_boomerang.inc8
-rw-r--r--src/d/actor/d_a_player_bow.inc8
-rw-r--r--src/d/actor/d_a_player_climb.inc190
-rw-r--r--src/d/actor/d_a_player_crawl.inc2
-rw-r--r--src/d/actor/d_a_player_dproc.inc2
-rw-r--r--src/d/actor/d_a_player_grab.inc4
-rw-r--r--src/d/actor/d_a_player_hammer.inc8
-rw-r--r--src/d/actor/d_a_player_hang.inc2
-rw-r--r--src/d/actor/d_a_player_hook.inc12
-rw-r--r--src/d/actor/d_a_player_ladder.inc16
-rw-r--r--src/d/actor/d_a_player_main.cpp8
-rw-r--r--src/d/actor/d_a_player_pushpull.inc18
-rw-r--r--src/d/actor/d_a_player_rope.inc37
-rw-r--r--src/d/actor/d_a_player_ship.inc6
-rw-r--r--src/d/actor/d_a_player_swim.inc133
-rw-r--r--src/d/actor/d_a_player_sword.inc110
-rw-r--r--src/d/actor/d_a_player_vomit.inc13
-rw-r--r--src/d/actor/d_a_player_weapon.inc16
-rw-r--r--src/d/actor/d_a_player_whide.inc73
20 files changed, 321 insertions, 347 deletions
diff --git a/src/d/actor/d_a_player_battle.inc b/src/d/actor/d_a_player_battle.inc
index d4323748..7432b72a 100644
--- a/src/d/actor/d_a_player_battle.inc
+++ b/src/d/actor/d_a_player_battle.inc
@@ -246,7 +246,7 @@ BOOL daPy_lk_c::procBtRoll_init(fopEn_enemy_c* enemy) {
local_38.z = 0.5f * (current.pos.z + (enemy->current.pos.z - enemy->getBtBodyR() * cM_scos(enemy->shape_angle.y)));
daPy_ANM anm;
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
m34D4 = -0x7FF0;
anm = ANM_MROLLL;
} else {
diff --git a/src/d/actor/d_a_player_boomerang.inc b/src/d/actor/d_a_player_boomerang.inc
index dd3d11e8..10034712 100644
--- a/src/d/actor/d_a_player_boomerang.inc
+++ b/src/d/actor/d_a_player_boomerang.inc
@@ -203,10 +203,10 @@ BOOL daPy_lk_c::procBoomerangMove_init() {
}
commonProcInit(daPyProc_BOOMERANG_MOVE_e);
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
current.angle.y = shape_angle.y + 0x4000;
} else {
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
current.angle.y = shape_angle.y + -0x4000;
}
setActAnimeUpper(LKANM_BCK_BOOMWAIT, UPPER_MOVE2_e, daPy_HIO_boom_c0::m.field_0x18, 0.0f, -1, -1.0f);
@@ -231,8 +231,8 @@ BOOL daPy_lk_c::procBoomerangMove() {
f32 fVar1 = -1.0f;
if (std::fabsf(mVelocity) < 0.001f) {
onModeFlg(ModeFlg_00000001);
- if (m34B8 != 3) {
- m34B8 = 3;
+ if (mDirection != DIR_RIGHT) {
+ mDirection = DIR_RIGHT;
fVar1 = daPy_HIO_basic_c0::m.field_0xC;
}
} else {
diff --git a/src/d/actor/d_a_player_bow.inc b/src/d/actor/d_a_player_bow.inc
index 351b24bd..313091f0 100644
--- a/src/d/actor/d_a_player_bow.inc
+++ b/src/d/actor/d_a_player_bow.inc
@@ -285,10 +285,10 @@ BOOL daPy_lk_c::procBowMove_init() {
}
commonProcInit(daPyProc_BOW_MOVE_e);
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
current.angle.y = shape_angle.y + 0x4000;
} else {
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
current.angle.y = shape_angle.y + -0x4000;
}
if (!checkBowAnime()) {
@@ -314,8 +314,8 @@ BOOL daPy_lk_c::procBowMove() {
f32 fVar1 = -1.0f;
if (std::fabsf(mVelocity) < 0.001f) {
onModeFlg(ModeFlg_00000001);
- if (m34B8 != 3) {
- m34B8 = 3;
+ if (mDirection != DIR_RIGHT) {
+ mDirection = DIR_RIGHT;
fVar1 = daPy_HIO_basic_c0::m.field_0xC;
}
current.angle.y = shape_angle.y + -0x4000;
diff --git a/src/d/actor/d_a_player_climb.inc b/src/d/actor/d_a_player_climb.inc
index 0f1490d4..2384efd9 100644
--- a/src/d/actor/d_a_player_climb.inc
+++ b/src/d/actor/d_a_player_climb.inc
@@ -21,21 +21,20 @@ f32 daPy_lk_c::getClimbMoveAnmSpeed() {
/* 80135B74-80135DA0 .text setClimbShapeOffset__9daPy_lk_cFv */
void daPy_lk_c::setClimbShapeOffset() {
- /* Nonmatching - floats */
cXyz local_40;
cXyz local_4c;
cXyz local_58;
cXyz local_64;
s16 uVar3 = m34EC;
- s16 uVar4 = shape_angle.y;
+ s32 uVar4 = shape_angle.y;
uVar3 += uVar4;
f32 fVar4 = cM_ssin(uVar3);
f32 fVar3 = cM_scos(uVar3);
- f32 fVar2 = cM_ssin((s32)uVar4 & 0xffffU);
+ f32 fVar2 = cM_ssin((s32)uVar4);
local_58.x = current.pos.x + 20.5f * fVar2;
local_58.y = current.pos.y - 62.5f;
- f32 fVar1 = cM_scos((int)(uint)uVar4 & 0xffffU);
+ f32 fVar1 = cM_scos(uVar4);
local_58.z = current.pos.z + 20.5f * fVar1;
local_40.set(local_58.x - fVar4 * 50.0f, local_58.y, local_58.z - fVar3 * 50.0f);
local_4c.set(local_58.x + fVar4 * 50.0f, local_58.y, local_58.z + fVar3 * 50.0f);
@@ -69,18 +68,14 @@ void daPy_lk_c::setClimbShapeOffset() {
int daPy_lk_c::getClimbDirectionFromAngle() {
s16 angle = m34E8 - shape_angle.y;
if (abs(angle) > 0x7000) {
- return 1;
- }
-
- if (angle >= 0x1000) {
- return 2;
- }
-
- if (angle <= -0x1000) {
- return 3;
+ return DIR_BACKWARD;
+ } else if (angle >= 0x1000) {
+ return DIR_LEFT;
+ } else if (angle <= -0x1000) {
+ return DIR_RIGHT;
+ } else {
+ return DIR_FORWARD;
}
-
- return 0;
}
/* 80135E14-80135E98 .text changeClimbMoveProc__9daPy_lk_cFi */
@@ -89,8 +84,8 @@ void daPy_lk_c::changeClimbMoveProc(int param_0) {
sVar1 = m34EC;
if (mStickDistance > 0.05f) {
- m34B8 = getClimbDirectionFromAngle();
- if ((m34B8 == 0) || (m34B8 == 1)) {
+ mDirection = getClimbDirectionFromAngle();
+ if (mDirection == DIR_FORWARD || mDirection == DIR_BACKWARD) {
procClimbMoveUpDown_init(param_0);
} else {
procClimbMoveSide_init(param_0);
@@ -100,50 +95,50 @@ void daPy_lk_c::changeClimbMoveProc(int param_0) {
}
/* 80135E98-80136154 .text setMoveBGCorrectClimb__9daPy_lk_cFv */
-int daPy_lk_c::setMoveBGCorrectClimb() {
- /* Nonmatching - floats */
- if ((dComIfG_Bgsp()->ChkPolySafe(mPolyInfo)) && (dComIfG_Bgsp()->ChkMoveBG(mPolyInfo))) {
+BOOL daPy_lk_c::setMoveBGCorrectClimb() {
+ if (dComIfG_Bgsp()->ChkPolySafe(mPolyInfo) && dComIfG_Bgsp()->ChkMoveBG(mPolyInfo)) {
dComIfG_Bgsp()->MoveBgTransPos(mPolyInfo, true, &current.pos, &current.angle, &shape_angle);
}
if (checkNoResetFlg1(daPyFlg1_VINE_CATCH)) {
return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
- } else {
- if ((mCurProc == daPyProc_CLIMB_DOWN_START_e) && (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() > 0.01f)) {
- return 0;
- }
- cXyz local_1c;
- cXyz local_28;
- local_1c.set(current.pos.x, current.pos.y + 30.0f, current.pos.z);
- local_28.set(
- current.pos.x + cM_ssin(shape_angle.y) * 80.0f, local_1c.y, current.pos.z + cM_scos(shape_angle.y) * 80.0f
- );
- mLinkLinChk.Set(&local_1c, &local_28, this);
- if ((((!dComIfG_Bgsp()->LineCross(&mLinkLinChk)) || (dComIfG_Bgsp()->GetWallCode(mLinkLinChk) != 1)) ||
- (std::fabsf(dComIfG_Bgsp()->GetTriPla(mLinkLinChk)->GetNP()->y) > 0.05f)) ||
- ((mCurProc == daPyProc_CLIMB_MOVE_UP_DOWN_e || (mCurProc == daPyProc_CLIMB_MOVE_SIDE_e)) &&
- (current.pos.y - 15.0f < mAcch.GetGroundH())))
- {
- return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
- } else {
- cM3dGPla* triPla = dComIfG_Bgsp()->GetTriPla(mLinkLinChk);
- s16 uVar6 = cM_atan2s(triPla->GetNP()->x, triPla->GetNP()->z);
- if (cLib_distanceAngleS(uVar6, shape_angle.y) <= 0x549f) {
- return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
- } else {
- current.pos.x = mLinkLinChk.GetCrossP()->x + 20.5f * cM_ssin(uVar6);
- current.pos.z = mLinkLinChk.GetCrossP()->z + 20.5f * cM_scos(uVar6);
- s16 sVar1 = shape_angle.y;
- shape_angle.y = uVar6 + 0x8000;
- current.angle.y += (s16)(shape_angle.y - sVar1);
- m34EC += (s16)(sVar1 - shape_angle.y);
- }
- }
}
+
+ if (mCurProc == daPyProc_CLIMB_DOWN_START_e && (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() > 0.01f)) {
+ return 0;
+ }
+ cXyz local_1c;
+ cXyz local_28;
+ local_1c.set(current.pos.x, current.pos.y + 30.0f, current.pos.z);
+ local_28.set(
+ current.pos.x + cM_ssin(shape_angle.y) * 80.0f, local_1c.y, current.pos.z + cM_scos(shape_angle.y) * 80.0f
+ );
+ mLinkLinChk.Set(&local_1c, &local_28, this);
+ if ((!dComIfG_Bgsp()->LineCross(&mLinkLinChk) || dComIfG_Bgsp()->GetWallCode(mLinkLinChk) != 1 ||
+ std::fabsf(dComIfG_Bgsp()->GetTriPla(mLinkLinChk)->GetNP()->y) > 0.05f) ||
+ ((mCurProc == daPyProc_CLIMB_MOVE_UP_DOWN_e || mCurProc == daPyProc_CLIMB_MOVE_SIDE_e) &&
+ current.pos.y - 15.0f < mAcch.GetGroundH()))
+ {
+ return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
+ }
+
+ cM3dGPla* triPla = dComIfG_Bgsp()->GetTriPla(mLinkLinChk);
+ s16 uVar6 = cM_atan2s(triPla->GetNP()->x, triPla->GetNP()->z);
+ if (cLib_distanceAngleS(uVar6, shape_angle.y) <= 0x549f) {
+ return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
+ }
+
+ current.pos.x = mLinkLinChk.GetCrossP()->x + 20.5f * cM_ssin(uVar6);
+ current.pos.z = mLinkLinChk.GetCrossP()->z + 20.5f * cM_scos(uVar6);
+ s16 sVar1 = shape_angle.y;
+ shape_angle.y = uVar6 + 0x8000;
+ current.angle.y += (s16)(shape_angle.y - sVar1);
+ m34EC += (s16)(sVar1 - shape_angle.y);
+
return 0;
}
/* 80136154-80136200 .text checkBgCorrectClimbMove__9daPy_lk_cFP4cXyzP4cXyz */
-BOOL daPy_lk_c::checkBgCorrectClimbMove(cXyz* i_startPos, cXyz* i_endPos) {
+void daPy_lk_c::checkBgCorrectClimbMove(cXyz* i_startPos, cXyz* i_endPos) {
mLinkLinChk.Set(i_startPos, i_endPos, this);
if (dComIfG_Bgsp()->LineCross(&mLinkLinChk)) {
cM3dGPla* tri_plane = dComIfG_Bgsp()->GetTriPla(mLinkLinChk);
@@ -154,8 +149,7 @@ BOOL daPy_lk_c::checkBgCorrectClimbMove(cXyz* i_startPos, cXyz* i_endPos) {
}
/* 80136200-80136588 .text checkBgClimbMove__9daPy_lk_cFv */
-BOOL daPy_lk_c::checkBgClimbMove() {
- /* Nonmatching - floats */
+void daPy_lk_c::checkBgClimbMove() {
cXyz local_5c;
cXyz local_68;
@@ -196,9 +190,8 @@ BOOL daPy_lk_c::checkBgClimbMove() {
local_5c.set(current.pos.x + (25.0f * dVar7), local_68.y + 30.0f, current.pos.z + (25.0f * dVar6));
mGndChk.SetPos(&local_5c);
dVar3 = dComIfG_Bgsp()->GroundCross(&mGndChk);
- cM3dGPla* triPla;
- if (((C_BG_MIN_HEIGHT != dVar3) && (triPla = dComIfG_Bgsp()->GetTriPla(mGndChk), triPla->GetNP()->y >= 0.5f)) &&
- (dVar3 >= (local_68.y - 30.0f)))
+ if (C_BG_MIN_HEIGHT != dVar3 && dComIfG_Bgsp()->GetTriPla(mGndChk)->GetNP()->y >= 0.5f &&
+ dVar3 >= local_68.y - 30.0f)
{
dVar4 = 3.0f;
current.pos.x = local_5c.x - (dVar4 * dVar7);
@@ -251,42 +244,39 @@ BOOL daPy_lk_c::procClimbUpStart_init() {
/* 80136708-8013680C .text procClimbUpStart__9daPy_lk_cFv */
BOOL daPy_lk_c::procClimbUpStart() {
- /* Nonmatching - floats */
if (setMoveBGCorrectClimb()) {
return true;
+ }
+
+ if (m3570 == 0) {
+ if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xffff) {
+ procLadderUpStart_init_sub();
+ }
} else {
- if (m3570 == 0) {
- if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xffff) {
- procLadderUpStart_init_sub();
+ J3DFrameCtrl& frameCtrl = mFrameCtrlUnder[UNDER_MOVE0_e];
+ m34C2 = 5;
+ if (frameCtrl.getRate() < 0.01f) {
+ dComIfGp_setDoStatus(6);
+ if (m34D4 == 0) {
+ setLadderFootSe();
+ m34D4 = 1;
}
- } else {
- J3DFrameCtrl& frameCtrl = mFrameCtrlUnder[UNDER_MOVE0_e];
- m34C2 = 5;
- if (frameCtrl.getRate() < 0.01f) {
- dComIfGp_setDoStatus(6);
- if (m34D4 == 0) {
- setLadderFootSe();
- m34D4 = 1;
- }
- if (doTrigger()) {
- m34C2 = 0;
- procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
- } else {
- changeClimbMoveProc(1);
- }
+ if (doTrigger()) {
+ m34C2 = 0;
+ procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
} else {
- if (frameCtrl.checkPass(9.0f)) {
- setLadderFootSe();
- }
+ changeClimbMoveProc(1);
}
+ } else if (frameCtrl.checkPass(9.0f)) {
+ setLadderFootSe();
}
}
+
return true;
}
/* 8013680C-8013693C .text procClimbDownStart_init__9daPy_lk_cFs */
BOOL daPy_lk_c::procClimbDownStart_init(s16 param_0) {
- /* Nonmatching - floats */
commonProcInit(daPyProc_CLIMB_DOWN_START_e);
gravity = 0.0f;
speed.y = 0.0f;
@@ -308,26 +298,24 @@ BOOL daPy_lk_c::procClimbDownStart_init(s16 param_0) {
/* 8013693C-80136A34 .text procClimbDownStart__9daPy_lk_cFv */
BOOL daPy_lk_c::procClimbDownStart() {
- /* Nonmatching - floats */
if (setMoveBGCorrectClimb()) {
return true;
- } else {
- J3DFrameCtrl& frameCtrl = mFrameCtrlUnder[UNDER_MOVE0_e];
- m34C2 = 5;
- if (frameCtrl.getRate() < 0.01f) {
- dComIfGp_setDoStatus(6);
- if (doTrigger()) {
- m34C2 = 0;
- procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
- } else {
- changeClimbMoveProc(1);
- }
+ }
+
+ J3DFrameCtrl& frameCtrl = mFrameCtrlUnder[UNDER_MOVE0_e];
+ m34C2 = 5;
+ if (frameCtrl.getRate() < 0.01f) {
+ dComIfGp_setDoStatus(6);
+ if (doTrigger()) {
+ m34C2 = 0;
+ procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
} else {
- if (frameCtrl.checkPass(26.0f) || frameCtrl.checkPass(36.0f) || frameCtrl.checkPass(43.0f)) {
- setLadderFootSe();
- }
+ changeClimbMoveProc(1);
}
+ } else if (frameCtrl.checkPass(26.0f) || frameCtrl.checkPass(36.0f) || frameCtrl.checkPass(43.0f)) {
+ setLadderFootSe();
}
+
return true;
}
@@ -339,26 +327,26 @@ BOOL daPy_lk_c::procClimbMoveUpDown_init(int param_0) {
dVar3 = getLadderMoveAnmSpeed();
commonProcInit(daPyProc_CLIMB_MOVE_UP_DOWN_e);
current.angle.y = shape_angle.y;
- if (m34B8 == 1) {
+ if (mDirection == DIR_BACKWARD) {
dVar3 *= -1.0f;
}
if (param_0 != 0) {
m3570 = 0;
- if (m34B8 == 0) {
+ if (mDirection == DIR_FORWARD) {
dVar2 = ANM_LADDERLTOR;
} else {
dVar2 = ANM_LADDERRTOL;
}
} else {
m3570 = 1;
- if (m34B8 == 0) {
+ if (mDirection == DIR_FORWARD) {
dVar2 = ANM_LADDERRTOL;
} else {
dVar2 = ANM_LADDERLTOR;
}
}
setSingleMoveAnime(dVar2, dVar3, 0.0f, -1, daPy_HIO_ladder_c0::m.field_0x2C);
- if (m34B8 == 0) {
+ if (mDirection == DIR_FORWARD) {
setTextureAnime(10, 0);
} else {
setTextureAnime(11, 0);
@@ -414,12 +402,12 @@ BOOL daPy_lk_c::procClimbMoveSide_init(int param_0) {
m3570 = param_0;
if (param_0 != 0) {
dVar2 = ANM_FCLIMBSLIDELUP;
- if (m34B8 == 3) {
+ if (mDirection == DIR_RIGHT) {
dVar4 *= -1.0f;
}
} else {
dVar2 = ANM_FCLIMBSLIDERUP;
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
dVar4 *= -1.0f;
}
}
diff --git a/src/d/actor/d_a_player_crawl.inc b/src/d/actor/d_a_player_crawl.inc
index cf69b193..798622df 100644
--- a/src/d/actor/d_a_player_crawl.inc
+++ b/src/d/actor/d_a_player_crawl.inc
@@ -236,7 +236,7 @@ BOOL daPy_lk_c::procCrawlMove_init(s16 param_0, s16 param_1) {
commonProcInit(daPyProc_CRAWL_MOVE_e);
if (var_r29 != 0) {
f32 dVar4 = getCrawlMoveAnmSpeed();
- if (getDirectionFromShapeAngle() == 1) {
+ if (getDirectionFromShapeAngle() == DIR_BACKWARD) {
dVar4 *= -1.0f;
}
current.angle.y = shape_angle.y;
diff --git a/src/d/actor/d_a_player_dproc.inc b/src/d/actor/d_a_player_dproc.inc
index 68da53e6..0b0daee9 100644
--- a/src/d/actor/d_a_player_dproc.inc
+++ b/src/d/actor/d_a_player_dproc.inc
@@ -1275,7 +1275,7 @@ BOOL daPy_lk_c::dProcLookWait_init() {
mVelocity = 0.0f;
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
current.angle.y = shape_angle.y;
- m34B8 = 4;
+ mDirection = DIR_NONE;
initShipRideUseItem(iVar1, 0);
return true;
}
diff --git a/src/d/actor/d_a_player_grab.inc b/src/d/actor/d_a_player_grab.inc
index 23f30bf3..26541fc1 100644
--- a/src/d/actor/d_a_player_grab.inc
+++ b/src/d/actor/d_a_player_grab.inc
@@ -235,8 +235,8 @@ BOOL daPy_lk_c::checkNextActionGrab() {
dComIfGp_setDoStatus(9);
} else {
if (mpAttention->Lockon()) {
- int iVar4 = getDirectionFromShapeAngle();
- if ((mStickDistance <= 0.05f) || (mStickDistance > 0.05f && (iVar4 == 0 || (iVar4 == 1)))) {
+ int direction = getDirectionFromShapeAngle();
+ if ((mStickDistance <= 0.05f) || (mStickDistance > 0.05f && (direction == DIR_FORWARD || (direction == DIR_BACKWARD)))) {
dComIfGp_setDoStatus(14);
}
} else {
diff --git a/src/d/actor/d_a_player_hammer.inc b/src/d/actor/d_a_player_hammer.inc
index 9756a05b..062c12c7 100644
--- a/src/d/actor/d_a_player_hammer.inc
+++ b/src/d/actor/d_a_player_hammer.inc
@@ -67,20 +67,20 @@ BOOL daPy_lk_c::procHammerSideSwing() {
m35EC = mFrameCtrlUnder[UNDER_MOVE0_e].getFrame();
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
checkNextMode(0);
return true;
} else {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_ham_c0::m.field_0x10) {
f32 dVar4 = mVelocity;
- u8 uVar1 = m34B8;
+ u8 orig_direction = mDirection;
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
if (checkNextMode(1)) {
return true;
}
mVelocity = dVar4;
- m34B8 = uVar1;
+ mDirection = orig_direction;
}
if (changeCutReverseProc(ANM_CUTREL)) {
setHammerQuake(NULL, NULL, -1);
diff --git a/src/d/actor/d_a_player_hang.inc b/src/d/actor/d_a_player_hang.inc
index 9de3e027..88cbb88a 100644
--- a/src/d/actor/d_a_player_hang.inc
+++ b/src/d/actor/d_a_player_hang.inc
@@ -229,7 +229,7 @@ BOOL daPy_lk_c::procHangStart() {
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_wallCatch_c0::m.field_0x50)) &&
(mStickDistance > 0.05f || m3570 != 0))
{
- if (getDirectionFromShapeAngle() == 0 || m3570 != 0) {
+ if (getDirectionFromShapeAngle() == DIR_FORWARD || m3570 != 0) {
procHangClimb_init(daPy_HIO_wallCatch_c0::m.field_0x2C);
}
} else {
diff --git a/src/d/actor/d_a_player_hook.inc b/src/d/actor/d_a_player_hook.inc
index 5b7317ee..b733330c 100644
--- a/src/d/actor/d_a_player_hook.inc
+++ b/src/d/actor/d_a_player_hook.inc
@@ -142,8 +142,8 @@ BOOL daPy_lk_c::checkNextActionHookshotReady() {
seStartOnlyReverb(JA_SE_LK_HS_SHOOT);
voiceStart(41);
resetFootEffect();
- if (m34B8 != 2) {
- m34B8 = 2;
+ if (mDirection != DIR_LEFT) {
+ mDirection = DIR_LEFT;
}
current.angle.y = shape_angle.y + 0x4000;
onModeFlg(ModeFlg_00000001);
@@ -248,10 +248,10 @@ BOOL daPy_lk_c::procHookshotMove_init() {
}
commonProcInit(daPyProc_HOOKSHOT_MOVE_e);
- if (m34B8 == 3) {
+ if (mDirection == DIR_RIGHT) {
current.angle.y = shape_angle.y + -0x4000;
} else {
- m34B8 = 2;
+ mDirection = DIR_LEFT;
current.angle.y = shape_angle.y + 0x4000;
}
daHookshot_c* hookshot = (daHookshot_c*)mActorKeepEquip.getActor();
@@ -284,8 +284,8 @@ BOOL daPy_lk_c::procHookshotMove() {
f32 fVar1 = -1.0f;
if (std::fabsf(mVelocity) < 0.001f) {
onModeFlg(ModeFlg_00000001);
- if (m34B8 != 2) {
- m34B8 = 2;
+ if (mDirection != DIR_LEFT) {
+ mDirection = DIR_LEFT;
fVar1 = daPy_HIO_basic_c0::m.field_0xC;
}
current.angle.y = shape_angle.y + 0x4000;
diff --git a/src/d/actor/d_a_player_ladder.inc b/src/d/actor/d_a_player_ladder.inc
index 364d39a2..6d986f5f 100644
--- a/src/d/actor/d_a_player_ladder.inc
+++ b/src/d/actor/d_a_player_ladder.inc
@@ -37,7 +37,7 @@ void daPy_lk_c::setLadderFootSe() {
int daPy_lk_c::changeLadderMoveProc(int param_0) {
cXyz local_2c;
cXyz local_38;
- BOOL iVar5;
+ int direction;
cLib_addCalc(&current.pos.x, m370C.x, 0.5f, 0.5f, 0.05f);
cLib_addCalc(&current.pos.y, m370C.y, 0.5f, 0.5f, 0.05f);
@@ -51,10 +51,10 @@ int daPy_lk_c::changeLadderMoveProc(int param_0) {
local_2c.z = current.pos.z;
if (iVar2 < 0x4000) {
local_2c.y = 50.0f + (125.0f + current.pos.y);
- iVar5 = false;
+ direction = DIR_FORWARD;
} else {
local_2c.y = current.pos.y - 50.0f;
- iVar5 = true;
+ direction = DIR_BACKWARD;
}
local_38.x = local_2c.x + cM_ssin(shape_angle.y) * 50.0f;
local_38.z = local_2c.z + cM_scos(shape_angle.y) * 50.0f;
@@ -67,7 +67,7 @@ int daPy_lk_c::changeLadderMoveProc(int param_0) {
procLadderDownEnd_init(param_0);
}
} else {
- procLadderMove_init(param_0, iVar5, &m370C);
+ procLadderMove_init(param_0, direction, &m370C);
}
}
return false;
@@ -307,13 +307,13 @@ BOOL daPy_lk_c::procLadderDownEnd() {
}
/* 80133BB4-80133E28 .text procLadderMove_init__9daPy_lk_cFiiP4cXyz */
-BOOL daPy_lk_c::procLadderMove_init(int param_0, int param_1, cXyz* param_2) {
+BOOL daPy_lk_c::procLadderMove_init(int param_0, int direction, cXyz* param_2) {
int uVar3 = checkModeFlg(ModeFlg_MIDAIR) ? true : false;
float dVar4 = getLadderMoveAnmSpeed();
commonProcInit(daPyProc_LADDER_MOVE_e);
if (uVar3 == 0) {
- if (param_1 == 0) {
+ if (direction == DIR_FORWARD) {
m370C.y = param_2->y + 37.5f;
} else {
dVar4 *= -1.0f;
@@ -351,8 +351,8 @@ BOOL daPy_lk_c::procLadderMove_init(int param_0, int param_1, cXyz* param_2) {
}
setSingleMoveAnime(anm, dVar4, 0.0f, -1, daPy_HIO_ladder_c0::m.field_0x2C);
- m34B8 = param_1;
- if (param_1 == 0) {
+ mDirection = direction;
+ if (direction == DIR_FORWARD) {
setTextureAnime(10, 0);
} else {
setTextureAnime(0xb, 0);
diff --git a/src/d/actor/d_a_player_main.cpp b/src/d/actor/d_a_player_main.cpp
index 32f21b3f..77f44474 100644
--- a/src/d/actor/d_a_player_main.cpp
+++ b/src/d/actor/d_a_player_main.cpp
@@ -1137,13 +1137,13 @@ void daPy_lk_c::setDoStatus() {
/* 80108A9C-80108B08 .text getDirectionFromAngle__9daPy_lk_cFs */
int daPy_lk_c::getDirectionFromAngle(s16 angle) {
if (abs(angle) > 0x6000) {
- return 1;
+ return DIR_BACKWARD;
} else if (angle >= 0x2000) {
- return 2;
+ return DIR_LEFT;
} else if (angle <= -0x2000) {
- return 3;
+ return DIR_RIGHT;
} else {
- return 0;
+ return DIR_FORWARD;
}
}
diff --git a/src/d/actor/d_a_player_pushpull.inc b/src/d/actor/d_a_player_pushpull.inc
index ea85d032..5d9bb122 100644
--- a/src/d/actor/d_a_player_pushpull.inc
+++ b/src/d/actor/d_a_player_pushpull.inc
@@ -101,10 +101,10 @@ BOOL daPy_lk_c::procPushPullWait() {
}
if (m3570 == 0) {
if (mStickDistance > 0.05f) {
- int iVar1 = getDirectionFromShapeAngle();
- if (iVar1 == 0) {
+ int direction = getDirectionFromShapeAngle();
+ if (direction == DIR_FORWARD) {
procPushMove_init();
- } else if (iVar1 == 1) {
+ } else if (direction == DIR_BACKWARD) {
procPullMove_init();
}
} else {
@@ -135,18 +135,18 @@ BOOL daPy_lk_c::procPushMove_init() {
/* 80151A1C-80151B38 .text procPushMove__9daPy_lk_cFv */
BOOL daPy_lk_c::procPushMove() {
dComIfGp_setRStatus(0x11);
- int iVar1 = getDirectionFromShapeAngle();
+ int direction = getDirectionFromShapeAngle();
setFrontWallType();
if ((!checkResetFlg0(daPyRFlg0_UNK8)) || (!spActionButton() && (!checkNoResetFlg0(daPyFlg0_PUSH_PULL_KEEP)))) {
checkNextMode(0);
} else {
if (!checkNoResetFlg0(daPyFlg0_PUSH_PULL_KEEP)) {
if (mStickDistance > 0.05f) {
- if (iVar1 == 0) {
+ if (direction == DIR_FORWARD) {
setPushPullKeepData(dBgW::PP_UNK1_e);
return true;
}
- if (iVar1 == 1) {
+ if (direction == DIR_BACKWARD) {
return procPullMove_init();
}
}
@@ -180,14 +180,14 @@ BOOL daPy_lk_c::procPullMove_init() {
BOOL daPy_lk_c::procPullMove() {
/* Nonmatching - floats */
dComIfGp_setRStatus(0x11);
- int iVar1 = getDirectionFromShapeAngle();
+ int direction = getDirectionFromShapeAngle();
setFrontWallType();
if ((!checkResetFlg0(daPyRFlg0_UNK8)) || (!spActionButton() && (!checkNoResetFlg0(daPyFlg0_PUSH_PULL_KEEP)))) {
checkNextMode(0);
} else {
if (!checkNoResetFlg0(daPyFlg0_PUSH_PULL_KEEP)) {
if (mStickDistance > 0.05f) {
- if (iVar1 == 1) {
+ if (direction == DIR_BACKWARD) {
f32 dVar4 = cM_ssin(shape_angle.y);
f32 dVar5 = cM_scos(shape_angle.y);
cXyz local_3c;
@@ -217,7 +217,7 @@ BOOL daPy_lk_c::procPullMove() {
}
return true;
}
- if (iVar1 == 0) {
+ if (direction == DIR_FORWARD) {
return procPushMove_init();
}
}
diff --git a/src/d/actor/d_a_player_rope.inc b/src/d/actor/d_a_player_rope.inc
index 7e94befd..739f0ed8 100644
--- a/src/d/actor/d_a_player_rope.inc
+++ b/src/d/actor/d_a_player_rope.inc
@@ -235,8 +235,8 @@ int daPy_lk_c::throwRope() {
daPy_HIO_rope_c0::m.field_0x48, daPy_HIO_rope_c0::m.field_0x8, -1.0f);
setPriTextureAnime(0x48, 0);
mVelocity = 0.0f;
- if (m34B8 != 3) {
- m34B8 = 3;
+ if (mDirection != DIR_RIGHT) {
+ mDirection = DIR_RIGHT;
}
current.angle.y = shape_angle.y + -0x4000;
onModeFlg(ModeFlg_00000001);
@@ -765,7 +765,6 @@ BOOL daPy_lk_c::procRopeHangWait_init(int param_0) {
BOOL daPy_lk_c::procRopeHangWait() {
/* Nonmatching */
bool bVar1;
- int iVar2;
s16 unaff_r29;
float dVar4;
@@ -784,21 +783,21 @@ BOOL daPy_lk_c::procRopeHangWait() {
current.pos.z = mRopePos.z;
s16 r30 = 0;
if (mStickDistance > 0.05f) {
- iVar2 = getDirectionFromAngle(m34DC);
+ int direction = getDirectionFromAngle(m34DC);
if (spActionButton()) {
- if (iVar2 == 0) {
+ if (direction == DIR_FORWARD) {
if (abs((int)m34D4) <= 0x80) {
procRopeUp_init();
}
bVar1 = true;
unaff_r29 = 0;
- } else if (iVar2 == 1) {
+ } else if (direction == DIR_BACKWARD) {
if (abs((int)m34D4) <= 0x80) {
procRopeDown_init();
}
bVar1 = true;
unaff_r29 = 0;
- } else if (iVar2 == 2) {
+ } else if (direction == DIR_LEFT) {
s16 r5 = 512.0f * mStickDistance;
if (r5 > m34D4) {
s16 r0 = 64.0f * mStickDistance;
@@ -810,7 +809,7 @@ BOOL daPy_lk_c::procRopeHangWait() {
} else {
unaff_r29 = r5;
}
- } else {
+ } else { // DIR_RIGHT
s16 r5 = -512.0f * mStickDistance;
if (r5 < m34D4) {
s16 r0 = 64.0f * mStickDistance;
@@ -829,7 +828,7 @@ BOOL daPy_lk_c::procRopeHangWait() {
setSingleMoveAnime(ANM_ROPEWAIT, daPy_HIO_rope_c0::m.field_0x24, 0.0f, -1,
daPy_HIO_rope_c0::m.field_0x2C);
}
- } else if ((iVar2 == 0) || (iVar2 == 1)) {
+ } else if ((direction == DIR_FORWARD) || (direction == DIR_BACKWARD)) {
procRopeSwingStart_init();
}
unaff_r29 = 0;
@@ -939,15 +938,15 @@ BOOL daPy_lk_c::procRopeUp() {
current.pos.x = mRopePos.x;
current.pos.z = mRopePos.z;
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
- int iVar1 = getDirectionFromAngle(m34DC);
+ int direction = getDirectionFromAngle(m34DC);
if (mStickDistance <= 0.05f) {
procRopeHangWait_init(0);
} else {
if (!spActionButton()) {
procRopeSwingStart_init();
- } else if (iVar1 == 1) {
+ } else if (direction == DIR_BACKWARD) {
procRopeDown_init();
- } else if (iVar1 == 0) {
+ } else if (direction == DIR_FORWARD) {
if (m35A0 <= current.pos.y) {
if (!specialRopeHangUp()) {
procRopeHangWait_init(0);
@@ -1017,15 +1016,15 @@ BOOL daPy_lk_c::procRopeDown() {
mRopePos = pfVar2->current.pos;
current.pos.x = mRopePos.x;
current.pos.z = mRopePos.z;
- int iVar1 = getDirectionFromAngle(m34DC);
+ int direction = getDirectionFromAngle(m34DC);
if (mStickDistance <= 0.05f) {
procRopeHangWait_init(1);
} else {
if (!spActionButton()) {
procRopeSwingStart_init();
- } else if (iVar1 == 0) {
+ } else if (direction == DIR_FORWARD) {
procRopeUp_init();
- } else if (iVar1 == 1) {
+ } else if (direction == DIR_BACKWARD) {
m35A0 += 1.5f;
if (m35A0 > daPy_HIO_rope_c0::m.field_0x40) {
m35A0 = daPy_HIO_rope_c0::m.field_0x40;
@@ -1112,10 +1111,10 @@ BOOL daPy_lk_c::procRopeMove_init() {
return false;
}
commonProcInit(daPyProc_ROPE_MOVE_e);
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
current.angle.y = shape_angle.y + 0x4000;
} else {
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
current.angle.y = shape_angle.y + -0x4000;
}
if (fopAcM_GetParam(mActorKeepEquip.getActor()) == 0) {
@@ -1147,8 +1146,8 @@ BOOL daPy_lk_c::procRopeMove() {
f32 fVar1 = -1.0f;
if (std::abs(mVelocity) < 0.001f) {
onModeFlg(ModeFlg_00000001);
- if (m34B8 != 3) {
- m34B8 = 3;
+ if (mDirection != DIR_RIGHT) {
+ mDirection = DIR_RIGHT;
fVar1 = daPy_HIO_basic_c0::m.field_0xC;
}
} else {
diff --git a/src/d/actor/d_a_player_ship.inc b/src/d/actor/d_a_player_ship.inc
index 72582469..8ec4311d 100644
--- a/src/d/actor/d_a_player_ship.inc
+++ b/src/d/actor/d_a_player_ship.inc
@@ -212,8 +212,8 @@ void daPy_lk_c::setShipAttnetionBodyAngle() {
setShapeAngleToAtnActor();
} else {
if (mStickDistance > 0.05f) {
- int iVar1 = getDirectionFromAngle(m34DC);
- if (iVar1 == 2) {
+ int direction = getDirectionFromAngle(m34DC);
+ if (direction == DIR_LEFT) {
s16 r5 = 512.0f * mStickDistance;
if (r5 > m34DA) {
s16 r0 = 64.0f * mStickDistance;
@@ -225,7 +225,7 @@ void daPy_lk_c::setShipAttnetionBodyAngle() {
} else {
r30 = r5;
}
- } else if (iVar1 == 3) {
+ } else if (direction == DIR_RIGHT) {
s16 r5 = -512.0f * mStickDistance;
if (r5 < m34DA) {
s16 r0 = 64.0f * mStickDistance;
diff --git a/src/d/actor/d_a_player_swim.inc b/src/d/actor/d_a_player_swim.inc
index e85b0337..17d771d0 100644
--- a/src/d/actor/d_a_player_swim.inc
+++ b/src/d/actor/d_a_player_swim.inc
@@ -30,7 +30,7 @@ void daPy_lk_c::setSpeedAndAngleSwim() {
if (mStickDistance > 0.05f) {
oldAngleY = shape_angle.y;
- if (getDirectionFromShapeAngle() == 1) {
+ if (getDirectionFromShapeAngle() == DIR_BACKWARD) {
mSwimTailEcallBack[0].onEnd();
mSwimTailEcallBack[1].onEnd();
@@ -226,7 +226,7 @@ BOOL daPy_lk_c::changeSwimOutProc() {
}
if (checkSwimFallCheck()) {
- if (mCurProc == daPyProc_SWIM_MOVE_e && m34B8) {
+ if (mCurProc == daPyProc_SWIM_MOVE_e && mDirection != DIR_FORWARD) {
current.pos.y += m35C4;
}
@@ -234,39 +234,37 @@ BOOL daPy_lk_c::changeSwimOutProc() {
return procFall_init(1, l_HIO_wallCatch_c0.m.field_0x54);
}
- else {
- if (!checkNoResetFlg0(daPyFlg0_UNK80) || (pcVar1 && pcVar1->mNormal.y >= 0.5f && m35D0 - mAcch.GetGroundH() < l_HIO_swim_c0.m.field_0x24 - 5.0f)) {
- current.pos.y = m35D0;
-
- if (mCurProc == daPyProc_SWIM_MOVE_e && m34B8) {
- current.pos.y += m35C4;
- }
- swimOutAfter(TRUE);
+ if (!checkNoResetFlg0(daPyFlg0_UNK80) || (pcVar1 && pcVar1->mNormal.y >= 0.5f && m35D0 - mAcch.GetGroundH() < l_HIO_swim_c0.m.field_0x24 - 5.0f)) {
+ current.pos.y = m35D0;
- return checkNextMode(0);
- }
- else {
- if (dComIfGp_getItemTimeCount() <= 0 && startRestartRoom(5, 0xC9, -1.0f, 0)) {
- voiceStart(0x21);
- mFrameCtrlUnder[0].mRate = 0.0f;
- onNoResetFlg1(daPyFlg1_UNK40000000);
- }
- return FALSE;
+ if (mCurProc == daPyProc_SWIM_MOVE_e && mDirection != DIR_FORWARD) {
+ current.pos.y += m35C4;
}
+
+ swimOutAfter(TRUE);
+
+ return checkNextMode(0);
}
+
+ if (dComIfGp_getItemTimeCount() <= 0 && startRestartRoom(5, 0xC9, -1.0f, 0)) {
+ voiceStart(0x21);
+ mFrameCtrlUnder[UNDER_MOVE0_e].setRate(0.0f);
+ onNoResetFlg1(daPyFlg1_UNK40000000);
+ }
+ return FALSE;
}
/* 8013D530-8013D638 .text setSwimMoveAnime__9daPy_lk_cFQ29daPy_lk_c8daPy_ANM */
void daPy_lk_c::setSwimMoveAnime(daPy_ANM swimMoveAnm) {
- f32 startFrame = mFrameCtrlUnder[0].getFrame();
- f32 endFrame = startFrame * mFrameCtrlUnder[0].getEnd();
+ f32 startFrame = mFrameCtrlUnder[UNDER_MOVE0_e].getFrame();
+ f32 endFrame = startFrame * mFrameCtrlUnder[UNDER_MOVE0_e].getEnd();
f32 rate = (std::fabsf(mVelocity) * (l_HIO_swim_c0.m.field_0x54 - l_HIO_swim_c0.m.field_0x50) / mMaxNormalSpeed) +
l_HIO_swim_c0.m.field_0x50 +
(getSwimTimerRate() * l_HIO_swim_c0.m.field_0x74);
setSingleMoveAnime(swimMoveAnm, rate, 0.0f, -1, l_HIO_swim_c0.m.field_0x58);
- mFrameCtrlUnder[0].setFrame(endFrame * mFrameCtrlUnder[0].getEnd());
- mAnmRatioUnder[0].getAnmTransform()->setFrame(mFrameCtrlUnder[0].getFrame());
+ mFrameCtrlUnder[UNDER_MOVE0_e].setFrame(endFrame * mFrameCtrlUnder[UNDER_MOVE0_e].getEnd());
+ mAnmRatioUnder[UNDER_MOVE0_e].getAnmTransform()->setFrame(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());
}
/* 8013D638-8013D6B8 .text getSwimTimerRate__9daPy_lk_cFv */
@@ -416,7 +414,7 @@ BOOL daPy_lk_c::procSwimWait_init(BOOL param_1) {
gravity = 0.0f;
setSingleMoveAnime(ANM_SWIMWAIT, (float)(getSwimTimerRate() * l_HIO_swim_c0.m.field_0x70) + l_HIO_swim_c0.m.field_0x40, 0.0f, -1, l_HIO_swim_c0.m.field_0x44);
mFrameCtrl->setFrame(fVar2 * mFrameCtrl->getEnd());
- mAnmRatioUnder[0].getAnmTransform()->setFrame(mFrameCtrl->getFrame());
+ mAnmRatioUnder[UNDER_MOVE0_e].getAnmTransform()->setFrame(mFrameCtrl->getFrame());
dComIfGp_setPlayerStatus0(0, daPyStts0_SWIM_e);
if (checkNoResetFlg0(daPyFlg0_UNK100)) {
@@ -435,9 +433,6 @@ BOOL daPy_lk_c::procSwimWait_init(BOOL param_1) {
/* 8013DCDC-8013DE8C .text procSwimWait__9daPy_lk_cFv */
BOOL daPy_lk_c::procSwimWait() {
- fopAc_ac_c* talkEventPartner;
- short targetAngleY;
-
setSpeedAndAngleSwim();
m34D4 += (short)((cM_rndF(0.3f) + 0.85f) * l_HIO_swim_c0.m.field_0x2);
m35C4 = cM_ssin(m34D4) * l_HIO_swim_c0.m.field_0x4C + l_HIO_swim_c0.m.field_0x48;
@@ -445,37 +440,37 @@ BOOL daPy_lk_c::procSwimWait() {
if (changeSwimOutProc()) {
return TRUE;
}
- else {
- if (!checkNoResetFlg0(daPyFlg0_UNK100)) {
- if (changeSwimUpProc()) {
- return TRUE;
- }
- }
- else {
- current.pos.y = m35D0;
- }
- if (checkNextModeSwim()) {
+
+ if (!checkNoResetFlg0(daPyFlg0_UNK100)) {
+ if (changeSwimUpProc()) {
return TRUE;
}
- else {
- if (dComIfGp_checkPlayerStatus0(0, daPyStts0_UNK10_e)) {
- talkEventPartner = fopAcM_getTalkEventPartner(this);
- if (talkEventPartner) {
- targetAngleY = cLib_targetAngleY(&current.pos, &talkEventPartner->eyePos);
- cLib_addCalcAngleS(&shape_angle.y, targetAngleY, l_HIO_turn_c0.m.field_0x6, l_HIO_turn_c0.m.field_0x8, l_HIO_turn_c0.m.field_0xA);
- current.angle.y = shape_angle.y;
- }
- }
-
- mFrameCtrlUnder[0].setRate((float)(getSwimTimerRate() * l_HIO_swim_c0.m.field_0x70) + l_HIO_swim_c0.m.field_0x40);
+ }
+ else {
+ current.pos.y = m35D0;
+ }
- if (mStickDistance > 0.05f) {
- procSwimMove_init(TRUE);
- }
+ if (checkNextModeSwim()) {
+ return TRUE;
+ }
- setSwimTimerStartStop();
+ if (dComIfGp_checkPlayerStatus0(0, daPyStts0_UNK10_e)) {
+ fopAc_ac_c* talkEventPartner = fopAcM_getTalkEventPartner(this);
+ if (talkEventPartner) {
+ short targetAngleY = cLib_targetAngleY(&current.pos, &talkEventPartner->eyePos);
+ cLib_addCalcAngleS(&shape_angle.y, targetAngleY, l_HIO_turn_c0.m.field_0x6, l_HIO_turn_c0.m.field_0x8, l_HIO_turn_c0.m.field_0xA);
+ current.angle.y = shape_angle.y;
}
}
+
+ mFrameCtrlUnder[UNDER_MOVE0_e].setRate((getSwimTimerRate() * l_HIO_swim_c0.m.field_0x70) + l_HIO_swim_c0.m.field_0x40);
+
+ if (mStickDistance > 0.05f) {
+ procSwimMove_init(TRUE);
+ }
+
+ setSwimTimerStartStop();
+
return TRUE;
}
@@ -484,14 +479,14 @@ BOOL daPy_lk_c::procSwimMove_init(BOOL param_1) {
commonProcInit(daPyProc_SWIM_MOVE_e);
if (!param_1) {
- mFrameCtrlUnder[0].setFrame(0.0f);
+ mFrameCtrlUnder[UNDER_MOVE0_e].setFrame(0.0f);
}
gravity = 0.0f;
setSwimMoveAnime(ANM_SWIMING);
- m34B8 = 0;
+ mDirection = DIR_FORWARD;
if (checkNoResetFlg0(daPyFlg0_UNK100)) {
if (mEquipItem != daPyItem_NONE_e) {
@@ -514,40 +509,38 @@ BOOL daPy_lk_c::procSwimMove_init(BOOL param_1) {
/* 8013DF60-8013E250 .text procSwimMove__9daPy_lk_cFv */
BOOL daPy_lk_c::procSwimMove() {
- int iVar1;
daPy_ANM anm;
setSpeedAndAngleSwim();
J3DFrameCtrl* mFrameCtrl = mFrameCtrlUnder;
+ int direction;
if (!mpAttention->Lockon()) {
- iVar1 = 0;
+ direction = DIR_FORWARD;
+ }
+ else if (mStickDistance > 0.05f) {
+ direction = getDirectionFromShapeAngle();
}
else {
- if (mStickDistance > 0.05f) {
- iVar1 = getDirectionFromShapeAngle();
- }
- else {
- iVar1 = 0;
- }
+ direction = DIR_FORWARD;
}
- if (m34B8 != iVar1) {
- m34B8 = iVar1;
+ if (mDirection != direction) {
+ mDirection = direction;
float fVar1 = m35C4;
- if (m34B8 == 0) {
+ if (mDirection == DIR_FORWARD) {
anm = ANM_SWIMING;
m35C4 = l_HIO_swim_c0.m.field_0x5C;
}
else {
m35C4 = -80.0f;
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
anm = ANM_ATNDLS;
}
- else if (m34B8 == 3) {
+ else if (mDirection == DIR_RIGHT) {
anm = ANM_ATNDRS;
}
else {
@@ -558,7 +551,7 @@ BOOL daPy_lk_c::procSwimMove() {
m_old_fdata->getOldFrameTransInfo(0)->mTranslate.y -= m35C4 - fVar1;
setSwimMoveAnime(anm);
- if (m34B8) {
+ if (mDirection != DIR_FORWARD) {
setTextureAnime(3, 0);
onModeFlg(ModeFlg_00000100);
offModeFlg(ModeFlg_00000400);
@@ -573,7 +566,7 @@ BOOL daPy_lk_c::procSwimMove() {
mFrameCtrl[0].setRate((std::fabsf(mVelocity) * (l_HIO_swim_c0.m.field_0x54 - l_HIO_swim_c0.m.field_0x50)) / mMaxNormalSpeed + l_HIO_swim_c0.m.field_0x50 + (float)(getSwimTimerRate() * l_HIO_swim_c0.m.field_0x74));
}
- if (m34B8 == 1) {
+ if (mDirection == DIR_BACKWARD) {
mFrameCtrl[0].setRate(mFrameCtrl[0].getRate() * 0.5f);
}
@@ -603,7 +596,7 @@ BOOL daPy_lk_c::procSwimMove() {
if (mStickDistance <= 0.05f) {
procSwimWait_init(TRUE);
}
- else if ((!m34B8 && mFrameCtrl->checkPass(20.0f)) || (m34B8 && mFrameCtrl->checkPass(0.0f))) {
+ else if ((mDirection == DIR_FORWARD && mFrameCtrl->checkPass(20.0f)) || (mDirection != DIR_FORWARD && mFrameCtrl->checkPass(0.0f))) {
seStartOnlyReverb(JA_SE_LK_SWIM);
}
diff --git a/src/d/actor/d_a_player_sword.inc b/src/d/actor/d_a_player_sword.inc
index 1c179828..680f606b 100644
--- a/src/d/actor/d_a_player_sword.inc
+++ b/src/d/actor/d_a_player_sword.inc
@@ -371,40 +371,36 @@ void daPy_lk_c::setJumpCutAtParam() {
/* 80155970-801559F0 .text getCutDirection__9daPy_lk_cFv */
int daPy_lk_c::getCutDirection() {
- int iVar1;
- s16 sVar2;
-
+ int direction;
if (mStickDistance <= 0.05f) {
- iVar1 = 4;
+ direction = DIR_NONE;
} else {
+ s16 angle;
if (mpAttnActorLockOn != NULL) {
- sVar2 = fopAcM_searchActorAngleY(this, mpAttnActorLockOn);
- sVar2 = m34E8 - sVar2;
+ angle = m34E8 - fopAcM_searchActorAngleY(this, mpAttnActorLockOn);
} else {
- sVar2 = m34E8 - m34DE;
+ angle = m34E8 - m34DE;
}
- iVar1 = getDirectionFromAngle(sVar2);
+ direction = getDirectionFromAngle(angle);
}
- return iVar1 + 1;
+ return direction + 1;
}
/* 801559F0-80155C3C .text changeCutProc__9daPy_lk_cFv */
int daPy_lk_c::changeCutProc() {
- u32 bVar1;
-
if (m34C5 == 5 && changeSpecialBattle()) {
m34C4 = 0;
return true;
}
m34C4++;
- int iVar4 = getCutDirection() - 1;
+ int direction = getCutDirection() - 1;
short sVar2;
if (mpAttention->Lockon() || mStickDistance <= 0.05f) {
sVar2 = shape_angle.y;
} else {
sVar2 = m34E8;
}
- bVar1 = m34C4;
+ u32 bVar1 = m34C4;
if (bVar1 > 4) {
mCutCount = bVar1 - 2;
} else {
@@ -413,17 +409,17 @@ int daPy_lk_c::changeCutProc() {
bVar1 = m34C4;
if (bVar1 == 4) {
- if (iVar4 == 3 || iVar4 == 0) {
+ if (direction == DIR_RIGHT || direction == DIR_FORWARD) {
procCutEA_init();
} else {
procCutEB_init();
}
} else if (bVar1 < 4) {
- if (iVar4 == 0) {
+ if (direction == DIR_FORWARD) {
procCutF_init(sVar2);
- } else if (iVar4 == 3) {
+ } else if (direction == DIR_RIGHT) {
procCutR_init(sVar2);
- } else if (iVar4 == 4) {
+ } else if (direction == DIR_NONE) {
if (mpAttention->Lockon()) {
procCutA_init(sVar2);
} else {
@@ -433,19 +429,19 @@ int daPy_lk_c::changeCutProc() {
procCutL_init(sVar2);
}
} else if (bVar1 == 6) {
- if (iVar4 == 0) {
+ if (direction == DIR_FORWARD) {
procCutTurn_init(1);
- } else if (iVar4 == 4) {
+ } else if (direction == DIR_NONE) {
procCutExB_init();
- } else if (iVar4 == 3) {
+ } else if (direction == DIR_RIGHT) {
procCutExMJ_init(1);
} else {
procCutExMJ_init(0);
}
} else if (bVar1 < 6) {
- if (iVar4 == 0) {
+ if (direction == DIR_FORWARD) {
procCutExMJ_init(1);
- } else if (iVar4 == 3) {
+ } else if (direction == DIR_RIGHT) {
procCutKesa_init();
} else {
procCutExA_init();
@@ -580,21 +576,21 @@ BOOL daPy_lk_c::procCutA() {
m3522 = daPy_HIO_cutA_c0::m.field_0x0;
if (frameCtrl.getRate() < 0.01f) {
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
checkNextMode(0);
return true;
}
if (frameCtrl.getFrame() > daPy_HIO_cutA_c0::m.field_0xC) {
f32 dVar4 = mVelocity;
- u8 uVar1 = m34B8;
+ u8 orig_direction = mDirection;
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
if (checkNextMode(1)) {
return true;
}
mVelocity = dVar4;
- m34B8 = uVar1;
+ mDirection = orig_direction;
}
if (changeCutReverseProc(ANM_CUTRER)) {
return true;
@@ -684,21 +680,21 @@ BOOL daPy_lk_c::procCutF() {
m3522 = daPy_HIO_cutF_c0::m.field_0x0;
if (frameCtrl.getRate() < 0.01f) {
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
checkNextMode(0);
return true;
}
if (frameCtrl.getFrame() > daPy_HIO_cutF_c0::m.field_0xC) {
f32 dVar4 = mVelocity;
- u8 uVar1 = m34B8;
+ u8 orig_direction = mDirection;
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
if (checkNextMode(1)) {
return true;
}
mVelocity = dVar4;
- m34B8 = uVar1;
+ mDirection = orig_direction;
}
if (changeCutReverseProc(ANM_CUTRER)) {
return true;
@@ -783,21 +779,21 @@ BOOL daPy_lk_c::procCutR() {
m3522 = daPy_HIO_cutR_c0::m.field_0x0;
if (frameCtrl.getRate() < 0.01f) {
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
checkNextMode(0);
return true;
}
if (frameCtrl.getFrame() > daPy_HIO_cutR_c0::m.field_0xC) {
f32 dVar4 = mVelocity;
- u8 uVar1 = m34B8;
+ u8 orig_direction = mDirection;
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
if (checkNextMode(1)) {
return true;
}
mVelocity = dVar4;
- m34B8 = uVar1;
+ mDirection = orig_direction;
}
if (changeCutReverseProc(ANM_CUTRER)) {
@@ -884,21 +880,21 @@ BOOL daPy_lk_c::procCutL() {
m3522 = daPy_HIO_cutL_c0::m.field_0x0;
if (frameCtrl.getRate() < 0.01f) {
mVelocity = 0.0f;
- m34B8 = 2;
+ mDirection = DIR_LEFT;
checkNextMode(0);
return true;
}
if (frameCtrl.getFrame() > daPy_HIO_cutL_c0::m.field_0xC) {
f32 dVar4 = mVelocity;
- u8 uVar1 = m34B8;
+ u8 orig_direction = mDirection;
mVelocity = 0.0f;
- m34B8 = 2;
+ mDirection = DIR_LEFT;
if (checkNextMode(1)) {
return true;
}
mVelocity = dVar4;
- m34B8 = uVar1;
+ mDirection = orig_direction;
}
if (changeCutReverseProc(ANM_CUTREL)) {
return true;
@@ -985,7 +981,7 @@ BOOL daPy_lk_c::procCutEA() {
m34D0--;
} else {
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
checkNextMode(0);
return true;
}
@@ -1069,7 +1065,7 @@ BOOL daPy_lk_c::procCutEB() {
m34D0--;
} else {
mVelocity = 0.0f;
- m34B8 = 2;
+ mDirection = DIR_LEFT;
checkNextMode(0);
return true;
}
@@ -1407,18 +1403,18 @@ BOOL daPy_lk_c::procCutTurn() {
if ((int)m34D0 > 0) {
m34D0--;
} else {
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
checkNextMode(0);
return true;
}
} else {
if (frameCtrl.getFrame() > daPy_HIO_cutTurn_c0::m.field_0x10) {
- u8 uVar1 = m34B8;
- m34B8 = 3;
+ u8 orig_direction = mDirection;
+ mDirection = DIR_RIGHT;
if (checkNextMode(1)) {
return true;
}
- m34B8 = uVar1;
+ mDirection = orig_direction;
} else {
if (frameCtrl.getFrame() > 17.0f) {
m32E4.end();
@@ -1632,7 +1628,7 @@ BOOL daPy_lk_c::procCutTurnMove_init() {
mAnmRatioUpper[UPPER_MOVE0_e].getAnmTransform()->setFrame(mFrameCtrlUpper[UPPER_MOVE0_e].getFrame());
}
m3598 = 1.0f;
- m34B8 = 0;
+ mDirection = DIR_FORWARD;
if (dComIfGs_isEventBit(0xb20)) {
bVar1 = true;
@@ -1676,42 +1672,42 @@ BOOL daPy_lk_c::procCutTurnMove() {
} else if (swordButton()) {
f32 dVar8 = 0.0f;
if (mStickDistance > 0.05f) {
- s32 uVar5 = getDirectionFromAngle(m34E8 - m34E6);
+ int direction = getDirectionFromAngle(m34E8 - m34E6);
daPy_ANM dVar6 = (daPy_ANM)0xffff;
cLib_addCalcAngleS(&current.angle.y, m34E8, 4, 12000, 0x2000);
f32 in_f30;
- if (((u32)m34B8 == 0) || ((u32)m34B8 == 1)) {
- if (uVar5 == 2 || uVar5 == 3) {
+ if ((mDirection == DIR_FORWARD) || (mDirection == DIR_BACKWARD)) {
+ if (direction == DIR_LEFT || direction == DIR_RIGHT) {
dVar6 = ANM_CUTTURNPWLR;
in_f30 = daPy_HIO_cutTurnR_c0::m.field_0x24;
mVelocity *= 0.5f;
- } else if (m34B8 != uVar5) {
+ } else if (mDirection != direction) {
mVelocity *= 0.5f;
}
- } else if (uVar5 == 0 || uVar5 == 1) {
+ } else if (direction == DIR_FORWARD || direction == DIR_BACKWARD) {
dVar6 = ANM_CUTTURNPWFB;
in_f30 = daPy_HIO_cutTurnR_c0::m.field_0x1C;
mVelocity *= 0.5f;
- } else if (m34B8 != uVar5) {
+ } else if (mDirection != direction) {
mVelocity *= 0.5f;
}
- if (m34B8 == uVar5) {
+ if (mDirection == direction) {
dVar8 = daPy_HIO_move_c0::m.field_0x14 * mStickDistance;
} else {
- m34B8 = (u8)uVar5;
+ mDirection = direction;
}
if (dVar6 != (daPy_ANM)0xffff) {
setSingleMoveAnime(dVar6, 0.0f, 0.0f, -1, in_f30);
}
}
setNormalSpeedF(dVar8, 0.5f, 2.0f, 0.25f);
- if (m34B8 == 0) {
+ if (mDirection == DIR_FORWARD) {
dVar8 = daPy_HIO_cutTurnR_c0::m.field_0x18;
- } else if (m34B8 == 1) {
+ } else if (mDirection == DIR_BACKWARD) {
dVar8 = -daPy_HIO_cutTurnR_c0::m.field_0x18;
- } else if (m34B8 == 3) {
+ } else if (mDirection == DIR_RIGHT) {
dVar8 = -daPy_HIO_cutTurnR_c0::m.field_0x20;
- } else {
+ } else { // DIR_LEFT
dVar8 = daPy_HIO_cutTurnR_c0::m.field_0x20;
}
f32 dVar7 = mVelocity / mMaxNormalSpeed;
diff --git a/src/d/actor/d_a_player_vomit.inc b/src/d/actor/d_a_player_vomit.inc
index 1ce95d30..3b44dea4 100644
--- a/src/d/actor/d_a_player_vomit.inc
+++ b/src/d/actor/d_a_player_vomit.inc
@@ -98,8 +98,8 @@ BOOL daPy_lk_c::procVomitWait() {
procVomitJump_init(0);
} else {
if (mStickDistance > 0.05f) {
- int iVar1 = getDirectionFromAngle(m34DC);
- if (iVar1 == 2) {
+ int direction = getDirectionFromAngle(m34DC);
+ if (direction == DIR_LEFT) {
s16 r5 = 512.0f * mStickDistance;
if (r5 > m34D4) {
s16 r0 = 64.0f * mStickDistance;
@@ -111,7 +111,7 @@ BOOL daPy_lk_c::procVomitWait() {
} else {
r30 = r5;
}
- } else if (iVar1 == 3) {
+ } else if (direction == DIR_RIGHT) {
s16 r5 = -512.0f * mStickDistance;
if (r5 < m34D4) {
s16 r0 = 64.0f * mStickDistance;
@@ -210,13 +210,12 @@ BOOL daPy_lk_c::procVomitJump() {
cLib_addCalc(&mVelocity, daPy_HIO_vomit_c0::m.field_0x20, 0.5f, 2.0f, 0.1f);
} else {
f32 fVar2;
- s32 iVar3;
if (!checkFanGlideProc(1)) {
if (mStickDistance > 0.05f) {
- iVar3 = getDirectionFromShapeAngle();
- if (iVar3 == 0) {
+ int direction = getDirectionFromShapeAngle();
+ if (direction == DIR_FORWARD) {
fVar2 = 1.0f;
- } else if (iVar3 == 1) {
+ } else if (direction == DIR_BACKWARD) {
fVar2 = -1.0f;
} else {
fVar2 = 0.0f;
diff --git a/src/d/actor/d_a_player_weapon.inc b/src/d/actor/d_a_player_weapon.inc
index 9c53a3a8..b6662ddb 100644
--- a/src/d/actor/d_a_player_weapon.inc
+++ b/src/d/actor/d_a_player_weapon.inc
@@ -88,20 +88,20 @@ BOOL daPy_lk_c::procWeaponNormalSwing() {
m34D0--;
} else {
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
checkNextMode(0);
return true;
}
} else if (frameCtrl.getFrame() > daPy_HIO_cutBoko_c0::m.field_0x1C) {
f32 dVar4 = mVelocity;
- u8 uVar1 = m34B8;
+ u8 orig_direction = mDirection;
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
if (checkNextMode(1)) {
return true;
}
mVelocity = dVar4;
- m34B8 = uVar1;
+ mDirection = orig_direction;
}
if (changeCutReverseProc(ANM_CUTRER)) {
return true;
@@ -174,19 +174,19 @@ BOOL daPy_lk_c::procWeaponSideSwing() {
}
if ((mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) || (mActorKeepEquip.getActor() == NULL)) {
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
checkNextMode(0);
return true;
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_cutBoko_c0::m.field_0x50) {
f32 dVar4 = mVelocity;
- u8 uVar1 = m34B8;
+ u8 orig_direction = mDirection;
mVelocity = 0.0f;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
if (checkNextMode(1)) {
return true;
}
mVelocity = dVar4;
- m34B8 = uVar1;
+ mDirection = orig_direction;
}
if (changeCutReverseProc(ANM_CUTREL)) {
return true;
diff --git a/src/d/actor/d_a_player_whide.inc b/src/d/actor/d_a_player_whide.inc
index 5ec4f3f7..c6159e1e 100644
--- a/src/d/actor/d_a_player_whide.inc
+++ b/src/d/actor/d_a_player_whide.inc
@@ -33,7 +33,7 @@ void daPy_lk_c::setBlendWHideMoveAnime(f32 param_0) {
sVar1 = daPy_HIO_wall_c0::m.field_0x8;
fVar6 = daPy_HIO_wall_c0::m.field_0x60;
fVar3 = daPy_HIO_wall_c0::m.field_0x58;
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
dVar5 = ANM_WALLWR;
} else {
dVar5 = ANM_WALLWL;
@@ -45,7 +45,7 @@ void daPy_lk_c::setBlendWHideMoveAnime(f32 param_0) {
sVar1 = daPy_HIO_wall_c0::m.field_0xA;
fVar6 = daPy_HIO_wall_c0::m.field_0x64;
fVar3 = daPy_HIO_wall_c0::m.field_0x5C;
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
dVar5 = ANM_WALLWRDW;
} else {
dVar5 = ANM_WALLWLDW;
@@ -72,7 +72,7 @@ void daPy_lk_c::setBlendWHideMoveAnime(f32 param_0) {
}
/* 801371E0-80137608 .text getWHideModePolygon__9daPy_lk_cFP4cXyzP4cXyzP4cXyzi */
-cM3dGPla* daPy_lk_c::getWHideModePolygon(cXyz* param_0, cXyz* param_1, cXyz* param_2, int param_3) {
+cM3dGPla* daPy_lk_c::getWHideModePolygon(cXyz* param_0, cXyz* param_1, cXyz* param_2, int direction) {
if (param_0 != NULL) {
mLinkLinChk.Set(param_0, param_1, this);
if (!dComIfG_Bgsp()->LineCross(&mLinkLinChk)) {
@@ -103,14 +103,14 @@ cM3dGPla* daPy_lk_c::getWHideModePolygon(cXyz* param_0, cXyz* param_1, cXyz* par
return NULL;
}
- if (param_3 == 4) {
+ if (direction == DIR_NONE) {
f31 = 49.9f;
} else {
f31 = 99.8f;
}
s16 sVar7 = uVar3;
cXyz local_48;
- if (param_3 != 3) {
+ if (direction != DIR_RIGHT) {
local_3c.set(
param_2->x + (f31 * triPla->GetNP()->z) + (triPla->GetNP()->x * 1.25f),
param_2->y,
@@ -129,7 +129,7 @@ cM3dGPla* daPy_lk_c::getWHideModePolygon(cXyz* param_0, cXyz* param_1, cXyz* par
}
}
- if (param_3 != 2) {
+ if (direction != DIR_LEFT) {
local_3c.set(
param_2->x - (f31 * triPla->GetNP()->z) + (triPla->GetNP()->x * 1.25f),
param_2->y,
@@ -148,8 +148,8 @@ cM3dGPla* daPy_lk_c::getWHideModePolygon(cXyz* param_0, cXyz* param_1, cXyz* par
}
}
- if (param_3 != 4) {
- if (param_3 == 2) {
+ if (direction != DIR_NONE) {
+ if (direction == DIR_LEFT) {
sVar7 = sVar7 - shape_angle.y;
param_2->x += daPy_HIO_wall_c0::m.field_0x54 * triPla->GetNP()->z;
param_2->z -= daPy_HIO_wall_c0::m.field_0x54 * triPla->GetNP()->x;
@@ -217,12 +217,12 @@ BOOL daPy_lk_c::checkWHideFrontFloor(cXyz* param_0) {
}
/* 80137828-80137914 .text checkWHideModeChange__9daPy_lk_cFP4cXyz */
-BOOL daPy_lk_c::checkWHideModeChange(cXyz* param_0) {
+int daPy_lk_c::checkWHideModeChange(cXyz* param_0) {
if (!checkNoResetFlg0(daPyFlg0_UNK10000)) {
if (!checkWHideFrontFloor(param_0)) {
dComIfGp_setRStatus(0);
} else if (spActionButton()) {
- return true;
+ return 1;
}
} else {
cXyz local_18;
@@ -234,7 +234,7 @@ BOOL daPy_lk_c::checkWHideModeChange(cXyz* param_0) {
if (checkModeFlg(ModeFlg_00000001) && mCurProc != daPyProc_WHIDE_PEEP_e) {
setTextureAnime(mAnmDataTable[ANM_WALL].mTexAnmIdx, 0);
}
- return false;
+ return 0;
}
/* 80137914-80137A00 .text changeWHideEndProc__9daPy_lk_cFP4cXyz */
@@ -353,14 +353,13 @@ BOOL daPy_lk_c::procWHideWait() {
cXyz cStack_24;
cXyz cStack_3c;
cXyz cStack_48;
- int iVar1;
getWHideBasePos(&cStack_3c);
if (changeWHideEndProc(&cStack_3c)) {
return true;
}
- iVar1 = checkWHideModeChange(&cStack_3c);
+ int iVar1 = checkWHideModeChange(&cStack_3c);
if (iVar1 == 1) {
setSingleMoveAnime(
ANM_WALLDW,
@@ -388,22 +387,22 @@ BOOL daPy_lk_c::procWHideWait() {
if (mStickDistance > 0.05f && C_BG_MIN_HEIGHT != mAcch.GetGroundH() &&
dComIfG_Bgsp()->GetTriPla(mAcch.m_gnd)->GetNP()->y >= 0.5f)
{
- iVar1 = getDirectionFromCurrentAngle();
- if (iVar1 == 3 || iVar1 == 2) {
- if (iVar1 == 3) {
+ int direction = getDirectionFromCurrentAngle();
+ if (direction == DIR_RIGHT || direction == DIR_LEFT) {
+ if (direction == DIR_RIGHT) {
current.angle.y = shape_angle.y + -0x4000;
- m34B8 = 3;
+ mDirection = DIR_RIGHT;
} else {
current.angle.y = shape_angle.y + 0x4000;
- m34B8 = 2;
+ mDirection = DIR_LEFT;
}
getWHideNextPos(&cStack_3c, &cStack_48);
- iVar1 = checkWHideBackWall(&cStack_48);
- if (iVar1 != 0 && (!checkNoResetFlg0(daPyFlg0_UNK10000) || checkWHideFrontFloor(&cStack_48))) {
+ BOOL iVar1 = checkWHideBackWall(&cStack_48);
+ if (iVar1 && (!checkNoResetFlg0(daPyFlg0_UNK10000) || checkWHideFrontFloor(&cStack_48))) {
return procWHideMove_init();
}
- if (iVar1 == 0) {
+ if (!iVar1) {
cStack_48 += (cStack_48 - cStack_3c) * 0.25f;
mLinkLinChk.Set(&cStack_3c, &cStack_48, this);
if (!dComIfG_Bgsp()->LineCross(&mLinkLinChk)) {
@@ -420,7 +419,7 @@ BOOL daPy_lk_c::procWHideWait() {
/* 80138074-801380F0 .text procWHideMove_init__9daPy_lk_cFv */
BOOL daPy_lk_c::procWHideMove_init() {
commonProcInit(daPyProc_WHIDE_MOVE_e);
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
current.angle.y = shape_angle.y + 0x4000;
} else {
current.angle.y = shape_angle.y + -0x4000;
@@ -451,23 +450,23 @@ BOOL daPy_lk_c::procWHideMove() {
cM3dGPla* triPla = dComIfG_Bgsp()->GetTriPla(mLinkLinChk);
s16 sVar8 = cM_atan2s(triPla->GetNP()->x, triPla->GetNP()->z);
f32 fVar2;
- if (checkWHideModeChange(&acStack_24)) {
+ if (checkWHideModeChange(&acStack_24) != 0) {
fVar2 = 0.0f;
} else if (mStickDistance > 0.05f && C_BG_MIN_HEIGHT != mAcch.GetGroundH() &&
dComIfG_Bgsp()->GetTriPla(mAcch.m_gnd)->GetNP()->y >= 0.5f)
{
- int iVar6 = getDirectionFromCurrentAngle();
- if (iVar6 == 1) {
+ int direction = getDirectionFromCurrentAngle();
+ if (direction == DIR_BACKWARD) {
current.angle.y -= -0x8000;
mVelocity *= 0.5f;
- if (m34B8 == 2) {
- m34B8 = 3;
+ if (mDirection == DIR_LEFT) {
+ mDirection = DIR_RIGHT;
} else {
- m34B8 = 2;
+ mDirection = DIR_LEFT;
}
setBlendWHideMoveAnime(2.0f);
}
- if (iVar6 == 0 || iVar6 == 1) {
+ if (direction == DIR_FORWARD || direction == DIR_BACKWARD) {
fVar2 = daPy_HIO_move_c0::m.field_0x14;
fVar2 *= mStickDistance;
} else {
@@ -486,7 +485,7 @@ BOOL daPy_lk_c::procWHideMove() {
}
cXyz cStack_3c;
- triPla = getWHideModePolygon(&acStack_24, &cStack_30, &cStack_3c, m34B8);
+ triPla = getWHideModePolygon(&acStack_24, &cStack_30, &cStack_3c, mDirection);
if (triPla != NULL) {
return procWHideReady_init(triPla, &cStack_3c);
}
@@ -501,7 +500,7 @@ BOOL daPy_lk_c::procWHideMove() {
}
cXyz cStack_48;
- if (sVar8 != shape_angle.y && getWHideModePolygon(NULL, NULL, &cStack_48, m34B8) != NULL) {
+ if (sVar8 != shape_angle.y && getWHideModePolygon(NULL, NULL, &cStack_48, mDirection) != NULL) {
if ((s16)(current.angle.y - shape_angle.y) > 0) {
current.angle.y = sVar8 + 0x4000;
} else {
@@ -531,7 +530,7 @@ BOOL daPy_lk_c::procWHidePeep_init() {
fVar3 = daPy_HIO_wall_c0::m.field_0x48;
fVar2 = daPy_HIO_wall_c0::m.field_0x2C;
sVar4 = daPy_HIO_wall_c0::m.field_0x4;
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
dVar2 = ANM_WALLPR;
} else {
dVar2 = ANM_WALLPL;
@@ -541,7 +540,7 @@ BOOL daPy_lk_c::procWHidePeep_init() {
fVar3 = daPy_HIO_wall_c0::m.field_0x4C;
fVar2 = daPy_HIO_wall_c0::m.field_0x30;
sVar4 = daPy_HIO_wall_c0::m.field_0x6;
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
dVar2 = ANM_WALLPRDW;
} else {
dVar2 = ANM_WALLPLDW;
@@ -569,7 +568,7 @@ BOOL daPy_lk_c::procWHidePeep() {
}
if (std::fabsf(dVar3) < 0.01f) {
- if (m34B8 == 2) {
+ if (mDirection == DIR_LEFT) {
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK40_e);
} else {
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK20_e);
@@ -581,13 +580,13 @@ BOOL daPy_lk_c::procWHidePeep() {
}
}
- if (checkWHideModeChange(&cStack_38)) {
+ if (checkWHideModeChange(&cStack_38) != 0) {
if (dVar3 > 0.0f) {
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(-dVar3);
}
} else if (mStickDistance > 0.05f) {
- int iVar1 = getDirectionFromCurrentAngle();
- if ((iVar1 != 0 && dVar3 > 0.0f) || (iVar1 == 0 && dVar3 < 0.0f)) {
+ int direction = getDirectionFromCurrentAngle();
+ if ((direction != DIR_FORWARD && dVar3 > 0.0f) || (direction == 0 && dVar3 < 0.0f)) {
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(-dVar3);
}
} else if (dVar3 > 0.0f) {