player enum and inlines and goto cleanup

This commit is contained in:
LagoLunatic
2025-04-16 15:02:18 -04:00
parent 1f049c0911
commit ce1468c108
24 changed files with 231 additions and 257 deletions
+2 -2
View File
@@ -34,9 +34,9 @@ public:
void arrowUseMp();
void ShieldReflect();
bool check_water_in();
BOOL changeArrowMp();
static BOOL changeArrowMp();
daArrow_c* changeArrowType();
void changeArrowTypeNotReady();
static void changeArrowTypeNotReady();
void setRoomInfo();
void setKeepMatrix();
void setStopActorMatrix();
+11 -6
View File
@@ -28,17 +28,19 @@ STATIC_ASSERT(sizeof(daPy_mtxFollowEcallBack_c) == 0x0C);
class daPy_demo_c {
public:
enum {
DEMO_UNK1_e = 0x01,
DEMO_UNK4_e = 0x04,
DEMO_UNK6_e = 0x06,
DEMO_UNK8_e = 0x08,
DEMO_UNK9_e = 0x09,
DEMO_UNK01_e = 0x01,
DEMO_UNK04_e = 0x04,
DEMO_UNK06_e = 0x06,
DEMO_UNK08_e = 0x08,
DEMO_UNK09_e = 0x09,
DEMO_UNK0F_e = 0x0F,
DEMO_UNK10_e = 0x10,
DEMO_UNK11_e = 0x11,
DEMO_UNK12_e = 0x12,
DEMO_UNK14_e = 0x14,
DEMO_UNK17_e = 0x17,
DEMO_UNK18_e = 0x18,
DEMO_UNK1A_e = 0x1A,
DEMO_UNK1B_e = 0x1B,
DEMO_UNK1D_e = 0x1D,
DEMO_UNK1E_e = 0x1E,
@@ -46,8 +48,11 @@ public:
DEMO_UNK22_e = 0x22,
DEMO_UNK25_e = 0x25,
DEMO_UNK2A_e = 0x2A,
DEMO_UNK2B_e = 0x2B,
DEMO_UNK2F_e = 0x2F,
DEMO_UNK33_e = 0x33,
DEMO_UNK35_e = 0x35,
DEMO_UNK38_e = 0x38,
DEMO_UNK3D_e = 0x3D,
DEMO_UNK3E_e = 0x3E,
DEMO_UNK40_e = 0x40,
@@ -414,7 +419,7 @@ public:
}
void cancelOriginalDemo() {
mDemo.setSystemDemoType();
mDemo.setDemoMode(daPy_demo_c::DEMO_UNK1_e);
mDemo.setDemoMode(daPy_demo_c::DEMO_UNK01_e);
}
void onNoResetFlg0(daPy_FLG0 flag) { mNoResetFlg0 |= flag; }
+12 -11
View File
@@ -1726,21 +1726,23 @@ public:
J3DAnmTextureSRTKey* getIceArrowBtk() { return mpIceArrowBtk; }
J3DAnmTextureSRTKey* getLightArrowBtk() { return mpLightArrowBtk; }
bool checkUpperAnime(u16 i_idx) const { return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == i_idx; }
bool checkGrabAnime() const { return checkGrabAnimeLight() || checkGrabAnimeHeavy(); };
bool checkGrabAnimeLight() const { return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_GRABWAIT; };
bool checkGrabAnimeHeavy() const { return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_GRABWAITB; };
bool checkBoomerangCatchAnime() const { return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOOMCATCH; };
bool checkBoomerangThrowAnime() const { return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOOMTHROW; };
bool checkBoomerangReadyAnime() const { return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOOMWAIT; };
bool checkHookshotReadyAnime() const { return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_HOOKSHOTWAIT; }
bool checkDashDamageAnime() const { return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_DAMDASH; }
bool checkGrabAnimeLight() const { return checkUpperAnime(LKANM_BCK_GRABWAIT); };
bool checkGrabAnimeHeavy() const { return checkUpperAnime(LKANM_BCK_GRABWAITB); };
bool checkBoomerangCatchAnime() const { return checkUpperAnime(LKANM_BCK_BOOMCATCH); };
bool checkBoomerangThrowAnime() const { return checkUpperAnime(LKANM_BCK_BOOMTHROW); };
bool checkBoomerangReadyAnime() const { return checkUpperAnime(LKANM_BCK_BOOMWAIT); };
bool checkHookshotReadyAnime() const { return checkUpperAnime(LKANM_BCK_HOOKSHOTWAIT); }
bool checkDashDamageAnime() const { return checkUpperAnime(LKANM_BCK_DAMDASH); }
bool checkGuardSlip() const {
return mCurProc == daPyProc_GUARD_SLIP_e ||
mCurProc == daPyProc_CROUCH_DEFENSE_SLIP_e;
}
bool checkUpperGuardAnime() const {
return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_ATNG ||
m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_ATNGHAM;
return checkUpperAnime(LKANM_BCK_ATNG) ||
checkUpperAnime(LKANM_BCK_ATNGHAM);
}
s16 checkTinkleShield() const { return mTinkleShieldTimer; }
@@ -1837,7 +1839,6 @@ public:
void checkRopeThrowAnime() const {}
void checkShieldEquip() const {}
void checkSwordEquipAnime() const {}
void checkUpperAnime(u16) const {}
void getAnmSpeedStickRate(f32, f32) {}
void getBombWaterPillarBrk() {}
void getBombWaterPillarBtk() {}
@@ -1892,7 +1893,7 @@ public:
virtual BOOL checkGrabBarrel() { return checkGrabBarrelSearch(1); }
virtual u32 checkPlayerNoDraw() { return dComIfGp_checkCameraAttentionStatus(mCameraInfoIdx, 2) || checkNoResetFlg0(daPyFlg0_NO_DRAW); }
virtual BOOL checkRopeTag() { return mActorKeepEquip.getActor() == NULL; }
virtual BOOL checkRopeReadyAnime() const { return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_ROPETHROWWAIT; }
virtual BOOL checkRopeReadyAnime() const { return checkUpperAnime(LKANM_BCK_ROPETHROWWAIT); }
virtual void voiceStart(u32);
virtual void setOutPower(f32, s16, int);
virtual void onFrollCrashFlg(u32 param_1) { m3620 = param_1; onNoResetFlg0(daPyFlg0_UNK8); }
+5 -5
View File
@@ -19,11 +19,11 @@ typedef struct _GXColor GXColor;
class dBgW : public cBgW {
public:
enum PushPullLabel {
PP_UNK0_e = 0x00,
PP_UNK1_e = 0x01,
PP_UNK2_e = 0x02,
PP_UNK4_e = 0x04,
PP_UNK8_e = 0x08,
PPLABEL_NONE = 0x00,
PPLABEL_PUSH = 0x01,
PPLABEL_PULL = 0x02,
PPLABEL_UNK4 = 0x04,
PPLABEL_HEAVY = 0x08,
};
typedef void (*dBgW_CrrFunc)(dBgW*, void*, cBgS_PolyInfo&, bool, cXyz*, csXyz*, csXyz*);
+7 -7
View File
@@ -750,7 +750,7 @@ void daAuction_c::eventMainInit() {
daPy_py_c* pLink = (daPy_py_c*)dComIfGp_getLinkPlayer();
pLink->changeOriginalDemo();
mCurLinkAnm = daPy_demo_c::DEMO_UNK1_e;
mCurLinkAnm = daPy_demo_c::DEMO_UNK01_e;
dComIfGp_event_setTalkPartner(this);
m82F = 0;
@@ -775,11 +775,11 @@ bool daAuction_c::eventMain() {
if (
pLink->getBaseAnimeFrameRate() == 0.0f &&
mCurLinkAnm != daPy_demo_c::DEMO_UNK1_e &&
mCurLinkAnm != daPy_demo_c::DEMO_UNK01_e &&
mCurLinkAnm != daPy_demo_c::DEMO_UNK1D_e &&
mCurLinkAnm != daPy_demo_c::DEMO_UNK25_e
) {
setLinkAnm(daPy_demo_c::DEMO_UNK1_e);
setLinkAnm(daPy_demo_c::DEMO_UNK01_e);
}
mFlags &= 4;
@@ -1106,8 +1106,8 @@ void daAuction_c::eventMainMsgSet() {
/* 0000279C-0000294C .text eventMainMsgEnd__11daAuction_cFv */
void daAuction_c::eventMainMsgEnd() {
if (eventMesEnd()) {
if (mCurLinkAnm != daPy_demo_c::DEMO_UNK1_e && mCurLinkAnm != daPy_demo_c::DEMO_UNK1D_e) {
setLinkAnm(daPy_demo_c::DEMO_UNK1_e);
if (mCurLinkAnm != daPy_demo_c::DEMO_UNK01_e && mCurLinkAnm != daPy_demo_c::DEMO_UNK1D_e) {
setLinkAnm(daPy_demo_c::DEMO_UNK01_e);
}
if (m834 & 0x20) {
@@ -1341,7 +1341,7 @@ u16 daAuction_c::next_msgStatus(u32* pMsgNo) {
m826 = tmp;
m824 = tmp;
if (m826 != 0) {
setLinkAnm(daPy_demo_c::DEMO_UNK1_e);
setLinkAnm(daPy_demo_c::DEMO_UNK01_e);
}
break;
}
@@ -1563,7 +1563,7 @@ void daAuction_c::setCameraNpc(int idx, s16 param_2) {
/* 000039FC-00003A3C .text setLinkAnm__11daAuction_cFUc */
void daAuction_c::setLinkAnm(u8 linkAnm) {
if (linkAnm == daPy_demo_c::DEMO_UNK1_e && m826 == 0) {
if (linkAnm == daPy_demo_c::DEMO_UNK01_e && m826 == 0) {
linkAnm = daPy_demo_c::DEMO_UNK1D_e;
}
+4 -4
View File
@@ -1668,7 +1668,7 @@ void demo_camera(fganon_class* i_this) {
i_this->mB80 = 0.0f;
player->changeOriginalDemo();
player->changeDemoMode(0x18);
player->changeDemoMode(daPy_demo_c::DEMO_UNK18_e);
}
case 2: {
transformedPos.x = -300306.0f;
@@ -1690,7 +1690,7 @@ void demo_camera(fganon_class* i_this) {
}
if (i_this->mB56 == 30) {
player->mDemo.setDemoMode(0x35);
player->changeDemoMode(daPy_demo_c::DEMO_UNK35_e);
}
if (i_this->mB56 == 45) {
@@ -1809,7 +1809,7 @@ void demo_camera(fganon_class* i_this) {
i_this->mB5C.y = 921.0f;
i_this->mB5C.z = -300851.0f;
player->changeDemoMode(0x1A);
player->changeDemoMode(daPy_demo_c::DEMO_UNK1A_e);
}
break;
}
@@ -1865,7 +1865,7 @@ void demo_camera(fganon_class* i_this) {
cLib_addCalc2(&i_this->mB68.y, (i_this->eyePos.y - 30.0f) + REG0_F(11), 0.1f, 20.0f);
if (i_this->mB56 == 100) {
i_this->mB54 = 55;
player->changeDemoMode(0xF);
player->changeDemoMode(daPy_demo_c::DEMO_UNK0F_e);
i_this->mB56 = 0;
}
else {
+7 -7
View File
@@ -1262,17 +1262,17 @@ namespace daObjMovebox {
fopAc_ac_c* Act_c::PPCallBack(fopAc_ac_c* actor, fopAc_ac_c*, s16 angle, dBgW::PushPullLabel orig_pp_label) {
Act_c* i_this = (Act_c*)actor;
dBgW::PushPullLabel pp_label = static_cast<dBgW::PushPullLabel>(orig_pp_label & (dBgW::PP_UNK1_e | dBgW::PP_UNK2_e));
dBgW::PushPullLabel pp_label = static_cast<dBgW::PushPullLabel>(orig_pp_label & (dBgW::PPLABEL_PUSH | dBgW::PPLABEL_PULL));
if (pp_label) {
bool unk;
if (!i_this->i_attr()->m9A) {
unk = true;
} else {
unk = orig_pp_label & dBgW::PP_UNK8_e;
unk = orig_pp_label & dBgW::PPLABEL_HEAVY;
}
if (unk) {
s16 angleDiff = (s16)(pp_label & dBgW::PP_UNK2_e ? angle - 0x8000 : angle) - actor->home.angle.y;
int pp_field = dBgW::PP_UNK1_e | dBgW::PP_UNK2_e;
s16 angleDiff = (s16)(pp_label & dBgW::PPLABEL_PULL ? angle - 0x8000 : angle) - actor->home.angle.y;
int pp_field = dBgW::PPLABEL_PUSH | dBgW::PPLABEL_PULL;
JUT_ASSERT(1813, pp_label != pp_field);
i_this->mPPLabel = orig_pp_label;
@@ -1431,8 +1431,8 @@ namespace daObjMovebox {
bool r29 = true;
if (m64A && cLib_checkBit(mBgc.mStateFlags, Bgc_c::BgcState_ON_GROUND_e) && (mType != TYPE_BLACK_BOX_WITH_MKIE || mChildPID == fpcM_ERROR_PROCESS_ID_e)) {
BOOL temp = cLib_checkBit(mPPLabel, dBgW::PP_UNK2_e);
BOOL r3 = cLib_checkBit(mPPLabel, dBgW::PP_UNK4_e);
BOOL temp = cLib_checkBit(mPPLabel, dBgW::PPLABEL_PULL);
BOOL r3 = cLib_checkBit(mPPLabel, dBgW::PPLABEL_UNK4);
s16 r0;
if (temp) {
if (r3) {
@@ -1587,7 +1587,7 @@ namespace daObjMovebox {
daPy_getPlayerActorClass()->onPushPullKeep();
mode_walk_init();
if (cLib_checkBit(mPPLabel, dBgW::PP_UNK2_e)) {
if (cLib_checkBit(mPPLabel, dBgW::PPLABEL_PULL)) {
m644 = i_attr()->m0A;
m630 = (f32)0x8000 / i_attr()->m0A;
} else {
+1 -1
View File
@@ -734,7 +734,7 @@ void daObjTpost_c::modeTalkXY() {
case 0xCF1:
if(player->getBaseAnimeFrameRate() == 0.0f) {
player->changeOriginalDemo();
player->changeDemoMode(daPy_demo_c::DEMO_UNK1_e);
player->changeDemoMode(daPy_demo_c::DEMO_UNK01_e);
}
break;
+2 -2
View File
@@ -52,7 +52,7 @@ int daPy_lk_c::returnBoomerang() {
dComIfGp_clearPlayerStatus0(0, daPyStts0_BOOMERANG_WAIT_e);
if (mEquipItem == daPyItem_NONE_e && !checkNoControll() && !dComIfGp_event_runCheck() && mDemo.getDemoType() == 0 &&
(m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xffff || checkPlayerGuard() || checkDashDamageAnime() ||
(checkUpperAnime(-1) || checkPlayerGuard() || checkDashDamageAnime() ||
checkBoomerangAnime()) &&
(!checkModeFlg(
ModeFlg_WHIDE | ModeFlg_ROPE | ModeFlg_IN_SHIP | ModeFlg_CLIMB | ModeFlg_SWIM | ModeFlg_00080000 |
@@ -122,7 +122,7 @@ BOOL daPy_lk_c::checkNextBoomerangMode() {
int daPy_lk_c::changeBoomerangCatchProc() {
if (checkNoResetFlg0(daPyFlg0_UNK20)) {
if (!dComIfGp_event_runCheck() && mDemo.getDemoType() == 0 && checkModeFlg(ModeFlg_00020000) &&
(m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xffff || checkBoomerangThrowAnime()))
(checkUpperAnime(-1) || checkBoomerangThrowAnime()))
{
setActAnimeUpper(
LKANM_BCK_BOOMCATCH,
+2 -2
View File
@@ -207,7 +207,7 @@ BOOL daPy_lk_c::procBottleOpen_init(u16 param_0) {
return true;
}
if (mDemo.getDemoMode() != 0x3d) {
if (mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK3D_e) {
if (!dComIfGp_event_compulsory(this)) {
return false;
}
@@ -234,7 +234,7 @@ BOOL daPy_lk_c::procBottleOpen_init(u16 param_0) {
} else {
mProcVar0.m3570 = 2;
}
if (mDemo.getDemoMode() != 0x3d) {
if (mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK3D_e) {
dCam_getBody()->StartEventCamera(0x12, fopAcM_GetID(this), "Type", &mProcVar0.m3570, 0);
}
initShipRideUseItem(iVar1, 2);
+33 -55
View File
@@ -56,13 +56,13 @@ BOOL daPy_lk_c::bowButton() const {
/* 8014A008-8014A02C .text checkBowReadyAnime__9daPy_lk_cCFv */
BOOL daPy_lk_c::checkBowReadyAnime() const {
return (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_ARROWRELORD) ||
(m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOWWAIT);
return (checkUpperAnime(LKANM_BCK_ARROWRELORD)) ||
(checkUpperAnime(LKANM_BCK_BOWWAIT));
}
/* 8014A02C-8014A080 .text checkBowAnime__9daPy_lk_cCFv */
BOOL daPy_lk_c::checkBowAnime() const {
return (checkBowReadyAnime()) || (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_ARROWSHOOT);
return (checkBowReadyAnime()) || (checkUpperAnime(LKANM_BCK_ARROWSHOOT));
}
/* 8014A080-8014A180 .text makeArrow__9daPy_lk_cFv */
@@ -115,10 +115,8 @@ void daPy_lk_c::setBowReloadAnime() {
/* 8014A328-8014A60C .text checkNextActionBowReady__9daPy_lk_cFv */
BOOL daPy_lk_c::checkNextActionBowReady() {
/* Nonmatching - branching, regalloc */
u16 uVar1 = m_anm_heap_upper[UPPER_MOVE2_e].mIdx;
if (uVar1 == LKANM_BCK_BOWWAIT) {
daArrow_c* bow = (daArrow_c*)mActorKeepEquip.getActor();
if (checkUpperAnime(LKANM_BCK_BOWWAIT)) {
daArrow_c* arrow = (daArrow_c*)mActorKeepEquip.getActor();
if (m355C != 0) {
setActAnimeUpper(
LKANM_BCK_ARROWSHOOT,
@@ -131,72 +129,52 @@ BOOL daPy_lk_c::checkNextActionBowReady() {
setPriTextureAnime(0x70, 0);
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_ARROWSHOOTA));
m35EC = 0.0f;
} else {
if (bowButton() == NULL) {
if (bow != NULL) {
fopAcM_SetParam(bow, 1);
if (mDemo.getDemoMode() != 0x44) {
dComIfGp_setItemArrowNumCount(-1);
}
mActorKeepEquip.clearData();
seStartOnlyReverb(JA_SE_LK_SHOOT_ARROW);
voiceStart(41);
onResetFlg0(daPyRFlg0_ARROW_SHOOT);
}
m355C = 1;
} else {
if (bow->changeArrowMp()) {
if (((mEquipItem != dItem_BOW_e) && (dComIfGp_setRStatus(0x22), spActionTrigger())) &&
(bow != NULL))
{
bow = bow->changeArrowType();
mActorKeepEquip.setData(bow);
setBowReloadAnime();
}
} else if (bowButton() == NULL) {
if (arrow != NULL) {
fopAcM_SetParam(arrow, 1);
if (mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK44_e) {
dComIfGp_setItemArrowNumCount(-1);
}
mActorKeepEquip.clearData();
seStartOnlyReverb(JA_SE_LK_SHOOT_ARROW);
voiceStart(41);
onResetFlg0(daPyRFlg0_ARROW_SHOOT);
}
m355C = 1;
} else if (daArrow_c::changeArrowMp()) {
if (((mEquipItem != dItem_BOW_e) && (dComIfGp_setRStatus(0x22), spActionTrigger())) &&
(arrow != NULL))
{
mActorKeepEquip.setData(arrow->changeArrowType());
setBowReloadAnime();
}
}
goto LAB_8014a5ec;
}
if (uVar1 == LKANM_BCK_ARROWRELORD) {
} else if (checkUpperAnime(LKANM_BCK_ARROWRELORD)) {
if (mFrameCtrlUpper[UPPER_MOVE2_e].getRate() < 0.01f) {
setActAnimeUpper(LKANM_BCK_BOWWAIT, UPPER_MOVE2_e, 1.0f, 0.0f, -1, -1.0f);
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_BOWWAITA));
m35EC = 0.0f;
setPriTextureAnime(0x70, 0);
}
goto LAB_8014a5ec;
}
if (uVar1 != LKANM_BCK_ARROWSHOOT)
goto LAB_8014a5ec;
if (mFrameCtrlUpper[UPPER_MOVE2_e].getRate() < 0.01f) {
if ((m355E == 0) && (bowButton())) {
if (mDemo.getDemoMode() != 0x44) {
if (mEquipItem != getReadyItem())
goto LAB_8014a5a0;
}
if (!checkNoResetFlg1(daPyFlg1_USE_ARROW_EFFECT)) {
} else if (checkUpperAnime(LKANM_BCK_ARROWSHOOT)) {
if (mFrameCtrlUpper[UPPER_MOVE2_e].getRate() < 0.01f) {
if ((m355E == 0) && (bowButton()) && (mDemo.getDemoMode() == daPy_demo_c::DEMO_UNK44_e || mEquipItem == getReadyItem()) && !checkNoResetFlg1(daPyFlg1_USE_ARROW_EFFECT)) {
setBowReloadAnime();
makeArrow();
if (mActorKeepEquip.getActor() == NULL) {
mDoAud_seStart(JA_SE_ITEM_TARGET_OUT);
}
goto LAB_8014a5d8;
} else if (daArrow_c::changeArrowMp()) {
if ((mEquipItem != dItem_BOW_e) && (dComIfGp_setRStatus(0x22), spActionTrigger())) {
daArrow_c::changeArrowTypeNotReady();
}
}
}
LAB_8014a5a0:
daArrow_c* bow;
if (bow->changeArrowMp()) {
if ((mEquipItem != dItem_BOW_e) && (dComIfGp_setRStatus(0x22), spActionTrigger())) {
bow->changeArrowTypeNotReady();
}
if (m355E != 0) {
m355E--;
}
}
LAB_8014a5d8:
if (m355E != 0) {
m355E--;
}
LAB_8014a5ec:
cancelItemUpperReadyAnime();
}
+1 -1
View File
@@ -249,7 +249,7 @@ BOOL daPy_lk_c::procClimbUpStart() {
}
if (mProcVar0.m3570 == 0) {
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xffff) {
if (checkUpperAnime(-1)) {
procLadderUpStart_init_sub();
}
} else {
+6 -6
View File
@@ -341,10 +341,10 @@ BOOL daPy_lk_c::procCrawlAutoMove() {
if (m34D0 == 0) {
setCrawlMoveDirectionArrow();
if (mStickDistance > 0.05f) {
int iVar10 = getDirectionFromShapeAngle();
int direction = getDirectionFromShapeAngle();
f32 fVar2 = cM_ssin(shape_angle.y);
f32 fVar3 = cM_scos(shape_angle.y);
if ((iVar10 == 2) && ((mProcVar0.m3570 & 4))) {
if ((direction == DIR_LEFT) && ((mProcVar0.m3570 & 4))) {
m370C.x += 75.0f * fVar3;
m370C.z -= 75.0f * fVar2;
m34D4 = current.angle.y + 0x4000;
@@ -354,7 +354,7 @@ BOOL daPy_lk_c::procCrawlAutoMove() {
m35A0 = -1.0f;
}
m34D0 = -1;
} else if ((iVar10 == 3) && ((mProcVar0.m3570 & 8))) {
} else if ((direction == DIR_RIGHT) && ((mProcVar0.m3570 & 8))) {
m370C.x -= 75.0f * fVar3;
m370C.z += 75.0f * fVar2;
m34D4 = current.angle.y + -0x4000;
@@ -365,15 +365,15 @@ BOOL daPy_lk_c::procCrawlAutoMove() {
}
m34D0 = -1;
} else if (((mProcVar0.m3570 & 1)) &&
(((shape_angle.y == current.angle.y && (iVar10 == 0)) ||
((shape_angle.y != current.angle.y && (iVar10 == 1))))))
(((shape_angle.y == current.angle.y && (direction == DIR_FORWARD)) ||
((shape_angle.y != current.angle.y && (direction == DIR_BACKWARD))))))
{
m370C.x += 75.0f * cM_ssin(current.angle.y);
m370C.z += 75.0f * cM_scos(current.angle.y);
m34D4 = shape_angle.y;
m35A0 = 0.0f;
m34D0 = -1;
} else if (((shape_angle.y == current.angle.y) && (iVar10 == 1)) || ((shape_angle.y != current.angle.y && (iVar10 == 0)))) {
} else if (((shape_angle.y == current.angle.y) && (direction == DIR_BACKWARD)) || ((shape_angle.y != current.angle.y && (direction == DIR_FORWARD)))) {
current.angle.y += 0x8000;
m370C.x -= 75.0f * cM_ssin(current.angle.y);
m370C.z -= 75.0f * cM_scos(current.angle.y);
+2 -2
View File
@@ -586,7 +586,7 @@ BOOL daPy_lk_c::dProcGetItem() {
}
}
if (mProcVar0.m3570 != 0) {
if ((m_anm_heap_upper[UPPER_MOVE2_e]).mIdx == 0xffff) {
if (checkUpperAnime(-1)) {
setSingleMoveAnime(ANM_ITEMGET, 1.0f, 0.0f, -1, 3.0f);
mProcVar0.m3570 = 0;
onModeFlg(ModeFlg_00000400);
@@ -643,7 +643,7 @@ BOOL daPy_lk_c::dProcUnequip_init() {
/* 8012ED30-8012ED74 .text dProcUnequip__9daPy_lk_cFv */
BOOL daPy_lk_c::dProcUnequip() {
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xFFFF) {
if (checkUpperAnime(-1)) {
dComIfGp_evmng_cutEnd(mStaffIdx);
}
return true;
+3 -3
View File
@@ -275,14 +275,14 @@ BOOL daPy_lk_c::procFanSwing() {
mGndChk.SetPos(&local_48);
local_48.y = dComIfG_Bgsp()->GroundCross(&mGndChk);
if (local_48.y >= current.pos.y - 50.0f) {
int iVar4 = dComIfG_Bgsp()->GetAttributeCode(mGndChk);
int attrib_code = dComIfG_Bgsp()->GetAttributeCode(mGndChk);
if (!strcmp(dComIfGp_getStartStageName(), "Adanmae")) {
dComIfGp_particle_setP1(dPa_name::ID_SCENE_8236, &local_48, &shape_angle);
}
dPa_control_c::mSmokeEcallback.onWindOff();
int iStack_84;
pJVar5 = dComIfGp_particle_setSimpleLand(
iVar4, &local_48, NULL, 1.0f, 1.0f, 1.0f, &tevStr, &iStack_84, 0x17
attrib_code, &local_48, NULL, 1.0f, 1.0f, 1.0f, &tevStr, &iStack_84, 0x17
);
dPa_control_c::mSmokeEcallback.offWindOff();
if (pJVar5) {
@@ -294,7 +294,7 @@ BOOL daPy_lk_c::procFanSwing() {
mDoMtx_ZXYrotM(mDoMtx_stack_c::now, local_80.x, local_80.y, local_80.z);
JPASetRMtxTVecfromMtx(mDoMtx_stack_c::now, pJVar5->mGlobalRotation, (pJVar5->mGlobalTranslation));
pJVar5->setSpread(0.45f);
if (iVar4 == dBgS_Attr_GRASS_e) {
if (attrib_code == dBgS_Attr_GRASS_e) {
pJVar5->setRate(100.0f);
} else {
pJVar5->setRate(50.0f);
+3 -3
View File
@@ -393,7 +393,7 @@ BOOL daPy_lk_c::procGrabReady() {
} else {
checkNextMode(0);
}
} else if ((mProcVar0.m3570 == 0) && (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xffff)) {
} else if ((mProcVar0.m3570 == 0) && (checkUpperAnime(-1))) {
setSingleMoveAnime(
ANM_GRABP,
daPy_HIO_grab_c0::m.field_0x20,
@@ -647,7 +647,7 @@ BOOL daPy_lk_c::procGrabPut() {
fopAc_ac_c* pfVar4 = mActorKeepGrab.getActor();
if (pfVar4 == NULL) {
if (mDemo.getDemoMode() == 0x38) {
if (mDemo.getDemoMode() == daPy_demo_c::DEMO_UNK38_e) {
dComIfGp_evmng_cutEnd(mStaffIdx);
return true;
} else {
@@ -705,7 +705,7 @@ BOOL daPy_lk_c::procGrabPut() {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() > -0.01f) {
pfVar4->speedF = 0.0f;
freeGrabItem();
if (mDemo.getDemoMode() == 0x38) {
if (mDemo.getDemoMode() == daPy_demo_c::DEMO_UNK38_e) {
dComIfGp_evmng_cutEnd(mStaffIdx);
} else {
checkNextMode(0);
+2 -2
View File
@@ -138,7 +138,7 @@ BOOL daPy_lk_c::procLadderUpStart() {
}
if (mProcVar0.m3570 == 0) {
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xffff) {
if (checkUpperAnime(-1)) {
procLadderUpStart_init_sub();
}
} else {
@@ -253,7 +253,7 @@ BOOL daPy_lk_c::procLadderDownStart() {
}
if (mProcVar0.m3570 == 0) {
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xffff) {
if (checkUpperAnime(-1)) {
procLadderDownStart_init_sub();
}
} else {
+73 -75
View File
@@ -445,7 +445,7 @@ BOOL daPy_lk_c::jointCB0(int param_1) {
}
}
} else if ((checkUpperReadyAnime()) ||
(m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_ROPETHROW) ||
(checkUpperAnime(LKANM_BCK_ROPETHROW)) ||
((mCurProc != daPyProc_GRAB_WAIT_e) && checkGrabAnime()))
{
if (param_1 == 0xf) {
@@ -691,10 +691,10 @@ s32 daPy_lk_c::checkNormalFace() {
if ((checkResetFlg0(daPyRFlg0_UNK40000))) {
return daPyFace_TMABAG;
}
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_GRABWAITB) {
if (checkUpperAnime(LKANM_BCK_GRABWAITB)) {
return daPyFace_TMABAJ_TEYORIME;
}
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_GRABWAIT) {
if (checkUpperAnime(LKANM_BCK_GRABWAIT)) {
return daPyFace_TMABAE;
}
if ((daPy_dmEcallBack_c::m_type == 1) || (checkRestHPAnime())) {
@@ -773,8 +773,8 @@ void daPy_lk_c::setTextureAnime(u16 param_1, int param_2) {
if (param_1 == 0) {
param_1 = checkNormalFace();
}
u16 uVar2 = mTexAnmIndexTable[param_1].mBtpIdx;
u16 uVar1 = mTexAnmIndexTable[param_1].mBtkIdx;
u16 btp_idx = mTexAnmIndexTable[param_1].mBtpIdx;
u16 btk_idx = mTexAnmIndexTable[param_1].mBtkIdx;
if (((param_1 < 0x13) &&
(checkMabaAnimeBtp(m_tex_anm_heap.mIdx))) &&
(mFace == daPyFace_UNKNOWN))
@@ -784,64 +784,64 @@ void daPy_lk_c::setTextureAnime(u16 param_1, int param_2) {
} else {
bVar3 = false;
}
if (m_tex_anm_heap.mIdx == uVar2) {
if (m_tex_anm_heap.mIdx == btp_idx) {
if ((mFace == daPyFace_UNKNOWN) && (!checkModeFlg(ModeFlg_00000100 | ModeFlg_00000400))) {
m3530 = param_2;
}
} else {
m_tex_anm_heap.mIdx = uVar2;
m_tex_anm_heap.mIdx = btp_idx;
if ((m_tex_anm_heap.field_0x2 == 0xFFFF) && (m_tex_anm_heap.field_0x4 == 0xFFFF)) {
setTextureAnimeResource(loadTextureAnimeResource(uVar2, 0), param_2);
setTextureAnimeResource(loadTextureAnimeResource(btp_idx, 0), param_2);
}
}
dVar9 = cM_rnd();
if (m_tex_scroll_heap.mIdx != uVar1) {
if (m_tex_scroll_heap.mIdx != btk_idx) {
if ((((bVar3) && (checkModeFlg(ModeFlg_00000001))) && (daPy_matAnm_c::m_maba_flg != 0)) &&
(((!dComIfGp_event_runCheck() && (mpAttnActorLockOn == NULL)) && (uVar1 == 0x1a7))))
(((!dComIfGp_event_runCheck() && (mpAttnActorLockOn == NULL)) && (btk_idx == LKANM_BTK_TMABA))))
{
if (daPy_matAnm_c::m_maba_timer == 0) {
if (dVar9 < 0.44f) {
uVar1 = 0x1a7;
btk_idx = LKANM_BTK_TMABA;
} else {
param_2 = 0;
if (dVar9 < 0.51f) {
uVar1 = LKANM_BTK_TEUP;
btk_idx = LKANM_BTK_TEUP;
} else if (dVar9 < 0.58f) {
uVar1 = LKANM_BTK_TEDW;
btk_idx = LKANM_BTK_TEDW;
} else if (dVar9 < 0.65f) {
uVar1 = LKANM_BTK_TEL;
btk_idx = LKANM_BTK_TEL;
} else if (dVar9 < 0.72f) {
uVar1 = LKANM_BTK_TER;
btk_idx = LKANM_BTK_TER;
} else if (dVar9 < 0.79f) {
uVar1 = LKANM_BTK_TEDL;
btk_idx = LKANM_BTK_TEDL;
} else if (dVar9 < 0.86f) {
uVar1 = LKANM_BTK_TEDR;
btk_idx = LKANM_BTK_TEDR;
} else if (dVar9 < 0.93f) {
uVar1 = LKANM_BTK_TEUR;
btk_idx = LKANM_BTK_TEUR;
} else {
uVar1 = LKANM_BTK_TEUL;
btk_idx = LKANM_BTK_TEUL;
}
}
m_tex_scroll_heap.mIdx = uVar1;
m_tex_scroll_heap.mIdx = btk_idx;
if ((m_tex_scroll_heap.field_0x2 == 0xFFFF) &&
(m_tex_scroll_heap.field_0x4 == 0xFFFF))
{
setTextureScrollResource(loadTextureScrollResource(uVar1, 0), param_2);
setTextureScrollResource(loadTextureScrollResource(btk_idx, 0), param_2);
}
if (uVar1 != 0x1a7) {
if (btk_idx != LKANM_BTK_TMABA) {
daPy_matAnm_c::onMabaFlg();
}
}
} else {
m_tex_scroll_heap.mIdx = uVar1;
m_tex_scroll_heap.mIdx = btk_idx;
if ((m_tex_scroll_heap.field_0x2 == 0xFFFF) && (m_tex_scroll_heap.field_0x4 == 0xFFFF))
{
setTextureScrollResource(loadTextureScrollResource(uVar1, 0), param_2);
setTextureScrollResource(loadTextureScrollResource(btk_idx, 0), param_2);
}
}
} else if (((((bVar3) && (checkModeFlg(ModeFlg_00000001))) && (!dComIfGp_event_runCheck())) &&
((daPy_matAnm_c::m_maba_timer == 0 && (mpAttnActorLockOn == NULL)))) &&
(((uVar1 == 0x1a7 && ((m_tex_scroll_heap.field_0x2 == 0xFFFF &&
(((btk_idx == LKANM_BTK_TMABA && ((m_tex_scroll_heap.field_0x2 == 0xFFFF &&
(m_tex_scroll_heap.field_0x4 == 0xFFFF)))) &&
(cM_rnd() < 0.025f))))
{
@@ -1588,7 +1588,7 @@ void daPy_lk_c::setSpeedAndAngleAtn() {
void daPy_lk_c::setSpeedAndAngleAtnBack() {
f32 f1;
if (mStickDistance > 0.05f) {
if (getDirectionFromCurrentAngle() == 1) {
if (getDirectionFromCurrentAngle() == DIR_BACKWARD) {
current.angle.y += 0x8000;
mVelocity *= -1.0f;
}
@@ -1791,20 +1791,20 @@ BOOL daPy_lk_c::checkBossGomaStage() {
/* 8010C4A4-8010C4C8 .text checkSingleItemEquipAnime__9daPy_lk_cCFv */
BOOL daPy_lk_c::checkSingleItemEquipAnime() const {
return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_TAKEL ||
m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_TAKER;
return checkUpperAnime(LKANM_BCK_TAKEL) ||
checkUpperAnime(LKANM_BCK_TAKER);
}
/* 8010C4C8-8010C528 .text checkItemEquipAnime__9daPy_lk_cCFv */
BOOL daPy_lk_c::checkItemEquipAnime() const {
return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_TAKE ||
return checkUpperAnime(LKANM_BCK_TAKE) ||
checkSingleItemEquipAnime() ||
m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_TAKEBOTH;
checkUpperAnime(LKANM_BCK_TAKEBOTH);
}
/* 8010C528-8010C570 .text checkEquipAnime__9daPy_lk_cCFv */
BOOL daPy_lk_c::checkEquipAnime() const {
return m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_REST ||
return checkUpperAnime(LKANM_BCK_REST) ||
checkItemEquipAnime();
}
@@ -2071,12 +2071,12 @@ void daPy_lk_c::checkItemAction() {
{
mReadyItemBtn = dItemBtn_Z_e;
}
if ((((checkEquipAnime()) || (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOOMTHROW)) ||
(m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOOMCATCH)) ||
(m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_ROPETHROW))
if ((((checkEquipAnime()) || (checkUpperAnime(LKANM_BCK_BOOMTHROW))) ||
(checkUpperAnime(LKANM_BCK_BOOMCATCH))) ||
(checkUpperAnime(LKANM_BCK_ROPETHROW)))
{
J3DFrameCtrl& frameCtrl = mFrameCtrlUpper[UPPER_MOVE2_e];
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOOMCATCH) {
if (checkUpperAnime(LKANM_BCK_BOOMCATCH)) {
if (!(frameCtrl.getRate() < 0.01f)) {
if (!(mStickDistance > 0.05f)) {
return;
@@ -2089,7 +2089,7 @@ void daPy_lk_c::checkItemAction() {
if (dComIfGp_checkPlayerStatus0(0, daPyStts0_SHIP_RIDE_e)) {
procShipPaddle_init();
}
} else if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOOMTHROW) {
} else if (checkUpperAnime(LKANM_BCK_BOOMTHROW)) {
if ((frameCtrl.getRate() < 0.01f) ||
((mStickDistance > 0.05f &&
(frameCtrl.getFrame() > daPy_HIO_boom_c0::m.field_0x10))))
@@ -2100,7 +2100,7 @@ void daPy_lk_c::checkItemAction() {
throwBoomerang();
}
}
} else if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_ROPETHROW) {
} else if (checkUpperAnime(LKANM_BCK_ROPETHROW)) {
if (frameCtrl.getRate() < 0.01f) {
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(0.0f);
mFrameCtrlUnder[UNDER_MOVE1_e].setRate(0.0f);
@@ -2110,11 +2110,11 @@ void daPy_lk_c::checkItemAction() {
} else {
if (checkEquipAnime()) {
if ((mEquipItem == daPyItem_SWORD_e) &&
(((m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_REST &&
(((checkUpperAnime(LKANM_BCK_REST) &&
(frameCtrl.checkPass(7.0f - frameCtrl.getRate()))) ||
((((m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_TAKE &&
((((checkUpperAnime(LKANM_BCK_TAKE) &&
(frameCtrl.checkPass(7.0f - frameCtrl.getRate()))) ||
((m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_TAKEBOTH &&
((checkUpperAnime(LKANM_BCK_TAKEBOTH) &&
(frameCtrl.checkPass(daPy_HIO_item_c0::m.field_0x30 -
frameCtrl.getRate()))))) ||
((checkSingleItemEquipAnime() &&
@@ -2126,11 +2126,11 @@ void daPy_lk_c::checkItemAction() {
if (std::fabsf(frameCtrl.getRate()) < 0.01f) {
resetActAnimeUpper(UPPER_MOVE2_e, daPy_HIO_basic_c0::m.field_0xC);
} else {
if (((((m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_REST) &&
if (((((checkUpperAnime(LKANM_BCK_REST)) &&
(frameCtrl.checkPass(7.0f))) ||
((m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_TAKE &&
((checkUpperAnime(LKANM_BCK_TAKE) &&
(frameCtrl.checkPass(7.0f))))) ||
((m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_TAKEBOTH &&
((checkUpperAnime(LKANM_BCK_TAKEBOTH) &&
(frameCtrl.checkPass(daPy_HIO_item_c0::m.field_0x30))))) ||
((checkSingleItemEquipAnime() &&
(frameCtrl.checkPass(daPy_HIO_item_c0::m.field_0x20)))))
@@ -2294,9 +2294,9 @@ BOOL daPy_lk_c::checkElecReturnDamage(dCcD_GObjInf* param_1, cXyz* param_2) {
/* 801105D8-80110654 .text checkWallAtributeDamage__9daPy_lk_cFP12dBgS_AcchCir */
s32 daPy_lk_c::checkWallAtributeDamage(dBgS_AcchCir* param_1) {
if ((param_1->ChkWallHit()) && (dComIfG_Bgsp()->ChkPolySafe(*param_1))) {
int iVar1 = dComIfG_Bgsp()->GetAttributeCode(*param_1);
if ((iVar1 == dBgS_Attr_DAMAGE_e || (iVar1 == dBgS_Attr_ELECTRICITY_e))) {
return iVar1;
int attrib_code = dComIfG_Bgsp()->GetAttributeCode(*param_1);
if ((attrib_code == dBgS_Attr_DAMAGE_e || (attrib_code == dBgS_Attr_ELECTRICITY_e))) {
return attrib_code;
}
}
return false;
@@ -2556,9 +2556,9 @@ BOOL daPy_lk_c::changeDemoProc() {
(demo_mode == daPy_demo_c::DEMO_NEW_ANM0_e));
if ((((demo_mode != daPy_demo_c::DEMO_NEW_ANM0_e) &&
(demo_mode != daPy_demo_c::DEMO_UNK1E_e)) &&
(demo_mode != daPy_demo_c::DEMO_UNK9_e)) &&
(demo_mode != daPy_demo_c::DEMO_UNK09_e)) &&
(((demo_mode != daPy_demo_c::DEMO_UNK11_e && (demo_mode != daPy_demo_c::DEMO_UNK40_e)) &&
((demo_mode != daPy_demo_c::DEMO_UNK4_e &&
((demo_mode != daPy_demo_c::DEMO_UNK04_e &&
((demo_mode != daPy_demo_c::DEMO_UNK2F_e &&
(demo_mode != daPy_demo_c::DEMO_UNK3E_e))))))))
{
@@ -2581,7 +2581,7 @@ BOOL daPy_lk_c::changeDemoProc() {
onNoResetFlg0(daPyFlg0_UNK100000);
return (this->*mDemoProcInitFuncTable[demo_mode])();
}
if (demo_mode == daPy_demo_c::DEMO_UNK4_e) {
if (demo_mode == daPy_demo_c::DEMO_UNK04_e) {
int var_r28;
if (dComIfGp_checkPlayerStatus0(0, daPyStts0_SHIP_RIDE_e)) {
return true;
@@ -2591,7 +2591,7 @@ BOOL daPy_lk_c::changeDemoProc() {
m_old_fdata->initOldFrameMorf(0.0f, 0, 0x2A);
}
return var_r28;
} else if ((demo_mode == daPy_demo_c::DEMO_UNK6_e) || (demo_mode == daPy_demo_c::DEMO_UNK8_e)) {
} else if ((demo_mode == daPy_demo_c::DEMO_UNK06_e) || (demo_mode == daPy_demo_c::DEMO_UNK08_e)) {
if (checkModeFlg(ModeFlg_04000000)) {
return true;
}
@@ -2615,7 +2615,7 @@ BOOL daPy_lk_c::changeDemoProc() {
return dProcTalk_init();
}
}
} else if (demo_mode == daPy_demo_c::DEMO_UNK9_e) {
} else if (demo_mode == daPy_demo_c::DEMO_UNK09_e) {
onNoResetFlg0(daPyFlg0_UNK100000);
if ((mCurProc == daPyProc_LARGE_DAMAGE_UP_e) || (mCurProc == daPyProc_LARGE_DAMAGE_WALL_e))
{
@@ -2730,11 +2730,11 @@ void daPy_lk_c::setOldRootQuaternion(s16, s16, s16) {
/* 80111E54-80111EFC .text checkRestHPAnime__9daPy_lk_cFv */
BOOL daPy_lk_c::checkRestHPAnime() {
if ((((!checkPlayerGuard()) && ((m_anm_heap_upper[UPPER_MOVE2_e]).mIdx == 0xFFFF)) &&
if ((((!checkPlayerGuard()) && (checkUpperAnime(-1))) &&
(mpAttnActorLockOn == NULL)) &&
((((mDemo.getDemoType() == 0 && (!checkModeFlg(ModeFlg_IN_SHIP))) &&
(dComIfGs_getLife() <= daPy_HIO_move_c0::m.field_0xE)) ||
(mDemo.getDemoMode() == 0x12))))
(mDemo.getDemoMode() == daPy_demo_c::DEMO_UNK12_e))))
{
return true;
}
@@ -3918,7 +3918,7 @@ BOOL daPy_lk_c::procBackJumpLand_init() {
}
if ((((mEquipItem == daPyItem_SWORD_e) || (mEquipItem == daPyItem_BOKO_e)) &&
(daPy_dmEcallBack_c::m_type != 1)) &&
(m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xFFFF))
(checkUpperAnime(-1)))
{
mProcVar0.m3570 = 1;
} else {
@@ -3995,7 +3995,7 @@ BOOL daPy_lk_c::procLand_init(f32 param_1, int param_2) {
BOOL daPy_lk_c::procLand() {
resetFootEffect();
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
if (mDemo.getDemoMode() == 0x40) {
if (mDemo.getDemoMode() == daPy_demo_c::DEMO_UNK40_e) {
dComIfGp_evmng_cutEnd(mStaffIdx);
} else {
checkNextMode(0);
@@ -4531,18 +4531,16 @@ BOOL daPy_lk_c::procLavaDamage_init() {
/* 80118BC4-80118C58 .text procLavaDamage__9daPy_lk_cFv */
BOOL daPy_lk_c::procLavaDamage() {
int iVar1;
daPy_ANM anm;
if (mAcch.ChkGroundHit()) {
iVar1 = getDirectionFromAngle(current.angle.y - shape_angle.y);
if (iVar1 == 0) {
int direction = getDirectionFromAngle(current.angle.y - shape_angle.y);
daPy_ANM anm;
if (direction == DIR_FORWARD) {
anm = ANM_DAMFB;
} else if (iVar1 == 1) {
} else if (direction == DIR_BACKWARD) {
anm = ANM_DAMFF;
} else if (iVar1 == 2) {
} else if (direction == DIR_LEFT) {
anm = ANM_DAMFR;
} else {
} else { // DIR_RIGHT
anm = ANM_DAMFL;
}
procLargeDamageUp_init(anm, 1, 0, 0);
@@ -4701,20 +4699,20 @@ BOOL daPy_lk_c::procGuardSlip() {
/* 80119334-80119478 .text procIceSlipFall_init__9daPy_lk_cFv */
BOOL daPy_lk_c::procIceSlipFall_init() {
commonProcInit(daPyProc_ICE_SLIP_FALL_e);
int iVar1 = getDirectionFromAngle(cM_atan2s(-m36A0.x, -m36A0.z) - shape_angle.y);
if (iVar1 == 0) {
int direction = getDirectionFromAngle(cM_atan2s(-m36A0.x, -m36A0.z) - shape_angle.y);
if (direction == DIR_FORWARD) {
mProcVar0.mDamageAnm = ANM_DAMFB;
m34D4 = 0x3fff;
m34D6 = 1;
} else if (iVar1 == 3) {
} else if (direction == DIR_RIGHT) {
mProcVar0.mDamageAnm = ANM_DAMFL;
m34D4 = 0x3fff;
m34D6 = 0;
} else if (iVar1 == 2) {
} else if (direction == DIR_LEFT) {
mProcVar0.mDamageAnm = ANM_DAMFR;
m34D4 = -0x3fff;
m34D6 = 0;
} else {
} else { // DIR_BACKWARD
mProcVar0.mDamageAnm = ANM_DAMFF;
m34D4 = -0x3fff;
m34D6 = 1;
@@ -4811,18 +4809,18 @@ BOOL daPy_lk_c::procIceSlipFallUp() {
/* 8011970C-801197D4 .text procIceSlipAlmostFall_init__9daPy_lk_cFv */
BOOL daPy_lk_c::procIceSlipAlmostFall_init() {
daPy_ANM anm;
commonProcInit(daPyProc_ICE_SLIP_ALMOST_FALL_e);
current.angle.y = cM_atan2s(m36AC.x, m36AC.z);
int iVar1 = getDirectionFromAngle(current.angle.y - shape_angle.y);
if (iVar1 == 1) {
int direction = getDirectionFromAngle(current.angle.y - shape_angle.y);
daPy_ANM anm;
if (direction == DIR_BACKWARD) {
anm = ANM_DAMF;
} else if (iVar1 == 2) {
} else if (direction == DIR_LEFT) {
anm = ANM_DAMR;
} else if (iVar1 == 3) {
} else if (direction == DIR_RIGHT) {
anm = ANM_DAML;
} else {
} else { // DIR_FORWARD
anm = ANM_DAMB;
}
setSingleMoveAnime(anm, daPy_HIO_iceSlip_c0::m.field_0x64, daPy_HIO_iceSlip_c0::m.field_0x68,
@@ -5363,7 +5361,7 @@ BOOL daPy_lk_c::startRestartRoom(u32 mode, int eventInfoIdx, f32 param_3, int i_
if (!checkNoResetFlg0(daPyFlg0_UNK4000) && (i_point != 0 || dComIfGp_event_compulsory(this))) {
mDemo.setOriginalDemoType();
if (i_point == 0) {
mDemo.setDemoMode(daPy_demo_c::DEMO_UNK1_e);
mDemo.setDemoMode(daPy_demo_c::DEMO_UNK01_e);
}
onNoResetFlg0(daPyFlg0_UNK4000);
changePlayer(this);
+12 -12
View File
@@ -15,19 +15,19 @@
/* 801514B0-80151644 .text setPushPullKeepData__9daPy_lk_cFQ24dBgW13PushPullLabel */
int daPy_lk_c::setPushPullKeepData(dBgW::PushPullLabel param_0) {
if (param_0 != dBgW::PP_UNK0_e) {
if (param_0 != dBgW::PPLABEL_NONE) {
if (dComIfGs_getSelectEquip(2) == dItem_POWER_BRACELETS_e) {
cLib_onBit<dBgW::PushPullLabel>(param_0, dBgW::PP_UNK8_e);
cLib_onBit<dBgW::PushPullLabel>(param_0, dBgW::PPLABEL_HEAVY);
}
if (mProcVar0.m3570) {
cLib_onBit<dBgW::PushPullLabel>(param_0, dBgW::PP_UNK4_e);
cLib_onBit<dBgW::PushPullLabel>(param_0, dBgW::PPLABEL_UNK4);
}
}
fopAc_ac_c* pp_actor = dComIfG_Bgsp()->PushPullCallBack(mPolyInfo, this, shape_angle.y, param_0);
if (pp_actor == NULL) {
return 0;
}
if (param_0 != dBgW::PP_UNK0_e) {
if (param_0 != dBgW::PPLABEL_NONE) {
if (pp_actor->shape_angle.y != m34D4) {
cXyz local_28 = current.pos - m370C;
mDoMtx_trans(mDoMtx_stack_c::now, m370C.x, m370C.y, m370C.z);
@@ -80,7 +80,7 @@ BOOL daPy_lk_c::procPushPullWait() {
dComIfGp_setRStatus(0x11);
setFrontWallType();
if (m34D6 != 0) {
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xFFFF) {
if (checkUpperAnime(-1)) {
setSingleMoveAnime(
ANM_WAITPUSHPULL, daPy_HIO_pushpull_c0::m.field_0x0, 0.0f, -1, daPy_HIO_pushpull_c0::m.field_0x4
);
@@ -92,7 +92,7 @@ BOOL daPy_lk_c::procPushPullWait() {
current.angle.y = shape_angle.y;
f32 dVar2 = cLib_addCalc(&current.pos.x, m370C.x, 0.5f, 10.0f, 1.0f);
dVar2 += cLib_addCalc(&current.pos.z, m370C.z, 0.5f, 10.0f, 1.0f);
if (((!sVar1) && (dVar2 < 5.0f)) && (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xFFFF)) {
if (((!sVar1) && (dVar2 < 5.0f)) && (checkUpperAnime(-1))) {
current.pos.x = m370C.x;
current.pos.z = m370C.z;
mProcVar0.m3570 = 0;
@@ -118,7 +118,7 @@ BOOL daPy_lk_c::procPushPullWait() {
/* 8015198C-80151A1C .text procPushMove_init__9daPy_lk_cFv */
BOOL daPy_lk_c::procPushMove_init() {
if (!setPushPullKeepData(dBgW::PP_UNK0_e)) {
if (!setPushPullKeepData(dBgW::PPLABEL_NONE)) {
return false;
} else {
commonProcInit(daPyProc_PUSH_MOVE_e);
@@ -142,7 +142,7 @@ BOOL daPy_lk_c::procPushMove() {
if (!checkNoResetFlg0(daPyFlg0_PUSH_PULL_KEEP)) {
if (mStickDistance > 0.05f) {
if (direction == DIR_FORWARD) {
setPushPullKeepData(dBgW::PP_UNK1_e);
setPushPullKeepData(dBgW::PPLABEL_PUSH);
return true;
}
if (direction == DIR_BACKWARD) {
@@ -155,14 +155,14 @@ BOOL daPy_lk_c::procPushMove() {
voiceStart(19);
}
mProcVar0.m3570 = 0;
setPushPullKeepData(dBgW::PP_UNK1_e);
setPushPullKeepData(dBgW::PPLABEL_PUSH);
}
return true;
}
/* 80151B38-80151BC8 .text procPullMove_init__9daPy_lk_cFv */
BOOL daPy_lk_c::procPullMove_init() {
if (!setPushPullKeepData(dBgW::PP_UNK0_e)) {
if (!setPushPullKeepData(dBgW::PPLABEL_NONE)) {
return false;
} else {
commonProcInit(daPyProc_PULL_MOVE_e);
@@ -211,7 +211,7 @@ BOOL daPy_lk_c::procPullMove() {
mGndChk.SetPos(&local_48);
dVar4 = dComIfG_Bgsp()->GroundCross(&mGndChk);
if (!((dVar4 - current.pos.y) < -30.1f)) {
setPushPullKeepData(dBgW::PP_UNK2_e);
setPushPullKeepData(dBgW::PPLABEL_PULL);
}
return true;
}
@@ -225,7 +225,7 @@ BOOL daPy_lk_c::procPullMove() {
voiceStart(19);
}
mProcVar0.m3570 = 0;
setPushPullKeepData(dBgW::PP_UNK2_e);
setPushPullKeepData(dBgW::PPLABEL_PULL);
}
return true;
}
+3 -3
View File
@@ -21,7 +21,7 @@
/* 80142D08-80142D68 .text checkRopeAnime__9daPy_lk_cCFv */
BOOL daPy_lk_c::checkRopeAnime() const {
return ((checkRopeReadyAnime()) ||
((m_anm_heap_upper[UPPER_MOVE2_e]).mIdx == LKANM_BCK_ROPETHROW));
(checkUpperAnime(LKANM_BCK_ROPETHROW)));
}
/* 80142D68-80142E0C .text freeRopeItem__9daPy_lk_cFv */
@@ -72,7 +72,7 @@ int daPy_lk_c::changeRopeSwingProc() {
/* 80142FC8-801430D4 .text changeRopeEndProc__9daPy_lk_cFi */
int daPy_lk_c::changeRopeEndProc(int param_0) {
dComIfGp_setDoStatus(0x16);
if (((doTrigger()) || (cancelTrigger())) || (!checkRopeTag()) && itemTrigger()) {
if (doTrigger() || cancelTrigger() || (!checkRopeTag() && itemTrigger())) {
freeRopeItem();
voiceStart(6);
if ((cancelTrigger()) && (!checkBossGomaStage())) {
@@ -274,7 +274,7 @@ BOOL daPy_lk_c::checkNextActionRopeReady() {
if (uVar2 == 2) {
return procRopeReady_init();
} else if (uVar2 == 0) {
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_ROPETHROW) {
if (checkUpperAnime(LKANM_BCK_ROPETHROW)) {
if (mFrameCtrlUpper[UPPER_MOVE2_e].getRate() < 0.01f) {
return procRopeThrowCatch_init();
} else {
+31 -39
View File
@@ -624,10 +624,6 @@ BOOL daPy_lk_c::procShipPaddle_init() {
/* 801413A4-801416BC .text procShipPaddle__9daPy_lk_cFv */
BOOL daPy_lk_c::procShipPaddle() {
/* Nonmatching */
bool bVar2;
int iVar3;
int iVar4;
daPy_ANM dVar5;
float dVar6;
@@ -661,41 +657,37 @@ BOOL daPy_lk_c::procShipPaddle() {
voiceStart(47);
}
}
if ((!(mStickDistance > 0.05f) && (!dComIfGp_event_runCheck())) &&
(dComIfGp_getDoStatus() == 29))
if (((mStickDistance > 0.05f) || (dComIfGp_event_runCheck())) ||
(dComIfGp_getDoStatus() != 29) || (ship->checkForceMove()) || (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f))
{
if ((!ship->checkForceMove()) && !(mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f))
goto LAB_801416a4;
initShipBaseAnime();
m34D0 = cM_rndF(150.0f) + 300.0f;
}
initShipBaseAnime();
m34D0 = cM_rndF(150.0f) + 300.0f;
} else {
if (((!dComIfGp_event_runCheck()) && (dComIfGp_getDoStatus() == 29)) &&
(mStickDistance <= 0.05f))
(mStickDistance <= 0.05f) && (!ship->checkForceMove()) && (!checkShipNotNormalMode()))
{
if ((!ship->checkForceMove()) && (!checkShipNotNormalMode())) {
m34D0--;
if (m34D0 == 0) {
dVar6 = cM_rnd();
m34D0 = -1;
if (dVar6 < 0.3333f) {
dVar5 = ANM_FREEA;
m34D0--;
if (m34D0 == 0) {
dVar6 = cM_rnd();
m34D0 = -1;
if (dVar6 < 0.3333f) {
dVar5 = ANM_FREEA;
} else {
if (dVar6 < 0.6666f) {
dVar5 = ANM_FREEB;
m34D0 = -2;
} else {
if (dVar6 < 0.6666f) {
dVar5 = ANM_FREEB;
m34D0 = -2;
} else {
dVar5 = ANM_FREED;
}
dVar5 = ANM_FREED;
}
setSingleMoveAnime(dVar5, 1.0f, 0.0f, -1, 5.0f);
}
goto LAB_801416a4;
setSingleMoveAnime(dVar5, 1.0f, 0.0f, -1, 5.0f);
}
} else {
m34D0 = cM_rndF(150.0f) + 300.0f;
}
m34D0 = cM_rndF(150.0f) + 300.0f;
}
LAB_801416a4:
return true;
}
@@ -775,7 +767,7 @@ BOOL daPy_lk_c::procShipBoomerang() {
} else {
setShipRidePos(0);
if (mActorKeepThrow.getActor() == NULL) {
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx != LKANM_BCK_BOOMCATCH) {
if (!checkUpperAnime(LKANM_BCK_BOOMCATCH)) {
dComIfGp_setDoStatus(7);
if (doTrigger()) {
{
@@ -788,9 +780,9 @@ BOOL daPy_lk_c::procShipBoomerang() {
}
mSightPacket.offDrawFlg();
daShip_c* ship = (daShip_c*)dComIfGp_getShipActor();
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx != LKANM_BCK_BOOMCATCH) {
if (!checkUpperAnime(LKANM_BCK_BOOMCATCH)) {
if (mEquipItem == dItem_BOOMERANG_e) {
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOOMWAIT) {
if (checkUpperAnime(LKANM_BCK_BOOMWAIT)) {
setShipAttentionAnmSpeed(daPy_HIO_boom_c0::m.field_0x18);
checkNextActionBoomerangReady();
if (mpAttention->Lockon()) {
@@ -864,8 +856,8 @@ BOOL daPy_lk_c::procShipHookshot() {
setShipRidePos(0);
dComIfGp_setDoStatus(7);
daHookshot_c* pfVar4 = (daHookshot_c*)mActorKeepEquip.getActor();
if (((doTrigger()) || (pfVar4 == NULL)) ||
((mProcVar0.m3570 != 0) && (m355E == 0)) && (!mpAttention->Lockon()))
if (doTrigger() || pfVar4 == NULL ||
(mProcVar0.m3570 != 0 && m355E == 0 && !mpAttention->Lockon()))
{
procShipPaddle_init();
deleteEquipItem(TRUE);
@@ -918,7 +910,7 @@ BOOL daPy_lk_c::procShipBow_init() {
deleteEquipItem(TRUE);
gravity = 0.0f;
ship->m034D = 2;
if (mDemo.getDemoMode() == 0x44) {
if (mDemo.getDemoMode() == daPy_demo_c::DEMO_UNK44_e) {
mEquipItem = dItem_BOW_e;
} else {
mEquipItem = dComIfGp_getSelectItem(mReadyItemBtn);
@@ -930,7 +922,7 @@ BOOL daPy_lk_c::procShipBow_init() {
setShipRidePos(0);
m34D4 = ship->shape_angle.y;
m34DA = 0;
if (mpAttention->Lockon() && mDemo.getDemoMode() != 0x44) {
if (mpAttention->Lockon() && mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK44_e) {
mProcVar0.m3570 = 1;
} else {
mProcVar0.m3570 = 0;
@@ -941,11 +933,11 @@ BOOL daPy_lk_c::procShipBow_init() {
/* 80142084-80142250 .text procShipBow__9daPy_lk_cFv */
BOOL daPy_lk_c::procShipBow() {
if ((mDemo.getDemoMode() != 0x44) && (changeShipEndProc())) {
if ((mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK44_e) && (changeShipEndProc())) {
return true;
}
setShipRidePos(0);
if (mDemo.getDemoMode() != 0x44) {
if (mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK44_e) {
dComIfGp_setDoStatus(7);
if ((doTrigger()) ||
(((!mpAttention->Lockon()) && (mActorKeepEquip.getActor() == NULL)) && (mProcVar0.m3570 != 0)))
@@ -958,10 +950,10 @@ BOOL daPy_lk_c::procShipBow() {
dComIfGp_evmng_cutEnd(mStaffIdx);
}
daShip_c* iVar1 = (daShip_c*)dComIfGp_getShipActor();
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == LKANM_BCK_BOWWAIT) {
if (checkUpperAnime(LKANM_BCK_BOWWAIT)) {
setShipAttentionAnmSpeed(1.0f);
}
if ((mpAttention->Lockon()) && (mDemo.getDemoMode() != 0x44)) {
if ((mpAttention->Lockon()) && (mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK44_e)) {
setShipAttnetionBodyAngle();
mProcVar0.m3570 = 1;
} else {
+1 -1
View File
@@ -53,7 +53,7 @@ void daPy_lk_c::setSpeedAndAngleSwim() {
if (mStickDistance > 0.05f) {
oldAngleY = current.angle.y;
if (getDirectionFromCurrentAngle() == 1) {
if (getDirectionFromCurrentAngle() == DIR_BACKWARD) {
mSwimTailEcallBack[0].onEnd();
mSwimTailEcallBack[1].onEnd();
+6 -6
View File
@@ -492,15 +492,15 @@ int daPy_lk_c::changeCutReverseProc(daPy_ANM param_0) {
{
onNoResetFlg0(daPyFlg0_UNK10000000);
}
int iVar6 = dComIfG_Bgsp()->GetAttributeCode(mLinkLinChk);
if (!(iVar6 - 2U > 1) || (iVar6 == dBgS_Attr_METAL_e)) {
int attrib_code = dComIfG_Bgsp()->GetAttributeCode(mLinkLinChk);
if (attrib_code == dBgS_Attr_WOOD_e || attrib_code == dBgS_Attr_STONE_e || attrib_code == dBgS_Attr_METAL_e) {
triPla = dComIfG_Bgsp()->GetTriPla(mLinkLinChk);
csXyz local_44;
local_44.x = cM_atan2s(-triPla->GetNP()->y, triPla->GetNP()->absXZ());
local_44.y = cM_atan2s(triPla->GetNP()->x, triPla->GetNP()->z);
local_44.z = 0;
JPABaseEmitter* emitter;
if (iVar6 == dBgS_Attr_WOOD_e) {
if (attrib_code == dBgS_Attr_WOOD_e) {
emitter = dComIfGp_particle_setP1(
dPa_name::ID_COMMON_002B, mLinkLinChk.GetCrossP(), &local_44, NULL,
0xff, NULL, -1, &tevStr.mColorK0, &tevStr.mColorK0);
@@ -1500,7 +1500,7 @@ BOOL daPy_lk_c::procCutRoll() {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
uVar1 = current.angle.y;
if ((mAcch.ChkWallHit()) && (mDemo.getDemoMode() != 0x2b)) {
if ((mAcch.ChkWallHit()) && (mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK2B_e)) {
fVar2 = 25.0f + (mAcchCir[0]).GetWallR();
local_48.set(current.pos.x, current.pos.y + (mAcchCir[0]).GetWallH(), current.pos.z);
local_3c.set(local_48.x + fVar2 * cM_ssin(uVar1), local_48.y,
@@ -1519,7 +1519,7 @@ BOOL daPy_lk_c::procCutRoll() {
}
sVar3 = current.angle.y - uVar1;
if (dComIfGp_event_runCheck() != 0) {
if (mDemo.getDemoMode() != 0x2b) {
if (mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK2B_e) {
m34D0 = 0;
} else {
m34D0 = 5;
@@ -1539,7 +1539,7 @@ BOOL daPy_lk_c::procCutRoll() {
if (cLib_addCalc(&mVelocity, 0.0f, 0.1f, 2.5f, 1.0f) < 0.5f) {
shape_angle.y = shape_angle.y + m34EC;
current.angle.y = shape_angle.y;
if ((dComIfGp_event_runCheck() != 0) && (mDemo.getDemoMode() != 0x2b)) {
if ((dComIfGp_event_runCheck() != 0) && (mDemo.getDemoMode() != daPy_demo_c::DEMO_UNK2B_e)) {
procWait_init();
} else {
procCutRollEnd_init();
+2 -2
View File
@@ -243,7 +243,7 @@ int daPy_lk_c::changeWHideEndProc(cXyz* param_0) {
dComIfGp_setRStatus(15);
if (((!doButton() && (!checkNoResetFlg0(daPyFlg0_UNK10000) || !mAcch.ChkRoofHit())) ||
(m_anm_heap_upper[UPPER_MOVE2_e].mIdx != LKANM_BCK_REST && swordTrigger())) ||
(!checkUpperAnime(LKANM_BCK_REST) && swordTrigger())) ||
!checkWHideBackWall(param_0))
{
mVelocity = 0.7f * mMaxNormalSpeed;
@@ -302,7 +302,7 @@ BOOL daPy_lk_c::procWHideReady() {
return true;
}
if (mProcVar0.m3570 == 0) {
if (m_anm_heap_upper[UPPER_MOVE2_e].mIdx == 0xffff) {
if (checkUpperAnime(-1)) {
setSingleMoveAnime(ANM_WALL, 0.0f, daPy_HIO_wall_c0::m.field_0x24, -1, daPy_HIO_wall_c0::m.field_0x34);
mProcVar0.m3570 = 1;
}