Fix HIO load issues for d_a_player_main

This commit is contained in:
LagoLunatic 2025-12-10 17:31:47 -05:00
parent 925c338bd6
commit 729f81babf
28 changed files with 1698 additions and 1630 deletions

View File

@ -544,6 +544,21 @@ public:
class daPy_HIO_cut_c0 {
public:
static daPy_HIO_cutA_c0 const mCutA;
static daPy_HIO_cutF_c0 const mCutF;
static daPy_HIO_cutR_c0 const mCutR;
static daPy_HIO_cutL_c0 const mCutL;
static daPy_HIO_cutEA_c0 const mCutEA;
static daPy_HIO_cutEB_c0 const mCutEB;
static daPy_HIO_cutExA_c0 const mCutExA;
static daPy_HIO_cutExB_c0 const mCutExB;
static daPy_HIO_cutExMJ_c0 const mCutExMJ;
static daPy_HIO_cutKesa_c0 const mCutKesa;
static daPy_HIO_cutTurn_c0 const mCutTurn;
static daPy_HIO_cutTurnR_c0 const mCutTurnR;
static daPy_HIO_cutRoll_c0 const mCutRoll;
static daPy_HIO_cutJump_c0 const mCutJump;
static daPy_HIO_cutBoko_c0 const mCutBoko;
static daPy_HIO_cut_c1 const m;
};
@ -849,6 +864,21 @@ public:
static daPy_HIO_b_verJump_c1 const m;
};
class daPy_HIO_battle_c1 {
public:
/* 0x00 */ f32 field_0x0;
/* 0x04 */ f32 field_0x4;
};
class daPy_HIO_battle_c0 {
public:
static daPy_HIO_b_jump_c0 const mBJump;
static daPy_HIO_b_roll_c0 const mBRoll;
static daPy_HIO_b_slide_c0 const mBSlide;
static daPy_HIO_b_verJump_c0 const mBVerJump;
static daPy_HIO_battle_c1 const m;
};
class daPy_HIO_wall_c1 {
public:
/* 0x00 */ s16 field_0x0;
@ -1188,6 +1218,21 @@ public:
static daPy_HIO_elecDamage_c1 const m;
};
class daPy_HIO_dam_c1 {
public:
/* 0x00 */ s16 field_0x0;
/* 0x02 */ s16 field_0x2;
};
class daPy_HIO_dam_c0 {
public:
static daPy_HIO_damage_c0 const mDamage;
static daPy_HIO_laDamage_c0 const mLaDamage;
static daPy_HIO_huDamage_c0 const mHuDamage;
static daPy_HIO_elecDamage_c0 const mElecDamage;
static daPy_HIO_dam_c1 const m;
};
class daPy_HIO_slowJump_c1 {
public:
/* 0x00 */ s16 field_0x0;
@ -1600,6 +1645,17 @@ public:
static daPy_HIO_food_c1 const m;
};
class daPy_HIO_magicShield_c1 {
public:
/* 0x00 */ s16 field_0x0;
/* 0x02 */ s16 field_0x2;
};
class daPy_HIO_magicShield_c0 {
public:
static daPy_HIO_magicShield_c1 const m;
};
class daPy_HIO_item_c1 {
public:
/* 0x00 */ s16 field_0x0;
@ -1620,6 +1676,16 @@ public:
class daPy_HIO_item_c0 {
public:
static daPy_HIO_rope_c0 const mRope;
static daPy_HIO_boom_c0 const mBoom;
static daPy_HIO_fan_c0 const mFan;
static daPy_HIO_tact_c0 const mTact;
static daPy_HIO_ham_c0 const mHam;
static daPy_HIO_boots_c0 const mBoots;
static daPy_HIO_bottle_c0 const mBottle;
static daPy_HIO_bow_c0 const mBow;
static daPy_HIO_food_c0 const mFood;
static daPy_HIO_magicShield_c0 const mMagicShield;
static daPy_HIO_item_c1 const m;
};
@ -1733,37 +1799,4 @@ public:
static daPy_HIO_warp_c1 const m;
};
class daPy_HIO_battle_c1 {
public:
/* 0x00 */ f32 field_0x0;
/* 0x04 */ f32 field_0x4;
};
class daPy_HIO_battle_c0 {
public:
static daPy_HIO_battle_c1 const m;
};
class daPy_HIO_dam_c1 {
public:
/* 0x00 */ s16 field_0x0;
/* 0x02 */ s16 field_0x2;
};
class daPy_HIO_dam_c0 {
public:
static daPy_HIO_dam_c1 const m;
};
class daPy_HIO_magicShield_c1 {
public:
/* 0x00 */ s16 field_0x0;
/* 0x02 */ s16 field_0x2;
};
class daPy_HIO_magicShield_c0 {
public:
static daPy_HIO_magicShield_c1 const m;
};
#endif /* D_A_PLAYER_HIO_H */

View File

@ -9,6 +9,7 @@
#include "d/d_drawlist.h"
#include "d/d_bg_w.h"
#include "d/actor/d_a_player.h"
#include "d/actor/d_a_player_HIO.h"
#include "d/res/res_link.h" // IWYU pragma: export
#include "d/res/res_lkanm.h"
@ -375,7 +376,41 @@ public:
daPy_HIO_c();
public:
/* 0x00 */ u8 temp[0x3F - 0x00];
daPy_HIO_basic_c0 mBasic;
daPy_HIO_move_c0 mMove;
daPy_HIO_atnMove_c0 mAtnMove;
daPy_HIO_atnMoveB_c0 mAtnMoveB;
daPy_HIO_turn_c0 mTurn;
daPy_HIO_cut_c0 mCut;
daPy_HIO_roll_c0 mRoll;
daPy_HIO_backJump_c0 mBackJump;
daPy_HIO_slip_c0 mSlip;
daPy_HIO_slide_c0 mSlide;
daPy_HIO_autoJump_c0 mAutoJump;
daPy_HIO_fall_c0 mFall;
daPy_HIO_swim_c0 mSwim;
daPy_HIO_battle_c0 mBattle;
daPy_HIO_wall_c0 mWall;
daPy_HIO_smallJump_c0 mSmallJump;
daPy_HIO_wallCatch_c0 mWallCatch;
daPy_HIO_hang_c0 mHang;
daPy_HIO_guard_c0 mGuard;
daPy_HIO_nockback_c0 mNockback;
daPy_HIO_iceSlip_c0 mIceSlip;
daPy_HIO_dam_c0 mDam;
daPy_HIO_slowJump_c0 mSlowJump;
daPy_HIO_sideStep_c0 mSideStep;
daPy_HIO_grab_c0 mGrab;
daPy_HIO_ladder_c0 mLadder;
daPy_HIO_crouch_c0 mCrouch;
daPy_HIO_pushpull_c0 mPushpull;
daPy_HIO_item_c0 mItem;
daPy_HIO_ship_c0 mShip;
daPy_HIO_restart_c0 mRestart;
daPy_HIO_holdup_c0 mHoldup;
daPy_HIO_vomit_c0 mVomit;
daPy_HIO_warp_c0 mWarp;
u8 pad[0x3F - 0x22];
}; // Size: 0x3F
class daPy_lk_c : public daPy_py_c {

View File

@ -150,6 +150,10 @@ const daPy_HIO_b_verJump_c1 daPy_HIO_b_verJump_c0::m = {
4.0f, 8.0f, -7.0f, -10.0f, 1.0f, 2.0f, 0.0f, 5.5f, 25.0f,
};
const daPy_HIO_battle_c1 daPy_HIO_battle_c0::m = {
0.0f, 1.5f,
};
const daPy_HIO_wall_c1 daPy_HIO_wall_c0::m = {
10, 7, 14, 14, 28, 28, 1.3f, 1.1f, 1.6f, 1.8f, 0.8f, 0.9f, 3.0f, 0.0f, 1.0f,
1.0f, 5.0f, 5.0f, 5.0f, 5.0f, 5.0f, 5.0f, 5.0f, 8.5f, 25.0f, 0.9f, 0.9f, 1.0f, 0.98f,
@ -207,6 +211,10 @@ const daPy_HIO_elecDamage_c1 daPy_HIO_elecDamage_c0::m = {
0.0f,
};
const daPy_HIO_dam_c1 daPy_HIO_dam_c0::m = {
30, 20,
};
const daPy_HIO_slowJump_c1 daPy_HIO_slowJump_c0::m = {
19, 40, -2.0f, 16.25f, 10.5f, 0.9f, 0.0f, 15.0f,
5.0f, 2.0f, 0.8f, 0.0f, 5.0f, 25.0f, 100.0f, 6.0f,
@ -278,6 +286,10 @@ const daPy_HIO_food_c1 daPy_HIO_food_c0::m = {
17, 21, 0.6f, 0.0f, 4.0f, 1.1f, 2.0f, 4.0f,
};
const daPy_HIO_magicShield_c1 daPy_HIO_magicShield_c0::m = {
60, 0,
};
const daPy_HIO_item_c1 daPy_HIO_item_c0::m = {
15, 10, 7, 1.0f, 2.0f, 1.0f, 0.7f, 1.0f, 3.0f, 4.0f, 0.8f, 3.0f, 4.0f, 6.0f,
};
@ -303,15 +315,3 @@ const daPy_HIO_vomit_c1 daPy_HIO_vomit_c0::m = {
const daPy_HIO_warp_c1 daPy_HIO_warp_c0::m = {
53, 12, 28, 4, 1.2f, 1.6f, 0.5f, 0.1f, 1.35f,
};
const daPy_HIO_battle_c1 daPy_HIO_battle_c0::m = {
0.0f, 1.5f,
};
const daPy_HIO_dam_c1 daPy_HIO_dam_c0::m = {
30, 20,
};
const daPy_HIO_magicShield_c1 daPy_HIO_magicShield_c0::m = {
60, 0,
};

View File

@ -44,7 +44,7 @@ void daPy_lk_c::setSpecialBattle(BOOL param_0) {
if (enemy->getBtAttackType() == 0) {
return;
}
if (enemy->getBtStartFrame() - daPy_HIO_battle_c0::m.field_0x4 <= enemy->getBtNowFrame() &&
if (enemy->getBtStartFrame() - m_HIO->mBattle.m.field_0x4 <= enemy->getBtNowFrame() &&
enemy->getBtNowFrame() < enemy->getBtEndFrame() &&
enemy->getBtMaxDis() > fopAcM_searchActorDistanceXZ(this, enemy))
{
@ -85,13 +85,13 @@ BOOL daPy_lk_c::procBtJump_init(fopEn_enemy_c* enemy) {
cXyz local_34 = enemy->current.pos - current.pos;
commonProcInit(daPyProc_BT_JUMP_e);
gravity = daPy_HIO_b_jump_c0::m.field_0x20;
gravity = m_HIO->mBattle.mBJump.m.field_0x20;
setSingleMoveAnime(
ANM_MJMP,
daPy_HIO_b_jump_c0::m.field_0x8,
daPy_HIO_b_jump_c0::m.field_0x14,
m_HIO->mBattle.mBJump.m.field_0x8,
m_HIO->mBattle.mBJump.m.field_0x14,
-1,
daPy_HIO_b_jump_c0::m.field_0x10
m_HIO->mBattle.mBJump.m.field_0x10
);
fVar1 = local_34.y + enemy->getBtHeight();
if (local_34.y + enemy->getBtHeight() < 30.0f) {
@ -109,7 +109,7 @@ BOOL daPy_lk_c::procBtJump_init(fopEn_enemy_c* enemy) {
m370C.x = enemy->current.pos.x - enemy->getBtBodyR() * cM_ssin(enemy->shape_angle.y);
m370C.y = enemy->current.pos.y;
m370C.z = enemy->current.pos.z - enemy->getBtBodyR() * cM_scos(enemy->shape_angle.y);
if (daPy_HIO_b_jump_c0::m.field_0x18 <= 0.0f) {
if (m_HIO->mBattle.mBJump.m.field_0x18 <= 0.0f) {
speed.y = m35A0;
mVelocity = m35A4;
mProcVar0.m3570 = 1;
@ -125,14 +125,14 @@ BOOL daPy_lk_c::procBtJump_init(fopEn_enemy_c* enemy) {
/* 8013E72C-8013E860 .text procBtJump__9daPy_lk_cFv */
BOOL daPy_lk_c::procBtJump() {
if (mProcVar0.m3570 == 0) {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() >= daPy_HIO_b_jump_c0::m.field_0x18) {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() >= m_HIO->mBattle.mBJump.m.field_0x18) {
speed.y = m35A0;
mVelocity = m35A4;
mProcVar0.m3570 = 1;
}
} else {
if (mAcch.ChkGroundHit()) {
return changeLandProc(daPy_HIO_b_jump_c0::m.field_0xC);
return changeLandProc(m_HIO->mBattle.mBJump.m.field_0xC);
}
if (mProcVar0.m3570 == 1) {
m34D0++;
@ -142,7 +142,7 @@ BOOL daPy_lk_c::procBtJump() {
} else {
u32 uVar2 = cM_atan2s(mVelocity, -speed.y);
f32 temp = cM_ssin(uVar2 * 2);
m34F2 = -daPy_HIO_b_jump_c0::m.field_0x6 * temp;
m34F2 = -m_HIO->mBattle.mBJump.m.field_0x6 * temp;
setFallVoice();
}
}
@ -154,17 +154,17 @@ BOOL daPy_lk_c::procBtJumpCut_init(cXyz* param_0) {
commonProcInit(daPyProc_BT_JUMP_CUT_e);
setSingleMoveAnime(
ANM_MJMPC,
daPy_HIO_b_jump_c0::m.field_0x28,
daPy_HIO_b_jump_c0::m.field_0x30,
daPy_HIO_b_jump_c0::m.field_0x4,
daPy_HIO_b_jump_c0::m.field_0x2C
m_HIO->mBattle.mBJump.m.field_0x28,
m_HIO->mBattle.mBJump.m.field_0x30,
m_HIO->mBattle.mBJump.m.field_0x4,
m_HIO->mBattle.mBJump.m.field_0x2C
);
if (checkNormalSwordEquip()) {
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_MJMPCA));
} else {
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_MJMPCMS));
}
m35EC = daPy_HIO_b_jump_c0::m.field_0x30;
m35EC = m_HIO->mBattle.mBJump.m.field_0x30;
mVelocity = 0.0f;
gravity = 0.0f;
speed.y = 0.0f;
@ -181,14 +181,14 @@ BOOL daPy_lk_c::procBtJumpCut_init(cXyz* param_0) {
/* 8013E9D4-8013EBD0 .text procBtJumpCut__9daPy_lk_cFv */
BOOL daPy_lk_c::procBtJumpCut() {
m35EC = mFrameCtrlUnder[UNDER_MOVE0_e].getFrame();
if (speed.y < 0.0f && daPy_HIO_b_jump_c0::m.field_0x0 == 1) {
if (speed.y < 0.0f && m_HIO->mBattle.mBJump.m.field_0x0 == 1) {
u32 uVar2 = cM_atan2s(mVelocity, -speed.y);
f32 temp = cM_ssin(uVar2 * 2);
m34F2 = -daPy_HIO_b_jump_c0::m.field_0x6 * temp;
m34F2 = -m_HIO->mBattle.mBJump.m.field_0x6 * temp;
}
f32 frame = mFrameCtrlUnder[UNDER_MOVE0_e].getFrame();
if (frame >= daPy_HIO_b_jump_c0::m.field_0x44 && frame < daPy_HIO_b_jump_c0::m.field_0x48) {
if (frame >= m_HIO->mBattle.mBJump.m.field_0x44 && frame < m_HIO->mBattle.mBJump.m.field_0x48) {
onResetFlg0(daPyRFlg0_UNK2);
if (!checkNoResetFlg0(daPyFlg0_CUT_AT_FLG)) {
onResetFlg0(daPyRFlg0_UNK1);
@ -197,17 +197,17 @@ BOOL daPy_lk_c::procBtJumpCut() {
}
if (mAcch.ChkGroundHit()) {
return changeLandProc(daPy_HIO_b_jump_c0::m.field_0xC);
return changeLandProc(m_HIO->mBattle.mBJump.m.field_0xC);
}
if (mProcVar0.m3570 == 0 && mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
gravity = daPy_HIO_b_jump_c0::m.field_0x3C;
speed.y = daPy_HIO_b_jump_c0::m.field_0x34;
mVelocity = daPy_HIO_b_jump_c0::m.field_0x38;
gravity = m_HIO->mBattle.mBJump.m.field_0x3C;
speed.y = m_HIO->mBattle.mBJump.m.field_0x34;
mVelocity = m_HIO->mBattle.mBJump.m.field_0x38;
mProcVar0.m3570 = 1;
} else if (mProcVar0.m3570 == 1 && speed.y < -gravity && daPy_HIO_b_jump_c0::m.field_0x0 == 1) {
} else if (mProcVar0.m3570 == 1 && speed.y < -gravity && m_HIO->mBattle.mBJump.m.field_0x0 == 1) {
mProcVar0.m3570 = 2;
setSingleMoveAnime(ANM_JMPEDS, 0.0f, 0.0f, -1, daPy_HIO_b_jump_c0::m.field_0x40);
setSingleMoveAnime(ANM_JMPEDS, 0.0f, 0.0f, -1, m_HIO->mBattle.mBJump.m.field_0x40);
offModeFlg(ModeFlg_00000400);
setTextureAnime(0x37, 0);
resetSeAnime();
@ -223,9 +223,9 @@ BOOL daPy_lk_c::procBtSlide() {
f32 dVar1 = cLib_addCalc(
&mVelocity,
0.0f,
daPy_HIO_b_slide_c0::m.field_0x4,
daPy_HIO_b_slide_c0::m.field_0x8,
daPy_HIO_b_slide_c0::m.field_0xC
m_HIO->mBattle.mBSlide.m.field_0x4,
m_HIO->mBattle.mBSlide.m.field_0x8,
m_HIO->mBattle.mBSlide.m.field_0xC
);
if (dVar1 <= 0.001f) {
checkNextMode(0);
@ -256,10 +256,10 @@ BOOL daPy_lk_c::procBtRoll_init(fopEn_enemy_c* enemy) {
}
setSingleMoveAnime(
anm,
daPy_HIO_b_roll_c0::m.field_0xC,
daPy_HIO_b_roll_c0::m.field_0x10,
daPy_HIO_b_roll_c0::m.field_0x6,
daPy_HIO_b_roll_c0::m.field_0x14
m_HIO->mBattle.mBRoll.m.field_0xC,
m_HIO->mBattle.mBRoll.m.field_0x10,
m_HIO->mBattle.mBRoll.m.field_0x6,
m_HIO->mBattle.mBRoll.m.field_0x14
);
cXyz local_2c = current.pos - local_38;
@ -278,7 +278,7 @@ BOOL daPy_lk_c::procBtRoll_init(fopEn_enemy_c* enemy) {
BOOL daPy_lk_c::procBtRoll() {
s16 sVar1 = m34D4;
cLib_addCalcAngleS(
&m34D4, 0, daPy_HIO_b_roll_c0::m.field_0x4, daPy_HIO_b_roll_c0::m.field_0x0, daPy_HIO_b_roll_c0::m.field_0x2
&m34D4, 0, m_HIO->mBattle.mBRoll.m.field_0x4, m_HIO->mBattle.mBRoll.m.field_0x0, m_HIO->mBattle.mBRoll.m.field_0x2
);
s16 sVar3 = sVar1 - m34D4;
@ -296,7 +296,7 @@ BOOL daPy_lk_c::procBtRoll() {
current.pos.x = local_28.x + m35A0 * cM_ssin(m34D6);
current.pos.z = local_28.z + m35A0 * cM_scos(m34D6);
shape_angle.y = m34D6 + 0x8000;
if (abs((int)sVar3) < daPy_HIO_b_roll_c0::m.field_0x2) {
if (abs((int)sVar3) < m_HIO->mBattle.mBRoll.m.field_0x2) {
resetFootEffect();
}
@ -331,10 +331,10 @@ BOOL daPy_lk_c::procBtRollCut_init(cXyz* param_0) {
setSingleMoveAnime(
dVar4,
daPy_HIO_b_roll_c0::m.field_0x1C,
daPy_HIO_b_roll_c0::m.field_0x20,
daPy_HIO_b_roll_c0::m.field_0x8,
daPy_HIO_b_roll_c0::m.field_0x24
m_HIO->mBattle.mBRoll.m.field_0x1C,
m_HIO->mBattle.mBRoll.m.field_0x20,
m_HIO->mBattle.mBRoll.m.field_0x8,
m_HIO->mBattle.mBRoll.m.field_0x24
);
if (checkNormalSwordEquip()) {
@ -343,12 +343,12 @@ BOOL daPy_lk_c::procBtRollCut_init(cXyz* param_0) {
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_MROLLCMS));
}
m35EC = daPy_HIO_b_roll_c0::m.field_0x20;
m35EC = m_HIO->mBattle.mBRoll.m.field_0x20;
m370C = *param_0;
m34D4 = 0;
mVelocity = daPy_HIO_b_roll_c0::m.field_0x28;
speed.y = daPy_HIO_b_roll_c0::m.field_0x2C;
gravity = daPy_HIO_b_roll_c0::m.field_0x30;
mVelocity = m_HIO->mBattle.mBRoll.m.field_0x28;
speed.y = m_HIO->mBattle.mBRoll.m.field_0x2C;
gravity = m_HIO->mBattle.mBRoll.m.field_0x30;
voiceStart(1);
setExtraFinishCutAtParam(15);
offNoResetFlg0(daPyFlg0_NO_FALL_VOICE);
@ -371,7 +371,7 @@ BOOL daPy_lk_c::procBtRollCut() {
m34D4 = 1;
onResetFlg0(daPyRFlg0_UNK2);
} else if (m34D4 == 1) {
setSingleMoveAnime(ANM_JMPEDS, 0.0f, 0.0f, -1, daPy_HIO_b_roll_c0::m.field_0x38);
setSingleMoveAnime(ANM_JMPEDS, 0.0f, 0.0f, -1, m_HIO->mBattle.mBRoll.m.field_0x38);
offModeFlg(ModeFlg_00000400);
setTextureAnime(0x37, 0);
resetSeAnime();
@ -380,21 +380,21 @@ BOOL daPy_lk_c::procBtRollCut() {
if (m34D4 > 1) {
int iVar3 = mProcVar0.m3570;
if ((iVar3 > 0 && m34EC < 0) || (iVar3 < 0 && m34EC > 0)) {
cLib_addCalcAngleS(&m34EC, -iVar3, 4, daPy_HIO_b_roll_c0::m.field_0xA, 0x200);
cLib_addCalcAngleS(&m34EC, -iVar3, 4, m_HIO->mBattle.mBRoll.m.field_0xA, 0x200);
} else {
m34EC += iVar3 * daPy_HIO_b_roll_c0::m.field_0xA;
m34EC += iVar3 * m_HIO->mBattle.mBRoll.m.field_0xA;
}
}
if (mAcch.ChkGroundHit()) {
shape_angle.y = shape_angle.y + m34EC;
current.angle.y = shape_angle.y;
return changeLandProc(daPy_HIO_autoJump_c0::m.field_0x24);
return changeLandProc(m_HIO->mAutoJump.m.field_0x24);
}
} else {
onResetFlg0(daPyRFlg0_UNK2);
}
if (speed.y < -gravity) {
gravity = daPy_HIO_b_roll_c0::m.field_0x34;
gravity = m_HIO->mBattle.mBRoll.m.field_0x34;
}
setFallVoice();
return true;
@ -405,14 +405,14 @@ BOOL daPy_lk_c::procBtVerticalJump_init(fopEn_enemy_c* enemy) {
commonProcInit(daPyProc_BT_VERTICAL_JUMP_e);
setSingleMoveAnime(
ANM_MSTEPOVER,
daPy_HIO_b_verJump_c0::m.field_0x8,
daPy_HIO_b_verJump_c0::m.field_0xC,
daPy_HIO_b_verJump_c0::m.field_0x0,
daPy_HIO_b_verJump_c0::m.field_0x10
m_HIO->mBattle.mBVerJump.m.field_0x8,
m_HIO->mBattle.mBVerJump.m.field_0xC,
m_HIO->mBattle.mBVerJump.m.field_0x0,
m_HIO->mBattle.mBVerJump.m.field_0x10
);
mVelocity = 0.0f;
gravity = daPy_HIO_b_verJump_c0::m.field_0x14;
speed.y = daPy_HIO_b_verJump_c0::m.field_0x18;
gravity = m_HIO->mBattle.mBVerJump.m.field_0x14;
speed.y = m_HIO->mBattle.mBVerJump.m.field_0x18;
offNoResetFlg0(daPyFlg0_NO_FALL_VOICE);
current.angle.y = shape_angle.y;
voiceStart(6);
@ -425,7 +425,7 @@ BOOL daPy_lk_c::procBtVerticalJump_init(fopEn_enemy_c* enemy) {
BOOL daPy_lk_c::procBtVerticalJump() {
setFallVoice();
if (mAcch.ChkGroundHit()) {
changeLandProc(daPy_HIO_autoJump_c0::m.field_0x24);
changeLandProc(m_HIO->mAutoJump.m.field_0x24);
} else if (speed.y < -(gravity * 2.0f)) {
procBtVerticalJumpCut_init();
}
@ -437,14 +437,14 @@ BOOL daPy_lk_c::procBtVerticalJumpCut_init() {
commonProcInit(daPyProc_BT_VERTICAL_JUMP_CUT_e);
setSingleMoveAnime(
ANM_MSTEPOVERA,
daPy_HIO_b_verJump_c0::m.field_0x1C,
daPy_HIO_b_verJump_c0::m.field_0x20,
daPy_HIO_b_verJump_c0::m.field_0x2,
daPy_HIO_b_verJump_c0::m.field_0x24
m_HIO->mBattle.mBVerJump.m.field_0x1C,
m_HIO->mBattle.mBVerJump.m.field_0x20,
m_HIO->mBattle.mBVerJump.m.field_0x2,
m_HIO->mBattle.mBVerJump.m.field_0x24
);
mpCutfBpk->setFrame(0.0f);
mpCutfBtk->setFrame(0.0f);
gravity = daPy_HIO_b_verJump_c0::m.field_0x28;
gravity = m_HIO->mBattle.mBVerJump.m.field_0x28;
setExtraFinishCutAtParam(16);
dComIfGp_setPlayerStatus0(0, (daPyStts0_UNK2_e | daPyStts0_UNK400_e));
return true;
@ -470,7 +470,7 @@ BOOL daPy_lk_c::procBtVerticalJumpCut() {
voiceStart(1);
onResetFlg0(daPyRFlg0_UNK1);
seStartSwordCut(JA_SE_LK_SW_KAZEKIRI_S);
gravity = daPy_HIO_b_verJump_c0::m.field_0x2C;
gravity = m_HIO->mBattle.mBVerJump.m.field_0x2C;
}
onResetFlg0(daPyRFlg0_UNK2);
}
@ -483,19 +483,19 @@ BOOL daPy_lk_c::procBtVerticalJumpLand_init() {
f32 fVar1 = m35F0 - current.pos.y;
if (!dComIfGp_event_runCheck()) {
if (fVar1 >= 100.0f * daPy_HIO_fall_c0::m.field_0x10) {
if (fVar1 >= 100.0f * m_HIO->mFall.m.field_0x10) {
setDamagePoint(-2.0f);
} else if (fVar1 >= 100.0f * daPy_HIO_fall_c0::m.field_0x14) {
} else if (fVar1 >= 100.0f * m_HIO->mFall.m.field_0x14) {
setDamagePoint(-1.0f);
}
}
commonProcInit(daPyProc_BT_VERTICAL_JUMP_LAND_e);
setSingleMoveAnime(
ANM_MSTEPOVERLAND,
daPy_HIO_b_verJump_c0::m.field_0x30,
daPy_HIO_b_verJump_c0::m.field_0x34,
daPy_HIO_b_verJump_c0::m.field_0x4,
daPy_HIO_b_verJump_c0::m.field_0x38
m_HIO->mBattle.mBVerJump.m.field_0x30,
m_HIO->mBattle.mBVerJump.m.field_0x34,
m_HIO->mBattle.mBVerJump.m.field_0x4,
m_HIO->mBattle.mBVerJump.m.field_0x38
);
dComIfGp_getVibration().StartShock(6, -0x21, cXyz(0.0f, 1.0f, 0.0f));
if (!checkNoResetFlg0(daPyFlg0_UNK10000000)) {
@ -508,8 +508,8 @@ BOOL daPy_lk_c::procBtVerticalJumpLand_init() {
BOOL daPy_lk_c::procBtVerticalJumpLand() {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
procBackJump_init();
mVelocity = daPy_HIO_b_verJump_c0::m.field_0x3C;
speed.y = daPy_HIO_b_verJump_c0::m.field_0x40;
mVelocity = m_HIO->mBattle.mBVerJump.m.field_0x3C;
speed.y = m_HIO->mBattle.mBVerJump.m.field_0x40;
}
return true;
}

View File

@ -76,10 +76,10 @@ BOOL daPy_lk_c::checkNextActionBoomerangReady() {
setActAnimeUpper(
LKANM_BCK_BOOMTHROW,
UPPER_MOVE2_e,
daPy_HIO_boom_c0::m.field_0x4,
daPy_HIO_boom_c0::m.field_0x8,
daPy_HIO_boom_c0::m.field_0x0,
daPy_HIO_boom_c0::m.field_0xC
m_HIO->mItem.mBoom.m.field_0x4,
m_HIO->mItem.mBoom.m.field_0x8,
m_HIO->mItem.mBoom.m.field_0x0,
m_HIO->mItem.mBoom.m.field_0xC
);
setPriTextureAnime(0x48, 0);
return true;
@ -93,7 +93,7 @@ void daPy_lk_c::checkNextActionBoomerangFly() {
checkNextActionBoomerangReady();
} else if (itemTrigger() && mEquipItem == getReadyItem()) {
setActAnimeUpper(
LKANM_BCK_BOOMWAIT, UPPER_MOVE2_e, daPy_HIO_boom_c0::m.field_0x18, 0.0f, -1, daPy_HIO_basic_c0::m.field_0xC
LKANM_BCK_BOOMWAIT, UPPER_MOVE2_e, m_HIO->mItem.mBoom.m.field_0x18, 0.0f, -1, m_HIO->mBasic.m.field_0xC
);
}
}
@ -119,10 +119,10 @@ BOOL daPy_lk_c::changeBoomerangCatchProc() {
setActAnimeUpper(
LKANM_BCK_BOOMCATCH,
UPPER_MOVE2_e,
daPy_HIO_boom_c0::m.field_0x20,
daPy_HIO_boom_c0::m.field_0x24,
daPy_HIO_boom_c0::m.field_0x2,
daPy_HIO_boom_c0::m.field_0x28
m_HIO->mItem.mBoom.m.field_0x20,
m_HIO->mItem.mBoom.m.field_0x24,
m_HIO->mItem.mBoom.m.field_0x2,
m_HIO->mItem.mBoom.m.field_0x28
);
setPriTextureAnime(0x49, 0);
seStartOnlyReverb(JA_SE_LK_BOOM_CATCH);
@ -146,7 +146,7 @@ BOOL daPy_lk_c::procBoomerangSubject_init() {
mVelocity = 0.0f;
setActAnimeUpper(LKANM_BCK_BOOMWAIT, UPPER_MOVE2_e, 0.0f, 0.0f, -1, -1.0f);
setSingleMoveAnime(ANM_ATNRS, 0.0f, 0.0f, -1, daPy_HIO_basic_c0::m.field_0xC);
setSingleMoveAnime(ANM_ATNRS, 0.0f, 0.0f, -1, m_HIO->mBasic.m.field_0xC);
dComIfGp_setPlayerStatus0(0, daPyStts0_BOOMERANG_AIM_e);
@ -201,8 +201,8 @@ BOOL daPy_lk_c::procBoomerangMove_init() {
mDirection = DIR_RIGHT;
current.angle.y = shape_angle.y + -0x4000;
}
setActAnimeUpper(LKANM_BCK_BOOMWAIT, UPPER_MOVE2_e, daPy_HIO_boom_c0::m.field_0x18, 0.0f, -1, -1.0f);
setBlendAtnMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setActAnimeUpper(LKANM_BCK_BOOMWAIT, UPPER_MOVE2_e, m_HIO->mItem.mBoom.m.field_0x18, 0.0f, -1, -1.0f);
setBlendAtnMoveAnime(m_HIO->mBasic.m.field_0xC);
dComIfGp_setPlayerStatus0(0, daPyStts0_BOOMERANG_AIM_e);
return true;
}
@ -225,7 +225,7 @@ BOOL daPy_lk_c::procBoomerangMove() {
onModeFlg(ModeFlg_00000001);
if (mDirection != DIR_RIGHT) {
mDirection = DIR_RIGHT;
fVar1 = daPy_HIO_basic_c0::m.field_0xC;
fVar1 = m_HIO->mBasic.m.field_0xC;
}
} else {
offModeFlg(ModeFlg_00000001);
@ -246,10 +246,10 @@ BOOL daPy_lk_c::procBoomerangCatch_init() {
commonProcInit(daPyProc_BOOMERANG_CATCH_e);
setSingleMoveAnime(
ANM_BOOMCATCH,
daPy_HIO_boom_c0::m.field_0x20,
daPy_HIO_boom_c0::m.field_0x24,
daPy_HIO_boom_c0::m.field_0x2,
daPy_HIO_boom_c0::m.field_0x28
m_HIO->mItem.mBoom.m.field_0x20,
m_HIO->mItem.mBoom.m.field_0x24,
m_HIO->mItem.mBoom.m.field_0x2,
m_HIO->mItem.mBoom.m.field_0x28
);
offNoResetFlg0(daPyFlg0_UNK20);
return true;
@ -260,7 +260,7 @@ BOOL daPy_lk_c::procBoomerangCatch() {
if (checkAttentionLock()) {
setSpeedAndAngleAtn();
} else {
setSpeedAndAngleNormal(daPy_HIO_move_c0::m.field_0x0);
setSpeedAndAngleNormal(m_HIO->mMove.m.field_0x0);
}
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
resetActAnimeUpper(UPPER_MOVE2_e, -1.0f);

View File

@ -106,9 +106,9 @@ BOOL daPy_lk_c::procBottleDrink_init(u16 param_0) {
setSingleMoveAnime(
ANM_BINDRINKPRE,
1.0f,
daPy_HIO_bottle_c0::m.field_0x5C,
daPy_HIO_bottle_c0::m.field_0xC,
daPy_HIO_bottle_c0::m.field_0x60
m_HIO->mItem.mBottle.m.field_0x5C,
m_HIO->mItem.mBottle.m.field_0xC,
m_HIO->mItem.mBottle.m.field_0x60
);
if (changeBottleDrinkFace(param_0)) {
setTextureAnime(0x85, 0);
@ -133,7 +133,7 @@ BOOL daPy_lk_c::procBottleDrink() {
u16 uVar1 = m_anm_heap_under[UNDER_MOVE0_e].mIdx;
if (uVar1 == LKANM_BCK_BINDRINKPRE) {
if (frameCtrl.getRate() < 0.01f) {
setSingleMoveAnime(ANM_BINDRINKING, daPy_HIO_bottle_c0::m.field_0x64, 0.0f, -1, 0.0f);
setSingleMoveAnime(ANM_BINDRINKING, m_HIO->mItem.mBottle.m.field_0x64, 0.0f, -1, 0.0f);
if (changeBottleDrinkFace(mEquipItem)) {
setTextureAnime(0x86, 0);
}
@ -159,9 +159,9 @@ BOOL daPy_lk_c::procBottleDrink() {
setSingleMoveAnime(
ANM_BINDRINKAFTER,
1.0f,
daPy_HIO_bottle_c0::m.field_0x68,
daPy_HIO_bottle_c0::m.field_0xE,
daPy_HIO_bottle_c0::m.field_0x6C
m_HIO->mItem.mBottle.m.field_0x68,
m_HIO->mItem.mBottle.m.field_0xE,
m_HIO->mItem.mBottle.m.field_0x6C
);
if (changeBottleDrinkFace(mEquipItem)) {
setTextureAnime(0x87, 0);
@ -224,9 +224,9 @@ BOOL daPy_lk_c::procBottleOpen_init(u16 param_0) {
setSingleMoveAnime(
ANM_BINOPENPRE,
1.0f,
daPy_HIO_bottle_c0::m.field_0x3C,
daPy_HIO_bottle_c0::m.field_0x6,
daPy_HIO_bottle_c0::m.field_0x40
m_HIO->mItem.mBottle.m.field_0x3C,
m_HIO->mItem.mBottle.m.field_0x6,
m_HIO->mItem.mBottle.m.field_0x40
);
keepItemData();
setBottleModel(param_0);
@ -259,17 +259,17 @@ BOOL daPy_lk_c::procBottleOpen() {
setSingleMoveAnime(
ANM_BINOPENB,
1.0f,
daPy_HIO_bottle_c0::m.field_0x50,
daPy_HIO_bottle_c0::m.field_0xA,
daPy_HIO_bottle_c0::m.field_0x54
m_HIO->mItem.mBottle.m.field_0x50,
m_HIO->mItem.mBottle.m.field_0xA,
m_HIO->mItem.mBottle.m.field_0x54
);
} else {
setSingleMoveAnime(
ANM_BINOPENA,
1.0f,
daPy_HIO_bottle_c0::m.field_0x44,
daPy_HIO_bottle_c0::m.field_0x8,
daPy_HIO_bottle_c0::m.field_0x48
m_HIO->mItem.mBottle.m.field_0x44,
m_HIO->mItem.mBottle.m.field_0x8,
m_HIO->mItem.mBottle.m.field_0x48
);
}
} else if (frameCtrl.checkPass(32.0f)) {
@ -376,8 +376,8 @@ BOOL daPy_lk_c::procBottleOpen() {
}
setAtParam(AT_TYPE_WATER, 0, spl, 0, dCcG_AtHitMark_None_e, 0, 5.0f);
} else if (
(mEquipItem == dItem_FAIRY_BOTTLE_e && frameCtrl.getFrame() >= daPy_HIO_bottle_c0::m.field_0x58) ||
(mEquipItem != dItem_FAIRY_BOTTLE_e && mEquipItem != dItem_FOREST_WATER_e && frameCtrl.getFrame() >= daPy_HIO_bottle_c0::m.field_0x4C)
(mEquipItem == dItem_FAIRY_BOTTLE_e && frameCtrl.getFrame() >= m_HIO->mItem.mBottle.m.field_0x58) ||
(mEquipItem != dItem_FAIRY_BOTTLE_e && mEquipItem != dItem_FOREST_WATER_e && frameCtrl.getFrame() >= m_HIO->mItem.mBottle.m.field_0x4C)
) {
mpBottleContentsModel = NULL;
m34D8 = 1;
@ -445,21 +445,21 @@ BOOL daPy_lk_c::procBottleSwing_init(int param_0) {
if (bVar1) {
setSingleMoveAnime(
ANM_BINSWINGU,
daPy_HIO_bottle_c0::m.field_0x20,
daPy_HIO_bottle_c0::m.field_0x24,
daPy_HIO_bottle_c0::m.field_0x2,
daPy_HIO_bottle_c0::m.field_0x2C
m_HIO->mItem.mBottle.m.field_0x20,
m_HIO->mItem.mBottle.m.field_0x24,
m_HIO->mItem.mBottle.m.field_0x2,
m_HIO->mItem.mBottle.m.field_0x2C
);
m35A0 = daPy_HIO_bottle_c0::m.field_0x28;
m35A0 = m_HIO->mItem.mBottle.m.field_0x28;
} else {
setSingleMoveAnime(
ANM_BINSWINGS,
daPy_HIO_bottle_c0::m.field_0x10,
daPy_HIO_bottle_c0::m.field_0x14,
daPy_HIO_bottle_c0::m.field_0x0,
daPy_HIO_bottle_c0::m.field_0x1C
m_HIO->mItem.mBottle.m.field_0x10,
m_HIO->mItem.mBottle.m.field_0x14,
m_HIO->mItem.mBottle.m.field_0x0,
m_HIO->mItem.mBottle.m.field_0x1C
);
m35A0 = daPy_HIO_bottle_c0::m.field_0x18;
m35A0 = m_HIO->mItem.mBottle.m.field_0x18;
}
mProcVar0.m3570 = 0;
m3574 = 0;
@ -508,7 +508,7 @@ BOOL daPy_lk_c::procBottleSwing() {
if (m34D4 == 0) {
offModeFlg(ModeFlg_00000400);
onModeFlg(ModeFlg_00000100);
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
m34D4 = 1;
}
if (checkEndMessage(0x14a2)) {
@ -540,10 +540,10 @@ BOOL daPy_lk_c::procBottleGet_init() {
commonProcInit(daPyProc_BOTTLE_GET_e);
setSingleMoveAnime(
ANM_BINGET,
daPy_HIO_bottle_c0::m.field_0x30,
daPy_HIO_bottle_c0::m.field_0x34,
daPy_HIO_bottle_c0::m.field_0x4,
daPy_HIO_bottle_c0::m.field_0x38
m_HIO->mItem.mBottle.m.field_0x30,
m_HIO->mItem.mBottle.m.field_0x34,
m_HIO->mItem.mBottle.m.field_0x4,
m_HIO->mItem.mBottle.m.field_0x38
);
dComIfGp_setPlayerStatus1(0, daPyStts1_UNK1000_e);
m3628 = fpcM_ERROR_PROCESS_ID_e;

View File

@ -95,12 +95,12 @@ void daPy_lk_c::setBowReadyAnime() {
LKANM_BCK_ARROWSHOOT,
UPPER_MOVE2_e,
1.0f,
daPy_HIO_bow_c0::m.field_0x0 - 0.001f,
daPy_HIO_bow_c0::m.field_0x0,
m_HIO->mItem.mBow.m.field_0x0 - 0.001f,
m_HIO->mItem.mBow.m.field_0x0,
10.0f
);
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_ARROWSHOOTA));
m35EC = daPy_HIO_bow_c0::m.field_0x0 - 0.001f;
m35EC = m_HIO->mItem.mBow.m.field_0x0 - 0.001f;
setPriTextureAnime(0x70, 0);
m355E = 10;
seStartOnlyReverb(JA_SE_LK_ITEM_TAKEOUT);
@ -111,10 +111,10 @@ void daPy_lk_c::setBowReloadAnime() {
setActAnimeUpper(
LKANM_BCK_ARROWRELORD,
UPPER_MOVE2_e,
daPy_HIO_bow_c0::m.field_0x10,
daPy_HIO_bow_c0::m.field_0x14,
daPy_HIO_bow_c0::m.field_0x2,
daPy_HIO_bow_c0::m.field_0x18
m_HIO->mItem.mBow.m.field_0x10,
m_HIO->mItem.mBow.m.field_0x14,
m_HIO->mItem.mBow.m.field_0x2,
m_HIO->mItem.mBow.m.field_0x18
);
setPriTextureAnime(0x8d, 0);
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_ARROWRELORDA));
@ -130,10 +130,10 @@ BOOL daPy_lk_c::checkNextActionBowReady() {
setActAnimeUpper(
LKANM_BCK_ARROWSHOOT,
UPPER_MOVE2_e,
daPy_HIO_bow_c0::m.field_0x4,
daPy_HIO_bow_c0::m.field_0x8,
daPy_HIO_bow_c0::m.field_0x0,
daPy_HIO_bow_c0::m.field_0xC
m_HIO->mItem.mBow.m.field_0x4,
m_HIO->mItem.mBow.m.field_0x8,
m_HIO->mItem.mBow.m.field_0x0,
m_HIO->mItem.mBow.m.field_0xC
);
setPriTextureAnime(0x70, 0);
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_ARROWSHOOTA));
@ -244,7 +244,7 @@ BOOL daPy_lk_c::procBowSubject_init() {
if (!checkBowAnime()) {
setBowReadyAnime();
}
setSingleMoveAnime(ANM_ATNRS, 0.0f, 0.0f, -1, daPy_HIO_basic_c0::m.field_0xC);
setSingleMoveAnime(ANM_ATNRS, 0.0f, 0.0f, -1, m_HIO->mBasic.m.field_0xC);
mVelocity = 0.0f;
@ -285,7 +285,7 @@ BOOL daPy_lk_c::procBowMove_init() {
if (!checkBowAnime()) {
setBowReadyAnime();
}
setBlendAtnMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendAtnMoveAnime(m_HIO->mBasic.m.field_0xC);
dComIfGp_setPlayerStatus0(0, daPyStts0_BOW_AIM_e);
return true;
}
@ -305,7 +305,7 @@ BOOL daPy_lk_c::procBowMove() {
onModeFlg(ModeFlg_00000001);
if (mDirection != DIR_RIGHT) {
mDirection = DIR_RIGHT;
fVar1 = daPy_HIO_basic_c0::m.field_0xC;
fVar1 = m_HIO->mBasic.m.field_0xC;
}
current.angle.y = shape_angle.y + -0x4000;
} else {

View File

@ -16,7 +16,7 @@
/* 80135B50-80135B74 .text getClimbMoveAnmSpeed__9daPy_lk_cFv */
f32 daPy_lk_c::getClimbMoveAnmSpeed() {
return getAnmSpeedStickRate(daPy_HIO_ladder_c0::m.field_0x34, daPy_HIO_ladder_c0::m.field_0x30);
return getAnmSpeedStickRate(m_HIO->mLadder.m.field_0x34, m_HIO->mLadder.m.field_0x30);
}
/* 80135B74-80135DA0 .text setClimbShapeOffset__9daPy_lk_cFv */
@ -100,7 +100,7 @@ BOOL daPy_lk_c::setMoveBGCorrectClimb() {
dComIfG_Bgsp()->MoveBgTransPos(mPolyInfo, true, &current.pos, &current.angle, &shape_angle);
}
if (checkNoResetFlg1(daPyFlg1_VINE_CATCH)) {
return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
return procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
}
if (mCurProc == daPyProc_CLIMB_DOWN_START_e && (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() > 0.01f)) {
@ -118,13 +118,13 @@ BOOL daPy_lk_c::setMoveBGCorrectClimb() {
((mCurProc == daPyProc_CLIMB_MOVE_UP_DOWN_e || mCurProc == daPyProc_CLIMB_MOVE_SIDE_e) &&
current.pos.y - 15.0f < mAcch.GetGroundH()))
{
return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
return procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
}
cM3dGPla* triPla = dComIfG_Bgsp()->GetTriPla(mLinkLinChk);
s16 uVar6 = cM_atan2s(triPla->GetNP()->x, triPla->GetNP()->z);
if (cLib_distanceAngleS(uVar6, shape_angle.y) <= 0x549f) {
return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
return procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
}
current.pos.x = mLinkLinChk.GetCrossP()->x + 20.5f * cM_ssin(uVar6);
@ -197,9 +197,9 @@ void daPy_lk_c::checkBgClimbMove() {
current.pos.x = local_5c.x - (dVar4 * dVar7);
current.pos.y = dVar3;
current.pos.z = local_5c.z - (dVar4 * dVar6);
procHangClimb_init(daPy_HIO_wallCatch_c0::m.field_0x2C);
procHangClimb_init(m_HIO->mWallCatch.m.field_0x2C);
} else {
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
}
} else {
setClimbShapeOffset();
@ -208,7 +208,7 @@ void daPy_lk_c::checkBgClimbMove() {
/* 80136588-801365F4 .text procClimbUpStart_init_sub__9daPy_lk_cFv */
void daPy_lk_c::procClimbUpStart_init_sub() {
setSingleMoveAnime(ANM_LADDERUPST, daPy_HIO_ladder_c0::m.field_0x4, 0.0f, -1, daPy_HIO_ladder_c0::m.field_0x8);
setSingleMoveAnime(ANM_LADDERUPST, m_HIO->mLadder.m.field_0x4, 0.0f, -1, m_HIO->mLadder.m.field_0x8);
mProcVar0.m3570 = 1;
m34C2 = 4;
dComIfGp_setPlayerStatus1(0, daPyStts1_UNK10000_e);
@ -227,7 +227,7 @@ BOOL daPy_lk_c::procClimbUpStart_init() {
}
procClimbUpStart_init_sub();
} else {
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
setAnimeUnequip();
mProcVar0.m3570 = 0;
m3598 = 0.0f;
@ -263,7 +263,7 @@ BOOL daPy_lk_c::procClimbUpStart() {
}
if (doTrigger()) {
m34C2 = 0;
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
} else {
changeClimbMoveProc(1);
}
@ -283,7 +283,7 @@ BOOL daPy_lk_c::procClimbDownStart_init(s16 param_0) {
mVelocity = 0.0f;
speedF = 0.0f;
deleteEquipItem(TRUE);
setSingleMoveAnime(ANM_LADDERDWST, daPy_HIO_ladder_c0::m.field_0x14, 30.0f, -1, 3.0f);
setSingleMoveAnime(ANM_LADDERDWST, m_HIO->mLadder.m.field_0x14, 30.0f, -1, 3.0f);
dComIfGp_setPlayerStatus1(0, daPyStts1_UNK10000_e);
setOldRootQuaternion(0, -0x8000, 0);
shape_angle.y = param_0 + 0x8000;
@ -308,7 +308,7 @@ BOOL daPy_lk_c::procClimbDownStart() {
dComIfGp_setDoStatus(dActStts_LET_GO_e);
if (doTrigger()) {
m34C2 = 0;
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
} else {
changeClimbMoveProc(1);
}
@ -345,7 +345,7 @@ BOOL daPy_lk_c::procClimbMoveUpDown_init(int param_0) {
dVar2 = ANM_LADDERLTOR;
}
}
setSingleMoveAnime(dVar2, dVar3, 0.0f, -1, daPy_HIO_ladder_c0::m.field_0x2C);
setSingleMoveAnime(dVar2, dVar3, 0.0f, -1, m_HIO->mLadder.m.field_0x2C);
if (mDirection == DIR_FORWARD) {
setTextureAnime(10, 0);
} else {
@ -371,7 +371,7 @@ BOOL daPy_lk_c::procClimbMoveUpDown() {
dComIfGp_setDoStatus(dActStts_LET_GO_e);
if (doTrigger()) {
m34C2 = 0;
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
} else if (std::fabsf(mFrameCtrlUnder[UNDER_MOVE0_e].getRate()) < 0.01f) {
if (m34D0 != 0) {
m34D0 = 0;
@ -414,9 +414,9 @@ BOOL daPy_lk_c::procClimbMoveSide_init(int param_0) {
setSingleMoveAnime(
dVar2,
dVar4,
daPy_HIO_ladder_c0::m.field_0x38,
daPy_HIO_ladder_c0::m.field_0x0,
daPy_HIO_ladder_c0::m.field_0x3C
m_HIO->mLadder.m.field_0x38,
m_HIO->mLadder.m.field_0x0,
m_HIO->mLadder.m.field_0x3C
);
gravity = 0.0f;
speed.y = 0.0f;
@ -440,7 +440,7 @@ BOOL daPy_lk_c::procClimbMoveSide() {
dComIfGp_setDoStatus(dActStts_LET_GO_e);
if (doTrigger()) {
m34C2 = 0;
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
} else if (std::fabsf(mFrameCtrlUnder[UNDER_MOVE0_e].getRate()) < 0.01f) {
if (m34D0 != 0) {
m34D0 = 0;
@ -456,7 +456,7 @@ BOOL daPy_lk_c::procClimbMoveSide() {
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(dVar5);
cXyz local_28 = mRightHandPos - mLeftHandPos;
dVar5 = local_28.absXZ();
f32 fVar1 = std::fabsf(dVar5 - m35A0) * daPy_HIO_ladder_c0::m.field_0x40;
f32 fVar1 = std::fabsf(dVar5 - m35A0) * m_HIO->mLadder.m.field_0x40;
f32 fVar2 = fVar1 * cM_ssin(m34D4);
current.pos.y += fVar1 * cM_scos(m34D4);
current.pos.x += fVar2 * cM_scos(shape_angle.y);

View File

@ -22,7 +22,7 @@ f32 daPy_lk_c::getCrawlMoveAnmSpeed() {
if (mProcVar0.m3570 != 0) {
return getAnmSpeedStickRate(0.5f, 2.0f);
}
return getAnmSpeedStickRate(daPy_HIO_crouch_c0::m.field_0x34, daPy_HIO_crouch_c0::m.field_0x30);
return getAnmSpeedStickRate(m_HIO->mCrouch.m.field_0x34, m_HIO->mCrouch.m.field_0x30);
}
/* 801387EC-80138868 .text getCrawlMoveSpeed__9daPy_lk_cFv */
@ -31,7 +31,7 @@ f32 daPy_lk_c::getCrawlMoveSpeed() {
if (fVar1 >= 17.0f) {
fVar1 = fVar1 - 17.0f;
}
return (daPy_HIO_crouch_c0::m.field_0x3C * mFrameCtrlUnder[UNDER_MOVE0_e].getRate()) * cM_fsin((M_PI / 17) * fVar1);
return (m_HIO->mCrouch.m.field_0x3C * mFrameCtrlUnder[UNDER_MOVE0_e].getRate()) * cM_fsin((M_PI / 17) * fVar1);
}
/* 80138868-801389D0 .text setCrawlMoveDirectionArrow__9daPy_lk_cFv */
@ -270,14 +270,14 @@ BOOL daPy_lk_c::procCrawlStart_init() {
m34C2 = 1;
setSingleMoveAnime(
ANM_LIE,
daPy_HIO_crouch_c0::m.field_0x20,
daPy_HIO_crouch_c0::m.field_0x24,
daPy_HIO_crouch_c0::m.field_0x6,
daPy_HIO_crouch_c0::m.field_0x2C
m_HIO->mCrouch.m.field_0x20,
m_HIO->mCrouch.m.field_0x24,
m_HIO->mCrouch.m.field_0x6,
m_HIO->mCrouch.m.field_0x2C
);
mVelocity = 0.0f;
current.angle.y = shape_angle.y;
m35A0 = 1.0f / (daPy_HIO_crouch_c0::m.field_0x28 - daPy_HIO_crouch_c0::m.field_0x24);
m35A0 = 1.0f / (m_HIO->mCrouch.m.field_0x28 - m_HIO->mCrouch.m.field_0x24);
m35E4 = 0.0f;
dComIfGp_setPlayerStatus0(0, daPyStts0_CRAWL_e);
return true;
@ -286,7 +286,7 @@ BOOL daPy_lk_c::procCrawlStart_init() {
/* 801394F0-80139640 .text procCrawlStart__9daPy_lk_cFv */
BOOL daPy_lk_c::procCrawlStart() {
setDoStatusCrawl();
m35E4 = 1.0f - m35A0 * ((daPy_HIO_crouch_c0::m.field_0x28) - mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());
m35E4 = 1.0f - m35A0 * ((m_HIO->mCrouch.m.field_0x28) - mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());
cXyz local_20(l_crawl_front_offset.x, l_crawl_front_offset.y, l_crawl_front_offset.z * m35E4);
cXyz afStack_2c;
cXyz cStack_38;
@ -298,7 +298,7 @@ BOOL daPy_lk_c::procCrawlStart() {
procCrawlEnd_init(0, shape_angle.x, shape_angle.z);
} else if (mStickDistance > 0.05f &&
((mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) ||
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_crouch_c0::m.field_0x28)))
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mCrouch.m.field_0x28)))
{
procCrawlMove_init(shape_angle.x, shape_angle.z);
} else {
@ -347,7 +347,7 @@ BOOL daPy_lk_c::procCrawlMove_init(s16 param_0, s16 param_1) {
dVar4 *= -1.0f;
}
current.angle.y = shape_angle.y;
setSingleMoveAnime(ANM_LIEFORWARD, dVar4, 0.0f, -1, daPy_HIO_crouch_c0::m.field_0x38);
setSingleMoveAnime(ANM_LIEFORWARD, dVar4, 0.0f, -1, m_HIO->mCrouch.m.field_0x38);
} else {
onResetFlg0(daPyRFlg0_UNK1000);
}
@ -490,9 +490,9 @@ BOOL daPy_lk_c::procCrawlMove() {
cLib_addCalcAngleS(
&shape_angle.y,
m34E8,
daPy_HIO_crouch_c0::m.field_0x8,
daPy_HIO_crouch_c0::m.field_0xA,
daPy_HIO_crouch_c0::m.field_0xC
m_HIO->mCrouch.m.field_0x8,
m_HIO->mCrouch.m.field_0xA,
m_HIO->mCrouch.m.field_0xC
);
if (shape_angle.y != r24) {
@ -686,22 +686,22 @@ BOOL daPy_lk_c::procCrawlEnd_init(int param_1, s16 param_2, s16 param_3) {
current.angle.y = shape_angle.y;
m34C2 = 1;
if (param_1 != 0) {
fVar1 = daPy_HIO_crouch_c0::m.field_0x4C;
fVar1 = m_HIO->mCrouch.m.field_0x4C;
} else {
fVar1 = -1.0f;
}
setSingleMoveAnime(
ANM_LIE,
daPy_HIO_crouch_c0::m.field_0x40,
daPy_HIO_crouch_c0::m.field_0x44,
daPy_HIO_crouch_c0::m.field_0xE,
m_HIO->mCrouch.m.field_0x40,
m_HIO->mCrouch.m.field_0x44,
m_HIO->mCrouch.m.field_0xE,
fVar1
);
if (param_1 == 0) {
if (daPy_HIO_crouch_c0::m.field_0x44 > dVar4) {
dVar4 = daPy_HIO_crouch_c0::m.field_0x44;
} else if (daPy_HIO_crouch_c0::m.field_0xE <= dVar4) {
dVar4 = daPy_HIO_crouch_c0::m.field_0xE - 0.001f;
if (m_HIO->mCrouch.m.field_0x44 > dVar4) {
dVar4 = m_HIO->mCrouch.m.field_0x44;
} else if (m_HIO->mCrouch.m.field_0xE <= dVar4) {
dVar4 = m_HIO->mCrouch.m.field_0xE - 0.001f;
}
mFrameCtrlUnder[UNDER_MOVE0_e].setFrame(dVar4);
mAnmRatioUnder[UNDER_MOVE0_e].getAnmTransform()->setFrame(dVar4);
@ -714,16 +714,16 @@ BOOL daPy_lk_c::procCrawlEnd_init(int param_1, s16 param_2, s16 param_3) {
mVelocity = 0.0f;
shape_angle.x = param_2;
shape_angle.z = param_3;
m35A0 = 1.0f / (daPy_HIO_crouch_c0::m.field_0xE - daPy_HIO_crouch_c0::m.field_0x48);
m35A0 = 1.0f / (m_HIO->mCrouch.m.field_0xE - m_HIO->mCrouch.m.field_0x48);
return true;
}
/* 8013A7C4-8013A85C .text procCrawlEnd__9daPy_lk_cFv */
BOOL daPy_lk_c::procCrawlEnd() {
m35E4 = m35A0 * (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() - daPy_HIO_crouch_c0::m.field_0x48);
m35E4 = m35A0 * (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() - m_HIO->mCrouch.m.field_0x48);
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() > -0.01f) {
checkNextMode(0);
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < daPy_HIO_crouch_c0::m.field_0x48) {
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < m_HIO->mCrouch.m.field_0x48) {
if (!checkNextMode(1)) {
m34C2 = 1;
}

View File

@ -99,9 +99,9 @@ void daPy_lk_c::setShapeAngleToTalkActor() {
cLib_addCalcAngleS(
&shape_angle.y,
target,
daPy_HIO_turn_c0::m.field_0x6,
daPy_HIO_turn_c0::m.field_0x8,
daPy_HIO_turn_c0::m.field_0xA
m_HIO->mTurn.m.field_0x6,
m_HIO->mTurn.m.field_0x8,
m_HIO->mTurn.m.field_0xA
);
}
}
@ -142,7 +142,7 @@ int daPy_lk_c::setTalkStartBack() {
if (dComIfG_Bgsp()->GroundCross(&mGndChk) - current.pos.y >= -30.1f) {
current.angle.y = cM_atan2s(sp24.x, sp24.z);
mVelocity = 5.0f;
setSingleMoveAnime(ANM_WALK, -daPy_HIO_move_c0::m.field_0x44, 0.0f, -1, daPy_HIO_turn_c0::m.field_0x18);
setSingleMoveAnime(ANM_WALK, -m_HIO->mMove.m.field_0x44, 0.0f, -1, m_HIO->mTurn.m.field_0x18);
return 1;
}
}
@ -357,9 +357,9 @@ BOOL daPy_lk_c::dProcTalk_init() {
if (mProcVar0.m3570 == 0) {
mVelocity = 0.0f;
if (mDemo.getDemoMode() == 8) {
setSingleMoveAnime(ANM_WAITS, daPy_HIO_move_c0::m.field_0x38, 0.0f, -1, daPy_HIO_turn_c0::m.field_0x18);
setSingleMoveAnime(ANM_WAITS, m_HIO->mMove.m.field_0x38, 0.0f, -1, m_HIO->mTurn.m.field_0x18);
} else {
setSingleMoveAnime(ANM_TALKA, daPy_HIO_turn_c0::m.field_0x14, 0.0f, -1, daPy_HIO_turn_c0::m.field_0x18);
setSingleMoveAnime(ANM_TALKA, m_HIO->mTurn.m.field_0x14, 0.0f, -1, m_HIO->mTurn.m.field_0x18);
}
m3574 = mDemo.getParam1();
if (m3574 == 1) {
@ -401,9 +401,9 @@ BOOL daPy_lk_c::dProcTalk() {
current.pos.z = m370C.z;
mProcVar0.m3570 = 0;
if (mDemo.getDemoMode() == 8) {
setSingleMoveAnime(ANM_WAITS, daPy_HIO_move_c0::m.field_0x38, 0.0f, -1, daPy_HIO_turn_c0::m.field_0x18);
setSingleMoveAnime(ANM_WAITS, m_HIO->mMove.m.field_0x38, 0.0f, -1, m_HIO->mTurn.m.field_0x18);
} else {
setSingleMoveAnime(ANM_TALKA, daPy_HIO_turn_c0::m.field_0x14, 0.0f, -1, daPy_HIO_turn_c0::m.field_0x18);
setSingleMoveAnime(ANM_TALKA, m_HIO->mTurn.m.field_0x14, 0.0f, -1, m_HIO->mTurn.m.field_0x18);
}
if (m3574 == 1) {
setTextureAnime(145, 0);
@ -435,13 +435,13 @@ BOOL daPy_lk_c::dProcDamage_init() {
commonProcInit(daPyProc_DEMO_DAMAGE_e);
setSingleMoveAnime(
ANM_DAMF,
daPy_HIO_damage_c0::m.field_0x14,
daPy_HIO_damage_c0::m.field_0x18,
daPy_HIO_damage_c0::m.field_0x0,
daPy_HIO_damage_c0::m.field_0x8
m_HIO->mDam.mDamage.m.field_0x14,
m_HIO->mDam.mDamage.m.field_0x18,
m_HIO->mDam.mDamage.m.field_0x0,
m_HIO->mDam.mDamage.m.field_0x8
);
mVelocity = 0.0f;
m35A0 = M_PI / (daPy_HIO_damage_c0::m.field_0x0 - daPy_HIO_damage_c0::m.field_0x18);
m35A0 = M_PI / (m_HIO->mDam.mDamage.m.field_0x0 - m_HIO->mDam.mDamage.m.field_0x18);
return true;
}
@ -471,25 +471,25 @@ BOOL daPy_lk_c::dProcHoldup_init() {
if (uVar1) {
if (checkNoResetFlg0(daPyFlg0_UNK10000)) {
dVar3 = ANM_WALLHOLDUPDW;
dVar6 = daPy_HIO_holdup_c0::m.field_0x30;
dVar5 = daPy_HIO_holdup_c0::m.field_0x34;
sVar2 = daPy_HIO_holdup_c0::m.field_0x6;
dVar4 = daPy_HIO_holdup_c0::m.field_0x38;
dVar6 = m_HIO->mHoldup.m.field_0x30;
dVar5 = m_HIO->mHoldup.m.field_0x34;
sVar2 = m_HIO->mHoldup.m.field_0x6;
dVar4 = m_HIO->mHoldup.m.field_0x38;
} else {
dVar3 = ANM_WALLHOLDUP;
dVar6 = daPy_HIO_holdup_c0::m.field_0x24;
dVar5 = daPy_HIO_holdup_c0::m.field_0x28;
sVar2 = daPy_HIO_holdup_c0::m.field_0x4;
dVar4 = daPy_HIO_holdup_c0::m.field_0x2C;
dVar6 = m_HIO->mHoldup.m.field_0x24;
dVar5 = m_HIO->mHoldup.m.field_0x28;
sVar2 = m_HIO->mHoldup.m.field_0x4;
dVar4 = m_HIO->mHoldup.m.field_0x2C;
}
onModeFlg(ModeFlg_WHIDE);
setBgCheckParam();
} else {
dVar3 = ANM_HOLDUP;
dVar6 = daPy_HIO_holdup_c0::m.field_0x18;
dVar5 = daPy_HIO_holdup_c0::m.field_0x1C;
sVar2 = daPy_HIO_holdup_c0::m.field_0x2;
dVar4 = daPy_HIO_holdup_c0::m.field_0x20;
dVar6 = m_HIO->mHoldup.m.field_0x18;
dVar5 = m_HIO->mHoldup.m.field_0x1C;
sVar2 = m_HIO->mHoldup.m.field_0x2;
dVar4 = m_HIO->mHoldup.m.field_0x20;
}
setSingleMoveAnime(dVar3, dVar6, dVar5, sVar2, dVar4);
mVelocity = 0.0f;
@ -676,7 +676,7 @@ BOOL daPy_lk_c::dProcGetItem_init() {
mProcVar0.m3570 = 0;
onModeFlg(ModeFlg_00000400);
} else {
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
setAnimeUnequip();
m3598 = 0.0f;
mProcVar0.m3570 = 1;
@ -777,7 +777,7 @@ BOOL daPy_lk_c::dProcGetItem() {
dComIfGp_evmng_cutEnd(mStaffIdx);
item->dead();
m3574 = 1;
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
}
}
} else if (item != NULL && (fopAcM_GetName(item) == PROC_ITEM || (fopAcM_GetName(item) == PROC_Demo_Item))) {
@ -794,7 +794,7 @@ BOOL daPy_lk_c::dProcUnequip_init() {
}
commonProcInit(daPyProc_DEMO_UNEQUIP_e);
mVelocity = 0.0f;
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
if (mEquipItem != daPyItem_NONE_e) {
setAnimeUnequip();
m3598 = 0.0f;
@ -812,11 +812,11 @@ BOOL daPy_lk_c::dProcUnequip() {
/* 8012ED74-8012EE0C .text dProcLavaDamage_init_sub__9daPy_lk_cFv */
void daPy_lk_c::dProcLavaDamage_init_sub() {
speed.y = daPy_HIO_restart_c0::m.field_0x8;
speed.y = m_HIO->mRestart.m.field_0x8;
mProcVar0.m3570 = 0;
voiceStart(4);
seStartMapInfo(JA_SE_LK_FALL_MAGMA);
gravity = daPy_HIO_autoJump_c0::m.field_0xC;
gravity = m_HIO->mAutoJump.m.field_0xC;
mDemo.setDemoType(5);
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK10000000_e);
daPy_py_c::changePlayer(this);
@ -829,7 +829,7 @@ BOOL daPy_lk_c::dProcLavaDamage_init() {
}
commonProcInit(daPyProc_DEMO_LAVA_DAMAGE_e);
mVelocity = 0.0f;
setSingleMoveAnime(ANM_LAVADAM, daPy_HIO_restart_c0::m.field_0x0, 0.0f, -1, daPy_HIO_restart_c0::m.field_0x4);
setSingleMoveAnime(ANM_LAVADAM, m_HIO->mRestart.m.field_0x0, 0.0f, -1, m_HIO->mRestart.m.field_0x4);
m32E4.makeEmitter(dPa_name::ID_SCENE_8078, mpCLModel->getAnmMtx(0), &current.pos, NULL);
if (dComIfGp_event_compulsory(this)) {
dProcLavaDamage_init_sub();
@ -931,7 +931,7 @@ void daPy_lk_c::dProcDead_init_sub() {
void daPy_lk_c::dProcDead_init_sub2() {
static const Vec ripple_scale = {0.75f, 0.75f, 0.75f};
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(daPy_HIO_restart_c0::m.field_0xC);
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(m_HIO->mRestart.m.field_0xC);
voiceStart(22);
mDoAud_bgmStop(0);
mDoAud_bgmStart(JA_BGM_DIE_LINK);
@ -975,7 +975,7 @@ BOOL daPy_lk_c::dProcDead_init() {
commonProcInit(daPyProc_DEMO_DEAD_e);
if (dComIfGp_event_compulsory(this)) {
dProcDead_init_sub();
dVar8 = daPy_HIO_restart_c0::m.field_0xC;
dVar8 = m_HIO->mRestart.m.field_0xC;
} else {
dVar8 = 0.0f;
mProcVar0.m3570 = 1;
@ -1001,7 +1001,7 @@ BOOL daPy_lk_c::dProcDead_init() {
onModeFlg(ModeFlg_02000000);
}
setSingleMoveAnime(dVar6, dVar8, daPy_HIO_restart_c0::m.field_0x10, -1, daPy_HIO_restart_c0::m.field_0x14);
setSingleMoveAnime(dVar6, dVar8, m_HIO->mRestart.m.field_0x10, -1, m_HIO->mRestart.m.field_0x14);
mDamageWaitTimer = 0;
m35E4 = 0.0f;
m35A0 = 1.0f;
@ -1121,10 +1121,10 @@ BOOL daPy_lk_c::dProcLookAround_init() {
commonProcInit(daPyProc_DEMO_LOOK_AROUND_e);
setSingleMoveAnime(
ANM_COMEOUT,
daPy_HIO_holdup_c0::m.field_0xC,
daPy_HIO_holdup_c0::m.field_0x10,
daPy_HIO_holdup_c0::m.field_0x0,
daPy_HIO_holdup_c0::m.field_0x14
m_HIO->mHoldup.m.field_0xC,
m_HIO->mHoldup.m.field_0x10,
m_HIO->mHoldup.m.field_0x0,
m_HIO->mHoldup.m.field_0x14
);
mVelocity = 0.0f;
return true;
@ -1188,10 +1188,10 @@ BOOL daPy_lk_c::dProcTalismanPickup_init() {
commonProcInit(daPyProc_DEMO_TALISMAN_PICKUP_e);
setSingleMoveAnime(
ANM_PICKUP,
daPy_HIO_holdup_c0::m.field_0x3C,
daPy_HIO_holdup_c0::m.field_0x40,
daPy_HIO_holdup_c0::m.field_0x8,
daPy_HIO_holdup_c0::m.field_0x44
m_HIO->mHoldup.m.field_0x3C,
m_HIO->mHoldup.m.field_0x40,
m_HIO->mHoldup.m.field_0x8,
m_HIO->mHoldup.m.field_0x44
);
mVelocity = 0.0f;
initShipRideUseItem(iVar2, 1);
@ -1220,7 +1220,7 @@ BOOL daPy_lk_c::dProcTalismanWait_init() {
}
int iVar2 = checkShipRideUseItem(1);
commonProcInit(daPyProc_DEMO_TALISMAN_WAIT_e);
setSingleMoveAnime(ANM_WAITPICKUP, 1.0f, 0.0f, -1, daPy_HIO_holdup_c0::m.field_0x48);
setSingleMoveAnime(ANM_WAITPICKUP, 1.0f, 0.0f, -1, m_HIO->mHoldup.m.field_0x48);
mVelocity = 0.0f;
setTalismanModel();
m32E4.makeEmitter(dPa_name::ID_COMMON_03E9, mpEquipItemModel->getBaseTRMtx(), &current.pos, NULL);
@ -1312,16 +1312,16 @@ BOOL daPy_lk_c::dProcTurnBack_init() {
commonProcInit(daPyProc_DEMO_TURN_BACK_e);
mVelocity = 0.0f;
if (mActorKeepGrab.getActor() != NULL) {
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
m_pbCalc[PART_UPPER_e]->setRatio(2, 1.0f);
mProcVar0.m3570 = 1;
} else {
setSingleMoveAnime(
ANM_TURNBACK,
daPy_HIO_holdup_c0::m.field_0x4C,
daPy_HIO_holdup_c0::m.field_0x50,
daPy_HIO_holdup_c0::m.field_0xA,
daPy_HIO_holdup_c0::m.field_0x54
m_HIO->mHoldup.m.field_0x4C,
m_HIO->mHoldup.m.field_0x50,
m_HIO->mHoldup.m.field_0xA,
m_HIO->mHoldup.m.field_0x54
);
mProcVar0.m3570 = 0;
}
@ -1427,7 +1427,7 @@ BOOL daPy_lk_c::dProcLookWait_init() {
}
commonProcInit(daPyProc_DEMO_LOOK_WAIT_e);
mVelocity = 0.0f;
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
current.angle.y = shape_angle.y;
mDirection = DIR_NONE;
initShipRideUseItem(iVar1, 0);
@ -1464,7 +1464,7 @@ BOOL daPy_lk_c::dProcPushPullWait_init() {
}
commonProcInit(daPyProc_DEMO_PUSH_PULL_WAIT_e);
setSingleMoveAnime(
ANM_WAITPUSHPULL, daPy_HIO_pushpull_c0::m.field_0x0, 0.0f, -1, daPy_HIO_pushpull_c0::m.field_0x4
ANM_WAITPUSHPULL, m_HIO->mPushpull.m.field_0x0, 0.0f, -1, m_HIO->mPushpull.m.field_0x4
);
mVelocity = 0.0f;
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK4000000_e);
@ -1483,7 +1483,7 @@ BOOL daPy_lk_c::dProcPushMove_init() {
return false;
}
commonProcInit(daPyProc_DEMO_PUSH_MOVE_e);
setSingleMoveAnime(ANM_WALKPUSH, daPy_HIO_pushpull_c0::m.field_0x8, 0.0f, -1, daPy_HIO_pushpull_c0::m.field_0xC);
setSingleMoveAnime(ANM_WALKPUSH, m_HIO->mPushpull.m.field_0x8, 0.0f, -1, m_HIO->mPushpull.m.field_0xC);
mVelocity = 0.0f;
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK4000000_e);
voiceStart(19);
@ -1531,7 +1531,7 @@ BOOL daPy_lk_c::dProcDoorOpen() {
mAcch.ClrWallNone();
mAcch.OffLineCheckNone();
dComIfGp_evmng_cutEnd(mStaffIdx);
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
mProcVar0.m3570 = 1;
m3598 = 0.0f;
} else {
@ -1555,10 +1555,10 @@ BOOL daPy_lk_c::dProcNod_init() {
mVelocity = 0.0f;
setSingleMoveAnime(
ANM_SEYYES,
daPy_HIO_turn_c0::m.field_0x1C,
daPy_HIO_turn_c0::m.field_0x20,
daPy_HIO_turn_c0::m.field_0xC,
daPy_HIO_turn_c0::m.field_0x24
m_HIO->mTurn.m.field_0x1C,
m_HIO->mTurn.m.field_0x20,
m_HIO->mTurn.m.field_0xC,
m_HIO->mTurn.m.field_0x24
);
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK10_e);
return true;
@ -1578,10 +1578,10 @@ BOOL daPy_lk_c::dProcNod() {
void daPy_lk_c::dProcPresent_init_sub() {
setSingleMoveAnime(
ANM_PRESENTATIONA,
daPy_HIO_turn_c0::m.field_0x28,
daPy_HIO_turn_c0::m.field_0x2C,
daPy_HIO_turn_c0::m.field_0xE,
daPy_HIO_turn_c0::m.field_0x30
m_HIO->mTurn.m.field_0x28,
m_HIO->mTurn.m.field_0x2C,
m_HIO->mTurn.m.field_0xE,
m_HIO->mTurn.m.field_0x30
);
onModeFlg(ModeFlg_00000400);
if (!checkBottleItem(dComIfGp_event_getPreItemNo())) {
@ -1637,7 +1637,7 @@ BOOL daPy_lk_c::dProcPresent() {
setSingleMoveAnime(ANM_PRESENTATIONAWAIT, 1.0f, 0.0f, -1, 3.0f);
onModeFlg(ModeFlg_00000080 | ModeFlg_00000100);
offModeFlg(ModeFlg_00000400);
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].checkPass(daPy_HIO_turn_c0::m.field_0xE - 10.0f)) {
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].checkPass(m_HIO->mTurn.m.field_0xE - 10.0f)) {
if (checkBottleItem(dComIfGp_event_getPreItemNo())) {
if (mEquipItem == daPyItem_NONE_e) {
setBottleModel(dComIfGp_event_getPreItemNo());
@ -1715,7 +1715,7 @@ BOOL daPy_lk_c::dProcStandItemPut_init() {
angle = fopAcM_GetShapeAngle_p(this);
}
mProcVar0.m3570 = 1;
setSingleMoveAnime(ANM_GRABWAIT, daPy_HIO_grab_c0::m.field_0x78, 0.0f, -1, -1.0f);
setSingleMoveAnime(ANM_GRABWAIT, m_HIO->mGrab.m.field_0x78, 0.0f, -1, -1.0f);
pfVar2 = (fopAc_ac_c*)fopAcM_fastCreate(PROC_STANDITEM, dComIfGp_event_getPreItemNo(), &current.pos, -1, angle);
if (pfVar2 != NULL) {
mActorKeepGrab.setData(pfVar2);
@ -1730,10 +1730,10 @@ BOOL daPy_lk_c::dProcStandItemPut() {
if (m_old_fdata->getOldFrameRate() < 0.01f) {
setSingleMoveAnime(
ANM_GRABUP,
daPy_HIO_grab_c0::m.field_0x68,
daPy_HIO_grab_c0::m.field_0x6C,
daPy_HIO_grab_c0::m.field_0xC,
daPy_HIO_grab_c0::m.field_0x74
m_HIO->mGrab.m.field_0x68,
m_HIO->mGrab.m.field_0x6C,
m_HIO->mGrab.m.field_0xC,
m_HIO->mGrab.m.field_0x74
);
mProcVar0.m3570 = 2;
voiceStart(7);
@ -1758,7 +1758,7 @@ BOOL daPy_lk_c::dProcVorcanoFail_init() {
mVelocity = 0.0f;
speed.y = 18.0f;
gravity = 0.0f;
setSingleMoveAnime(ANM_LAVADAM, daPy_HIO_restart_c0::m.field_0x0, 0.0f, -1, daPy_HIO_restart_c0::m.field_0x4);
setSingleMoveAnime(ANM_LAVADAM, m_HIO->mRestart.m.field_0x0, 0.0f, -1, m_HIO->mRestart.m.field_0x4);
m32E4.makeEmitter(dPa_name::ID_SCENE_8078, mpCLModel->getAnmMtx(0), &current.pos, NULL);
return true;
}
@ -1900,7 +1900,7 @@ BOOL daPy_lk_c::dProcAgbUse_init() {
keepItemData();
setAnimeEquipItem();
mVelocity = 0.0f;
setSingleMoveAnime(ANM_USETCEIVER, 1.0f, 0.0f, -1, daPy_HIO_basic_c0::m.field_0xC);
setSingleMoveAnime(ANM_USETCEIVER, 1.0f, 0.0f, -1, m_HIO->mBasic.m.field_0xC);
seStartSystem(JA_SE_TALK_START);
initShipRideUseItem(iVar2, 2);
return true;
@ -2120,7 +2120,7 @@ BOOL daPy_lk_c::dProcGetDance() {
pJVar3->mTranslate.z *= -1.0f;
dComIfGp_evmng_cutEnd(mStaffIdx);
m3574 = 1;
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
}
return true;
}
@ -2136,9 +2136,9 @@ BOOL daPy_lk_c::dProcBottleOpenFairy_init() {
setSingleMoveAnime(
ANM_BINOPENPRE,
1.0f,
daPy_HIO_bottle_c0::m.field_0x3C,
daPy_HIO_bottle_c0::m.field_0x6,
daPy_HIO_bottle_c0::m.field_0x40
m_HIO->mItem.mBottle.m.field_0x3C,
m_HIO->mItem.mBottle.m.field_0x6,
m_HIO->mItem.mBottle.m.field_0x40
);
keepItemData();
setBottleModel(dItem_FAIRY_BOTTLE_e);
@ -2156,9 +2156,9 @@ BOOL daPy_lk_c::dProcBottleOpenFairy() {
setSingleMoveAnime(
ANM_BINOPENB,
1.0f,
daPy_HIO_bottle_c0::m.field_0x50,
daPy_HIO_bottle_c0::m.field_0xA,
daPy_HIO_bottle_c0::m.field_0x54
m_HIO->mItem.mBottle.m.field_0x50,
m_HIO->mItem.mBottle.m.field_0xA,
m_HIO->mItem.mBottle.m.field_0x54
);
} else if (frameCtrl.checkPass(32.0f)) {
m355E = 0;
@ -2168,7 +2168,7 @@ BOOL daPy_lk_c::dProcBottleOpenFairy() {
dComIfGp_evmng_cutEnd(mStaffIdx);
} else {
if (mpBottleContentsModel != NULL) {
if (frameCtrl.getFrame() >= daPy_HIO_bottle_c0::m.field_0x58) {
if (frameCtrl.getFrame() >= m_HIO->mItem.mBottle.m.field_0x58) {
mpBottleContentsModel = NULL;
if (dComIfGp_event_getTalkXYBtn() == dTalkBtn_X_e) {
dComIfGs_setEquipBottleItemEmpty(dItemBtn_X_e);
@ -2192,7 +2192,7 @@ BOOL daPy_lk_c::dProcWarpShort_init() {
commonProcInit(daPyProc_DEMO_WARP_SHORT_e);
setSingleMoveAnime(ANM_RISE, 1.0f, 0.0f, -1, 40.0f);
gravity = mVelocity = 0.0f;
speed.y = daPy_HIO_warp_c0::m.field_0x10;
speed.y = m_HIO->mWarp.m.field_0x10;
if (mEquipItem == daPyItem_BOKO_e) {
deleteEquipItem(FALSE);
}
@ -2201,9 +2201,9 @@ BOOL daPy_lk_c::dProcWarpShort_init() {
/* 801324D0-80132534 .text dProcWarpShort__9daPy_lk_cFv */
BOOL daPy_lk_c::dProcWarpShort() {
speed.y += daPy_HIO_warp_c0::m.field_0x14;
if (speed.y > daPy_HIO_warp_c0::m.field_0x18) {
speed.y = daPy_HIO_warp_c0::m.field_0x18;
speed.y += m_HIO->mWarp.m.field_0x14;
if (speed.y > m_HIO->mWarp.m.field_0x18) {
speed.y = m_HIO->mWarp.m.field_0x18;
}
dComIfGp_evmng_cutEnd(mStaffIdx);
return true;
@ -2330,7 +2330,7 @@ BOOL daPy_lk_c::dProcPowerUp() {
}
if (checkEndMessage(m3624)) {
dComIfGp_evmng_cutEnd(mStaffIdx);
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
m3574 = 1;
}
}

View File

@ -157,9 +157,9 @@ void daPy_lk_c::setParachuteFanModel(f32 f31) {
NULL,
bck,
J3DFrameCtrl::EMode_NONE,
daPy_HIO_fan_c0::m.field_0x20,
m_HIO->mItem.mFan.m.field_0x20,
f31,
daPy_HIO_fan_c0::m.field_0x4,
m_HIO->mItem.mFan.m.field_0x4,
0,
NULL,
0x00000000,
@ -183,16 +183,16 @@ BOOL daPy_lk_c::procFanSwing_init() {
commonProcInit(daPyProc_FAN_SWING_e);
setSingleMoveAnime(
ANM_USEFANA,
daPy_HIO_fan_c0::m.field_0xC,
daPy_HIO_fan_c0::m.field_0x10,
daPy_HIO_fan_c0::m.field_0x2,
daPy_HIO_fan_c0::m.field_0x14
m_HIO->mItem.mFan.m.field_0xC,
m_HIO->mItem.mFan.m.field_0x10,
m_HIO->mItem.mFan.m.field_0x2,
m_HIO->mItem.mFan.m.field_0x14
);
setFanModel();
mProcVar0.m3570 = 0;
voiceStart(7);
setAtParam(AT_TYPE_UNK2000000, 1, dCcG_At_Spl_UNK0, dCcG_SE_UNK4, dCcG_AtHitMark_Nrm_e, 0, 50.0f);
m35EC = daPy_HIO_fan_c0::m.field_0x10;
m35EC = m_HIO->mItem.mFan.m.field_0x10;
if (setShapeFanLeaf()) {
m34D0 = 1;
seStartOnlyReverb(JA_SE_LK_FAN_PRE_SWING);
@ -235,9 +235,9 @@ BOOL daPy_lk_c::procFanSwing() {
cLib_addCalc(
&mVelocity,
0.0f,
daPy_HIO_move_c0::m.field_0x24,
daPy_HIO_move_c0::m.field_0x1C,
daPy_HIO_move_c0::m.field_0x20
m_HIO->mMove.m.field_0x24,
m_HIO->mMove.m.field_0x1C,
m_HIO->mMove.m.field_0x20
);
} else if (mProcVar0.m3570 == 0) {
if (m34D0 != 0) {
@ -332,12 +332,12 @@ BOOL daPy_lk_c::procFanGlide_init(int param_0) {
commonProcInit(daPyProc_FAN_GLIDE_e);
deleteEquipItem(FALSE);
if (param_0 != 0) {
fVar1 = daPy_HIO_fan_c0::m.field_0x24;
fVar1 = m_HIO->mItem.mFan.m.field_0x24;
} else {
fVar1 = daPy_HIO_fan_c0::m.field_0x28;
fVar1 = m_HIO->mItem.mFan.m.field_0x28;
}
setSingleMoveAnime(
ANM_USEFANB, daPy_HIO_fan_c0::m.field_0x20, fVar1, daPy_HIO_fan_c0::m.field_0x4, daPy_HIO_fan_c0::m.field_0x2C
ANM_USEFANB, m_HIO->mItem.mFan.m.field_0x20, fVar1, m_HIO->mItem.mFan.m.field_0x4, m_HIO->mItem.mFan.m.field_0x2C
);
mEquipItem = daPyItem_UNK102_e;
setParachuteFanModel(fVar1);
@ -352,12 +352,12 @@ BOOL daPy_lk_c::procFanGlide_init(int param_0) {
m3730 = cXyz::Zero;
voiceStart(5);
seStartOnlyReverb(JA_SE_LK_FAN_CHUTE_OPEN);
m3574 = daPy_HIO_fan_c0::m.field_0x8;
m3574 = m_HIO->mItem.mFan.m.field_0x8;
if (!checkHeavyStateOn()) {
dComIfGp_setItemMagicCount(-1);
}
dComIfGp_setPlayerStatus1(0, daPyStts1_DEKU_LEAF_FLY_e);
m34D2 = daPy_HIO_fan_c0::m.field_0xA;
m34D2 = m_HIO->mItem.mFan.m.field_0xA;
return true;
}
@ -384,9 +384,9 @@ BOOL daPy_lk_c::procFanGlide() {
if (frameCtrl.getFrame() > 2.0f || mProcVar0.m3570 != 0) {
if (mAcch.ChkGroundHit()) {
if (checkHeavyStateOn()) {
return changeLandProc(daPy_HIO_fan_c0::m.field_0x50);
return changeLandProc(m_HIO->mItem.mFan.m.field_0x50);
} else {
return procLand_init(daPy_HIO_fan_c0::m.field_0x50, 1);
return procLand_init(m_HIO->mItem.mFan.m.field_0x50, 1);
}
} else if (checkJumpFlower() || checkJumpRideShip()) {
return true;
@ -403,12 +403,12 @@ BOOL daPy_lk_c::procFanGlide() {
if (m34D0 <= 0) {
if (!checkHeavyStateOn()) {
maxFallSpeed = daPy_HIO_fan_c0::m.field_0x38;
maxFallSpeed = m_HIO->mItem.mFan.m.field_0x38;
if (m34D0 == 0) {
speed.y = daPy_HIO_fan_c0::m.field_0x40;
mVelocity = daPy_HIO_fan_c0::m.field_0x48;
speed.y = m_HIO->mItem.mFan.m.field_0x40;
mVelocity = m_HIO->mItem.mFan.m.field_0x48;
} else {
speed.y = daPy_HIO_fan_c0::m.field_0x44;
speed.y = m_HIO->mItem.mFan.m.field_0x44;
}
}
m34D0 = 1;
@ -417,7 +417,7 @@ BOOL daPy_lk_c::procFanGlide() {
m3574--;
if (m3574 == 0 && dComIfGs_getMagic() >= 1) {
dComIfGp_setItemMagicCount(-1);
m3574 = daPy_HIO_fan_c0::m.field_0x8;
m3574 = m_HIO->mItem.mFan.m.field_0x8;
}
}
if (m34D2 == 0) {
@ -430,30 +430,30 @@ BOOL daPy_lk_c::procFanGlide() {
if (swordTrigger()) {
setAnimeEquipSword(0);
}
return procFall_init(2, daPy_HIO_wallCatch_c0::m.field_0x54);
return procFall_init(2, m_HIO->mWallCatch.m.field_0x54);
}
if (speed.y < -gravity && !checkHeavyStateOn()) {
gravity = daPy_HIO_fan_c0::m.field_0x3C;
maxFallSpeed = daPy_HIO_fan_c0::m.field_0x38;
gravity = m_HIO->mItem.mFan.m.field_0x3C;
maxFallSpeed = m_HIO->mItem.mFan.m.field_0x38;
}
if (checkSetItemTrigger(dItem_DEKU_LEAF_e, 1) && frameCtrl.getRate() < 0.01f && mProcVar0.m3570 == 0) {
setSingleMoveAnime(
ANM_USEFANB,
daPy_HIO_fan_c0::m.field_0x20,
daPy_HIO_fan_c0::m.field_0x28,
daPy_HIO_fan_c0::m.field_0x4,
daPy_HIO_fan_c0::m.field_0x2C
m_HIO->mItem.mFan.m.field_0x20,
m_HIO->mItem.mFan.m.field_0x28,
m_HIO->mItem.mFan.m.field_0x4,
m_HIO->mItem.mFan.m.field_0x2C
);
mpParachuteFanMorf->setAnm(
getItemAnimeResource(LKANM_BCK_FANBA),
0,
daPy_HIO_fan_c0::m.field_0x2C,
daPy_HIO_fan_c0::m.field_0x20,
daPy_HIO_fan_c0::m.field_0x28,
daPy_HIO_fan_c0::m.field_0x4,
m_HIO->mItem.mFan.m.field_0x2C,
m_HIO->mItem.mFan.m.field_0x20,
m_HIO->mItem.mFan.m.field_0x28,
m_HIO->mItem.mFan.m.field_0x4,
NULL
);
gravity = daPy_HIO_autoJump_c0::m.field_0xC;
gravity = m_HIO->mAutoJump.m.field_0xC;
voiceStart(5);
seStartOnlyReverb(JA_SE_LK_FAN_CHUTE_RISE);
m353A = 5;
@ -470,7 +470,7 @@ BOOL daPy_lk_c::procFanGlide() {
}
}
if (checkHeavyStateOn()) {
cLib_chaseF(&mVelocity, 0.0f, (0.1f * daPy_HIO_autoJump_c0::m.field_0x3C));
cLib_chaseF(&mVelocity, 0.0f, (0.1f * m_HIO->mAutoJump.m.field_0x3C));
}
f32 local_64;
@ -478,7 +478,7 @@ BOOL daPy_lk_c::procFanGlide() {
int uVar6 = m34E8 - shape_angle.y;
cLib_addCalc(
&mVelocity,
(daPy_HIO_fan_c0::m.field_0x48 * mStickDistance) * cM_scos(uVar6),
(m_HIO->mItem.mFan.m.field_0x48 * mStickDistance) * cM_scos(uVar6),
0.5f,
(0.1f + 0.4f * mStickDistance),
0.01f
@ -497,11 +497,11 @@ BOOL daPy_lk_c::procFanGlide() {
local_64 = 1.0f;
if (mProcVar0.m3570 == 0) {
mProcVar0.m3570 = 1;
setSingleMoveAnime(ANM_USEFANB2, fVar1, 0.0f, -1, daPy_HIO_fan_c0::m.field_0x30);
setSingleMoveAnime(ANM_USEFANB2, fVar1, 0.0f, -1, m_HIO->mItem.mFan.m.field_0x30);
mpParachuteFanMorf->setAnm(
getItemAnimeResource(LKANM_BCK_FANB2A),
0,
daPy_HIO_fan_c0::m.field_0x30,
m_HIO->mItem.mFan.m.field_0x30,
1.0f,
0.0f,
-1.0f,
@ -513,26 +513,26 @@ BOOL daPy_lk_c::procFanGlide() {
if (local_64 >= 1.0f) {
local_64 = 1.0f;
}
local_54.x = local_64 * daPy_HIO_fan_c0::m.field_0x4C * local_60.x;
local_54.x = local_64 * m_HIO->mItem.mFan.m.field_0x4C * local_60.x;
local_54.y = 0.5f * local_64 * local_60.y;
local_54.z = local_64 * daPy_HIO_fan_c0::m.field_0x4C * local_60.z;
local_54.z = local_64 * m_HIO->mItem.mFan.m.field_0x4C * local_60.z;
dVar13 = 3.0f;
if (mProcVar0.m3570 != 0) {
mProcVar0.m3570 = 0;
setSingleMoveAnime(
ANM_USEFANB,
daPy_HIO_fan_c0::m.field_0x20,
daPy_HIO_fan_c0::m.field_0x4 - 0.001f,
daPy_HIO_fan_c0::m.field_0x4,
daPy_HIO_fan_c0::m.field_0x34
m_HIO->mItem.mFan.m.field_0x20,
m_HIO->mItem.mFan.m.field_0x4 - 0.001f,
m_HIO->mItem.mFan.m.field_0x4,
m_HIO->mItem.mFan.m.field_0x34
);
mpParachuteFanMorf->setAnm(
getItemAnimeResource(LKANM_BCK_FANBA),
0,
daPy_HIO_fan_c0::m.field_0x34,
daPy_HIO_fan_c0::m.field_0x20,
daPy_HIO_fan_c0::m.field_0x4 - 0.001f,
daPy_HIO_fan_c0::m.field_0x4,
m_HIO->mItem.mFan.m.field_0x34,
m_HIO->mItem.mFan.m.field_0x20,
m_HIO->mItem.mFan.m.field_0x4 - 0.001f,
m_HIO->mItem.mFan.m.field_0x4,
NULL
);
}

View File

@ -92,10 +92,10 @@ BOOL daPy_lk_c::procFoodThrow_init() {
daPy_matAnm_c::offMabaFlg();
setSingleMoveAnime(
ANM_ESAMAKI,
daPy_HIO_food_c0::m.field_0x4,
daPy_HIO_food_c0::m.field_0x8,
daPy_HIO_food_c0::m.field_0x0,
daPy_HIO_food_c0::m.field_0xC
m_HIO->mItem.mFood.m.field_0x4,
m_HIO->mItem.mFood.m.field_0x8,
m_HIO->mItem.mFood.m.field_0x0,
m_HIO->mItem.mFood.m.field_0xC
);
keepItemData();
@ -181,10 +181,10 @@ BOOL daPy_lk_c::procFoodSet_init() {
mVelocity = 0.0f;
setSingleMoveAnime(
ANM_SETHYOINOMI,
daPy_HIO_food_c0::m.field_0x10,
daPy_HIO_food_c0::m.field_0x14,
daPy_HIO_food_c0::m.field_0x2,
daPy_HIO_food_c0::m.field_0x18
m_HIO->mItem.mFood.m.field_0x10,
m_HIO->mItem.mFood.m.field_0x14,
m_HIO->mItem.mFood.m.field_0x2,
m_HIO->mItem.mFood.m.field_0x18
);
keepItemData();
setHyoiModel();
@ -221,7 +221,7 @@ BOOL daPy_lk_c::procFoodSet() {
endDemoMode();
} else if (m34D0 == 0) {
m34D0 = -1;
frameCtrl.setRate(-daPy_HIO_food_c0::m.field_0x10);
frameCtrl.setRate(-m_HIO->mItem.mFood.m.field_0x10);
} else if (m34D0 > 0) {
m34D0--;
}

View File

@ -195,7 +195,7 @@ void daPy_lk_c::freeGrabItem() {
}
mActorKeepGrab.clearData();
if (checkGrabAnime()) {
resetActAnimeUpper(UPPER_MOVE2_e, daPy_HIO_basic_c0::m.field_0xC);
resetActAnimeUpper(UPPER_MOVE2_e, m_HIO->mBasic.m.field_0xC);
}
field_0x2b0 = 0.0f;
m35CC = 0.0f;
@ -313,14 +313,14 @@ BOOL daPy_lk_c::procGrabReady_init() {
}
setSingleMoveAnime(
ANM_GRABP,
daPy_HIO_grab_c0::m.field_0x20,
daPy_HIO_grab_c0::m.field_0x24,
daPy_HIO_grab_c0::m.field_0x0,
daPy_HIO_grab_c0::m.field_0x28
m_HIO->mGrab.m.field_0x20,
m_HIO->mGrab.m.field_0x24,
m_HIO->mGrab.m.field_0x0,
m_HIO->mGrab.m.field_0x28
);
mProcVar0.m3570 = 1;
} else {
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
setAnimeUnequip();
mProcVar0.m3570 = 0;
}
@ -366,16 +366,16 @@ BOOL daPy_lk_c::procGrabReady() {
} else if (fopAcM_CheckStatus(grab_actor, fopAcStts_UNK10000_e | fopAcStts_UNK8000000_e)) {
f32 fVar1;
if (fopAcM_CheckStatus(grab_actor, fopAcStts_UNK8000000_e)) {
fVar1 = daPy_HIO_grab_c0::m.field_0xA4;
fVar1 = m_HIO->mGrab.m.field_0xA4;
} else {
fVar1 = daPy_HIO_grab_c0::m.field_0xA8;
fVar1 = m_HIO->mGrab.m.field_0xA8;
}
setSingleMoveAnime(
ANM_GRABNG,
fVar1,
daPy_HIO_grab_c0::m.field_0x40,
daPy_HIO_grab_c0::m.field_0x10,
daPy_HIO_grab_c0::m.field_0x44
m_HIO->mGrab.m.field_0x40,
m_HIO->mGrab.m.field_0x10,
m_HIO->mGrab.m.field_0x44
);
mProcVar0.m3570 = 2;
} else {
@ -389,10 +389,10 @@ BOOL daPy_lk_c::procGrabReady() {
} else if (mProcVar0.m3570 == 0 && checkNoUpperAnime()) {
setSingleMoveAnime(
ANM_GRABP,
daPy_HIO_grab_c0::m.field_0x20,
daPy_HIO_grab_c0::m.field_0x24,
daPy_HIO_grab_c0::m.field_0x0,
daPy_HIO_grab_c0::m.field_0x28
m_HIO->mGrab.m.field_0x20,
m_HIO->mGrab.m.field_0x24,
m_HIO->mGrab.m.field_0x0,
m_HIO->mGrab.m.field_0x28
);
mProcVar0.m3570 = 1;
}
@ -405,16 +405,16 @@ BOOL daPy_lk_c::procGrabUp_init() {
fopAc_ac_c* grab_actor = mActorKeepGrab.getActor();
s16 sVar1;
if (fopAcM_CheckStatus(grab_actor, fopAcStts_UNK10000_e | fopAcStts_UNK8000000_e)) {
sVar1 = daPy_HIO_grab_c0::m.field_0x12;
sVar1 = m_HIO->mGrab.m.field_0x12;
} else {
sVar1 = daPy_HIO_grab_c0::m.field_0x2;
sVar1 = m_HIO->mGrab.m.field_0x2;
}
setSingleMoveAnime(
ANM_GRABUP,
daPy_HIO_grab_c0::m.field_0x2C,
daPy_HIO_grab_c0::m.field_0x30,
m_HIO->mGrab.m.field_0x2C,
m_HIO->mGrab.m.field_0x30,
sVar1,
daPy_HIO_grab_c0::m.field_0x38
m_HIO->mGrab.m.field_0x38
);
m370C = mActorKeepGrab.getActor()->current.pos - m3748;
m35C8 = m370C.absXZ() - 47.0f;
@ -445,7 +445,7 @@ BOOL daPy_lk_c::procGrabUp() {
} else {
initGrabNextMode();
}
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_grab_c0::m.field_0x34) {
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mGrab.m.field_0x34) {
if (fopAcM_CheckStatus(grab_actor, fopAcStts_UNK10000_e | fopAcStts_UNK8000000_e)) {
if (mStickDistance > 0.05f) {
onResetFlg0(daPyRFlg0_GRAB_UP_END);
@ -472,13 +472,13 @@ BOOL daPy_lk_c::procGrabMiss_init() {
commonProcInit(daPyProc_GRAB_MISS_e);
setSingleMoveAnime(
ANM_GRABNG,
daPy_HIO_grab_c0::m.field_0x3C,
daPy_HIO_grab_c0::m.field_0x40,
daPy_HIO_grab_c0::m.field_0x4,
daPy_HIO_grab_c0::m.field_0x44
m_HIO->mGrab.m.field_0x3C,
m_HIO->mGrab.m.field_0x40,
m_HIO->mGrab.m.field_0x4,
m_HIO->mGrab.m.field_0x44
);
mProcVar0.m3570 = 0;
m34D0 = daPy_HIO_grab_c0::m.field_0x6;
m34D0 = m_HIO->mGrab.m.field_0x6;
dComIfGs_onEventBit(dSv_event_flag_c::UNK_4020);
return true;
}
@ -495,10 +495,10 @@ BOOL daPy_lk_c::procGrabMiss() {
} else {
setSingleMoveAnime(
ANM_GRABP,
daPy_HIO_grab_c0::m.field_0x48,
daPy_HIO_grab_c0::m.field_0x4C,
daPy_HIO_grab_c0::m.field_0x8,
daPy_HIO_grab_c0::m.field_0x54
m_HIO->mGrab.m.field_0x48,
m_HIO->mGrab.m.field_0x4C,
m_HIO->mGrab.m.field_0x8,
m_HIO->mGrab.m.field_0x54
);
mProcVar0.m3570 = 1;
freeGrabItem();
@ -506,7 +506,7 @@ BOOL daPy_lk_c::procGrabMiss() {
}
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() > -0.01f) {
checkNextMode(0);
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < daPy_HIO_grab_c0::m.field_0x50) {
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < m_HIO->mGrab.m.field_0x50) {
checkNextMode(1);
}
return true;
@ -521,19 +521,19 @@ BOOL daPy_lk_c::procGrabThrow_init(int param_0) {
if (fopAcM_CheckStatus(mActorKeepGrab.getActor(), fopAcStts_UNK10000_e)) {
setSingleMoveAnime(
ANM_GRABRE,
daPy_HIO_grab_c0::m.field_0x94,
daPy_HIO_grab_c0::m.field_0x98,
daPy_HIO_grab_c0::m.field_0x1C,
daPy_HIO_grab_c0::m.field_0xA0
m_HIO->mGrab.m.field_0x94,
m_HIO->mGrab.m.field_0x98,
m_HIO->mGrab.m.field_0x1C,
m_HIO->mGrab.m.field_0xA0
);
m3574 = 0;
} else {
setSingleMoveAnime(
ANM_GRABTHROW,
daPy_HIO_grab_c0::m.field_0x58,
daPy_HIO_grab_c0::m.field_0x5C,
daPy_HIO_grab_c0::m.field_0xA,
daPy_HIO_grab_c0::m.field_0x64
m_HIO->mGrab.m.field_0x58,
m_HIO->mGrab.m.field_0x5C,
m_HIO->mGrab.m.field_0xA,
m_HIO->mGrab.m.field_0x64
);
m3574 = 1;
}
@ -549,26 +549,26 @@ BOOL daPy_lk_c::procGrabThrow() {
fopAc_ac_c* grab_actor = mActorKeepGrab.getActor();
cLib_addCalc(
&mVelocity, 0.0f, daPy_HIO_move_c0::m.field_0x24, daPy_HIO_move_c0::m.field_0x1C, daPy_HIO_move_c0::m.field_0x20
&mVelocity, 0.0f, m_HIO->mMove.m.field_0x24, m_HIO->mMove.m.field_0x1C, m_HIO->mMove.m.field_0x20
);
if (m3574 == 0) {
if (frameCtrl.getRate() < 0.01f) {
setSingleMoveAnime(
ANM_GRABTHROW,
daPy_HIO_grab_c0::m.field_0x58,
daPy_HIO_grab_c0::m.field_0x5C,
daPy_HIO_grab_c0::m.field_0xA,
daPy_HIO_grab_c0::m.field_0x64
m_HIO->mGrab.m.field_0x58,
m_HIO->mGrab.m.field_0x5C,
m_HIO->mGrab.m.field_0xA,
m_HIO->mGrab.m.field_0x64
);
m3574 = 1;
}
return true;
}
if (frameCtrl.checkPass(daPy_HIO_grab_c0::m.field_0x8C) && grab_actor != NULL) {
if (frameCtrl.checkPass(m_HIO->mGrab.m.field_0x8C) && grab_actor != NULL) {
grab_actor->current.angle.y = shape_angle.y;
grab_actor->speedF = daPy_HIO_grab_c0::m.field_0x84;
grab_actor->speed.y = daPy_HIO_grab_c0::m.field_0x88;
grab_actor->speedF = m_HIO->mGrab.m.field_0x84;
grab_actor->speed.y = m_HIO->mGrab.m.field_0x88;
dComIfGp_getCamera(mCameraInfoIdx)->mCamera.ForceLockOn(mActorKeepGrab.getID());
if (fopAcM_CheckStatus(grab_actor, fopAcStts_UNK10000_e)) {
voiceStart(18);
@ -586,7 +586,7 @@ BOOL daPy_lk_c::procGrabThrow() {
setAnimeEquipSword(0);
}
checkNextMode(0);
} else if (frameCtrl.getFrame() > daPy_HIO_grab_c0::m.field_0x60) {
} else if (frameCtrl.getFrame() > m_HIO->mGrab.m.field_0x60) {
if (mProcVar0.m3570 != 0) {
mProcVar0.m3570 = 0;
setAnimeEquipSword(0);
@ -605,15 +605,15 @@ BOOL daPy_lk_c::procGrabPut_init() {
commonProcInit(daPyProc_GRAB_PUT_e);
if (checkGrabWear()) {
mProcVar0.m3570 = 1;
setSingleMoveAnime(ANM_GRABWAIT, daPy_HIO_grab_c0::m.field_0x78, 0.0f, -1, daPy_HIO_grab_c0::m.field_0x7C);
setSingleMoveAnime(ANM_GRABWAIT, m_HIO->mGrab.m.field_0x78, 0.0f, -1, m_HIO->mGrab.m.field_0x7C);
} else {
mProcVar0.m3570 = 0;
setSingleMoveAnime(
ANM_GRABUP,
daPy_HIO_grab_c0::m.field_0x68,
daPy_HIO_grab_c0::m.field_0x6C,
daPy_HIO_grab_c0::m.field_0xC,
daPy_HIO_grab_c0::m.field_0x74
m_HIO->mGrab.m.field_0x68,
m_HIO->mGrab.m.field_0x6C,
m_HIO->mGrab.m.field_0xC,
m_HIO->mGrab.m.field_0x74
);
}
mVelocity = 0.0f;
@ -645,10 +645,10 @@ BOOL daPy_lk_c::procGrabPut() {
mProcVar0.m3570 = 0;
setSingleMoveAnime(
ANM_GRABUP,
daPy_HIO_grab_c0::m.field_0x68,
daPy_HIO_grab_c0::m.field_0x6C,
daPy_HIO_grab_c0::m.field_0xC,
daPy_HIO_grab_c0::m.field_0x74
m_HIO->mGrab.m.field_0x68,
m_HIO->mGrab.m.field_0x6C,
m_HIO->mGrab.m.field_0xC,
m_HIO->mGrab.m.field_0x74
);
} else {
return true;
@ -692,7 +692,7 @@ BOOL daPy_lk_c::procGrabPut() {
} else {
checkNextMode(0);
}
} else if ((mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < daPy_HIO_grab_c0::m.field_0x70) && checkNextMode(1)) {
} else if ((mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < m_HIO->mGrab.m.field_0x70) && checkNextMode(1)) {
grab_actor->speedF = 0.0f;
freeGrabItem();
}
@ -707,12 +707,12 @@ BOOL daPy_lk_c::procGrabWait_init() {
}
commonProcInit(daPyProc_GRAB_WAIT_e);
if (checkGrabSpecialHeavyState()) {
setSingleMoveAnime(ANM_GRABWAITB, daPy_HIO_grab_c0::m.field_0x90, 0.0f, -1, daPy_HIO_grab_c0::m.field_0x7C);
setSingleMoveAnime(ANM_GRABWAITB, m_HIO->mGrab.m.field_0x90, 0.0f, -1, m_HIO->mGrab.m.field_0x7C);
if (!checkGrabAnime()) {
setActAnimeUpper(LKANM_BCK_GRABWAITB, UPPER_MOVE2_e, 0.0f, 0.0f, -1, -1.0f);
}
} else {
setSingleMoveAnime(ANM_GRABWAIT, daPy_HIO_grab_c0::m.field_0x78, 0.0f, -1, daPy_HIO_grab_c0::m.field_0x7C);
setSingleMoveAnime(ANM_GRABWAIT, m_HIO->mGrab.m.field_0x78, 0.0f, -1, m_HIO->mGrab.m.field_0x7C);
if (!checkGrabAnime()) {
setActAnimeUpper(LKANM_BCK_GRABWAIT, UPPER_MOVE2_e, 0.0f, 0.0f, -1, -1.0f);
}
@ -739,7 +739,7 @@ BOOL daPy_lk_c::procGrabWait() {
if (checkAttentionLock()) {
setSpeedAndAngleAtn();
} else {
setSpeedAndAngleNormal(daPy_HIO_move_c0::m.field_0x0);
setSpeedAndAngleNormal(m_HIO->mMove.m.field_0x0);
}
if (m35D8 <= -29.0f) {
if ((mFrameCtrlUnder[UNDER_MOVE0_e].getRate() > 0.0f) && mProcVar0.m3570 == 0) {
@ -750,7 +750,7 @@ BOOL daPy_lk_c::procGrabWait() {
}
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(0.0f);
} else {
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(daPy_HIO_grab_c0::m.field_0x78);
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(m_HIO->mGrab.m.field_0x78);
}
if (checkNextMode(0)) {
if (checkGrabAnime()) {
@ -761,7 +761,7 @@ BOOL daPy_lk_c::procGrabWait() {
if (checkNoResetFlg1(daPyFlg1_UNK800000)) {
fVar2 = -1.0f;
} else {
fVar2 = daPy_HIO_basic_c0::m.field_0xC;
fVar2 = m_HIO->mBasic.m.field_0xC;
}
setBlendMoveAnime(fVar2);
m_pbCalc[PART_UPPER_e]->setRatio(2, 1.0f);
@ -769,9 +769,9 @@ BOOL daPy_lk_c::procGrabWait() {
onNoResetFlg1(daPyFlg1_UNK800000);
} else if (checkNoResetFlg1(daPyFlg1_UNK800000)) {
if (checkGrabSpecialHeavyState()) {
setSingleMoveAnime(ANM_GRABWAITB, daPy_HIO_grab_c0::m.field_0x90, 0.0f, -1, daPy_HIO_grab_c0::m.field_0x7C);
setSingleMoveAnime(ANM_GRABWAITB, m_HIO->mGrab.m.field_0x90, 0.0f, -1, m_HIO->mGrab.m.field_0x7C);
} else {
setSingleMoveAnime(ANM_GRABWAIT, daPy_HIO_grab_c0::m.field_0x78, 0.0f, -1, daPy_HIO_grab_c0::m.field_0x7C);
setSingleMoveAnime(ANM_GRABWAIT, m_HIO->mGrab.m.field_0x78, 0.0f, -1, m_HIO->mGrab.m.field_0x7C);
}
m_pbCalc[PART_UPPER_e]->setRatio(2, 0.0f);
m35A0 = 0.0f;
@ -783,7 +783,7 @@ BOOL daPy_lk_c::procGrabWait() {
/* 8013C914-8013C9AC .text procGrabHeavyWait_init__9daPy_lk_cFv */
BOOL daPy_lk_c::procGrabHeavyWait_init() {
commonProcInit(daPyProc_GRAB_HEAVY_WAIT_e);
setSingleMoveAnime(ANM_GRABWAITB, daPy_HIO_grab_c0::m.field_0x90, 0.0f, -1, daPy_HIO_grab_c0::m.field_0x7C);
setSingleMoveAnime(ANM_GRABWAITB, m_HIO->mGrab.m.field_0x90, 0.0f, -1, m_HIO->mGrab.m.field_0x7C);
setActAnimeUpper(LKANM_BCK_GRABWAITB, UPPER_MOVE2_e, 0.0f, 0.0f, -1, -1.0f);
m_pbCalc[PART_UPPER_e]->setRatio(2, 0.0f);
current.angle.y = shape_angle.y;
@ -803,18 +803,18 @@ BOOL daPy_lk_c::procGrabHeavyWait() {
cLib_addCalcAngleS(
&shape_angle.y,
m34E8,
daPy_HIO_grab_c0::m.field_0x16,
daPy_HIO_grab_c0::m.field_0x18,
daPy_HIO_grab_c0::m.field_0x1A
m_HIO->mGrab.m.field_0x16,
m_HIO->mGrab.m.field_0x18,
m_HIO->mGrab.m.field_0x1A
);
s16 y_diff = shape_angle.y - current.angle.y;
m35A0 = y_diff / (f32)daPy_HIO_grab_c0::m.field_0x18;
m35A0 = y_diff / (f32)m_HIO->mGrab.m.field_0x18;
current.angle.y = shape_angle.y;
f32 fVar1;
if (checkNoResetFlg1(daPyFlg1_UNK800000)) {
fVar1 = -1.0f;
} else {
fVar1 = daPy_HIO_basic_c0::m.field_0xC;
fVar1 = m_HIO->mBasic.m.field_0xC;
}
setBlendMoveAnime(fVar1);
m_pbCalc[PART_UPPER_e]->setRatio(2, 1.0f);
@ -822,7 +822,7 @@ BOOL daPy_lk_c::procGrabHeavyWait() {
} else {
m35A0 = 0.0f;
if (checkNoResetFlg1(daPyFlg1_UNK800000)) {
setSingleMoveAnime(ANM_GRABWAITB, daPy_HIO_grab_c0::m.field_0x90, 0.0f, -1, daPy_HIO_grab_c0::m.field_0x7C);
setSingleMoveAnime(ANM_GRABWAITB, m_HIO->mGrab.m.field_0x90, 0.0f, -1, m_HIO->mGrab.m.field_0x7C);
m_pbCalc[PART_UPPER_e]->setRatio(2, 0.0f);
offNoResetFlg1(daPyFlg1_UNK800000);
}
@ -842,10 +842,10 @@ BOOL daPy_lk_c::procGrabRebound_init() {
commonProcInit(daPyProc_GRAB_REBOUND_e);
setSingleMoveAnime(
ANM_GRABRE,
daPy_HIO_grab_c0::m.field_0x94,
daPy_HIO_grab_c0::m.field_0x98,
daPy_HIO_grab_c0::m.field_0xE,
daPy_HIO_grab_c0::m.field_0xA0
m_HIO->mGrab.m.field_0x94,
m_HIO->mGrab.m.field_0x98,
m_HIO->mGrab.m.field_0xE,
m_HIO->mGrab.m.field_0xA0
);
return true;
}
@ -863,7 +863,7 @@ BOOL daPy_lk_c::procGrabRebound() {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
initGrabNextMode();
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_grab_c0::m.field_0x9C &&
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mGrab.m.field_0x9C &&
fopAcM_CheckStatus(grab_actor, fopAcStts_UNK10000_e))
{
initGrabNextMode();

View File

@ -172,10 +172,10 @@ BOOL daPy_lk_c::procHammerSideSwing_init() {
commonProcInit(daPyProc_HAMMER_SIDE_SWING_e);
setSingleMoveAnime(
ANM_HAMSWINGA,
daPy_HIO_ham_c0::m.field_0x8,
daPy_HIO_ham_c0::m.field_0xC,
daPy_HIO_ham_c0::m.field_0x0,
daPy_HIO_ham_c0::m.field_0x14
m_HIO->mItem.mHam.m.field_0x8,
m_HIO->mItem.mHam.m.field_0xC,
m_HIO->mItem.mHam.m.field_0x0,
m_HIO->mItem.mHam.m.field_0x14
);
current.angle.y = shape_angle.y;
mVelocity = 0.0f;
@ -184,7 +184,7 @@ BOOL daPy_lk_c::procHammerSideSwing_init() {
setBlurPosResource(LKANM__HAMMERSIDE_POS);
setAtParam(AT_TYPE_SKULL_HAMMER, 4, dCcG_At_Spl_UNK0, dCcG_SE_UNK5, dCcG_AtHitMark_Nrm_e, 17, 50.0f);
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_HAMSWINGAA));
m35EC = daPy_HIO_ham_c0::m.field_0xC;
m35EC = m_HIO->mItem.mHam.m.field_0xC;
return true;
}
@ -197,7 +197,7 @@ BOOL daPy_lk_c::procHammerSideSwing() {
checkNextMode(0);
return true;
}
if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_ham_c0::m.field_0x10) {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mItem.mHam.m.field_0x10) {
f32 dVar4 = mVelocity;
u8 orig_direction = mDirection;
mVelocity = 0.0f;
@ -219,14 +219,14 @@ BOOL daPy_lk_c::procHammerSideSwing() {
cLib_addCalcAngleS(
&shape_angle.y,
m34D4,
daPy_HIO_turn_c0::m.field_0x4,
daPy_HIO_turn_c0::m.field_0x0,
daPy_HIO_turn_c0::m.field_0x2
m_HIO->mTurn.m.field_0x4,
m_HIO->mTurn.m.field_0x0,
m_HIO->mTurn.m.field_0x2
);
}
current.angle.y = shape_angle.y;
if ((mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() >= daPy_HIO_ham_c0::m.field_0x18) &&
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < daPy_HIO_ham_c0::m.field_0x1C))
if ((mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() >= m_HIO->mItem.mHam.m.field_0x18) &&
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < m_HIO->mItem.mHam.m.field_0x1C))
{
if (!checkNoResetFlg0(daPyFlg0_CUT_AT_FLG)) {
onResetFlg0(daPyRFlg0_UNK1);
@ -242,10 +242,10 @@ BOOL daPy_lk_c::procHammerFrontSwingReady_init() {
commonProcInit(daPyProc_HAMMER_FRONT_SWING_READY_e);
setSingleMoveAnime(
ANM_HAMSWINGBPRE,
daPy_HIO_ham_c0::m.field_0x20,
daPy_HIO_ham_c0::m.field_0x24,
daPy_HIO_ham_c0::m.field_0x2,
daPy_HIO_ham_c0::m.field_0x28
m_HIO->mItem.mHam.m.field_0x20,
m_HIO->mItem.mHam.m.field_0x24,
m_HIO->mItem.mHam.m.field_0x2,
m_HIO->mItem.mHam.m.field_0x28
);
current.angle.y = shape_angle.y;
mVelocity = 0.0f;
@ -257,7 +257,7 @@ BOOL daPy_lk_c::procHammerFrontSwingReady_init() {
setAtParam(AT_TYPE_SKULL_HAMMER, 4, dCcG_At_Spl_UNK0, dCcG_SE_UNK5, dCcG_AtHitMark_Nrm_e, 18, 50.0f);
voiceStart(7);
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_HAMSWINGBPREA));
m35EC = daPy_HIO_ham_c0::m.field_0x24;
m35EC = m_HIO->mItem.mHam.m.field_0x24;
m355C = 0;
return true;
}
@ -275,9 +275,9 @@ BOOL daPy_lk_c::procHammerFrontSwingReady() {
cLib_addCalcAngleS(
&shape_angle.y,
m34D4,
daPy_HIO_turn_c0::m.field_0x4,
daPy_HIO_turn_c0::m.field_0x0,
daPy_HIO_turn_c0::m.field_0x2
m_HIO->mTurn.m.field_0x4,
m_HIO->mTurn.m.field_0x0,
m_HIO->mTurn.m.field_0x2
);
}
current.angle.y = shape_angle.y;
@ -289,9 +289,9 @@ BOOL daPy_lk_c::procHammerFrontSwing_init() {
commonProcInit(daPyProc_HAMMER_FRONT_SWING_e);
setSingleMoveAnime(
ANM_HAMSWINGBHIT,
4.0f * daPy_HIO_ham_c0::m.field_0x2C,
daPy_HIO_ham_c0::m.field_0x30,
daPy_HIO_ham_c0::m.field_0x4,
4.0f * m_HIO->mItem.mHam.m.field_0x2C,
m_HIO->mItem.mHam.m.field_0x30,
m_HIO->mItem.mHam.m.field_0x4,
0.0f
);
current.angle.y = shape_angle.y;
@ -309,7 +309,7 @@ BOOL daPy_lk_c::procHammerFrontSwing_init() {
onResetFlg0(daPy_RFLG0(daPyRFlg0_UNK1 | daPyRFlg0_UNK2));
m34D0 = 0;
mSwordAnim.changeBckOnly(getItemAnimeResource(LKANM_BCK_HAMSWINGBHITA));
m35EC = daPy_HIO_ham_c0::m.field_0x30;
m35EC = m_HIO->mItem.mHam.m.field_0x30;
return true;
}
@ -376,9 +376,9 @@ BOOL daPy_lk_c::procHammerFrontSwing() {
cLib_addCalcAngleS(
&shape_angle.y,
m34D4,
daPy_HIO_turn_c0::m.field_0x4,
daPy_HIO_turn_c0::m.field_0x0,
daPy_HIO_turn_c0::m.field_0x2
m_HIO->mTurn.m.field_0x4,
m_HIO->mTurn.m.field_0x0,
m_HIO->mTurn.m.field_0x2
);
}
current.angle.y = shape_angle.y;
@ -391,10 +391,10 @@ BOOL daPy_lk_c::procHammerFrontSwingEnd_init() {
commonProcInit(daPyProc_HAMMER_FRONT_SWING_END_e);
setSingleMoveAnime(
ANM_HAMSWINGBEND,
daPy_HIO_ham_c0::m.field_0x34,
daPy_HIO_ham_c0::m.field_0x38,
daPy_HIO_ham_c0::m.field_0x6,
daPy_HIO_ham_c0::m.field_0x40
m_HIO->mItem.mHam.m.field_0x34,
m_HIO->mItem.mHam.m.field_0x38,
m_HIO->mItem.mHam.m.field_0x6,
m_HIO->mItem.mHam.m.field_0x40
);
current.angle.y = shape_angle.y;
mVelocity = 0.0f;
@ -407,7 +407,7 @@ BOOL daPy_lk_c::procHammerFrontSwingEnd_init() {
BOOL daPy_lk_c::procHammerFrontSwingEnd() {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
return checkNextMode(0);
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_ham_c0::m.field_0x3C) {
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mItem.mHam.m.field_0x3C) {
return checkNextMode(1);
} else {
return true;

View File

@ -16,7 +16,7 @@
/* 80133F1C-80133F40 .text getHangMoveAnmSpeed__9daPy_lk_cFv */
f32 daPy_lk_c::getHangMoveAnmSpeed() {
return getAnmSpeedStickRate(daPy_HIO_hang_c0::m.field_0x24, daPy_HIO_hang_c0::m.field_0x28);
return getAnmSpeedStickRate(m_HIO->mHang.m.field_0x24, m_HIO->mHang.m.field_0x28);
}
/* 80133F40-80133FB4 .text getHangDirectionFromAngle__9daPy_lk_cFv */
@ -120,13 +120,13 @@ int daPy_lk_c::changeHangEndProc(int param_0) {
m3588 = dBgS_Attr_UNK1B_e;
}
if (m35DC > mFootData[1].field_0x018.y + current.pos.y) {
return procLand_init(daPy_HIO_autoJump_c0::m.field_0x24, 0);
return procLand_init(m_HIO->mAutoJump.m.field_0x24, 0);
}
if (param_0 != 0) {
dComIfGp_setDoStatus(dActStts_LET_GO_e);
if (doTrigger()) {
speed.y = 0.0f;
return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
return procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
}
}
return false;
@ -204,10 +204,10 @@ BOOL daPy_lk_c::procHangStart_init() {
mProcVar0.m3570 = sVar3;
setSingleMoveAnime(
ANM_VJMPCHA,
daPy_HIO_wallCatch_c0::m.field_0x44,
daPy_HIO_wallCatch_c0::m.field_0x4C,
daPy_HIO_wallCatch_c0::m.field_0x2,
daPy_HIO_wallCatch_c0::m.field_0x48
m_HIO->mWallCatch.m.field_0x44,
m_HIO->mWallCatch.m.field_0x4C,
m_HIO->mWallCatch.m.field_0x2,
m_HIO->mWallCatch.m.field_0x48
);
current.pos = local_1c;
shape_angle.y = m352C + 0x8000;
@ -226,11 +226,11 @@ BOOL daPy_lk_c::procHangStart() {
}
if (((mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) ||
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_wallCatch_c0::m.field_0x50)) &&
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mWallCatch.m.field_0x50)) &&
(mStickDistance > 0.05f || mProcVar0.m3570 != 0))
{
if (getDirectionFromShapeAngle() == DIR_FORWARD || mProcVar0.m3570 != 0) {
procHangClimb_init(daPy_HIO_wallCatch_c0::m.field_0x2C);
procHangClimb_init(m_HIO->mWallCatch.m.field_0x2C);
}
} else {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
@ -311,11 +311,11 @@ BOOL daPy_lk_c::procHangFallStart_init(cM3dGPla* param_0) {
if (mCurProc == daPyProc_FRONT_ROLL_e) {
morf = 0.0f;
} else {
morf = daPy_HIO_hang_c0::m.field_0x10;
morf = m_HIO->mHang.m.field_0x10;
}
commonProcInit(daPyProc_HANG_FALL_START_e);
setSingleMoveAnime(
ANM_HANGING, daPy_HIO_hang_c0::m.field_0x4, daPy_HIO_hang_c0::m.field_0x8, daPy_HIO_hang_c0::m.field_0x0, morf
ANM_HANGING, m_HIO->mHang.m.field_0x4, m_HIO->mHang.m.field_0x8, m_HIO->mHang.m.field_0x0, morf
);
mVelocity = 0.0f;
speed.y = 0.0f;
@ -329,7 +329,7 @@ BOOL daPy_lk_c::procHangFallStart() {
int iVar2;
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f ||
mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_hang_c0::m.field_0xC)
mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mHang.m.field_0xC)
{
iVar2 = 1;
} else {
@ -360,10 +360,10 @@ BOOL daPy_lk_c::procHangUp_init(int param_0) {
commonProcInit(daPyProc_HANG_UP_e);
setSingleMoveAnime(
ANM_HANGUP,
daPy_HIO_hang_c0::m.field_0x14,
daPy_HIO_hang_c0::m.field_0x18,
daPy_HIO_hang_c0::m.field_0x2,
daPy_HIO_hang_c0::m.field_0x20
m_HIO->mHang.m.field_0x14,
m_HIO->mHang.m.field_0x18,
m_HIO->mHang.m.field_0x2,
m_HIO->mHang.m.field_0x20
);
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK100_e);
mProcVar0.m3570 = param_0;
@ -382,10 +382,10 @@ BOOL daPy_lk_c::procHangUp() {
}
if ((mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) ||
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_hang_c0::m.field_0x1C))
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mHang.m.field_0x1C))
{
if (mProcVar0.m3570 == 0) {
procHangClimb_init(daPy_HIO_wallCatch_c0::m.field_0x2C);
procHangClimb_init(m_HIO->mWallCatch.m.field_0x2C);
} else if (changeHangMoveProc(mProcVar0.m3570)) {
procHangMove_init(mProcVar0.m3570);
} else {
@ -398,7 +398,7 @@ BOOL daPy_lk_c::procHangUp() {
/* 80135094-80135140 .text procHangWait_init__9daPy_lk_cFv */
BOOL daPy_lk_c::procHangWait_init() {
commonProcInit(daPyProc_HANG_WAIT_e);
setSingleMoveAnime(ANM_VJMPCHA, 0.0f, daPy_HIO_wallCatch_c0::m.field_0x2, -1, 5.0f);
setSingleMoveAnime(ANM_VJMPCHA, 0.0f, m_HIO->mWallCatch.m.field_0x2, -1, 5.0f);
setTextureAnime(9, 0);
mpSeAnmFrameCtrl = NULL;
mVelocity = 0.0f;
@ -421,7 +421,7 @@ BOOL daPy_lk_c::procHangWait() {
if (mStickDistance > 0.05f) {
iVar2 = getHangDirectionFromAngle();
if (iVar2 == 0) {
procHangClimb_init(daPy_HIO_wallCatch_c0::m.field_0x2C);
procHangClimb_init(m_HIO->mWallCatch.m.field_0x2C);
} else if (iVar2 != 1 && changeHangMoveProc(iVar2)) {
s16 sVar1 = m34EC;
procHangMove_init(iVar2);
@ -444,7 +444,7 @@ BOOL daPy_lk_c::procHangMove_init(int param_0) {
current.angle.y = shape_angle.y + -0x4000;
}
f32 dVar3 = getHangMoveAnmSpeed();
setSingleMoveAnime(dVar1, dVar3, 0.0f, -1, daPy_HIO_hang_c0::m.field_0x2C);
setSingleMoveAnime(dVar1, dVar3, 0.0f, -1, m_HIO->mHang.m.field_0x2C);
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK100_e);
mVelocity = 0.0f;
cXyz local_1c = mLeftHandPos - mRightHandPos;
@ -459,7 +459,7 @@ BOOL daPy_lk_c::procHangMove() {
if (!changeHangEndProc(1)) {
if (iVar7 == 0 && mStickDistance > 0.05f) {
procHangClimb_init(daPy_HIO_wallCatch_c0::m.field_0x2C);
procHangClimb_init(m_HIO->mWallCatch.m.field_0x2C);
} else {
J3DFrameCtrl& frameCtrl = mFrameCtrlUnder[UNDER_MOVE0_e];
frameCtrl.setRate(getHangMoveAnmSpeed());
@ -475,7 +475,7 @@ BOOL daPy_lk_c::procHangMove() {
cXyz local_64 = mRightHandPos - mLeftHandPos;
float dVar12 = local_64.absXZ();
if (changeHangMoveProc(4)) {
mVelocity = std::fabsf(dVar12 - m35A0) * daPy_HIO_hang_c0::m.field_0x30;
mVelocity = std::fabsf(dVar12 - m35A0) * m_HIO->mHang.m.field_0x30;
float fVar1 = cM_ssin(shape_angle.y);
float fVar2 = cM_scos(shape_angle.y);
float dVar13 = cM_ssin(current.angle.y);
@ -542,10 +542,10 @@ BOOL daPy_lk_c::procHangClimb_init(f32 param_0) {
commonProcInit(daPyProc_HANG_CLIMB_e);
setSingleMoveAnime(
ANM_VJMPCL,
daPy_HIO_wallCatch_c0::m.field_0x24,
m_HIO->mWallCatch.m.field_0x24,
param_0,
daPy_HIO_wallCatch_c0::m.field_0x4,
daPy_HIO_wallCatch_c0::m.field_0x28
m_HIO->mWallCatch.m.field_0x4,
m_HIO->mWallCatch.m.field_0x28
);
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK200_e);
mVelocity = 0.0f;
@ -557,7 +557,7 @@ BOOL daPy_lk_c::procHangClimb_init(f32 param_0) {
BOOL daPy_lk_c::procHangClimb() {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
checkNextMode(0);
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_wallCatch_c0::m.field_0x38) {
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mWallCatch.m.field_0x38) {
checkNextMode(1);
}
return true;
@ -585,10 +585,10 @@ BOOL daPy_lk_c::procHangWallCatch_init() {
commonProcInit(daPyProc_HANG_WALL_CATCH_e);
setSingleMoveAnime(
ANM_VJMPCHB,
daPy_HIO_wallCatch_c0::m.field_0x1C,
daPy_HIO_wallCatch_c0::m.field_0x34,
daPy_HIO_wallCatch_c0::m.field_0x0,
daPy_HIO_wallCatch_c0::m.field_0x20
m_HIO->mWallCatch.m.field_0x1C,
m_HIO->mWallCatch.m.field_0x34,
m_HIO->mWallCatch.m.field_0x0,
m_HIO->mWallCatch.m.field_0x20
);
current.pos = local_1c;
shape_angle.y = m352C + 0x8000;
@ -601,8 +601,8 @@ BOOL daPy_lk_c::procHangWallCatch_init() {
/* 80135AE0-80135B50 .text procHangWallCatch__9daPy_lk_cFv */
BOOL daPy_lk_c::procHangWallCatch() {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f && !procHangClimb_init(daPy_HIO_wallCatch_c0::m.field_0x30)) {
return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f && !procHangClimb_init(m_HIO->mWallCatch.m.field_0x30)) {
return procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
} else {
return true;
}

View File

@ -149,10 +149,10 @@ BOOL daPy_lk_c::checkNextActionHookshotReady() {
current.angle.y = shape_angle.y + 0x4000;
onModeFlg(ModeFlg_00000001);
m3598 = 0.0f;
setBlendAtnMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendAtnMoveAnime(m_HIO->mBasic.m.field_0xC);
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(0.0f);
mFrameCtrlUnder[UNDER_MOVE1_e].setRate(0.0f);
mFrameCtrlUpper[UPPER_MOVE0_e].setRate(daPy_HIO_atnMove_c0::m.field_0x24);
mFrameCtrlUpper[UPPER_MOVE0_e].setRate(m_HIO->mAtnMove.m.field_0x24);
mFrameCtrlUpper[UPPER_MOVE1_e].setRate(0.0f);
mFrameCtrlUpper[UPPER_MOVE2_e].setRate(0.0f);
return true;
@ -205,7 +205,7 @@ BOOL daPy_lk_c::procHookshotSubject_init() {
mVelocity = 0.0f;
setActAnimeUpper(LKANM_BCK_HOOKSHOTWAIT, UPPER_MOVE2_e, 0.0f, 0.0f, -1, -1.0f);
setSingleMoveAnime(ANM_ATNLS, 0.0f, 0.0f, -1, daPy_HIO_basic_c0::m.field_0xC);
setSingleMoveAnime(ANM_ATNLS, 0.0f, 0.0f, -1, m_HIO->mBasic.m.field_0xC);
dComIfGp_setPlayerStatus0(0, daPyStts0_HOOKSHOT_AIM_e);
@ -258,7 +258,7 @@ BOOL daPy_lk_c::procHookshotMove_init() {
daHookshot_c* hookshot = (daHookshot_c*)mActorKeepEquip.getActor();
if (hookshot->checkWait()) {
setActAnimeUpper(LKANM_BCK_HOOKSHOTWAIT, UPPER_MOVE2_e, 1.0f, 0.0f, -1, -1.0f);
setBlendAtnMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendAtnMoveAnime(m_HIO->mBasic.m.field_0xC);
}
dComIfGp_setPlayerStatus0(0, daPyStts0_HOOKSHOT_AIM_e);
return true;
@ -287,7 +287,7 @@ BOOL daPy_lk_c::procHookshotMove() {
onModeFlg(ModeFlg_00000001);
if (mDirection != DIR_LEFT) {
mDirection = DIR_LEFT;
fVar1 = daPy_HIO_basic_c0::m.field_0xC;
fVar1 = m_HIO->mBasic.m.field_0xC;
}
current.angle.y = shape_angle.y + 0x4000;
} else {

View File

@ -16,7 +16,7 @@
/* 80132F34-80132F58 .text getLadderMoveAnmSpeed__9daPy_lk_cFv */
f32 daPy_lk_c::getLadderMoveAnmSpeed() {
return getAnmSpeedStickRate(daPy_HIO_ladder_c0::m.field_0x28, daPy_HIO_ladder_c0::m.field_0x24);
return getAnmSpeedStickRate(m_HIO->mLadder.m.field_0x28, m_HIO->mLadder.m.field_0x24);
}
/* 80132F58-80133058 .text setLadderFootSe__9daPy_lk_cFv */
@ -84,7 +84,7 @@ int daPy_lk_c::setMoveBGLadderCorrect() {
cXyz local_18(m370C.x + cM_ssin(current.angle.y) * 50.0f, m370C.y, m370C.z + cM_scos(current.angle.y) * 50.0f);
mLinkLinChk.Set(&m370C, &local_18, this);
if ((!dComIfG_Bgsp()->LineCross(&mLinkLinChk)) || (dComIfG_Bgsp()->GetWallCode(mLinkLinChk) != 4)) {
return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
return procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
} else {
mPolyInfo = mLinkLinChk;
return false;
@ -93,7 +93,7 @@ int daPy_lk_c::setMoveBGLadderCorrect() {
/* 801333A8-80133414 .text procLadderUpStart_init_sub__9daPy_lk_cFv */
void daPy_lk_c::procLadderUpStart_init_sub() {
setSingleMoveAnime(ANM_LADDERUPST, daPy_HIO_ladder_c0::m.field_0x4, 0.0f, -1, daPy_HIO_ladder_c0::m.field_0x8);
setSingleMoveAnime(ANM_LADDERUPST, m_HIO->mLadder.m.field_0x4, 0.0f, -1, m_HIO->mLadder.m.field_0x8);
mProcVar0.m3570 = 1;
m34C2 = 4;
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK2000000_e);
@ -112,7 +112,7 @@ BOOL daPy_lk_c::procLadderUpStart_init() {
}
procLadderUpStart_init_sub();
} else {
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
setAnimeUnequip();
mProcVar0.m3570 = 0;
m3598 = 0.0f;
@ -152,7 +152,7 @@ BOOL daPy_lk_c::procLadderUpStart() {
}
if (doTrigger()) {
m34C2 = 0;
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
} else {
changeLadderMoveProc(1);
}
@ -175,7 +175,7 @@ BOOL daPy_lk_c::procLadderUpEnd_init(int param_0) {
} else {
dVar2 = ANM_LADDERUPEDR;
}
setSingleMoveAnime(dVar2, daPy_HIO_ladder_c0::m.field_0xC, 0.0f, -1, daPy_HIO_ladder_c0::m.field_0x10);
setSingleMoveAnime(dVar2, m_HIO->mLadder.m.field_0xC, 0.0f, -1, m_HIO->mLadder.m.field_0x10);
m34C2 = 7;
gravity = 0.0f;
speed.y = 0.0f;
@ -206,7 +206,7 @@ BOOL daPy_lk_c::procLadderUpEnd() {
/* 801337B4-8013384C .text procLadderDownStart_init_sub__9daPy_lk_cFv */
void daPy_lk_c::procLadderDownStart_init_sub() {
setSingleMoveAnime(ANM_LADDERDWST, daPy_HIO_ladder_c0::m.field_0x14, 0.0f, -1, daPy_HIO_ladder_c0::m.field_0x18);
setSingleMoveAnime(ANM_LADDERDWST, m_HIO->mLadder.m.field_0x14, 0.0f, -1, m_HIO->mLadder.m.field_0x18);
mProcVar0.m3570 = 1;
m34C2 = 4;
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK2000000_e);
@ -230,7 +230,7 @@ BOOL daPy_lk_c::procLadderDownStart_init() {
}
procLadderDownStart_init_sub();
} else {
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
setAnimeUnequip();
mProcVar0.m3570 = 0;
m3598 = 0.0f;
@ -263,7 +263,7 @@ BOOL daPy_lk_c::procLadderDownStart() {
dComIfGp_setDoStatus(dActStts_LET_GO_e);
if (doTrigger()) {
m34C2 = 0;
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
} else {
changeLadderMoveProc(1);
}
@ -285,7 +285,7 @@ BOOL daPy_lk_c::procLadderDownEnd_init(int param_0) {
} else {
anm = ANM_LADDERDWEDR;
}
setSingleMoveAnime(anm, daPy_HIO_ladder_c0::m.field_0x1C, 0.0f, -1, daPy_HIO_ladder_c0::m.field_0x20);
setSingleMoveAnime(anm, m_HIO->mLadder.m.field_0x1C, 0.0f, -1, m_HIO->mLadder.m.field_0x20);
m34C2 = 7;
gravity = 0.0f;
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK2000000_e);
@ -350,7 +350,7 @@ BOOL daPy_lk_c::procLadderMove_init(int param_0, int direction, cXyz* param_2) {
m370C.z = m370C.z + -2.0f * cM_ssin(shape_angle.y);
}
setSingleMoveAnime(anm, dVar4, 0.0f, -1, daPy_HIO_ladder_c0::m.field_0x2C);
setSingleMoveAnime(anm, dVar4, 0.0f, -1, m_HIO->mLadder.m.field_0x2C);
mDirection = direction;
if (direction == DIR_FORWARD) {
setTextureAnime(10, 0);
@ -377,7 +377,7 @@ BOOL daPy_lk_c::procLadderMove() {
if (doTrigger()) {
m34C2 = 0;
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
} else if (std::fabsf(mFrameCtrlUnder[UNDER_MOVE0_e].getRate()) < 0.01f) {
if (m34D0 > 0) {
m34D0--;

File diff suppressed because it is too large Load Diff

View File

@ -505,7 +505,7 @@ void daPy_lk_c::setAuraEffect() {
if (m3548 == 0) {
if (dComIfGs_getMagic() != 0) {
m3548 = daPy_HIO_magicShield_c0::m.field_0x0;
m3548 = m_HIO->mItem.mMagicShield.m.field_0x0;
dComIfGp_setItemMagicCount(-1);
} else {
offNoResetFlg1(daPyFlg1_EQUIP_DRAGON_SHIELD);
@ -576,7 +576,7 @@ void daPy_lk_c::setAuraEffect() {
var_f28 = 1.5f;
}
} else {
var_f31 = std::fabsf(mVelocity) / daPy_HIO_move_c0::m.field_0x18;
var_f31 = std::fabsf(mVelocity) / m_HIO->mMove.m.field_0x18;
if (var_f31 > 1.0f) {
var_f31 = 1.0f;
}
@ -838,9 +838,9 @@ void daPy_lk_c::setFootEffectType(int effectID, cXyz* i_pos, int param_2, int pa
}
if (effectID == -2) {
emitter = dComIfGp_particle_setP1(dPa_name::ID_COMMON_2022, &footEffect->getPos(), &footEffect->getAngle(), (cXyz*)&smoke_scale, (u8)daPy_HIO_basic_c0::m.field_0x2, footEffect->getSmokeCallBack(), fopAcM_GetRoomNo(this));
emitter = dComIfGp_particle_setP1(dPa_name::ID_COMMON_2022, &footEffect->getPos(), &footEffect->getAngle(), (cXyz*)&smoke_scale, (u8)m_HIO->mBasic.m.field_0x2, footEffect->getSmokeCallBack(), fopAcM_GetRoomNo(this));
} else if (effectID == dPa_name::ID_COMMON_2022 || effectID == dPa_name::ID_COMMON_2027) {
emitter = dComIfGp_particle_setToonP1(effectID, &footEffect->getPos(), &footEffect->getAngle(), (cXyz*)&smoke_scale, (u8)daPy_HIO_basic_c0::m.field_0x2, footEffect->getSmokeCallBack(), fopAcM_GetRoomNo(this));
emitter = dComIfGp_particle_setToonP1(effectID, &footEffect->getPos(), &footEffect->getAngle(), (cXyz*)&smoke_scale, (u8)m_HIO->mBasic.m.field_0x2, footEffect->getSmokeCallBack(), fopAcM_GetRoomNo(this));
} else if (effectID == dPa_name::ID_COMMON_0024) {
GXColor color = {tevStr.mColorC0.r, tevStr.mColorC0.g, tevStr.mColorC0.b, tevStr.mColorC0.a};
emitter = dComIfGp_particle_setP1(effectID, &footEffect->getPos(), &footEffect->getAngle(), (cXyz*)&grass_scale, 0xFF, footEffect->getOtherCallBack(), -1, &color, &tevStr.mColorK0);
@ -1231,7 +1231,7 @@ void daPy_lk_c::setDamageElecEmitter() {
mDmEcallBack[1].makeEmitter(dPa_name::ID_COMMON_03EE, mpCLModel->getAnmMtx(4), &current.pos, NULL);
}
daPy_dmEcallBack_c::setElec(daPy_HIO_elecDamage_c0::m.field_0x2);
daPy_dmEcallBack_c::setElec(m_HIO->mDam.mElecDamage.m.field_0x2);
}
/* 8012C880-8012C8F8 .text setDamageEmitter__9daPy_lk_cFv */

View File

@ -59,11 +59,11 @@ BOOL daPy_lk_c::procPushPullWait_init(int param_0) {
}
daPy_matAnm_c::offMabaFlg();
setSingleMoveAnime(
ANM_WAITPUSHPULL, daPy_HIO_pushpull_c0::m.field_0x0, 0.0f, -1, daPy_HIO_pushpull_c0::m.field_0x4
ANM_WAITPUSHPULL, m_HIO->mPushpull.m.field_0x0, 0.0f, -1, m_HIO->mPushpull.m.field_0x4
);
m34D6 = 0;
} else {
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
setAnimeUnequip();
m3598 = 0.0f;
m34D6 = 1;
@ -85,7 +85,7 @@ BOOL daPy_lk_c::procPushPullWait() {
if (m34D6 != 0) {
if (checkNoUpperAnime()) {
setSingleMoveAnime(
ANM_WAITPUSHPULL, daPy_HIO_pushpull_c0::m.field_0x0, 0.0f, -1, daPy_HIO_pushpull_c0::m.field_0x4
ANM_WAITPUSHPULL, m_HIO->mPushpull.m.field_0x0, 0.0f, -1, m_HIO->mPushpull.m.field_0x4
);
m34D6 = 0;
}
@ -126,7 +126,7 @@ BOOL daPy_lk_c::procPushMove_init() {
}
commonProcInit(daPyProc_PUSH_MOVE_e);
setSingleMoveAnime(ANM_WALKPUSH, daPy_HIO_pushpull_c0::m.field_0x8, 0.0f, -1, daPy_HIO_pushpull_c0::m.field_0xC);
setSingleMoveAnime(ANM_WALKPUSH, m_HIO->mPushpull.m.field_0x8, 0.0f, -1, m_HIO->mPushpull.m.field_0xC);
mProcVar0.m3570 = 1;
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK4000000_e);
@ -169,7 +169,7 @@ BOOL daPy_lk_c::procPullMove_init() {
}
commonProcInit(daPyProc_PULL_MOVE_e);
setSingleMoveAnime(ANM_WALKPULL, daPy_HIO_pushpull_c0::m.field_0x10, 0.0f, -1, daPy_HIO_pushpull_c0::m.field_0x14);
setSingleMoveAnime(ANM_WALKPULL, m_HIO->mPushpull.m.field_0x10, 0.0f, -1, m_HIO->mPushpull.m.field_0x14);
mProcVar0.m3570 = 1;
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK4000000_e);

View File

@ -78,7 +78,7 @@ int daPy_lk_c::changeRopeEndProc(int param_0) {
setAnimeEquipSword(0);
}
if (param_0 != 0) {
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
}
onNoResetFlg0(daPyFlg0_UNK400000);
onNoResetFlg1(daPyFlg1_UNK8000000);
@ -160,7 +160,7 @@ BOOL daPy_lk_c::checkRopeSwingWall(cXyz* r4, cXyz* r5, s16* r6, f32* r7) {
JPABaseEmitter* emitter = dComIfGp_particle_setToonP1(
dPa_name::ID_COMMON_2022,
&foot_effect->getPos(), &foot_effect->getAngle(),
NULL, daPy_HIO_basic_c0::m.field_0x2, foot_effect->getSmokeCallBack(),
NULL, m_HIO->mBasic.m.field_0x2, foot_effect->getSmokeCallBack(),
fopAcM_GetRoomNo(this)
);
if (emitter) {
@ -208,7 +208,7 @@ void daPy_lk_c::setBlendRopeMoveAnime(int param_0) {
} else {
anm = ANM_ROPESWINGF;
}
dVar6 = (0.6f * m34D4) / daPy_HIO_rope_c0::m.field_0x0;
dVar6 = (0.6f * m34D4) / m_HIO->mItem.mRope.m.field_0x0;
if (checkSpecialRope()) {
dVar6 *= 8.0f;
}
@ -217,12 +217,12 @@ void daPy_lk_c::setBlendRopeMoveAnime(int param_0) {
}
} else {
if ((M_PI / 2 > f30) && (M_PI / 10 <= f30)) {
setMoveAnime(0.0f, daPy_HIO_rope_c0::m.field_0x18, 1.0f, ANM_ROPECATCH, ANM_ROPESWINGF, 7, 7.0f);
setMoveAnime(0.0f, m_HIO->mItem.mRope.m.field_0x18, 1.0f, ANM_ROPECATCH, ANM_ROPESWINGF, 7, 7.0f);
m34D0 = -1;
return;
}
if ((-M_PI / 2 > f30) && (-2.8274333f <= f30)) {
setMoveAnime(0.0f, daPy_HIO_rope_c0::m.field_0x18, 1.0f, ANM_ROPECATCH, ANM_ROPESWINGB, 7, 7.0f);
setMoveAnime(0.0f, m_HIO->mItem.mRope.m.field_0x18, 1.0f, ANM_ROPECATCH, ANM_ROPESWINGB, 7, 7.0f);
m34D0 = 1;
return;
}
@ -231,7 +231,7 @@ void daPy_lk_c::setBlendRopeMoveAnime(int param_0) {
} else {
anm = ANM_ROPESWINGF;
}
dVar6 = (0.6f * m34D4) / daPy_HIO_rope_c0::m.field_0x0;
dVar6 = (0.6f * m34D4) / m_HIO->mItem.mRope.m.field_0x0;
if (checkSpecialRope()) {
dVar6 *= 8.0f;
}
@ -259,11 +259,11 @@ void daPy_lk_c::setBlendRopeMoveAnime(int param_0) {
}
f32 f4;
if (param_0 != 0) {
f4 = daPy_HIO_rope_c0::m.field_0x20;
f4 = m_HIO->mItem.mRope.m.field_0x20;
} else {
f4 = -1.0f;
}
setMoveAnime(sp08, daPy_HIO_rope_c0::m.field_0x18, 1.0f, ANM_ROPECATCH, anm, 7, f4);
setMoveAnime(sp08, m_HIO->mItem.mRope.m.field_0x18, 1.0f, ANM_ROPECATCH, anm, 7, f4);
}
/* 80143A44-80143C5C .text throwRope__9daPy_lk_cFv */
@ -272,9 +272,9 @@ int daPy_lk_c::throwRope() {
setActAnimeUpper(
LKANM_BCK_ROPETHROW,
UPPER_MOVE2_e,
daPy_HIO_rope_c0::m.field_0x44,
daPy_HIO_rope_c0::m.field_0x48,
daPy_HIO_rope_c0::m.field_0x8,
m_HIO->mItem.mRope.m.field_0x44,
m_HIO->mItem.mRope.m.field_0x48,
m_HIO->mItem.mRope.m.field_0x8,
-1.0f
);
setPriTextureAnime(0x48, 0);
@ -284,7 +284,7 @@ int daPy_lk_c::throwRope() {
}
current.angle.y = shape_angle.y + -0x4000;
onModeFlg(ModeFlg_00000001);
setBlendAtnMoveAnime(daPy_HIO_rope_c0::m.field_0x4C);
setBlendAtnMoveAnime(m_HIO->mItem.mRope.m.field_0x4C);
cXyz local_1c;
if (mCurProc == daPyProc_ROPE_MOVE_e) {
fopAc_ac_c* pfVar4 = mpAttnActorLockOn;
@ -377,7 +377,7 @@ BOOL daPy_lk_c::checkHangRopeActorNull() {
if (checkRopeTag()) {
mEquipItem = daPyItem_NONE_e;
}
procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
onNoResetFlg0(daPyFlg0_UNK400000);
onNoResetFlg1(daPyFlg1_UNK8000000);
return true;
@ -398,7 +398,7 @@ BOOL daPy_lk_c::procRopeSubject_init() {
if (fopAcM_GetParam(mActorKeepEquip.getActor()) == 0) {
setActAnimeUpper(LKANM_BCK_ROPETHROWWAIT, UPPER_MOVE2_e, 0.0f, 0.0f, -1, -1.0f);
setSingleMoveAnime(ANM_ATNRS, 0.0f, 0.0f, -1, daPy_HIO_rope_c0::m.field_0x54);
setSingleMoveAnime(ANM_ATNRS, 0.0f, 0.0f, -1, m_HIO->mItem.mRope.m.field_0x54);
}
dComIfGp_setPlayerStatus0(0, daPyStts0_ROPE_AIM_e);
@ -466,10 +466,10 @@ BOOL daPy_lk_c::procRopeReady_init() {
fopAc_ac_c* rope = mActorKeepEquip.getActor();
commonProcInit(daPyProc_ROPE_READY_e);
setMoveAnime(
0.5f, daPy_HIO_rope_c0::m.field_0x18, 1.0f, ANM_ROPECATCH, ANM_ROPESWINGB, 7, daPy_HIO_rope_c0::m.field_0x20
0.5f, m_HIO->mItem.mRope.m.field_0x18, 1.0f, ANM_ROPECATCH, ANM_ROPESWINGB, 7, m_HIO->mItem.mRope.m.field_0x20
);
mFrameCtrlUnder[UNDER_MOVE0_e].setStart(daPy_HIO_rope_c0::m.field_0x1C);
mFrameCtrlUnder[UNDER_MOVE0_e].setEnd(daPy_HIO_rope_c0::m.field_0x4);
mFrameCtrlUnder[UNDER_MOVE0_e].setStart(m_HIO->mItem.mRope.m.field_0x1C);
mFrameCtrlUnder[UNDER_MOVE0_e].setEnd(m_HIO->mItem.mRope.m.field_0x4);
mAnmRatioUnder[UNDER_MOVE0_e].getAnmTransform()->setFrame(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());
m3688 = current.pos;
m35F0 = m3688.y;
@ -559,7 +559,7 @@ BOOL daPy_lk_c::procRopeSwing_init(fopAc_ac_c* param_0, s16 param_1) {
m35A4 = dVar11;
dVar11 = M_PI / 2 / m35A4;
if (pfVar7 != NULL) {
m34D4 = daPy_HIO_rope_c0::m.field_0x0;
m34D4 = m_HIO->mItem.mRope.m.field_0x0;
#if VERSION == VERSION_DEMO
if (strcmp(dComIfGp_getStartStageName(), "GanonK") == 0) {
m34D4 /= 3;
@ -618,8 +618,8 @@ BOOL daPy_lk_c::procRopeSwing_init(fopAc_ac_c* param_0, s16 param_1) {
if (pfVar7 == NULL) {
m_old_fdata->initOldFrameMorf(15.0f, 0, 0x2A);
}
mFrameCtrlUnder[UNDER_MOVE0_e].setStart(daPy_HIO_rope_c0::m.field_0x1C);
mFrameCtrlUnder[UNDER_MOVE0_e].setEnd(daPy_HIO_rope_c0::m.field_0x4);
mFrameCtrlUnder[UNDER_MOVE0_e].setStart(m_HIO->mItem.mRope.m.field_0x1C);
mFrameCtrlUnder[UNDER_MOVE0_e].setEnd(m_HIO->mItem.mRope.m.field_0x4);
if ((pfVar7 != NULL) && (mActorKeepEquip.getActor() == NULL)) {
mAnmRatioUnder[UNDER_MOVE0_e].getAnmTransform()->setFrame(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());
}
@ -713,19 +713,19 @@ BOOL daPy_lk_c::procRopeSwing() {
s16 r29;
#if VERSION == VERSION_DEMO
if (strcmp(dComIfGp_getStartStageName(), "GanonK") == 0) {
r30 = daPy_HIO_rope_c0::m.field_0x0 / 3;
r30 = m_HIO->mItem.mRope.m.field_0x0 / 3;
r28 = 0xA;
r29 = 0x15;
}
#else
if (checkSpecialRope()) {
r30 = daPy_HIO_rope_c0::m.field_0x0 / 8.0f;
r30 = m_HIO->mItem.mRope.m.field_0x0 / 8.0f;
r28 = 4;
r29 = 8;
}
#endif
else {
r30 = daPy_HIO_rope_c0::m.field_0x0;
r30 = m_HIO->mItem.mRope.m.field_0x0;
r28 = 0x20;
r29 = 0x40;
}
@ -782,17 +782,17 @@ BOOL daPy_lk_c::procRopeSwing() {
f32 f30_3 = ((f32)m34D4 / r30);
if (changeRopeEndProc(0)) {
dVar13 = (m35A0 / (100.0f * daPy_HIO_rope_c0::m.field_0x14));
dVar13 = (m35A0 / (100.0f * m_HIO->mItem.mRope.m.field_0x14));
if (dVar13 < 1.0f) {
dVar13 = 1.0f;
}
f30_3 *= dVar13;
mVelocity = daPy_HIO_rope_c0::m.field_0xC * f30_3;
mVelocity = m_HIO->mItem.mRope.m.field_0xC * f30_3;
if (std::abs(sp0C) > M_PI / 2) {
current.angle.y = shape_angle.y + 0x8000;
}
speed.y = daPy_HIO_rope_c0::m.field_0x10 * f30_3;
procFall_init(0, daPy_HIO_wallCatch_c0::m.field_0x54);
speed.y = m_HIO->mItem.mRope.m.field_0x10 * f30_3;
procFall_init(0, m_HIO->mWallCatch.m.field_0x54);
onNoResetFlg1(daPyFlg1_UNK8000000);
} else if ((m34D4 == 0) && (m34D6 == 0)) {
procRopeHangWait_init(0);
@ -815,14 +815,14 @@ BOOL daPy_lk_c::procRopeHangWait_init(int param_0) {
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK800000_e);
gravity = 0.0f;
if (param_0 == 0) {
m34D0 = daPy_HIO_rope_c0::m.field_0x6;
m34D0 = m_HIO->mItem.mRope.m.field_0x6;
setSingleMoveAnime(
ANM_ROPECATCH, 1.0f, mFrameCtrlUnder[UNDER_MOVE0_e].getEnd() - 0.001f, -1, daPy_HIO_rope_c0::m.field_0x28
ANM_ROPECATCH, 1.0f, mFrameCtrlUnder[UNDER_MOVE0_e].getEnd() - 0.001f, -1, m_HIO->mItem.mRope.m.field_0x28
);
setTextureAnime(2, 0);
} else {
m34D0 = -1;
setSingleMoveAnime(ANM_ROPEWAIT, daPy_HIO_rope_c0::m.field_0x24, 0.0f, -1, daPy_HIO_rope_c0::m.field_0x28);
setSingleMoveAnime(ANM_ROPEWAIT, m_HIO->mItem.mRope.m.field_0x24, 0.0f, -1, m_HIO->mItem.mRope.m.field_0x28);
}
m34D4 = 0;
return true;
@ -894,7 +894,7 @@ BOOL daPy_lk_c::procRopeHangWait() {
if (m34D0 != -1) {
m34D0 = -1;
setSingleMoveAnime(
ANM_ROPEWAIT, daPy_HIO_rope_c0::m.field_0x24, 0.0f, -1, daPy_HIO_rope_c0::m.field_0x2C
ANM_ROPEWAIT, m_HIO->mItem.mRope.m.field_0x24, 0.0f, -1, m_HIO->mItem.mRope.m.field_0x2C
);
}
}
@ -908,7 +908,7 @@ BOOL daPy_lk_c::procRopeHangWait() {
if (m34D0 == 0) {
m34D0 = -1;
setSingleMoveAnime(
ANM_ROPEWAIT, daPy_HIO_rope_c0::m.field_0x24, 0.0f, -1, daPy_HIO_rope_c0::m.field_0x2C
ANM_ROPEWAIT, m_HIO->mItem.mRope.m.field_0x24, 0.0f, -1, m_HIO->mItem.mRope.m.field_0x2C
);
}
r29 = 0;
@ -984,7 +984,7 @@ BOOL daPy_lk_c::procRopeUp_init() {
} else {
commonProcInit(daPyProc_ROPE_UP_e);
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK800000_e);
setSingleMoveAnime(ANM_ROPECLIMB, daPy_HIO_rope_c0::m.field_0x30, 0.0f, -1, daPy_HIO_rope_c0::m.field_0x34);
setSingleMoveAnime(ANM_ROPECLIMB, m_HIO->mItem.mRope.m.field_0x30, 0.0f, -1, m_HIO->mItem.mRope.m.field_0x34);
mFrameCtrlUnder[UNDER_MOVE0_e].setAttribute(J3DFrameCtrl::EMode_NONE);
m35A0 = dVar4;
gravity = 0.0f;
@ -1017,7 +1017,7 @@ BOOL daPy_lk_c::procRopeUp() {
procRopeHangWait_init(0);
}
} else {
setSingleMoveAnime(ANM_ROPECLIMB, daPy_HIO_rope_c0::m.field_0x30, 0.0f, -1, -1.0f);
setSingleMoveAnime(ANM_ROPECLIMB, m_HIO->mItem.mRope.m.field_0x30, 0.0f, -1, -1.0f);
mFrameCtrlUnder[UNDER_MOVE0_e].setAttribute(J3DFrameCtrl::EMode_NONE);
}
} else {
@ -1060,7 +1060,7 @@ BOOL daPy_lk_c::procRopeDown_init() {
} else {
commonProcInit(daPyProc_ROPE_DOWN_e);
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK800000_e);
setSingleMoveAnime(ANM_ROPEDOWN, daPy_HIO_rope_c0::m.field_0x38, 0.0f, -1, daPy_HIO_rope_c0::m.field_0x3C);
setSingleMoveAnime(ANM_ROPEDOWN, m_HIO->mItem.mRope.m.field_0x38, 0.0f, -1, m_HIO->mItem.mRope.m.field_0x3C);
gravity = 0.0f;
m35A0 = 0.0f;
return true;
@ -1087,8 +1087,8 @@ BOOL daPy_lk_c::procRopeDown() {
procRopeUp_init();
} else if (direction == DIR_BACKWARD) {
m35A0 += 1.5f;
if (m35A0 > daPy_HIO_rope_c0::m.field_0x40) {
m35A0 = daPy_HIO_rope_c0::m.field_0x40;
if (m35A0 > m_HIO->mItem.mRope.m.field_0x40) {
m35A0 = m_HIO->mItem.mRope.m.field_0x40;
}
if (cLib_chaseF(&current.pos.y, m35A4, m35A0)) {
procRopeHangWait_init(1);
@ -1174,8 +1174,8 @@ BOOL daPy_lk_c::procRopeMove_init() {
current.angle.y = shape_angle.y + -0x4000;
}
if (fopAcM_GetParam(mActorKeepEquip.getActor()) == 0) {
setActAnimeUpper(LKANM_BCK_ROPETHROWWAIT, UPPER_MOVE2_e, daPy_HIO_rope_c0::m.field_0x50, 0.0f, -1, -1.0f);
setBlendAtnMoveAnime(daPy_HIO_rope_c0::m.field_0x54);
setActAnimeUpper(LKANM_BCK_ROPETHROWWAIT, UPPER_MOVE2_e, m_HIO->mItem.mRope.m.field_0x50, 0.0f, -1, -1.0f);
setBlendAtnMoveAnime(m_HIO->mItem.mRope.m.field_0x54);
}
dComIfGp_setPlayerStatus0(0, daPyStts0_ROPE_AIM_e);
return true;
@ -1203,7 +1203,7 @@ BOOL daPy_lk_c::procRopeMove() {
onModeFlg(ModeFlg_00000001);
if (mDirection != DIR_RIGHT) {
mDirection = DIR_RIGHT;
fVar1 = daPy_HIO_basic_c0::m.field_0xC;
fVar1 = m_HIO->mBasic.m.field_0xC;
}
} else {
offModeFlg(ModeFlg_00000001);
@ -1219,10 +1219,10 @@ BOOL daPy_lk_c::procRopeThrowCatch_init() {
commonProcInit(daPyProc_ROPE_THROW_CATCH_e);
setSingleMoveAnime(
ANM_ROPETHROWCATCH,
daPy_HIO_rope_c0::m.field_0x58,
daPy_HIO_rope_c0::m.field_0x5C,
daPy_HIO_rope_c0::m.field_0xA,
daPy_HIO_rope_c0::m.field_0x64
m_HIO->mItem.mRope.m.field_0x58,
m_HIO->mItem.mRope.m.field_0x5C,
m_HIO->mItem.mRope.m.field_0xA,
m_HIO->mItem.mRope.m.field_0x64
);
mVelocity = 0.0f;
dComIfGp_setPlayerStatus0(0, daPyStts0_ROPE_AIM_e);

View File

@ -204,7 +204,7 @@ void daPy_lk_c::setShipRidePos(int param_0) {
fVar2 = 1.0f;
}
mFrameCtrlUpper[UPPER_MOVE2_e].setRate(
(1.0f - daPy_HIO_ship_c0::m.field_0xC) * fVar2 + daPy_HIO_ship_c0::m.field_0xC
(1.0f - m_HIO->mShip.m.field_0xC) * fVar2 + m_HIO->mShip.m.field_0xC
);
if (ship->getJumpFlg()) {
if (ship->getJumpRate() > 0.6f) {
@ -230,7 +230,7 @@ void daPy_lk_c::setShipRidePos(int param_0) {
}
s16 sVar4;
if (m_anm_heap_under[UNDER_MOVE0_e].mIdx == LKANM_BCK_VOYAGE1) {
sVar4 = -daPy_HIO_ship_c0::m.field_0x4 * ship->getTillerAngleRate();
sVar4 = -m_HIO->mShip.m.field_0x4 * ship->getTillerAngleRate();
} else {
sVar4 = 0;
}
@ -242,7 +242,7 @@ void daPy_lk_c::setShipRidePos(int param_0) {
/* 801403E0-80140480 .text setShipAttentionAnmSpeed__9daPy_lk_cFf */
void daPy_lk_c::setShipAttentionAnmSpeed(f32 param_0) {
if (checkAttentionLock()) {
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(daPy_HIO_atnMove_c0::m.field_0x24);
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(m_HIO->mAtnMove.m.field_0x24);
mFrameCtrlUpper[UPPER_MOVE2_e].setRate(param_0);
} else {
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(0.0f);
@ -475,10 +475,10 @@ BOOL daPy_lk_c::procShipReady_init() {
daShip_c* ship = dComIfGp_getShipActor();
setSingleMoveAnime(
ANM_VJMPCL,
daPy_HIO_wallCatch_c0::m.field_0x24,
daPy_HIO_wallCatch_c0::m.field_0x2C,
daPy_HIO_wallCatch_c0::m.field_0x4,
daPy_HIO_wallCatch_c0::m.field_0x28
m_HIO->mWallCatch.m.field_0x24,
m_HIO->mWallCatch.m.field_0x2C,
m_HIO->mWallCatch.m.field_0x4,
m_HIO->mWallCatch.m.field_0x28
);
gravity = 0.0f;
mVelocity = 0.0f;
@ -524,7 +524,7 @@ BOOL daPy_lk_c::procShipReady() {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
mProcVar0.m3570 = 1;
mVelocity = 6.0f;
setSingleMoveAnime(ANM_WALK, daPy_HIO_move_c0::m.field_0x40, 0.0f, -1, 5.0f);
setSingleMoveAnime(ANM_WALK, m_HIO->mMove.m.field_0x40, 0.0f, -1, 5.0f);
m34C2 = 10;
offModeFlg(ModeFlg_HANG | ModeFlg_00000400);
ship->setReadySecond();
@ -707,7 +707,7 @@ BOOL daPy_lk_c::procShipScope_init(int param_0) {
gravity = 0.0f;
ship->setPaddleMove();
setShipRidePos(0);
setSingleMoveAnime(ANM_WAITS, daPy_HIO_move_c0::m.field_0x38, 0.0f, -1, 5.0f);
setSingleMoveAnime(ANM_WAITS, m_HIO->mMove.m.field_0x38, 0.0f, -1, 5.0f);
dComIfGp_setPlayerStatus0(0, daPyStts0_SHIP_RIDE_e);
seStartSystem(JA_SE_ITM_SUBMENU_IN_1);
offNoResetFlg0(daPyFlg0_SCOPE_CANCEL);
@ -786,7 +786,7 @@ BOOL daPy_lk_c::procShipBoomerang() {
if (!checkUpperAnime(LKANM_BCK_BOOMCATCH)) {
if (mEquipItem == dItem_BOOMERANG_e) {
if (checkUpperAnime(LKANM_BCK_BOOMWAIT)) {
setShipAttentionAnmSpeed(daPy_HIO_boom_c0::m.field_0x18);
setShipAttentionAnmSpeed(m_HIO->mItem.mBoom.m.field_0x18);
checkNextActionBoomerangReady();
if (checkAttentionLock()) {
setShipAttnetionBodyAngle();
@ -811,7 +811,7 @@ BOOL daPy_lk_c::procShipBoomerang() {
return procShipPaddle_init();
}
setShapeAngleToAtnActor();
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(daPy_HIO_atnMove_c0::m.field_0x24);
mFrameCtrlUnder[UNDER_MOVE0_e].setRate(m_HIO->mAtnMove.m.field_0x24);
}
}
m34D4 = ship->shape_angle.y;
@ -1162,7 +1162,7 @@ BOOL daPy_lk_c::procShipGetOff_init() {
daShip_c* ship = dComIfGp_getShipActor();
commonProcInit(daPyProc_SHIP_GET_OFF_e);
deleteEquipItem(TRUE);
setSingleMoveAnime(ANM_DASH, daPy_HIO_move_c0::m.field_0x40, 0.0f, -1, 5.0f);
setSingleMoveAnime(ANM_DASH, m_HIO->mMove.m.field_0x40, 0.0f, -1, 5.0f);
mVelocity = 8.0f;
gravity = 0.0f;
shape_angle.y = ship->shape_angle.y + -0x4000;
@ -1191,14 +1191,14 @@ BOOL daPy_lk_c::procShipGetOff() {
if (cLib_distanceAngleS(sVar3, shape_angle.y) >= 0x4000) {
setSingleMoveAnime(
ANM_JMPST,
daPy_HIO_autoJump_c0::m.field_0x20,
daPy_HIO_autoJump_c0::m.field_0x2C,
daPy_HIO_autoJump_c0::m.field_0x2,
daPy_HIO_autoJump_c0::m.field_0x30
m_HIO->mAutoJump.m.field_0x20,
m_HIO->mAutoJump.m.field_0x2C,
m_HIO->mAutoJump.m.field_0x2,
m_HIO->mAutoJump.m.field_0x30
);
gravity = daPy_HIO_autoJump_c0::m.field_0xC;
mVelocity = daPy_HIO_ship_c0::m.field_0x10;
speed.y = daPy_HIO_ship_c0::m.field_0x14;
gravity = m_HIO->mAutoJump.m.field_0xC;
mVelocity = m_HIO->mShip.m.field_0x10;
speed.y = m_HIO->mShip.m.field_0x14;
mProcVar0.m3570 = 1;
m34C2 = 1;
ship->setGetOffSecond();
@ -1208,11 +1208,11 @@ BOOL daPy_lk_c::procShipGetOff() {
m34C2 = 1;
dComIfGp_evmng_cutEnd(mStaffIdx);
if (mAcch.ChkGroundHit()) {
changeLandProc(daPy_HIO_autoJump_c0::m.field_0x24);
changeLandProc(m_HIO->mAutoJump.m.field_0x24);
} else if (checkFanGlideProc(0)) {
return true;
} else if (speed.y < -gravity) {
procFall_init(0, daPy_HIO_smallJump_c0::m.field_0x18);
procFall_init(0, m_HIO->mSmallJump.m.field_0x18);
setTextureAnime(0x37, 0);
}
}

View File

@ -35,7 +35,7 @@ void daPy_lk_c::setSpeedAndAngleSwim() {
current.angle.y = m34E8;
}
else {
cLib_addCalcAngleS(&shape_angle.y, m34E8, daPy_HIO_swim_c0::m.field_0x8, daPy_HIO_swim_c0::m.field_0x4, daPy_HIO_swim_c0::m.field_0x6);
cLib_addCalcAngleS(&shape_angle.y, m34E8, m_HIO->mSwim.m.field_0x8, m_HIO->mSwim.m.field_0x4, m_HIO->mSwim.m.field_0x6);
}
fVar1 = mStickDistance * 3.0f * cM_scos(shape_angle.y - oldAngleY);
@ -46,7 +46,7 @@ void daPy_lk_c::setSpeedAndAngleSwim() {
cLib_addCalcAngleS(&current.angle.y, shape_angle.y, 2, 0x2000, 0x1000);
mMaxNormalSpeed = daPy_HIO_swim_c0::m.field_0xC;
mMaxNormalSpeed = m_HIO->mSwim.m.field_0xC;
}
else {
setShapeAngleToAtnActor();
@ -62,7 +62,7 @@ void daPy_lk_c::setSpeedAndAngleSwim() {
bVar3 = TRUE;
}
else {
cLib_addCalcAngleS(&current.angle.y, m34E8, daPy_HIO_swim_c0::m.field_0x8, daPy_HIO_swim_c0::m.field_0x4, daPy_HIO_swim_c0::m.field_0x6);
cLib_addCalcAngleS(&current.angle.y, m34E8, m_HIO->mSwim.m.field_0x8, m_HIO->mSwim.m.field_0x4, m_HIO->mSwim.m.field_0x6);
fVar1 = mStickDistance * 3.0f * cM_scos(current.angle.y - oldAngleY);
}
}
@ -70,15 +70,15 @@ void daPy_lk_c::setSpeedAndAngleSwim() {
fVar1 = 0.0f;
}
mMaxNormalSpeed = ((cM_scos(current.angle.y - shape_angle.y) + 1.0f) * 0.25f + 0.5f) * daPy_HIO_swim_c0::m.field_0xC;
mMaxNormalSpeed = ((cM_scos(current.angle.y - shape_angle.y) + 1.0f) * 0.25f + 0.5f) * m_HIO->mSwim.m.field_0xC;
}
}
else {
fVar1 = 0.0f;
mMaxNormalSpeed = daPy_HIO_swim_c0::m.field_0xC;
mMaxNormalSpeed = m_HIO->mSwim.m.field_0xC;
}
setNormalSpeedF(fVar1, daPy_HIO_swim_c0::m.field_0x18, daPy_HIO_swim_c0::m.field_0x1C, daPy_HIO_swim_c0::m.field_0x20);
setNormalSpeedF(fVar1, m_HIO->mSwim.m.field_0x18, m_HIO->mSwim.m.field_0x1C, m_HIO->mSwim.m.field_0x20);
if (bVar3 && mVelocity < 5.0f) {
current.angle.y = m34E8;
@ -114,7 +114,7 @@ BOOL daPy_lk_c::changeSwimProc() {
BOOL res;
cXyz local_18;
if (checkNoResetFlg0(daPyFlg0_UNK80) && !checkModeFlg(ModeFlg_IN_SHIP | ModeFlg_SWIM) && !checkNoControll() && mDemo.getDemoMode() != daPy_demo_c::DEMO_PFALL_e && m35D0 - current.pos.y > daPy_HIO_swim_c0::m.field_0x24) {
if (checkNoResetFlg0(daPyFlg0_UNK80) && !checkModeFlg(ModeFlg_IN_SHIP | ModeFlg_SWIM) && !checkNoControll() && mDemo.getDemoMode() != daPy_demo_c::DEMO_PFALL_e && m35D0 - current.pos.y > m_HIO->mSwim.m.field_0x24) {
dComIfGp_setItemTimeCount(900);
dComIfGp_setItemTimeMax(900);
@ -125,7 +125,7 @@ BOOL daPy_lk_c::changeSwimProc() {
offNoResetFlg0(daPyFlg0_UNK100);
mMaxNormalSpeed = daPy_HIO_swim_c0::m.field_0xC;
mMaxNormalSpeed = m_HIO->mSwim.m.field_0xC;
mVelocity *= 0.75f;
if (mVelocity >= mMaxNormalSpeed) {
@ -137,11 +137,11 @@ BOOL daPy_lk_c::changeSwimProc() {
setSwimTimerStartStop();
if (checkModeFlg(ModeFlg_MIDAIR)) {
current.pos.y += daPy_HIO_swim_c0::m.field_0x24;
speed.y = mOldSpeed.y * daPy_HIO_swim_c0::m.field_0x10;
current.pos.y += m_HIO->mSwim.m.field_0x24;
speed.y = mOldSpeed.y * m_HIO->mSwim.m.field_0x10;
if (speed.y < daPy_HIO_swim_c0::m.field_0x14) {
speed.y = daPy_HIO_swim_c0::m.field_0x14;
if (speed.y < m_HIO->mSwim.m.field_0x14) {
speed.y = m_HIO->mSwim.m.field_0x14;
}
else if (speed.y > 0.0f) {
speed.y = 0.0f;
@ -172,16 +172,16 @@ BOOL daPy_lk_c::changeSwimProc() {
/* 8013D1B0-8013D2AC .text changeSwimUpProc__9daPy_lk_cFv */
BOOL daPy_lk_c::changeSwimUpProc() {
if (speed.y < daPy_HIO_swim_c0::m.field_0x68) {
speed.y += daPy_HIO_swim_c0::m.field_0x64;
if (speed.y > daPy_HIO_swim_c0::m.field_0x68) {
speed.y = daPy_HIO_swim_c0::m.field_0x68;
if (speed.y < m_HIO->mSwim.m.field_0x68) {
speed.y += m_HIO->mSwim.m.field_0x64;
if (speed.y > m_HIO->mSwim.m.field_0x68) {
speed.y = m_HIO->mSwim.m.field_0x68;
}
if (speed.y > 0.0f && mEquipItem != daPyItem_NONE_e) {
deleteEquipItem(TRUE);
}
}
if (m35D0 - current.pos.y < 40.1f + daPy_HIO_swim_c0::m.field_0x28 && speed.y >= 0.0f) {
if (m35D0 - current.pos.y < 40.1f + m_HIO->mSwim.m.field_0x28 && speed.y >= 0.0f) {
if (mCurProc == daPyProc_DEMO_DEAD_e) {
onNoResetFlg0(daPyFlg0_UNK100);
current.pos.y = m35D0;
@ -229,10 +229,10 @@ BOOL daPy_lk_c::changeSwimOutProc() {
swimOutAfter(TRUE);
return procFall_init(1, daPy_HIO_wallCatch_c0::m.field_0x54);
return procFall_init(1, m_HIO->mWallCatch.m.field_0x54);
}
if (!checkNoResetFlg0(daPyFlg0_UNK80) || (pcVar1 && cBgW_CheckBGround(pcVar1->GetNP()->y) && m35D0 - mAcch.GetGroundH() < daPy_HIO_swim_c0::m.field_0x24 - 5.0f)) {
if (!checkNoResetFlg0(daPyFlg0_UNK80) || (pcVar1 && cBgW_CheckBGround(pcVar1->GetNP()->y) && m35D0 - mAcch.GetGroundH() < m_HIO->mSwim.m.field_0x24 - 5.0f)) {
current.pos.y = m35D0;
if (mCurProc == daPyProc_SWIM_MOVE_e && mDirection != DIR_FORWARD) {
@ -256,10 +256,10 @@ BOOL daPy_lk_c::changeSwimOutProc() {
void daPy_lk_c::setSwimMoveAnime(daPy_ANM swimMoveAnm) {
f32 startFrame = mFrameCtrlUnder[UNDER_MOVE0_e].getFrame();
f32 endFrame = startFrame * mFrameCtrlUnder[UNDER_MOVE0_e].getEnd();
f32 rate = (std::fabsf(mVelocity) * (daPy_HIO_swim_c0::m.field_0x54 - daPy_HIO_swim_c0::m.field_0x50) / mMaxNormalSpeed) +
daPy_HIO_swim_c0::m.field_0x50 +
(getSwimTimerRate() * daPy_HIO_swim_c0::m.field_0x74);
setSingleMoveAnime(swimMoveAnm, rate, 0.0f, -1, daPy_HIO_swim_c0::m.field_0x58);
f32 rate = (std::fabsf(mVelocity) * (m_HIO->mSwim.m.field_0x54 - m_HIO->mSwim.m.field_0x50) / mMaxNormalSpeed) +
m_HIO->mSwim.m.field_0x50 +
(getSwimTimerRate() * m_HIO->mSwim.m.field_0x74);
setSingleMoveAnime(swimMoveAnm, rate, 0.0f, -1, m_HIO->mSwim.m.field_0x58);
mFrameCtrlUnder[UNDER_MOVE0_e].setFrame(endFrame * mFrameCtrlUnder[UNDER_MOVE0_e].getEnd());
mAnmRatioUnder[UNDER_MOVE0_e].getAnmTransform()->setFrame(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());
}
@ -292,7 +292,7 @@ void daPy_lk_c::setSwimTimerStartStop() {
float swimTimerRate = getSwimTimerRate();
if (swimTimerRate > 0.5f) {
target = cM_fcos((1.0f - swimTimerRate) * M_PI) * -daPy_HIO_swim_c0::m.field_0x78;
target = cM_fcos((1.0f - swimTimerRate) * M_PI) * -m_HIO->mSwim.m.field_0x78;
if (mFrameCtrlUnder->checkPass(0.0f) && mCurProc != daPyProc_SWIM_UP_e) {
if (mProcVar0.m3570 && !checkNoResetFlg0(daPyFlg0_UNK4000)) {
@ -328,11 +328,11 @@ BOOL daPy_lk_c::procSwimUp_init(BOOL param_1) {
current.pos.y = m35D0;
setSingleMoveAnime(ANM_SWIMP, daPy_HIO_swim_c0::m.field_0x2C, daPy_HIO_swim_c0::m.field_0x30, daPy_HIO_swim_c0::m.field_0x0, daPy_HIO_swim_c0::m.field_0x38);
setSingleMoveAnime(ANM_SWIMP, m_HIO->mSwim.m.field_0x2C, m_HIO->mSwim.m.field_0x30, m_HIO->mSwim.m.field_0x0, m_HIO->mSwim.m.field_0x38);
dComIfGp_setPlayerStatus0(0, daPyStts0_SWIM_e);
m35C4 = daPy_HIO_swim_c0::m.field_0x3C;
m35C4 = m_HIO->mSwim.m.field_0x3C;
onNoResetFlg0(daPyFlg0_UNK100);
@ -368,7 +368,7 @@ BOOL daPy_lk_c::procSwimUp() {
procSwimWait_init(FALSE);
}
else {
if (mFrameCtrl->getFrame() > daPy_HIO_swim_c0::m.field_0x34) {
if (mFrameCtrl->getFrame() > m_HIO->mSwim.m.field_0x34) {
if (mStickDistance > 0.05f) {
procSwimMove_init(FALSE);
}
@ -380,7 +380,7 @@ BOOL daPy_lk_c::procSwimUp() {
seStartOnlyReverb(JA_SE_LK_SWIM);
}
else {
m35C4 = daPy_HIO_swim_c0::m.field_0x3C;
m35C4 = m_HIO->mSwim.m.field_0x3C;
current.pos.y = m35D0;
}
}
@ -400,14 +400,14 @@ BOOL daPy_lk_c::procSwimWait_init(BOOL param_1) {
if (param_1) {
fVar2 = mFrameCtrl->getFrame() / (float)mFrameCtrl->getEnd();
mVelocity = speedF * (1.0f - daPy_HIO_swim_c0::m.field_0x60) + speedF * std::fabsf(cM_fcos(fVar2 * M_PI)) * daPy_HIO_swim_c0::m.field_0x60;
mVelocity = speedF * (1.0f - m_HIO->mSwim.m.field_0x60) + speedF * std::fabsf(cM_fcos(fVar2 * M_PI)) * m_HIO->mSwim.m.field_0x60;
}
else {
fVar2 = 0.0f;
}
gravity = 0.0f;
setSingleMoveAnime(ANM_SWIMWAIT, (float)(getSwimTimerRate() * daPy_HIO_swim_c0::m.field_0x70) + daPy_HIO_swim_c0::m.field_0x40, 0.0f, -1, daPy_HIO_swim_c0::m.field_0x44);
setSingleMoveAnime(ANM_SWIMWAIT, (float)(getSwimTimerRate() * m_HIO->mSwim.m.field_0x70) + m_HIO->mSwim.m.field_0x40, 0.0f, -1, m_HIO->mSwim.m.field_0x44);
mFrameCtrl->setFrame(fVar2 * mFrameCtrl->getEnd());
mAnmRatioUnder[UNDER_MOVE0_e].getAnmTransform()->setFrame(mFrameCtrl->getFrame());
dComIfGp_setPlayerStatus0(0, daPyStts0_SWIM_e);
@ -420,7 +420,7 @@ BOOL daPy_lk_c::procSwimWait_init(BOOL param_1) {
speed.y = 0.0f;
}
m35C4 = daPy_HIO_swim_c0::m.field_0x48;
m35C4 = m_HIO->mSwim.m.field_0x48;
m34D4 = 0;
mProcVar0.m3570 = 0;
return TRUE;
@ -429,8 +429,8 @@ BOOL daPy_lk_c::procSwimWait_init(BOOL param_1) {
/* 8013DCDC-8013DE8C .text procSwimWait__9daPy_lk_cFv */
BOOL daPy_lk_c::procSwimWait() {
setSpeedAndAngleSwim();
m34D4 += (short)((cM_rndF(0.3f) + 0.85f) * daPy_HIO_swim_c0::m.field_0x2);
m35C4 = cM_ssin(m34D4) * daPy_HIO_swim_c0::m.field_0x4C + daPy_HIO_swim_c0::m.field_0x48;
m34D4 += (short)((cM_rndF(0.3f) + 0.85f) * m_HIO->mSwim.m.field_0x2);
m35C4 = cM_ssin(m34D4) * m_HIO->mSwim.m.field_0x4C + m_HIO->mSwim.m.field_0x48;
if (changeSwimOutProc()) {
return TRUE;
@ -453,12 +453,12 @@ BOOL daPy_lk_c::procSwimWait() {
fopAc_ac_c* talkEventPartner = fopAcM_getTalkEventPartner(this);
if (talkEventPartner) {
short targetAngleY = cLib_targetAngleY(&current.pos, &talkEventPartner->eyePos);
cLib_addCalcAngleS(&shape_angle.y, targetAngleY, daPy_HIO_turn_c0::m.field_0x6, daPy_HIO_turn_c0::m.field_0x8, daPy_HIO_turn_c0::m.field_0xA);
cLib_addCalcAngleS(&shape_angle.y, targetAngleY, m_HIO->mTurn.m.field_0x6, m_HIO->mTurn.m.field_0x8, m_HIO->mTurn.m.field_0xA);
current.angle.y = shape_angle.y;
}
}
mFrameCtrlUnder[UNDER_MOVE0_e].setRate((getSwimTimerRate() * daPy_HIO_swim_c0::m.field_0x70) + daPy_HIO_swim_c0::m.field_0x40);
mFrameCtrlUnder[UNDER_MOVE0_e].setRate((getSwimTimerRate() * m_HIO->mSwim.m.field_0x70) + m_HIO->mSwim.m.field_0x40);
if (mStickDistance > 0.05f) {
procSwimMove_init(TRUE);
@ -496,7 +496,7 @@ BOOL daPy_lk_c::procSwimMove_init(BOOL param_1) {
dComIfGp_setPlayerStatus0(0, daPyStts0_SWIM_e);
m35C4 = daPy_HIO_swim_c0::m.field_0x5C;
m35C4 = m_HIO->mSwim.m.field_0x5C;
mProcVar0.m3570 = 0;
return TRUE;
@ -527,7 +527,7 @@ BOOL daPy_lk_c::procSwimMove() {
if (mDirection == DIR_FORWARD) {
anm = ANM_SWIMING;
m35C4 = daPy_HIO_swim_c0::m.field_0x5C;
m35C4 = m_HIO->mSwim.m.field_0x5C;
}
else {
m35C4 = -80.0f;
@ -558,7 +558,7 @@ BOOL daPy_lk_c::procSwimMove() {
}
}
else {
mFrameCtrl[0].setRate((std::fabsf(mVelocity) * (daPy_HIO_swim_c0::m.field_0x54 - daPy_HIO_swim_c0::m.field_0x50)) / mMaxNormalSpeed + daPy_HIO_swim_c0::m.field_0x50 + (float)(getSwimTimerRate() * daPy_HIO_swim_c0::m.field_0x74));
mFrameCtrl[0].setRate((std::fabsf(mVelocity) * (m_HIO->mSwim.m.field_0x54 - m_HIO->mSwim.m.field_0x50)) / mMaxNormalSpeed + m_HIO->mSwim.m.field_0x50 + (float)(getSwimTimerRate() * m_HIO->mSwim.m.field_0x74));
}
if (mDirection == DIR_BACKWARD) {

File diff suppressed because it is too large Load Diff

View File

@ -250,10 +250,10 @@ BOOL daPy_lk_c::procTactWait_init(int r30) {
commonProcInit(daPyProc_TACT_WAIT_e);
daPy_matAnm_c::offMabaFlg();
setSingleMoveAnime(ANM_WAITTAKT, daPy_HIO_tact_c0::m.mAnmRate, 0.0f, -1, daPy_HIO_tact_c0::m.field_0x4);
setActAnimeUpper(LKANM_BCK_WAITTAKT, UPPER_MOVE1_e, daPy_HIO_tact_c0::m.mAnmRate, 0.0f, -1, -1.0f);
setSingleMoveAnime(ANM_WAITTAKT, m_HIO->mItem.mTact.m.mAnmRate, 0.0f, -1, m_HIO->mItem.mTact.m.field_0x4);
setActAnimeUpper(LKANM_BCK_WAITTAKT, UPPER_MOVE1_e, m_HIO->mItem.mTact.m.mAnmRate, 0.0f, -1, -1.0f);
mAnmRatioUpper[UPPER_MOVE1_e].setRatio(0.0f);
setActAnimeUpper(LKANM_BCK_WAITTAKT, UPPER_MOVE2_e, daPy_HIO_tact_c0::m.mAnmRate, 0.0f, -1, -1.0f);
setActAnimeUpper(LKANM_BCK_WAITTAKT, UPPER_MOVE2_e, m_HIO->mItem.mTact.m.mAnmRate, 0.0f, -1, -1.0f);
mAnmRatioUpper[UPPER_MOVE2_e].setRatio(0.0f);
mVelocity = 0.0f;
m34D4 = 0;
@ -376,14 +376,14 @@ BOOL daPy_lk_c::procTactWait() {
setActAnimeUpper(
getTactPlayRightArmAnm(rightDir),
UPPER_MOVE1_e,
daPy_HIO_tact_c0::m.mRightArmAnmRate,
m_HIO->mItem.mTact.m.mRightArmAnmRate,
0.0f,
-1,
daPy_HIO_tact_c0::m.field_0xC
m_HIO->mItem.mTact.m.field_0xC
);
if (rightDir == 0 || rightDir == 2 || rightDir == 4) {
mFrameCtrlUpper[UPPER_MOVE1_e].setRate(daPy_HIO_tact_c0::m.mAnmRate);
mFrameCtrlUpper[UPPER_MOVE1_e].setRate(m_HIO->mItem.mTact.m.mAnmRate);
mFrameCtrlUpper[UPPER_MOVE1_e].setFrame(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());
}
@ -413,14 +413,14 @@ BOOL daPy_lk_c::procTactWait() {
if (m35A8 <= 0.0f || leftDir != 0) {
f32 rate;
if (m34D4 == 4) {
rate = daPy_HIO_tact_c0::m.field_0x14;
rate = m_HIO->mItem.mTact.m.field_0x14;
} else if (m34D4 == 2) {
rate = daPy_HIO_tact_c0::m.field_0x18;
rate = m_HIO->mItem.mTact.m.field_0x18;
} else {
rate = daPy_HIO_tact_c0::m.field_0x10;
rate = m_HIO->mItem.mTact.m.field_0x10;
}
setActAnimeUpper(
getTactPlayLeftArmAnm(leftDir), UPPER_MOVE2_e, rate, 0.0f, -1, daPy_HIO_tact_c0::m.field_0xC
getTactPlayLeftArmAnm(leftDir), UPPER_MOVE2_e, rate, 0.0f, -1, m_HIO->mItem.mTact.m.field_0xC
);
m34D6 = leftDir;
mAnmRatioUpper[UPPER_MOVE2_e].setRatio(0.0f);
@ -488,11 +488,11 @@ BOOL daPy_lk_c::procTactWait() {
f32 f0;
if (m34D4 == 4) {
f0 = daPy_HIO_tact_c0::m.field_0x14;
f0 = m_HIO->mItem.mTact.m.field_0x14;
} else if (m34D4 == 2) {
f0 = daPy_HIO_tact_c0::m.field_0x18;
f0 = m_HIO->mItem.mTact.m.field_0x18;
} else {
f0 = daPy_HIO_tact_c0::m.field_0x10;
f0 = m_HIO->mItem.mTact.m.field_0x10;
}
mFrameCtrlUpper[UPPER_MOVE2_e].setRate(f0);
@ -661,7 +661,7 @@ BOOL daPy_lk_c::procTactPlay() {
m34D0 = 1;
mDoAud_tact_reset();
setSingleMoveAnime(ANM_WAITTAKT, daPy_HIO_tact_c0::m.mAnmRate, 0.0f, -1, 10.0f);
setSingleMoveAnime(ANM_WAITTAKT, m_HIO->mItem.mTact.m.mAnmRate, 0.0f, -1, 10.0f);
setTextureAnime(6, 0);
onModeFlg(ModeFlg_00000100);
offModeFlg(ModeFlg_00000400);
@ -678,7 +678,7 @@ BOOL daPy_lk_c::procTactPlayEnd_init(int r30) {
initShipRideUseItem(r28, 2);
mProcVar0.m3570 = r30;
mVelocity = 0.0f;
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
if (r30 == -1) {
dCam_getBody()->EndEventCamera(fopAcM_GetID(this));
@ -789,7 +789,7 @@ BOOL daPy_lk_c::procTactPlayOriginal_init() {
dComIfGp_setPlayerStatus1(0, daPyStts1_WIND_WAKER_CONDUCT_e);
m34D0 = 0;
daPy_matAnm_c::offMabaFlg();
setSingleMoveAnime(ANM_WAITTAKT, daPy_HIO_tact_c0::m.mAnmRate, 0.0f, -1, daPy_HIO_tact_c0::m.field_0x4);
setSingleMoveAnime(ANM_WAITTAKT, m_HIO->mItem.mTact.m.mAnmRate, 0.0f, -1, m_HIO->mItem.mTact.m.field_0x4);
mProcVar0.m3570 = dComIfGp_event_getTactFreeMStick(m34D0);
setActAnimeUpper(getTactPlayRightArmAnm(mProcVar0.m3570), UPPER_MOVE1_e, 0.0f, 0.0f, -1, -1.0f);
@ -830,16 +830,16 @@ BOOL daPy_lk_c::procTactPlayOriginal() {
mProcVar0.m3570 = dComIfGp_event_getTactFreeMStick(m34D0);
setActAnimeUpper(
getTactPlayRightArmAnm(mProcVar0.m3570), UPPER_MOVE1_e, daPy_HIO_tact_c0::m.mRightArmAnmRate, 0.0f, -1, 5.0f
getTactPlayRightArmAnm(mProcVar0.m3570), UPPER_MOVE1_e, m_HIO->mItem.mTact.m.mRightArmAnmRate, 0.0f, -1, 5.0f
);
mAnmRatioUpper[UPPER_MOVE1_e].setRatio(0.0f);
if (mProcVar0.m3570 == 0 || mProcVar0.m3570 == 2 || mProcVar0.m3570 == 4) {
mFrameCtrlUpper[UPPER_MOVE1_e].setRate(daPy_HIO_tact_c0::m.mAnmRate);
mFrameCtrlUpper[UPPER_MOVE1_e].setRate(m_HIO->mItem.mTact.m.mAnmRate);
mFrameCtrlUpper[UPPER_MOVE1_e].setFrame(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());
}
m3574 = dComIfGp_event_getTactFreeCStick(m34D0);
setActAnimeUpper(getTactPlayLeftArmAnm(m3574), UPPER_MOVE2_e, daPy_HIO_tact_c0::m.mAnmRate, 0.0f, -1, 5.0f);
setActAnimeUpper(getTactPlayLeftArmAnm(m3574), UPPER_MOVE2_e, m_HIO->mItem.mTact.m.mAnmRate, 0.0f, -1, 5.0f);
mAnmRatioUpper[UPPER_MOVE2_e].setRatio(0.0f);
mFrameCtrlUpper[UPPER_MOVE2_e].setFrame(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());

View File

@ -41,13 +41,13 @@ BOOL daPy_lk_c::procVomitReady_init(s16 param_0, f32 param_1) {
commonProcInit(daPyProc_VOMIT_READY_e);
setSingleMoveAnime(
ANM_MSTEPOVER,
daPy_HIO_vomit_c0::m.field_0xC,
daPy_HIO_vomit_c0::m.field_0x10,
daPy_HIO_vomit_c0::m.field_0x0,
daPy_HIO_vomit_c0::m.field_0x14
m_HIO->mVomit.m.field_0xC,
m_HIO->mVomit.m.field_0x10,
m_HIO->mVomit.m.field_0x0,
m_HIO->mVomit.m.field_0x14
);
speed.y = daPy_HIO_vomit_c0::m.field_0x18;
mVelocity = (param_1 * -gravity) / (2.0f * daPy_HIO_vomit_c0::m.field_0x18);
speed.y = m_HIO->mVomit.m.field_0x18;
mVelocity = (param_1 * -gravity) / (2.0f * m_HIO->mVomit.m.field_0x18);
if (checkHeavyStateOn()) {
speed.y *= 1.5f;
mVelocity *= 1.5f;
@ -63,11 +63,11 @@ BOOL daPy_lk_c::procVomitReady() {
setFallVoice();
if (!checkJumpFlower()) {
if (mAcch.ChkGroundHit()) {
changeLandProc(daPy_HIO_autoJump_c0::m.field_0x24);
changeLandProc(m_HIO->mAutoJump.m.field_0x24);
} else if (checkFanGlideProc(0)) {
return true;
} else if (speed.y < -gravity) {
setSingleMoveAnime(ANM_JMPEDS, 0.0f, 0.0f, -1, daPy_HIO_wallCatch_c0::m.field_0x54);
setSingleMoveAnime(ANM_JMPEDS, 0.0f, 0.0f, -1, m_HIO->mWallCatch.m.field_0x54);
offModeFlg(ModeFlg_00000400);
setTextureAnime(0x37, 0);
resetSeAnime();
@ -188,7 +188,7 @@ BOOL daPy_lk_c::procVomitJump_init(int param_0) {
speed.y = 46.0f;
mProcVar0.m3570 = 1;
} else {
speed.y = daPy_HIO_vomit_c0::m.field_0x1C;
speed.y = m_HIO->mVomit.m.field_0x1C;
}
m34D2 = 0;
}
@ -202,7 +202,7 @@ BOOL daPy_lk_c::procVomitJump() {
if (m34D2 == 0) {
voiceStart(0);
speed.y = 46.0f;
gravity = daPy_HIO_autoJump_c0::m.field_0xC;
gravity = m_HIO->mAutoJump.m.field_0xC;
}
mStts.ClrCcMove();
return true;
@ -214,15 +214,15 @@ BOOL daPy_lk_c::procVomitJump() {
}
if (!checkJumpFlower()) {
if (mAcch.ChkGroundHit()) {
changeLandProc(daPy_HIO_autoJump_c0::m.field_0x24);
changeLandProc(m_HIO->mAutoJump.m.field_0x24);
} else {
s16 sVar1 = shape_angle.x;
shape_angle.x = sVar1 + daPy_HIO_vomit_c0::m.field_0x2;
shape_angle.x = sVar1 + m_HIO->mVomit.m.field_0x2;
if (sVar1 < 0 && 0 < shape_angle.x) {
seStartOnlyReverb(JA_SE_LK_JUMP_FLOWER_OUT);
}
if (mProcVar0.m3570 == 1) {
cLib_addCalc(&mVelocity, daPy_HIO_vomit_c0::m.field_0x20, 0.5f, 2.0f, 0.1f);
cLib_addCalc(&mVelocity, m_HIO->mVomit.m.field_0x20, 0.5f, 2.0f, 0.1f);
} else {
f32 fVar2;
if (!checkFanGlideProc(1)) {
@ -239,7 +239,7 @@ BOOL daPy_lk_c::procVomitJump() {
fVar2 = 0.0f;
}
cLib_addCalc(
&mVelocity, (daPy_HIO_vomit_c0::m.field_0x20 * mStickDistance * fVar2), 0.5f, 2.0f, 0.1f
&mVelocity, (m_HIO->mVomit.m.field_0x20 * mStickDistance * fVar2), 0.5f, 2.0f, 0.1f
);
}
}
@ -254,12 +254,12 @@ BOOL daPy_lk_c::procVomitLand_init() {
mVelocity = 0.0f;
setSingleMoveAnime(
ANM_LANDDAMA,
daPy_HIO_vomit_c0::m.field_0x24,
daPy_HIO_vomit_c0::m.field_0x28,
daPy_HIO_vomit_c0::m.field_0x4,
daPy_HIO_vomit_c0::m.field_0x2C
m_HIO->mVomit.m.field_0x24,
m_HIO->mVomit.m.field_0x28,
m_HIO->mVomit.m.field_0x4,
m_HIO->mVomit.m.field_0x2C
);
m34D0 = daPy_HIO_vomit_c0::m.field_0x6;
m34D0 = m_HIO->mVomit.m.field_0x6;
mProcVar0.m3570 = 0;
m34BE = 5;
return true;
@ -271,7 +271,7 @@ BOOL daPy_lk_c::procVomitLand() {
if (mProcVar0.m3570 != 0) {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
checkNextMode(0);
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_vomit_c0::m.field_0x3C) {
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mVomit.m.field_0x3C) {
checkNextMode(1);
}
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f) {
@ -280,10 +280,10 @@ BOOL daPy_lk_c::procVomitLand() {
} else {
setSingleMoveAnime(
ANM_LANDDAMAST,
daPy_HIO_vomit_c0::m.field_0x30,
daPy_HIO_vomit_c0::m.field_0x34,
daPy_HIO_vomit_c0::m.field_0x8,
daPy_HIO_vomit_c0::m.field_0x38
m_HIO->mVomit.m.field_0x30,
m_HIO->mVomit.m.field_0x34,
m_HIO->mVomit.m.field_0x8,
m_HIO->mVomit.m.field_0x38
);
mProcVar0.m3570 = 1;
}

View File

@ -49,10 +49,10 @@ BOOL daPy_lk_c::procWeaponNormalSwing_init() {
commonProcInit(daPyProc_WEAPON_NORMAL_SWING_e);
setSingleMoveAnime(
ANM_CUTBOKO,
daPy_HIO_cutBoko_c0::m.field_0x10,
daPy_HIO_cutBoko_c0::m.field_0x18,
daPy_HIO_cutBoko_c0::m.field_0x6,
daPy_HIO_cutBoko_c0::m.field_0x34
m_HIO->mCut.mCutBoko.m.field_0x10,
m_HIO->mCut.mCutBoko.m.field_0x18,
m_HIO->mCut.mCutBoko.m.field_0x6,
m_HIO->mCut.mCutBoko.m.field_0x34
);
current.angle.y = shape_angle.y;
m3700 = cXyz::Zero;
@ -67,7 +67,7 @@ BOOL daPy_lk_c::procWeaponNormalSwing_init() {
m351E = m34DC;
setBlurPosResource(LKANM__CUTBOKO_POS);
setEnemyWeaponAtParam(0);
m34D0 = daPy_HIO_cutBoko_c0::m.field_0x4;
m34D0 = m_HIO->mCut.mCutBoko.m.field_0x4;
return true;
}
@ -94,7 +94,7 @@ BOOL daPy_lk_c::procWeaponNormalSwing() {
checkNextMode(0);
return true;
}
} else if (frameCtrl.getFrame() > daPy_HIO_cutBoko_c0::m.field_0x1C) {
} else if (frameCtrl.getFrame() > m_HIO->mCut.mCutBoko.m.field_0x1C) {
f32 dVar4 = mVelocity;
u8 orig_direction = mDirection;
mVelocity = 0.0f;
@ -118,21 +118,21 @@ BOOL daPy_lk_c::procWeaponNormalSwing() {
cLib_addCalcAngleS(
&shape_angle.y,
m34D4,
daPy_HIO_turn_c0::m.field_0x4,
daPy_HIO_turn_c0::m.field_0x0,
daPy_HIO_turn_c0::m.field_0x2
m_HIO->mTurn.m.field_0x4,
m_HIO->mTurn.m.field_0x0,
m_HIO->mTurn.m.field_0x2
);
}
current.angle.y = shape_angle.y;
if (frameCtrl.checkPass(daPy_HIO_cutBoko_c0::m.field_0x38)) {
mVelocity = std::fabsf(speedF) * daPy_HIO_cutBoko_c0::m.field_0x20 + daPy_HIO_cutBoko_c0::m.field_0x24;
if (frameCtrl.checkPass(m_HIO->mCut.mCutBoko.m.field_0x38)) {
mVelocity = std::fabsf(speedF) * m_HIO->mCut.mCutBoko.m.field_0x20 + m_HIO->mCut.mCutBoko.m.field_0x24;
}
if (frameCtrl.checkPass(daPy_HIO_cutBoko_c0::m.field_0x3C)) {
frameCtrl.setRate(daPy_HIO_cutBoko_c0::m.field_0x14);
if (frameCtrl.checkPass(m_HIO->mCut.mCutBoko.m.field_0x3C)) {
frameCtrl.setRate(m_HIO->mCut.mCutBoko.m.field_0x14);
}
if (frameCtrl.getFrame() >= daPy_HIO_cutBoko_c0::m.field_0x40 &&
frameCtrl.getFrame() < daPy_HIO_cutBoko_c0::m.field_0x44)
if (frameCtrl.getFrame() >= m_HIO->mCut.mCutBoko.m.field_0x40 &&
frameCtrl.getFrame() < m_HIO->mCut.mCutBoko.m.field_0x44)
{
if (!checkNoResetFlg0(daPyFlg0_CUT_AT_FLG)) {
onResetFlg0(daPyRFlg0_UNK1);
@ -143,9 +143,9 @@ BOOL daPy_lk_c::procWeaponNormalSwing() {
cLib_addCalc(
&mVelocity,
0.0f,
daPy_HIO_cutBoko_c0::m.field_0x30,
daPy_HIO_cutBoko_c0::m.field_0x28,
daPy_HIO_cutBoko_c0::m.field_0x2C
m_HIO->mCut.mCutBoko.m.field_0x30,
m_HIO->mCut.mCutBoko.m.field_0x28,
m_HIO->mCut.mCutBoko.m.field_0x2C
);
return true;
@ -156,10 +156,10 @@ BOOL daPy_lk_c::procWeaponSideSwing_init() {
commonProcInit(daPyProc_WEAPON_SIDE_SWING_e);
setSingleMoveAnime(
ANM_HAMSWINGA,
daPy_HIO_cutBoko_c0::m.field_0x48,
daPy_HIO_cutBoko_c0::m.field_0x4C,
daPy_HIO_cutBoko_c0::m.field_0x8,
daPy_HIO_cutBoko_c0::m.field_0x54
m_HIO->mCut.mCutBoko.m.field_0x48,
m_HIO->mCut.mCutBoko.m.field_0x4C,
m_HIO->mCut.mCutBoko.m.field_0x8,
m_HIO->mCut.mCutBoko.m.field_0x54
);
current.angle.y = shape_angle.y;
mVelocity = 0.0f;
@ -185,7 +185,7 @@ BOOL daPy_lk_c::procWeaponSideSwing() {
return true;
}
if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_cutBoko_c0::m.field_0x50) {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mCut.mCutBoko.m.field_0x50) {
f32 dVar4 = mVelocity;
u8 orig_direction = mDirection;
mVelocity = 0.0f;
@ -208,14 +208,14 @@ BOOL daPy_lk_c::procWeaponSideSwing() {
cLib_addCalcAngleS(
&shape_angle.y,
m34D4,
daPy_HIO_turn_c0::m.field_0x4,
daPy_HIO_turn_c0::m.field_0x0,
daPy_HIO_turn_c0::m.field_0x2
m_HIO->mTurn.m.field_0x4,
m_HIO->mTurn.m.field_0x0,
m_HIO->mTurn.m.field_0x2
);
}
current.angle.y = shape_angle.y;
if ((mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() >= daPy_HIO_cutBoko_c0::m.field_0x58) &&
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < daPy_HIO_cutBoko_c0::m.field_0x5C))
if ((mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() >= m_HIO->mCut.mCutBoko.m.field_0x58) &&
(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() < m_HIO->mCut.mCutBoko.m.field_0x5C))
{
if (!checkNoResetFlg0(daPyFlg0_CUT_AT_FLG)) {
onResetFlg0(daPyRFlg0_UNK1);
@ -232,10 +232,10 @@ BOOL daPy_lk_c::procWeaponFrontSwingReady_init() {
commonProcInit(daPyProc_WEAPON_FRONT_SWING_READY_e);
setSingleMoveAnime(
ANM_HAMSWINGBPRE,
daPy_HIO_cutBoko_c0::m.field_0x60,
daPy_HIO_cutBoko_c0::m.field_0x64,
daPy_HIO_cutBoko_c0::m.field_0xA,
daPy_HIO_cutBoko_c0::m.field_0x68
m_HIO->mCut.mCutBoko.m.field_0x60,
m_HIO->mCut.mCutBoko.m.field_0x64,
m_HIO->mCut.mCutBoko.m.field_0xA,
m_HIO->mCut.mCutBoko.m.field_0x68
);
current.angle.y = shape_angle.y;
mVelocity = 0.0f;
@ -265,9 +265,9 @@ BOOL daPy_lk_c::procWeaponFrontSwingReady() {
cLib_addCalcAngleS(
&shape_angle.y,
m34D4,
daPy_HIO_turn_c0::m.field_0x4,
daPy_HIO_turn_c0::m.field_0x0,
daPy_HIO_turn_c0::m.field_0x2
m_HIO->mTurn.m.field_0x4,
m_HIO->mTurn.m.field_0x0,
m_HIO->mTurn.m.field_0x2
);
}
@ -280,9 +280,9 @@ BOOL daPy_lk_c::procWeaponFrontSwing_init() {
commonProcInit(daPyProc_WEAPON_FRONT_SWING_e);
setSingleMoveAnime(
ANM_HAMSWINGBHIT,
4.0f * daPy_HIO_cutBoko_c0::m.field_0x6C,
daPy_HIO_cutBoko_c0::m.field_0x70,
daPy_HIO_cutBoko_c0::m.field_0xC,
4.0f * m_HIO->mCut.mCutBoko.m.field_0x6C,
m_HIO->mCut.mCutBoko.m.field_0x70,
m_HIO->mCut.mCutBoko.m.field_0xC,
0.0f
);
current.angle.y = shape_angle.y;
@ -320,9 +320,9 @@ BOOL daPy_lk_c::procWeaponFrontSwing() {
cLib_addCalcAngleS(
&shape_angle.y,
m34D4,
daPy_HIO_turn_c0::m.field_0x4,
daPy_HIO_turn_c0::m.field_0x0,
daPy_HIO_turn_c0::m.field_0x2
m_HIO->mTurn.m.field_0x4,
m_HIO->mTurn.m.field_0x0,
m_HIO->mTurn.m.field_0x2
);
}
current.angle.y = shape_angle.y;
@ -335,10 +335,10 @@ BOOL daPy_lk_c::procWeaponFrontSwingEnd_init() {
commonProcInit(daPyProc_WEAPON_FRONT_SWING_END_e);
setSingleMoveAnime(
ANM_HAMSWINGBEND,
daPy_HIO_cutBoko_c0::m.field_0x74,
daPy_HIO_cutBoko_c0::m.field_0x78,
daPy_HIO_cutBoko_c0::m.field_0xE,
daPy_HIO_cutBoko_c0::m.field_0x80
m_HIO->mCut.mCutBoko.m.field_0x74,
m_HIO->mCut.mCutBoko.m.field_0x78,
m_HIO->mCut.mCutBoko.m.field_0xE,
m_HIO->mCut.mCutBoko.m.field_0x80
);
current.angle.y = shape_angle.y;
mVelocity = 0.0f;
@ -356,7 +356,7 @@ BOOL daPy_lk_c::procWeaponFrontSwingEnd() {
if (mFrameCtrlUnder[UNDER_MOVE0_e].getRate() < 0.01f || mActorKeepEquip.getActor() == NULL) {
return checkNextMode(0);
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > daPy_HIO_cutBoko_c0::m.field_0x7C) {
} else if (mFrameCtrlUnder[UNDER_MOVE0_e].getFrame() > m_HIO->mCut.mCutBoko.m.field_0x7C) {
return checkNextMode(1);
} else {
return true;

View File

@ -25,24 +25,24 @@ void daPy_lk_c::setBlendWHideMoveAnime(f32 param_0) {
daPy_ANM dVar5;
if (!checkNoResetFlg0(daPyFlg0_UNK10000)) {
fVar1 = daPy_HIO_wall_c0::m.field_0x14;
fVar5 = daPy_HIO_wall_c0::m.field_0x40;
fVar1 = m_HIO->mWall.m.field_0x14;
fVar5 = m_HIO->mWall.m.field_0x40;
dVar6 = ANM_WALL;
sVar1 = daPy_HIO_wall_c0::m.field_0x8;
fVar6 = daPy_HIO_wall_c0::m.field_0x60;
fVar3 = daPy_HIO_wall_c0::m.field_0x58;
sVar1 = m_HIO->mWall.m.field_0x8;
fVar6 = m_HIO->mWall.m.field_0x60;
fVar3 = m_HIO->mWall.m.field_0x58;
if (mDirection == DIR_LEFT) {
dVar5 = ANM_WALLWR;
} else {
dVar5 = ANM_WALLWL;
}
} else {
fVar1 = daPy_HIO_wall_c0::m.field_0x18;
fVar5 = daPy_HIO_wall_c0::m.field_0x44;
fVar1 = m_HIO->mWall.m.field_0x18;
fVar5 = m_HIO->mWall.m.field_0x44;
dVar6 = ANM_WALLDW;
sVar1 = daPy_HIO_wall_c0::m.field_0xA;
fVar6 = daPy_HIO_wall_c0::m.field_0x64;
fVar3 = daPy_HIO_wall_c0::m.field_0x5C;
sVar1 = m_HIO->mWall.m.field_0xA;
fVar6 = m_HIO->mWall.m.field_0x64;
fVar3 = m_HIO->mWall.m.field_0x5C;
if (mDirection == DIR_LEFT) {
dVar5 = ANM_WALLWRDW;
} else {
@ -96,9 +96,9 @@ cM3dGPla* daPy_lk_c::getWHideModePolygon(cXyz* param_0, cXyz* param_1, cXyz* par
*param_2 = mLinkLinChk.GetCross();
cXyz local_3c;
local_3c.x = param_2->x + cM_ssin(uVar3) * daPy_HIO_wall_c0::m.field_0x50;
local_3c.x = param_2->x + cM_ssin(uVar3) * m_HIO->mWall.m.field_0x50;
local_3c.y = param_2->y;
local_3c.z = param_2->z + cM_ssin(uVar3) * daPy_HIO_wall_c0::m.field_0x50;
local_3c.z = param_2->z + cM_ssin(uVar3) * m_HIO->mWall.m.field_0x50;
mGndChk.SetPos(&local_3c);
float f31 = bgs->GroundCross(&mGndChk);
if (-G_CM3D_F_INF != f31 && (!cBgW_CheckBGround(bgs->GetTriPla(mGndChk)->GetNP()->y))) {
@ -153,12 +153,12 @@ cM3dGPla* daPy_lk_c::getWHideModePolygon(cXyz* param_0, cXyz* param_1, cXyz* par
if (direction != DIR_NONE) {
if (direction == DIR_LEFT) {
sVar7 = sVar7 - shape_angle.y;
param_2->x += daPy_HIO_wall_c0::m.field_0x54 * triPla->GetNP()->z;
param_2->z -= daPy_HIO_wall_c0::m.field_0x54 * triPla->GetNP()->x;
param_2->x += m_HIO->mWall.m.field_0x54 * triPla->GetNP()->z;
param_2->z -= m_HIO->mWall.m.field_0x54 * triPla->GetNP()->x;
} else {
sVar7 = shape_angle.y - sVar7;
param_2->x -= daPy_HIO_wall_c0::m.field_0x54 * triPla->GetNP()->z;
param_2->z += daPy_HIO_wall_c0::m.field_0x54 * triPla->GetNP()->x;
param_2->x -= m_HIO->mWall.m.field_0x54 * triPla->GetNP()->z;
param_2->z += m_HIO->mWall.m.field_0x54 * triPla->GetNP()->x;
}
if (sVar7 > 0x2aaa) {
return NULL;
@ -185,9 +185,9 @@ void daPy_lk_c::getWHideBasePos(cXyz* param_0) {
/* 80137640-8013769C .text getWHideNextPos__9daPy_lk_cFP4cXyzP4cXyz */
void daPy_lk_c::getWHideNextPos(cXyz* param_0, cXyz* param_1) {
param_1->set(
param_0->x + cM_ssin(current.angle.y) * daPy_HIO_wall_c0::m.field_0x54,
param_0->x + cM_ssin(current.angle.y) * m_HIO->mWall.m.field_0x54,
param_0->y,
param_0->z + cM_scos(current.angle.y) * daPy_HIO_wall_c0::m.field_0x54
param_0->z + cM_scos(current.angle.y) * m_HIO->mWall.m.field_0x54
);
}
@ -274,21 +274,21 @@ BOOL daPy_lk_c::procWHideReady_init(cM3dGPla* param_0, cXyz* param_1) {
m370C.z = param_1->z;
if (param_0 != NULL) {
m34D4 = cM_atan2s(param_0->mNormal.x, param_0->mNormal.z);
m370C.x += param_0->mNormal.x * daPy_HIO_wall_c0::m.field_0x50;
m370C.z += param_0->mNormal.z * daPy_HIO_wall_c0::m.field_0x50;
m370C.x += param_0->mNormal.x * m_HIO->mWall.m.field_0x50;
m370C.z += param_0->mNormal.z * m_HIO->mWall.m.field_0x50;
} else {
m34D4 = m352C;
m370C.x += cM_ssin(m352C) * daPy_HIO_wall_c0::m.field_0x50;
m370C.z += cM_scos(m352C) * daPy_HIO_wall_c0::m.field_0x50;
m370C.x += cM_ssin(m352C) * m_HIO->mWall.m.field_0x50;
m370C.z += cM_scos(m352C) * m_HIO->mWall.m.field_0x50;
}
if (mEquipItem == daPyItem_NONE_e) {
if (checkEquipAnime()) {
resetActAnimeUpper(UPPER_MOVE2_e, -1.0f);
}
setSingleMoveAnime(ANM_WALL, 0.0f, daPy_HIO_wall_c0::m.field_0x24, -1, daPy_HIO_wall_c0::m.field_0x34);
setSingleMoveAnime(ANM_WALL, 0.0f, m_HIO->mWall.m.field_0x24, -1, m_HIO->mWall.m.field_0x34);
mProcVar0.m3570 = 1;
} else {
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
setBlendMoveAnime(m_HIO->mBasic.m.field_0xC);
setAnimeUnequip();
mProcVar0.m3570 = 0;
}
@ -305,7 +305,7 @@ BOOL daPy_lk_c::procWHideReady() {
}
if (mProcVar0.m3570 == 0) {
if (checkNoUpperAnime()) {
setSingleMoveAnime(ANM_WALL, 0.0f, daPy_HIO_wall_c0::m.field_0x24, -1, daPy_HIO_wall_c0::m.field_0x34);
setSingleMoveAnime(ANM_WALL, 0.0f, m_HIO->mWall.m.field_0x24, -1, m_HIO->mWall.m.field_0x34);
mProcVar0.m3570 = 1;
}
return true;
@ -329,22 +329,22 @@ BOOL daPy_lk_c::procWHideWait_init() {
if (!checkNoResetFlg0(daPyFlg0_UNK10000)) {
dVar3 = ANM_WALL;
sVar2 = daPy_HIO_wall_c0::m.field_0x0;
dVar4 = daPy_HIO_wall_c0::m.field_0x38;
sVar2 = m_HIO->mWall.m.field_0x0;
dVar4 = m_HIO->mWall.m.field_0x38;
} else {
dVar3 = ANM_WALLDW;
sVar2 = daPy_HIO_wall_c0::m.field_0x2;
dVar4 = daPy_HIO_wall_c0::m.field_0x3C;
sVar2 = m_HIO->mWall.m.field_0x2;
dVar4 = m_HIO->mWall.m.field_0x3C;
}
if (mCurProc == daPyProc_WHIDE_READY_e) {
fVar1 = daPy_HIO_wall_c0::m.field_0x24;
fVar1 = m_HIO->mWall.m.field_0x24;
} else {
fVar1 = sVar2 - 0.001f;
}
dVar5 = fVar1;
commonProcInit(daPyProc_WHIDE_WAIT_e);
mVelocity = 0.0f;
setSingleMoveAnime(dVar3, daPy_HIO_wall_c0::m.field_0xC, dVar5, sVar2, dVar4);
setSingleMoveAnime(dVar3, m_HIO->mWall.m.field_0xC, dVar5, sVar2, dVar4);
current.angle.y = shape_angle.y;
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK1_e);
return true;
@ -364,22 +364,22 @@ BOOL daPy_lk_c::procWHideWait() {
if (iVar1 == 1) {
setSingleMoveAnime(
ANM_WALLDW,
daPy_HIO_wall_c0::m.field_0x10,
daPy_HIO_wall_c0::m.field_0x28,
daPy_HIO_wall_c0::m.field_0x2,
daPy_HIO_wall_c0::m.field_0x3C
m_HIO->mWall.m.field_0x10,
m_HIO->mWall.m.field_0x28,
m_HIO->mWall.m.field_0x2,
m_HIO->mWall.m.field_0x3C
);
onNoResetFlg0(daPyFlg0_UNK10000);
mAcchCir[2].SetWallH(89.9f);
} else if (iVar1 == -1) {
setSingleMoveAnime(
ANM_WALLDW,
-daPy_HIO_wall_c0::m.field_0x10,
daPy_HIO_wall_c0::m.field_0x28,
daPy_HIO_wall_c0::m.field_0x2,
daPy_HIO_wall_c0::m.field_0x3C
-m_HIO->mWall.m.field_0x10,
m_HIO->mWall.m.field_0x28,
m_HIO->mWall.m.field_0x2,
m_HIO->mWall.m.field_0x3C
);
mFrameCtrlUnder[UNDER_MOVE0_e].setFrame(daPy_HIO_wall_c0::m.field_0x2 - 0.001f);
mFrameCtrlUnder[UNDER_MOVE0_e].setFrame(m_HIO->mWall.m.field_0x2 - 0.001f);
mAnmRatioUnder[UNDER_MOVE0_e].getAnmTransform()->setFrame(mFrameCtrlUnder[UNDER_MOVE0_e].getFrame());
offNoResetFlg0(daPyFlg0_UNK10000);
mAcchCir[2].SetWallH(125.0f);
@ -468,7 +468,7 @@ BOOL daPy_lk_c::procWHideMove() {
setBlendWHideMoveAnime(2.0f);
}
if (direction == DIR_FORWARD || direction == DIR_BACKWARD) {
fVar2 = daPy_HIO_move_c0::m.field_0x14;
fVar2 = m_HIO->mMove.m.field_0x14;
fVar2 *= mStickDistance;
} else {
fVar2 = 0.0f;
@ -511,8 +511,8 @@ BOOL daPy_lk_c::procWHideMove() {
current.pos.x += 8.0f * cM_ssin(current.angle.y);
current.pos.z += 8.0f * cM_scos(current.angle.y);
}
current.pos.x -= 0.8f * daPy_HIO_wall_c0::m.field_0x50 * cM_ssin(shape_angle.y);
current.pos.z -= 0.8f * daPy_HIO_wall_c0::m.field_0x50 * cM_scos(shape_angle.y);
current.pos.x -= 0.8f * m_HIO->mWall.m.field_0x50 * cM_ssin(shape_angle.y);
current.pos.z -= 0.8f * m_HIO->mWall.m.field_0x50 * cM_scos(shape_angle.y);
setBlendWHideMoveAnime(-1.0f);
return true;
}
@ -527,20 +527,20 @@ BOOL daPy_lk_c::procWHidePeep_init() {
commonProcInit(daPyProc_WHIDE_PEEP_e);
if (!checkNoResetFlg0(daPyFlg0_UNK10000)) {
fVar1 = daPy_HIO_wall_c0::m.field_0x1C;
fVar3 = daPy_HIO_wall_c0::m.field_0x48;
fVar2 = daPy_HIO_wall_c0::m.field_0x2C;
sVar4 = daPy_HIO_wall_c0::m.field_0x4;
fVar1 = m_HIO->mWall.m.field_0x1C;
fVar3 = m_HIO->mWall.m.field_0x48;
fVar2 = m_HIO->mWall.m.field_0x2C;
sVar4 = m_HIO->mWall.m.field_0x4;
if (mDirection == DIR_LEFT) {
dVar2 = ANM_WALLPR;
} else {
dVar2 = ANM_WALLPL;
}
} else {
fVar1 = daPy_HIO_wall_c0::m.field_0x20;
fVar3 = daPy_HIO_wall_c0::m.field_0x4C;
fVar2 = daPy_HIO_wall_c0::m.field_0x30;
sVar4 = daPy_HIO_wall_c0::m.field_0x6;
fVar1 = m_HIO->mWall.m.field_0x20;
fVar3 = m_HIO->mWall.m.field_0x4C;
fVar2 = m_HIO->mWall.m.field_0x30;
sVar4 = m_HIO->mWall.m.field_0x6;
if (mDirection == DIR_LEFT) {
dVar2 = ANM_WALLPRDW;
} else {
@ -575,9 +575,9 @@ BOOL daPy_lk_c::procWHidePeep() {
dComIfGp_setPlayerStatus0(0, daPyStts0_UNK20_e);
}
if (!checkNoResetFlg0(daPyFlg0_UNK10000)) {
dVar3 = daPy_HIO_wall_c0::m.field_0x1C;
dVar3 = m_HIO->mWall.m.field_0x1C;
} else {
dVar3 = daPy_HIO_wall_c0::m.field_0x20;
dVar3 = m_HIO->mWall.m.field_0x20;
}
}