mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-11 11:32:42 -04:00
player enum and inlines and goto cleanup
This commit is contained in:
@@ -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();
|
||||
|
||||
@@ -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; }
|
||||
|
||||
@@ -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
@@ -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*);
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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(¤t.pos.x, m370C.x, 0.5f, 10.0f, 1.0f);
|
||||
dVar2 += cLib_addCalc(¤t.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;
|
||||
}
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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();
|
||||
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user