mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-21 14:07:29 -04:00
More d_a_player_main progress
This commit is contained in:
@@ -167,14 +167,14 @@ public:
|
||||
virtual ~J3DMaterialAnm() {};
|
||||
virtual void calc(J3DMaterial*) const;
|
||||
|
||||
const J3DTexMtxAnm& getTexMtxAnm(int i) const { return *mTexMtxAnm[i]; }
|
||||
const J3DTexMtxAnm* getTexMtxAnm(int i) const { return mTexMtxAnm[i]; }
|
||||
|
||||
private:
|
||||
/* 0x04 */ J3DMatColorAnm * mMatColorAnm[2];
|
||||
/* 0x14 */ J3DTexMtxAnm * mTexMtxAnm[8];
|
||||
/* 0x54 */ J3DTexNoAnm * mTexNoAnm[8];
|
||||
/* 0xB4 */ J3DTevColorAnm * mTevColorAnm[4];
|
||||
/* 0xD4 */ J3DTevKColorAnm * mTevKColorAnm[4];
|
||||
}; // Size: 0xF4
|
||||
/* 0x0C */ J3DTexMtxAnm * mTexMtxAnm[8];
|
||||
/* 0x2C */ J3DTexNoAnm * mTexNoAnm[8];
|
||||
/* 0x4C */ J3DTevColorAnm * mTevColorAnm[4];
|
||||
/* 0x5C */ J3DTevKColorAnm * mTevKColorAnm[4];
|
||||
}; // Size: 0x6C
|
||||
|
||||
#endif /* J3DMATERIALANM_H */
|
||||
|
||||
@@ -19,6 +19,10 @@ public:
|
||||
static u8 m_eye_move_flg;
|
||||
static u8 m_maba_timer;
|
||||
static u8 m_morf_frame;
|
||||
|
||||
public:
|
||||
/* 0x6C */ cXy mEyePosOld;
|
||||
/* 0x74 */ cXy mEyePos;
|
||||
};
|
||||
|
||||
class daPy_mtxFollowEcallBack_c : public dPa_levelEcallBack {
|
||||
@@ -86,6 +90,7 @@ public:
|
||||
daPyFlg0_PUSH_PULL_KEEP = 0x00000800,
|
||||
daPyFlg0_UNK1000 = 0x00001000,
|
||||
daPyFlg0_UNK4000 = 0x00004000,
|
||||
daPyFlg0_UNK10000 = 0x00010000,
|
||||
daPyFlg0_UNK200000 = 0x00200000,
|
||||
daPyFlg0_EQUIP_HEAVY_BOOTS = 0x02000000,
|
||||
daPyFlg0_NO_DRAW = 0x08000000,
|
||||
@@ -95,6 +100,7 @@ public:
|
||||
enum daPy_FLG1 {
|
||||
daPyFlg1_EQUIP_DRAGON_SHIELD = 0x00000001,
|
||||
daPyFlg1_NPC_CALL_COMMAND = 0x00000002,
|
||||
daPyFlg1_UNK8 = 0x00000008,
|
||||
daPyFlg1_FORCE_VOMIT_JUMP = 0x00000010,
|
||||
daPyFlg1_NPC_NOT_CHANGE = 0x00000040,
|
||||
daPyFlg1_UNK80 = 0x00000080,
|
||||
@@ -173,6 +179,8 @@ public:
|
||||
void offPlayerNoDraw() { offNoResetFlg0(daPyFlg0_NO_DRAW); }
|
||||
void onHeavyState() { onNoResetFlg0(daPyFlg0_HEAVY_STATE); }
|
||||
void offHeavyState() { offNoResetFlg0(daPyFlg0_HEAVY_STATE); }
|
||||
bool getHeavyState() { return checkNoResetFlg0(daPyFlg0_HEAVY_STATE); }
|
||||
bool getHeavyStateAndBoots() { return checkNoResetFlg0(static_cast<daPy_FLG0>(daPyFlg0_HEAVY_STATE | daPyFlg0_EQUIP_HEAVY_BOOTS)); }
|
||||
|
||||
void onNoResetFlg1(daPy_FLG1 flag) { mNoResetFlg1 |= flag; }
|
||||
void offNoResetFlg1(daPy_FLG1 flag) { mNoResetFlg1 &= ~flag; }
|
||||
@@ -220,9 +228,7 @@ public:
|
||||
// checkUseArrowEffect__9daPy_py_cCFv
|
||||
// checkNpcNotChange__9daPy_py_cCFv
|
||||
// checkFinalMasterSwordEquip__9daPy_py_cCFv
|
||||
// getHeavyState__9daPy_py_cFv
|
||||
// checkEquipHoverBoots__9daPy_py_cCFv
|
||||
// getHeavyStateAndBoots__9daPy_py_cFv
|
||||
// onNpcCallCommand__9daPy_py_cFv
|
||||
// onForceVomitJumpShort__9daPy_py_cFv
|
||||
// onNoFallVoice__9daPy_py_cFv
|
||||
|
||||
+212
-167
@@ -70,6 +70,9 @@ public:
|
||||
~daPy_footEffect_c() {}
|
||||
daPy_footEffect_c() {}
|
||||
|
||||
dPa_smokeEcallBack* getSmokeCallBack() { return &mSmokeCb; }
|
||||
dPa_followEcallBack* getOtherCallBack() { return &mFollowCb; }
|
||||
|
||||
/* 0x00 */ dPa_smokeEcallBack mSmokeCb;
|
||||
/* 0x20 */ dPa_followEcallBack mFollowCb;
|
||||
/* 0x34 */ u8 field_0x34[0x4C - 0x34];
|
||||
@@ -1066,8 +1069,8 @@ public:
|
||||
void setAnimeUnequipItem(u16);
|
||||
void setAnimeUnequip();
|
||||
void checkBossGomaStage();
|
||||
void checkSingleItemEquipAnime() const;
|
||||
void checkItemEquipAnime() const;
|
||||
BOOL checkSingleItemEquipAnime() const;
|
||||
BOOL checkItemEquipAnime() const;
|
||||
BOOL checkEquipAnime() const;
|
||||
void deleteEquipItem(int);
|
||||
void setFallVoice();
|
||||
@@ -1107,8 +1110,8 @@ public:
|
||||
void getDamageVec(dCcD_GObjInf*);
|
||||
void setOldRootQuaternion(s16, s16, s16);
|
||||
void checkRestHPAnime();
|
||||
void checkHeavyStateOn();
|
||||
void checkBottleItem(int) const;
|
||||
BOOL checkHeavyStateOn();
|
||||
BOOL checkBottleItem(int) const;
|
||||
void checkDrinkBottleItem(int) const;
|
||||
void checkOpenBottleItem(int) const;
|
||||
BOOL checkBowItem(int) const;
|
||||
@@ -1176,7 +1179,7 @@ public:
|
||||
void procBackJump();
|
||||
void procBackJumpLand_init();
|
||||
void procBackJumpLand();
|
||||
void checkAutoJumpFlying() const;
|
||||
int checkAutoJumpFlying() const;
|
||||
void procAutoJump_init();
|
||||
void procAutoJump();
|
||||
void procLand_init(f32, int);
|
||||
@@ -1493,7 +1496,7 @@ public:
|
||||
void procCrawlAutoMove();
|
||||
void procCrawlEnd_init(int, s16, s16);
|
||||
void procCrawlEnd();
|
||||
void checkGrabSpecialHeavyState();
|
||||
BOOL checkGrabSpecialHeavyState();
|
||||
void setWeaponBlur();
|
||||
BOOL checkGrabBarrelSearch(int);
|
||||
void setGrabItemPos();
|
||||
@@ -1812,6 +1815,9 @@ public:
|
||||
bool checkBoomerangCatchAnime() const { return m_anm_heap_upper[2].mIdx == LKANM_BCK_BOOMCATCH; };
|
||||
bool checkBoomerangThrowAnime() const { return m_anm_heap_upper[2].mIdx == LKANM_BCK_BOOMTHROW; };
|
||||
bool checkBoomerangReadyAnime() const { return m_anm_heap_upper[2].mIdx == LKANM_BCK_BOOMWAIT; };
|
||||
s16 checkTinkleShield() const { return mTinkleShieldTimer; }
|
||||
void setTinkleShield(s16 time) { mTinkleShieldTimer = time; }
|
||||
bool checkNoDamageMode() const { return checkEquipDragonShield() || checkTinkleShield() != 0; }
|
||||
|
||||
virtual MtxP getLeftHandMatrix() { return mpCLModel->getAnmMtx(0x08); } // cl_LhandA joint
|
||||
virtual MtxP getRightHandMatrix() { return mpCLModel->getAnmMtx(0x0C); } // cl_RhandA joint
|
||||
@@ -1856,17 +1862,18 @@ public:
|
||||
/* 0x032C */ J3DModel* mpCLModel;
|
||||
/* 0x0330 */ J3DModel* mpKatsuraModel;
|
||||
/* 0x0334 */ J3DModel* mpYamuModel;
|
||||
/* 0x0338 */ u8 field_0x0338[0x035C - 0x0338];
|
||||
/* 0x035C */ J3DAnmTexPattern* field_0x035c;
|
||||
/* 0x0360 */ u8 field_0x0360[0x0364 - 0x0360];
|
||||
/* 0x0338 */ ResTIMG* m0338;
|
||||
/* 0x033C */ ResTIMG m033C;
|
||||
/* 0x035C */ J3DAnmTexPattern* m035C;
|
||||
/* 0x0360 */ J3DTexNoAnm* mpTexNoAnm;
|
||||
/* 0x0364 */ J3DAnmTextureSRTKey* mpTexScrollResData;
|
||||
/* 0x0368 */ J3DTexMtxAnm* mpTexMtxAnm;
|
||||
/* 0x036C */ daPy_matAnm_c* mpTexEyeScroll[2];
|
||||
/* 0x0374 */ J3DShape* mpZOffBlendShape[4];
|
||||
/* 0x0384 */ J3DShape* mpZOffNoneShape[4];
|
||||
/* 0x0394 */ J3DShape* mpZOnShape[4];
|
||||
/* 0x03A4 */ J3DShape* field_0x03a4;
|
||||
/* 0x03A8 */ J3DShape* field_0x03a8;
|
||||
/* 0x03A4 */ J3DShape* m03A4;
|
||||
/* 0x03A8 */ J3DShape* m03A8;
|
||||
/* 0x03AC */ dBgS_AcchCir mAcchCir[3];
|
||||
/* 0x046C */ dBgS_LinkAcch mAcch;
|
||||
/* 0x0630 */ dBgS_LinkLinChk mLinkLinChk;
|
||||
@@ -1876,7 +1883,7 @@ public:
|
||||
/* 0x07C8 */ dBgS_LinkRoofChk mRoofChk;
|
||||
/* 0x0814 */ dBgS_ArrowLinChk mArrowLinChk;
|
||||
/* 0x0880 */ dBgS_MirLightLinChk mMirLightLinChk;
|
||||
/* 0x08EC */ dBgS_ObjGndChk_Spl field_0x08EC;
|
||||
/* 0x08EC */ dBgS_ObjGndChk_Spl m08EC;
|
||||
/* 0x0940 */ cBgS_PolyInfo mPolyInfo;
|
||||
/* 0x0950 */ daPy_HIO_c* m_HIO;
|
||||
/* 0x0954 */ J3DModel* mpHandsModel;
|
||||
@@ -1901,7 +1908,7 @@ public:
|
||||
/* 0x2E90 */ JKRSolidHeap* mpItemHeaps[2];
|
||||
/* 0x2E98 */ J3DModel* mpHeldItemModel;
|
||||
/* 0x2E9C */ mDoExt_bckAnm mSwordAnim;
|
||||
/* 0x2EAC */ u8 field_0x2EAC[0x2EB0 - 0x2EAC];
|
||||
/* 0x2EAC */ u8 m2EAC[0x2EB0 - 0x2EAC];
|
||||
/* 0x2EB0 */ J3DAnmTevRegKey* mpBombBrk;
|
||||
/* 0x2EB4 */ J3DAnmTevRegKey* mpGwp00BrkData;
|
||||
/* 0x2EB8 */ J3DAnmTextureSRTKey* mpGwp00BtkData;
|
||||
@@ -1909,7 +1916,7 @@ public:
|
||||
/* 0x2EC0 */ J3DAnmTextureSRTKey* mpIceArrowBtk;
|
||||
/* 0x2EC4 */ J3DAnmTextureSRTKey* mpLightArrowBtk;
|
||||
/* 0x2EC8 */ J3DAnmTextureSRTKey* mpGicer01Btk;
|
||||
/* 0x2ECC */ JKRSolidHeap* field_0x2ECC;
|
||||
/* 0x2ECC */ JKRSolidHeap* m2ECC;
|
||||
/* 0x2ED0 */ void* m_item_bck_buffer;
|
||||
/* 0x2ED4 */ J3DAnmTextureSRTKey* mpHeldItemModelAnimTexEx;
|
||||
/* 0x2ED8 */ J3DAnmTextureSRTKey* mpSwordAnimBTK;
|
||||
@@ -1917,11 +1924,11 @@ public:
|
||||
/* 0x2EE0 */ J3DModel* mpBottleContentsModel;
|
||||
/* 0x2EE4 */ J3DModel* mpBottleCapModel;
|
||||
/* 0x2EE8 */ J3DModel* mpSwordModel1;
|
||||
/* 0x2EEC */ u8 field_0x2EEC[0x2EF0 - 0x2EEC];
|
||||
/* 0x2EF0 */ J3DAnmColor* field_0x2ef0;
|
||||
/* 0x2EF4 */ J3DAnmTextureSRTKey* field_0x2ef4;
|
||||
/* 0x2EF8 */ J3DAnmTevRegKey* field_0x2ef8;
|
||||
/* 0x2EFC */ mDoExt_brkAnm field_0x2efc;
|
||||
/* 0x2EEC */ J3DModel* mpSwordTipStabModel;
|
||||
/* 0x2EF0 */ J3DAnmColor* m2EF0;
|
||||
/* 0x2EF4 */ J3DAnmTextureSRTKey* m2EF4;
|
||||
/* 0x2EF8 */ J3DAnmTevRegKey* m2EF8;
|
||||
/* 0x2EFC */ mDoExt_brkAnm m2EFC;
|
||||
/* 0x2F14 */ J3DModel* mpSuimenMunyaModel;
|
||||
/* 0x2F18 */ J3DAnmTextureSRTKey* mpSuimenMunyaBtk;
|
||||
/* 0x2F1C */ J3DModel* mpYuchw00Model;
|
||||
@@ -1958,183 +1965,221 @@ public:
|
||||
/* 0x31B0 */ fopAc_ac_c* mpAttnActorZ;
|
||||
/* 0x31B4 */ mDoExt_MtxCalcOldFrame* m_old_fdata;
|
||||
/* 0x31B8 */ s16 mTexAnimeResIdx;
|
||||
/* 0x31BA */ s16 field_0x31ba;
|
||||
/* 0x31BC */ s16 field_0x31bc;
|
||||
/* 0x31BE */ u8 field_0x31BE[0x31C0 - 0x31BE];
|
||||
/* 0x31BA */ s16 m31BA;
|
||||
/* 0x31BC */ s16 m31BC;
|
||||
/* 0x31BE */ u16 m31BE;
|
||||
/* 0x31C0 */ void* mpTextureAnimeResData;
|
||||
/* 0x31C4 */ JKRSolidHeap* mpTextureAnimeResHeap;
|
||||
/* 0x31C8 */ u16 mTexScrollResIdx;
|
||||
/* 0x31CA */ s16 field_0x31ca;
|
||||
/* 0x31CC */ s16 field_0x31cc;
|
||||
/* 0x31CE */ s16 field_0x31ce;
|
||||
/* 0x31CA */ s16 m31CA;
|
||||
/* 0x31CC */ s16 m31CC;
|
||||
/* 0x31CE */ s16 m31CE;
|
||||
/* 0x31D0 */ void* mpTextureScrollResData;
|
||||
/* 0x31D4 */ JKRSolidHeap* mpTextureScrollResHeap;
|
||||
/* 0x31D8 */ int mCurProcID;
|
||||
/* 0x31DC */ int (daPy_lk_c::*mCurProcFunc)();
|
||||
/* 0x31E8 */ daPy_footEffect_c field_0x31e8[2];
|
||||
/* 0x3280 */ dPa_rippleEcallBack field_0x3280;
|
||||
/* 0x31E8 */ daPy_footEffect_c m31E8[2];
|
||||
/* 0x3280 */ dPa_rippleEcallBack m3280;
|
||||
/* 0x3294 */ daPy_swimTailEcallBack_c mSwimTailEcallBack[2];
|
||||
/* 0x32E4 */ daPy_mtxFollowEcallBack_c field_0x32e4;
|
||||
/* 0x32F0 */ daPy_mtxFollowEcallBack_c field_0x32f0;
|
||||
/* 0x32E4 */ daPy_mtxFollowEcallBack_c m32E4;
|
||||
/* 0x32F0 */ daPy_mtxFollowEcallBack_c m32F0;
|
||||
/* 0x32FC */ dPa_smokeEcallBack mSmokeEcallBack;
|
||||
/* 0x331C */ dPa_cutTurnEcallBack_c field_0x331C;
|
||||
/* 0x332C */ dPa_cutTurnEcallBack_c field_0x332C;
|
||||
/* 0x333C */ dPa_cutTurnEcallBack_c field_0x333C;
|
||||
/* 0x334C */ daPy_waterDropEcallBack_c field_0x334C;
|
||||
/* 0x336C */ daPy_waterDropEcallBack_c field_0x336C;
|
||||
/* 0x338C */ daPy_followEcallBack_c field_0x338c;
|
||||
/* 0x33A8 */ daPy_mtxPosFollowEcallBack_c field_0x33a8;
|
||||
/* 0x33B8 */ daPy_dmEcallBack_c field_0x33b8[4];
|
||||
/* 0x33E8 */ daPy_mtxFollowEcallBack_c field_0x33E8;
|
||||
/* 0x331C */ dPa_cutTurnEcallBack_c m331C;
|
||||
/* 0x332C */ dPa_cutTurnEcallBack_c m332C;
|
||||
/* 0x333C */ dPa_cutTurnEcallBack_c m333C;
|
||||
/* 0x334C */ daPy_waterDropEcallBack_c m334C;
|
||||
/* 0x336C */ daPy_waterDropEcallBack_c m336C;
|
||||
/* 0x338C */ daPy_followEcallBack_c m338C;
|
||||
/* 0x33A8 */ daPy_mtxPosFollowEcallBack_c m33A8;
|
||||
/* 0x33B8 */ daPy_dmEcallBack_c m33B8[4];
|
||||
/* 0x33E8 */ daPy_mtxFollowEcallBack_c m33E8;
|
||||
/* 0x33F4 */ daPy_fanSwingEcallBack_c mFanSwingCb;
|
||||
/* 0x3400 */ daPy_mtxPosFollowEcallBack_c field_0x3400;
|
||||
/* 0x3410 */ daPy_followEcallBack_c field_0x3410;
|
||||
/* 0x342C */ daPy_mtxFollowEcallBack_c field_0x342C;
|
||||
/* 0x3438 */ daPy_followEcallBack_c field_0x3438;
|
||||
/* 0x3454 */ daPy_mtxFollowEcallBack_c field_0x3454;
|
||||
/* 0x3460 */ daPy_mtxPosFollowEcallBack_c field_0x3460[2];
|
||||
/* 0x3400 */ daPy_mtxPosFollowEcallBack_c m3400;
|
||||
/* 0x3410 */ daPy_followEcallBack_c m3410;
|
||||
/* 0x342C */ daPy_mtxFollowEcallBack_c m342C;
|
||||
/* 0x3438 */ daPy_followEcallBack_c m3438;
|
||||
/* 0x3454 */ daPy_mtxFollowEcallBack_c m3454;
|
||||
/* 0x3460 */ daPy_mtxPosFollowEcallBack_c m3460[2];
|
||||
/* 0x3480 */ dAttention_c* mpAttention;
|
||||
/* 0x3484 */ dAttList_c* mpAttnEntryA;
|
||||
/* 0x3488 */ dAttList_c* mpAttnEntryX;
|
||||
/* 0x348C */ dAttList_c* mpAttnEntryY;
|
||||
/* 0x3490 */ dAttList_c* mpAttnEntryZ;
|
||||
/* 0x3494 */ u8 field_0x3494[0x3498 - 0x3494];
|
||||
/* 0x3498 */ LIGHT_INFLUENCE field_0x3498;
|
||||
/* 0x34B8 */ u8 field_0x34B8[0x34B9 - 0x34B8];
|
||||
/* 0x3494 */ char* m3494;
|
||||
/* 0x3498 */ LIGHT_INFLUENCE m3498;
|
||||
/* 0x34B8 */ u8 m34B8;
|
||||
/* 0x34B9 */ u8 mFrontWallType;
|
||||
/* 0x34BA */ u8 field_0x34BA[0x34BB - 0x34BA];
|
||||
/* 0x34BA */ u8 m34BA;
|
||||
/* 0x34BB */ u8 mCurrItemHeapIdx;
|
||||
/* 0x34BC */ u8 field_0x34BC[0x34BD - 0x34BC];
|
||||
/* 0x34BC */ u8 m34BC;
|
||||
/* 0x34BD */ u8 mLastUsedEquipItem;
|
||||
/* 0x34BE */ u8 field_0x34BE[0x34BF - 0x34BE];
|
||||
/* 0x34BF */ s8 field_0x34bf;
|
||||
/* 0x34C0 */ u8 field_0x34c0;
|
||||
/* 0x34C1 */ u8 field_0x34c1;
|
||||
/* 0x34C2 */ u8 field_0x34c2;
|
||||
/* 0x34C3 */ u8 field_0x34c3;
|
||||
/* 0x34C4 */ u8 field_0x34c4;
|
||||
/* 0x34C5 */ u8 field_0x34c5;
|
||||
/* 0x34C6 */ u8 field_0x34C6[0x34C7 - 0x34C6];
|
||||
/* 0x34BE */ u8 m34BE;
|
||||
/* 0x34BF */ s8 mReverb;
|
||||
/* 0x34C0 */ u8 m34C0;
|
||||
/* 0x34C1 */ u8 m34C1;
|
||||
/* 0x34C2 */ u8 m34C2;
|
||||
/* 0x34C3 */ u8 m34C3;
|
||||
/* 0x34C4 */ u8 m34C4;
|
||||
/* 0x34C5 */ u8 m34C5;
|
||||
/* 0x34C6 */ u8 m34C6;
|
||||
/* 0x34C7 */ u8 mActivePlayerBombs;
|
||||
/* 0x34C8 */ u8 mPressedButtonsBitfield;
|
||||
/* 0x34C9 */ u8 field_0x34C9[0x34CB - 0x34C9];
|
||||
/* 0x34CB */ u8 field_0x34CB;
|
||||
/* 0x34CC */ u8 field_0x34D0[0x34D0 - 0x34CC];
|
||||
/* 0x34D0 */ s16 field_0x34d0;
|
||||
/* 0x34D2 */ s16 field_0x34d2;
|
||||
/* 0x34D4 */ s16 field_0x34d4;
|
||||
/* 0x34D6 */ s16 field_0x34d6;
|
||||
/* 0x34D8 */ s16 field_0x34d8;
|
||||
/* 0x34DA */ s16 field_0x34da;
|
||||
/* 0x34DC */ u8 field_0x34DC[0x34DE - 0x34DC];
|
||||
/* 0x34DE */ s16 field_0x34de;
|
||||
/* 0x34E0 */ s16 field_0x34E0;
|
||||
/* 0x34E2 */ s16 field_0x34E2;
|
||||
/* 0x34E4 */ s16 field_0x34E4;
|
||||
/* 0x34E6 */ s16 field_0x34e6;
|
||||
/* 0x34E8 */ s16 field_0x34E8;
|
||||
/* 0x34EA */ s16 field_0x34EA;
|
||||
/* 0x34EC */ s16 field_0x34EC;
|
||||
/* 0x34EE */ u16 field_0x34EE;
|
||||
/* 0x34F0 */ u16 field_0x34F0;
|
||||
/* 0x34F2 */ s16 field_0x34F2;
|
||||
/* 0x34F4 */ s16 field_0x34F4;
|
||||
/* 0x34F6 */ u8 field_0x34F6[0x3522 - 0x34F6];
|
||||
/* 0x3522 */ s16 field_0x3522;
|
||||
/* 0x3524 */ u8 field_0x3524[0x352C - 0x3524];
|
||||
/* 0x352C */ s16 field_0x352c;
|
||||
/* 0x352E */ s16 field_0x352e;
|
||||
/* 0x3530 */ s16 field_0x3530;
|
||||
/* 0x3532 */ s16 field_0x3532;
|
||||
/* 0x3534 */ u8 field_0x3534[0x3544 - 0x3534];
|
||||
/* 0x3544 */ s16 field_0x3544;
|
||||
/* 0x3546 */ u8 field_0x3546[0x354C - 0x3546];
|
||||
/* 0x354C */ s16 field_0x354c;
|
||||
/* 0x354E */ s16 field_0x354e;
|
||||
/* 0x3550 */ u8 field_0x3550[0x3554 - 0x3550];
|
||||
/* 0x3554 */ s16 field_0x3554;
|
||||
/* 0x3556 */ u8 field_0x3556[0x355E - 0x3556];
|
||||
/* 0x355E */ u16 field_0x355e;
|
||||
/* 0x34C9 */ u8 m34C9;
|
||||
/* 0x34CA */ u8 m34CA;
|
||||
/* 0x34CB */ u8 m34CB;
|
||||
/* 0x34CC */ u8 m34CC[0x34D0 - 0x34CC];
|
||||
/* 0x34D0 */ s16 m34D0;
|
||||
/* 0x34D2 */ s16 m34D2;
|
||||
/* 0x34D4 */ s16 m34D4;
|
||||
/* 0x34D6 */ s16 m34D6;
|
||||
/* 0x34D8 */ s16 m34D8;
|
||||
/* 0x34DA */ s16 m34DA;
|
||||
/* 0x34DC */ s16 m34DC;
|
||||
/* 0x34DE */ s16 m34DE;
|
||||
/* 0x34E0 */ s16 m34E0;
|
||||
/* 0x34E2 */ s16 m34E2;
|
||||
/* 0x34E4 */ s16 m34E4;
|
||||
/* 0x34E6 */ s16 m34E6;
|
||||
/* 0x34E8 */ s16 m34E8;
|
||||
/* 0x34EA */ s16 m34EA;
|
||||
/* 0x34EC */ s16 m34EC;
|
||||
/* 0x34EE */ u16 m34EE;
|
||||
/* 0x34F0 */ u16 m34F0;
|
||||
/* 0x34F2 */ s16 m34F2;
|
||||
/* 0x34F4 */ s16 m34F4;
|
||||
/* 0x34F6 */ s16 m34F6;
|
||||
/* 0x34F8 */ s16 m34F8;
|
||||
/* 0x34FA */ s16 m34FA;
|
||||
/* 0x34FC */ s16 m34FC;
|
||||
/* 0x34FE */ s16 m34FE;
|
||||
/* 0x3500 */ s16 m3500;
|
||||
/* 0x3502 */ s16 m3502;
|
||||
/* 0x3504 */ s16 m3504;
|
||||
/* 0x3506 */ s16 m3506;
|
||||
/* 0x3508 */ s16 m3508;
|
||||
/* 0x350A */ s16 m350A;
|
||||
/* 0x350C */ s16 m350C;
|
||||
/* 0x350E */ s16 m350E;
|
||||
/* 0x3510 */ s16 m3510;
|
||||
/* 0x3512 */ s16 m3512;
|
||||
/* 0x3514 */ s16 m3514;
|
||||
/* 0x3516 */ s16 m3516;
|
||||
/* 0x3518 */ s16 m3518;
|
||||
/* 0x351A */ s16 m351A;
|
||||
/* 0x351C */ s16 m351C;
|
||||
/* 0x351E */ s16 m351E;
|
||||
/* 0x3520 */ u8 m3520[0x3522 - 0x3520];
|
||||
/* 0x3522 */ s16 m3522;
|
||||
/* 0x3524 */ s16 m3524;
|
||||
/* 0x3526 */ s16 m3526;
|
||||
/* 0x3528 */ s16 m3528;
|
||||
/* 0x352A */ s16 m352A;
|
||||
/* 0x352C */ s16 m352C;
|
||||
/* 0x352E */ s16 m352E;
|
||||
/* 0x3530 */ s16 m3530;
|
||||
/* 0x3532 */ s16 m3532;
|
||||
/* 0x3534 */ s16 m3534;
|
||||
/* 0x3536 */ s16 m3536;
|
||||
/* 0x3538 */ s16 m3538;
|
||||
/* 0x353A */ s16 m353A;
|
||||
/* 0x353C */ s16 m353C;
|
||||
/* 0x353E */ s16 m353E;
|
||||
/* 0x3540 */ s16 m3540;
|
||||
/* 0x3542 */ u8 m3542[0x3544 - 0x3542];
|
||||
/* 0x3544 */ s16 m3544;
|
||||
/* 0x3546 */ s16 mShieldFrontRangeYAngle;
|
||||
/* 0x3548 */ u8 m3548[0x354C - 0x3548];
|
||||
/* 0x354C */ s16 m354C;
|
||||
/* 0x354E */ s16 mTinkleShieldTimer;
|
||||
/* 0x3550 */ u8 m3550[0x3554 - 0x3550];
|
||||
/* 0x3554 */ s16 m3554;
|
||||
/* 0x3556 */ u8 m3556[0x355E - 0x3556];
|
||||
/* 0x355E */ u16 m355E;
|
||||
/* 0x3560 */ u16 mHeldItemType;
|
||||
/* 0x3562 */ u8 field_0x3562[0x3564 - 0x3562];
|
||||
/* 0x3564 */ s16 field_0x3564;
|
||||
/* 0x3566 */ s16 field_0x3566;
|
||||
/* 0x3568 */ s16 field_0x3568;
|
||||
/* 0x356A */ u8 field_0x356A[0x356C - 0x356A];
|
||||
/* 0x3562 */ u8 m3562[0x3564 - 0x3562];
|
||||
/* 0x3564 */ s16 m3564;
|
||||
/* 0x3566 */ s16 m3566;
|
||||
/* 0x3568 */ s16 m3568;
|
||||
/* 0x356A */ u8 m356A[0x356C - 0x356A];
|
||||
/* 0x356C */ int mCameraInfoIdx;
|
||||
/* 0x3570 */ int field_0x3570;
|
||||
/* 0x3574 */ int field_0x3574;
|
||||
/* 0x3578 */ u8 field_0x3578[0x3580 - 0x3578];
|
||||
/* 0x3580 */ int field_0x3580;
|
||||
/* 0x3570 */ int m3570;
|
||||
/* 0x3574 */ int m3574;
|
||||
/* 0x3578 */ u8 m3578[0x3580 - 0x3578];
|
||||
/* 0x3580 */ int m3580;
|
||||
/* 0x3584 */ int mCurrentGroundAttributeCode;
|
||||
/* 0x3588 */ u8 field_0x3588[0x358C - 0x3588];
|
||||
/* 0x3588 */ u8 m3588[0x358C - 0x3588];
|
||||
/* 0x358C */ int mStaffIdx;
|
||||
/* 0x3590 */ int field_0x3590;
|
||||
/* 0x3594 */ int field_0x3594;
|
||||
/* 0x3598 */ f32 field_0x3598;
|
||||
/* 0x359C */ u8 field_0x359C[0x35A0 - 0x359C];
|
||||
/* 0x35A0 */ f32 field_0x35a0;
|
||||
/* 0x35A4 */ f32 field_0x35a4;
|
||||
/* 0x35A8 */ u8 field_0x35A8[0x35BC - 0x35A8];
|
||||
/* 0x3590 */ int m3590;
|
||||
/* 0x3594 */ int m3594;
|
||||
/* 0x3598 */ f32 m3598;
|
||||
/* 0x359C */ u8 m359C[0x35A0 - 0x359C];
|
||||
/* 0x35A0 */ f32 m35A0;
|
||||
/* 0x35A4 */ f32 m35A4;
|
||||
/* 0x35A8 */ u8 m35A8[0x35BC - 0x35A8];
|
||||
/* 0x35BC */ f32 mVelocity;
|
||||
/* 0x35C0 */ u8 field_0x35C0[0x35C4 - 0x35C0];
|
||||
/* 0x35C4 */ f32 field_0x35c4;
|
||||
/* 0x35C8 */ f32 field_0x35c8;
|
||||
/* 0x35CC */ u8 field_0x35CC[0x35D0 - 0x35CC];
|
||||
/* 0x35D0 */ f32 field_0x35d0;
|
||||
/* 0x35D4 */ u8 field_0x35D4[0x35D8 - 0x35D4];
|
||||
/* 0x35D8 */ f32 field_0x35d8;
|
||||
/* 0x35DC */ u8 field_0x35DC[0x35E4 - 0x35DC];
|
||||
/* 0x35E4 */ f32 field_0x35e4;
|
||||
/* 0x35E8 */ f32 field_0x35e8;
|
||||
/* 0x35EC */ f32 field_0x35ec;
|
||||
/* 0x35F0 */ f32 field_0x35f0;
|
||||
/* 0x35F4 */ f32 field_0x35f4;
|
||||
/* 0x35F8 */ u8 field_0x35F8[0x35FC - 0x35F8];
|
||||
/* 0x35FC */ f32 field_0x35fc;
|
||||
/* 0x3600 */ f32 field_0x3600;
|
||||
/* 0x3604 */ f32 field_0x3604;
|
||||
/* 0x3608 */ f32 field_0x3608;
|
||||
/* 0x360C */ f32 field_0x360C;
|
||||
/* 0x3610 */ f32 field_0x3610;
|
||||
/* 0x3614 */ int field_0x3614;
|
||||
/* 0x35C0 */ u8 m35C0[0x35C4 - 0x35C0];
|
||||
/* 0x35C4 */ f32 m35C4;
|
||||
/* 0x35C8 */ f32 m35C8;
|
||||
/* 0x35CC */ u8 m35CC[0x35D0 - 0x35CC];
|
||||
/* 0x35D0 */ f32 m35D0;
|
||||
/* 0x35D4 */ u8 m35D4[0x35D8 - 0x35D4];
|
||||
/* 0x35D8 */ f32 m35D8;
|
||||
/* 0x35DC */ u8 m35DC[0x35E4 - 0x35DC];
|
||||
/* 0x35E4 */ f32 m35E4;
|
||||
/* 0x35E8 */ f32 m35E8;
|
||||
/* 0x35EC */ f32 m35EC;
|
||||
/* 0x35F0 */ f32 m35F0;
|
||||
/* 0x35F4 */ f32 m35F4;
|
||||
/* 0x35F8 */ f32 m35F8;
|
||||
/* 0x35FC */ f32 m35FC;
|
||||
/* 0x3600 */ f32 m3600;
|
||||
/* 0x3604 */ f32 m3604;
|
||||
/* 0x3608 */ f32 m3608;
|
||||
/* 0x360C */ f32 m360C;
|
||||
/* 0x3610 */ f32 m3610;
|
||||
/* 0x3614 */ int m3614;
|
||||
/* 0x3618 */ u32 mProcFlags;
|
||||
/* 0x361C */ u8 field_0x361C[0x3624 - 0x361C];
|
||||
/* 0x3624 */ int field_0x3624;
|
||||
/* 0x3628 */ int field_0x3628;
|
||||
/* 0x362C */ u8 field_0x362C[0x3630 - 0x362C];
|
||||
/* 0x3630 */ int field_0x3630;
|
||||
/* 0x3634 */ int field_0x3634;
|
||||
/* 0x3638 */ u8 field_0x3638[0x3644 - 0x3638];
|
||||
/* 0x3644 */ f32 field_0x3644;
|
||||
/* 0x3648 */ u8 field_0x3648[0x3668 - 0x3648];
|
||||
/* 0x3668 */ J3DTransformInfo field_0x3668;
|
||||
/* 0x3688 */ cXyz field_0x3688;
|
||||
/* 0x361C */ u32 mMtrlSndId;
|
||||
/* 0x3620 */ u32 m3620;
|
||||
/* 0x3624 */ int m3624;
|
||||
/* 0x3628 */ int m3628;
|
||||
/* 0x362C */ u8 m362C[0x3630 - 0x362C];
|
||||
/* 0x3630 */ int m3630;
|
||||
/* 0x3634 */ int m3634;
|
||||
/* 0x3638 */ int mMsgId;
|
||||
/* 0x363C */ u8 m363C[0x3644 - 0x363C];
|
||||
/* 0x3644 */ f32 m3644;
|
||||
/* 0x3648 */ u8 m3648[0x3668 - 0x3648];
|
||||
/* 0x3668 */ J3DTransformInfo m3668;
|
||||
/* 0x3688 */ cXyz m3688;
|
||||
/* 0x3694 */ cXyz mOldSpeed;
|
||||
/* 0x36A0 */ cXyz field_0x36a0;
|
||||
/* 0x36AC */ cXyz field_0x36ac;
|
||||
/* 0x36B8 */ u8 field_0x36B8[0x36C4 - 0x36B8];
|
||||
/* 0x36C4 */ cXyz field_0x36c4;
|
||||
/* 0x36D0 */ u8 field_0x36D0[0x3700 - 0x36D0];
|
||||
/* 0x3700 */ cXyz field_0x3700;
|
||||
/* 0x370C */ cXyz field_0x370c;
|
||||
/* 0x3718 */ u8 field_0x3718[0x3724 - 0x3718];
|
||||
/* 0x3724 */ cXyz field_0x3724;
|
||||
/* 0x3730 */ cXyz field_0x3730;
|
||||
/* 0x373C */ u8 field_0x373C[0x3748 - 0x373C];
|
||||
/* 0x3748 */ cXyz field_0x3748;
|
||||
/* 0x3754 */ u8 field_0x3754[0x37E4 - 0x3754];
|
||||
/* 0x36A0 */ cXyz m36A0;
|
||||
/* 0x36AC */ cXyz m36AC;
|
||||
/* 0x36B8 */ cXyz m36B8;
|
||||
/* 0x36C4 */ cXyz m36C4;
|
||||
/* 0x36D0 */ cXyz m36D0;
|
||||
/* 0x36DC */ cXyz m36DC;
|
||||
/* 0x36E8 */ cXyz m36E8;
|
||||
/* 0x36F4 */ u8 m36F4[0x3700 - 0x36F4];
|
||||
/* 0x3700 */ cXyz m3700;
|
||||
/* 0x370C */ cXyz m370C;
|
||||
/* 0x3718 */ u8 m3718[0x3724 - 0x3718];
|
||||
/* 0x3724 */ cXyz m3724;
|
||||
/* 0x3730 */ cXyz m3730;
|
||||
/* 0x373C */ u8 m373C[0x3748 - 0x373C];
|
||||
/* 0x3748 */ cXyz m3748;
|
||||
/* 0x3754 */ u8 m3754[0x37E4 - 0x3754];
|
||||
/* 0x37E4 */ daPy_swBlur_c mSwBlur;
|
||||
/* 0x3DB8 */ daPy_footData_c mFootData[2];
|
||||
/* 0x3FE8 */ dCcD_Stts field_0x3fe8;
|
||||
/* 0x4024 */ dCcD_Cyl field_0x4024;
|
||||
/* 0x4154 */ dCcD_Cyl field_0x4154;
|
||||
/* 0x4284 */ dCcD_Cyl field_0x4284;
|
||||
/* 0x43B4 */ dCcD_Cyl field_0x43b4;
|
||||
/* 0x44E4 */ dCcD_Cps field_0x44e4[3];
|
||||
/* 0x488C */ dCcD_Cps field_0x488c;
|
||||
/* 0x49C4 */ dCcD_Sph field_0x49c4;
|
||||
/* 0x4AF0 */ dCcD_Cps field_0x4af0;
|
||||
/* 0x3FE8 */ dCcD_Stts mStts;
|
||||
/* 0x4024 */ dCcD_Cyl m4024;
|
||||
/* 0x4154 */ dCcD_Cyl m4154;
|
||||
/* 0x4284 */ dCcD_Cyl m4284;
|
||||
/* 0x43B4 */ dCcD_Cyl m43B4;
|
||||
/* 0x44E4 */ dCcD_Cps m44E4[3];
|
||||
/* 0x488C */ dCcD_Cps m488C;
|
||||
/* 0x49C4 */ dCcD_Sph m49C4;
|
||||
/* 0x4AF0 */ dCcD_Cps m4AF0;
|
||||
|
||||
typedef int (daPy_lk_c::*daPy_ProcFunc)();
|
||||
|
||||
|
||||
@@ -760,7 +760,7 @@ void daAgb_c::GbaItemUse() {
|
||||
case 3:
|
||||
daPy_lk_c* temp_r3 = daPy_getPlayerLinkActorClass();
|
||||
temp_r3->onNoResetFlg0(daPy_py_c::daPyFlg0_UNK1000);
|
||||
temp_r3->field_0x354c = 0x96;
|
||||
temp_r3->m354C = 5*30;
|
||||
resetCursor(false);
|
||||
field_0x65c = 0x96;
|
||||
mBrk.setPlaySpeed(6.0f);
|
||||
@@ -779,7 +779,7 @@ void daAgb_c::GbaItemUse() {
|
||||
mEffect = 0;
|
||||
return;
|
||||
} else {
|
||||
daPy_getPlayerLinkActorClass()->field_0x354e = 300;
|
||||
daPy_getPlayerLinkActorClass()->setTinkleShield(300);
|
||||
resetCursor(false);
|
||||
field_0x65c = 300;
|
||||
mBrk.setPlaySpeed(6.0f);
|
||||
@@ -792,9 +792,9 @@ void daAgb_c::GbaItemUse() {
|
||||
} else {
|
||||
daPy_lk_c* temp_r4 = daPy_getPlayerLinkActorClass();
|
||||
temp_r4->onNoResetFlg0(daPy_py_c::daPyFlg0_UNK1000);
|
||||
temp_r4->field_0x354c = 300;
|
||||
temp_r4->m354C = 300;
|
||||
if (!(daPy_getPlayerLinkActorClass()->checkEquipDragonShield())) {
|
||||
temp_r4->field_0x354e = 300;
|
||||
temp_r4->setTinkleShield(300);
|
||||
}
|
||||
|
||||
resetCursor(false);
|
||||
@@ -812,7 +812,7 @@ void daAgb_c::GbaItemUse() {
|
||||
return;
|
||||
}
|
||||
|
||||
daPy_getPlayerLinkActorClass()->field_0x354e = 600;
|
||||
daPy_getPlayerLinkActorClass()->setTinkleShield(600);
|
||||
|
||||
resetCursor(false);
|
||||
field_0x65c = 600;
|
||||
@@ -953,12 +953,11 @@ int daAgb_Execute(daAgb_c* i_this) {
|
||||
if (i_this->field_0x66b == 3 || i_this->field_0x66b == 12) {
|
||||
daPy_lk_c* player_p = daPy_getPlayerLinkActorClass();
|
||||
player_p->onNoResetFlg0(daPy_py_c::daPyFlg0_UNK1000);
|
||||
player_p->field_0x354c = 10;
|
||||
player_p->m354C = 10;
|
||||
} else if (i_this->field_0x66b == 4 || i_this->field_0x66b == 13 ||
|
||||
i_this->field_0x66b == 12)
|
||||
{
|
||||
daPy_lk_c* player_p = daPy_getPlayerLinkActorClass();
|
||||
player_p->field_0x354e = 10;
|
||||
daPy_getPlayerLinkActorClass()->setTinkleShield(10);
|
||||
}
|
||||
|
||||
i_this->field_0x65c = 0;
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
#include "d/actor/d_a_player_link.h"
|
||||
|
||||
/* 8013A85C-8013A890 .text checkGrabSpecialHeavyState__9daPy_lk_cFv */
|
||||
void daPy_lk_c::checkGrabSpecialHeavyState() {
|
||||
BOOL daPy_lk_c::checkGrabSpecialHeavyState() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
|
||||
+155
-92
@@ -29,28 +29,46 @@ static BOOL daPy_createHeap(fopAc_ac_c* i_this) {
|
||||
}
|
||||
|
||||
/* 80102F64-80103074 .text calc__13daPy_matAnm_cCFP11J3DMaterial */
|
||||
void daPy_matAnm_c::calc(J3DMaterial*) const {
|
||||
/* Nonmatching */
|
||||
void daPy_matAnm_c::calc(J3DMaterial* mat) const {
|
||||
daPy_matAnm_c* i_this = const_cast<daPy_matAnm_c*>(this);
|
||||
|
||||
J3DMaterialAnm::calc(mat);
|
||||
|
||||
for (u32 i = 0; i < 8; i++) {
|
||||
if (getTexMtxAnm(i)) {
|
||||
J3DTextureSRTInfo& srt = mat->getTexMtx(i)->getTexMtxInfo().mSRT;
|
||||
if (m_morf_frame != 0) {
|
||||
f32 temp = 1.0f / (m_morf_frame + 1);
|
||||
srt.mTranslationX = mEyePosOld.x * (1.0f - temp) + (srt.mTranslationX * temp);
|
||||
srt.mTranslationY = mEyePosOld.y * (1.0f - temp) + (srt.mTranslationY * temp);
|
||||
} else if (m_eye_move_flg != 0) {
|
||||
srt.mTranslationX = mEyePos.x;
|
||||
srt.mTranslationY = mEyePos.y;
|
||||
}
|
||||
i_this->mEyePosOld.x = srt.mTranslationX;
|
||||
i_this->mEyePosOld.y = srt.mTranslationY;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80103074-801030BC .text seStartOnlyReverb__9daPy_lk_cFUl */
|
||||
void daPy_lk_c::seStartOnlyReverb(u32) {
|
||||
/* Nonmatching */
|
||||
void daPy_lk_c::seStartOnlyReverb(u32 sfxID) {
|
||||
mDoAud_seStart(sfxID, ¤t.pos, 0, mReverb);
|
||||
}
|
||||
|
||||
/* 801030BC-80103104 .text seStartMapInfo__9daPy_lk_cFUl */
|
||||
void daPy_lk_c::seStartMapInfo(u32) {
|
||||
/* Nonmatching */
|
||||
void daPy_lk_c::seStartMapInfo(u32 sfxID) {
|
||||
mDoAud_seStart(sfxID, ¤t.pos, mMtrlSndId, mReverb);
|
||||
}
|
||||
|
||||
/* 80103104-8010314C .text seStartSwordCut__9daPy_lk_cFUl */
|
||||
void daPy_lk_c::seStartSwordCut(u32) {
|
||||
/* Nonmatching */
|
||||
void daPy_lk_c::seStartSwordCut(u32 sfxID) {
|
||||
mDoAud_seStart(sfxID, &mSwordTopPos, 0, mReverb);
|
||||
}
|
||||
|
||||
/* 8010314C-801031A4 .text voiceStart__9daPy_lk_cFUl */
|
||||
void daPy_lk_c::voiceStart(u32 param_1) {
|
||||
mDoAud_linkVoiceStart(param_1, &mEyePos, mDoAud_getLinkVoiceVowel(param_1), field_0x34bf);
|
||||
mDoAud_linkVoiceStart(param_1, &mEyePos, mDoAud_getLinkVoiceVowel(param_1), mReverb);
|
||||
}
|
||||
|
||||
/* 801031A4-801031DC .text itemButton__9daPy_lk_cCFv */
|
||||
@@ -83,8 +101,6 @@ void daPy_lk_c::auraJointCB0(int) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
class J3DNode;
|
||||
|
||||
/* 80103450-80103494 .text daPy_auraCallback__FP7J3DNodei */
|
||||
static BOOL daPy_auraCallback(J3DNode*, int) {
|
||||
/* Nonmatching */
|
||||
@@ -501,12 +517,12 @@ void daPy_lk_c::checkBossGomaStage() {
|
||||
}
|
||||
|
||||
/* 8010C4A4-8010C4C8 .text checkSingleItemEquipAnime__9daPy_lk_cCFv */
|
||||
void daPy_lk_c::checkSingleItemEquipAnime() const {
|
||||
/* Nonmatching */
|
||||
BOOL daPy_lk_c::checkSingleItemEquipAnime() const {
|
||||
return m_anm_heap_upper[2].mIdx == LKANM_BCK_TAKEL || m_anm_heap_upper[2].mIdx == LKANM_BCK_TAKER;
|
||||
}
|
||||
|
||||
/* 8010C4C8-8010C528 .text checkItemEquipAnime__9daPy_lk_cCFv */
|
||||
void daPy_lk_c::checkItemEquipAnime() const {
|
||||
BOOL daPy_lk_c::checkItemEquipAnime() const {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -706,13 +722,18 @@ void daPy_lk_c::checkRestHPAnime() {
|
||||
}
|
||||
|
||||
/* 80111EFC-80111F5C .text checkHeavyStateOn__9daPy_lk_cFv */
|
||||
void daPy_lk_c::checkHeavyStateOn() {
|
||||
/* Nonmatching */
|
||||
BOOL daPy_lk_c::checkHeavyStateOn() {
|
||||
if (!dComIfGp_event_runCheck() && mDemo.getDemoType() == 0 &&
|
||||
(getHeavyStateAndBoots() || checkGrabSpecialHeavyState()))
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* 80111F5C-80111F7C .text checkBottleItem__9daPy_lk_cCFi */
|
||||
void daPy_lk_c::checkBottleItem(int) const {
|
||||
/* Nonmatching */
|
||||
BOOL daPy_lk_c::checkBottleItem(int itemNo) const {
|
||||
return itemNo >= EMPTY_BOTTLE && itemNo <= UNK_BOTTLE_60;
|
||||
}
|
||||
|
||||
/* 80111F7C-80111FEC .text checkDrinkBottleItem__9daPy_lk_cCFi */
|
||||
@@ -796,10 +817,10 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
mMaxFallSpeed = daPy_HIO_autoJump_c0::m.field_0x10;
|
||||
setSmallFanModel();
|
||||
mHeldItemType = DEKU_LEAF;
|
||||
field_0x35f0 = field_0x3688.y;
|
||||
field_0x3730 = cXyz::Zero;
|
||||
field_0x34E0 = 0;
|
||||
field_0x34E4 = 0;
|
||||
m35F0 = m3688.y;
|
||||
m3730 = cXyz::Zero;
|
||||
m34E0 = 0;
|
||||
m34E4 = 0;
|
||||
} else if (mCurProcID == 0x28) {
|
||||
mMaxFallSpeed = daPy_HIO_autoJump_c0::m.field_0x10;
|
||||
} else if (mCurProcID == 0xA9) {
|
||||
@@ -807,8 +828,8 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
speed.y = 0.0f;
|
||||
} else if (mCurProcID == 0xAE || mCurProcID == 0xD0) {
|
||||
dKy_Itemgetcol_chg_off();
|
||||
if (mCurProcID == 0xAE && field_0x34d8 != 0) {
|
||||
field_0x34c2 = 0xB;
|
||||
if (mCurProcID == 0xAE && m34D8 != 0) {
|
||||
m34C2 = 0xB;
|
||||
}
|
||||
} else if (mCurProcID == 0xC3 || mCurProcID == 0xA2) {
|
||||
daItemBase_c* item = (daItemBase_c*)fopAcM_getItemEventPartner(this);
|
||||
@@ -818,8 +839,8 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
} else if (mCurProcID == 0xCD) {
|
||||
deleteEquipItem(0);
|
||||
} else if (mCurProcID == 0x57) {
|
||||
if (field_0x33a8.getEmitter()) {
|
||||
field_0x33a8.getEmitter()->setGlobalAlpha(0);
|
||||
if (m33A8.getEmitter()) {
|
||||
m33A8.getEmitter()->setGlobalAlpha(0);
|
||||
}
|
||||
} else if (mCurProcID == 0x8D) {
|
||||
deleteArrow();
|
||||
@@ -830,22 +851,22 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
temp_r28 = (mProcFlags & 0x40000) >> 0x12;
|
||||
|
||||
if (mProcFlags & 0x10040820) {
|
||||
field_0x34c2 = 0xA;
|
||||
m34C2 = 0xA;
|
||||
}
|
||||
|
||||
temp_r29 = ((mProcFlags & 0x2) >> 1) ^ 1;
|
||||
|
||||
mCurProcID = procID;
|
||||
mCurProcFunc = procInit.mProcFunc;
|
||||
field_0x3598 = 0.0f;
|
||||
m3598 = 0.0f;
|
||||
mProcFlags = procInit.mProcFlags;
|
||||
|
||||
if (field_0x34c2 == 1) {
|
||||
field_0x34c2 = 2;
|
||||
if (m34C2 == 1) {
|
||||
m34C2 = 2;
|
||||
}
|
||||
|
||||
if (mProcFlags & 0x10040820) {
|
||||
field_0x34c2 = 0xB;
|
||||
m34C2 = 0xB;
|
||||
}
|
||||
|
||||
if (mProcFlags & 0x20) {
|
||||
@@ -858,22 +879,22 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
dComIfGp_clearPlayerStatus1(0, ~0xFFF48400);
|
||||
|
||||
mGravity = daPy_HIO_autoJump_c0::m.field_0xC;
|
||||
field_0x34F2 = 0;
|
||||
field_0x34F4 = 0;
|
||||
m34F2 = 0;
|
||||
m34F4 = 0;
|
||||
onResetFlg0(daPyRFlg0_UNK8000000);
|
||||
field_0x34c5 = 0;
|
||||
m34C5 = 0;
|
||||
offNoResetFlg0(daPyFlg0_UNK4);
|
||||
offResetFlg0(daPyRFlg0_UNK2);
|
||||
offNoResetFlg1(daPyFlg1_UNK8000000);
|
||||
|
||||
field_0x3544 = 0;
|
||||
m3544 = 0;
|
||||
mSightPacket.offDrawFlg();
|
||||
mSightPacket.offLockFlg();
|
||||
field_0x35c4 = 0.0f;
|
||||
m35C4 = 0.0f;
|
||||
mFanSwingCb.onAlphaOutFlg();
|
||||
shape_angle.x = 0;
|
||||
shape_angle.z = 0;
|
||||
field_0x34EC = 0;
|
||||
m34EC = 0;
|
||||
|
||||
if (!(checkEquipAnime() && (mProcFlags & 0x4)) && !(mProcFlags & 0x1000)) {
|
||||
if (!(checkGrabAnime() || checkBoomerangThrowAnime()) || !(mProcFlags & 0x4000)) {
|
||||
@@ -889,9 +910,9 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
}
|
||||
|
||||
if (temp_r29 && (mProcFlags & 2)) {
|
||||
field_0x3688 = current.pos;
|
||||
field_0x35f0 = field_0x3688.y;
|
||||
field_0x35f4 = field_0x3688.y;
|
||||
m3688 = current.pos;
|
||||
m35F0 = m3688.y;
|
||||
m35F4 = m3688.y;
|
||||
}
|
||||
|
||||
if (mCurProcID != 0x37) {
|
||||
@@ -900,7 +921,7 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
}
|
||||
|
||||
if (!(mProcFlags & 0x40000)) {
|
||||
field_0x3608 = 0.0f;
|
||||
m3608 = 0.0f;
|
||||
}
|
||||
|
||||
resetFootEffect();
|
||||
@@ -909,19 +930,19 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
resetDemoTextureAnime();
|
||||
}
|
||||
|
||||
field_0x338c.end();
|
||||
field_0x33a8.end();
|
||||
field_0x32e4.end();
|
||||
field_0x32f0.end();
|
||||
m338C.end();
|
||||
m33A8.end();
|
||||
m32E4.end();
|
||||
m32F0.end();
|
||||
mSmokeEcallBack.end();
|
||||
|
||||
if (!(field_0x2b0 < 0.0f)) {
|
||||
field_0x35d8 = 0.0f;
|
||||
m35D8 = 0.0f;
|
||||
}
|
||||
|
||||
offNoResetFlg1(static_cast<daPy_FLG1>(daPyFlg1_UNK80 | daPyFlg1_UNK800000 | daPyFlg1_UNK1000000));
|
||||
|
||||
field_0x35ec = 0.0f;
|
||||
m35EC = 0.0f;
|
||||
|
||||
if (mHeldItemType == HUMMER) {
|
||||
mSwordAnim.changeBckOnly(getItemAnimeResource(0x97));
|
||||
@@ -929,7 +950,7 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
mSwordAnim.changeBckOnly(getItemAnimeResource(0xD));
|
||||
}
|
||||
|
||||
field_0x35e8 = 0.0f;
|
||||
m35E8 = 0.0f;
|
||||
|
||||
if (!(mProcFlags & 0x800) && mCurProcID != 0x76 && mCurProcID != 0x7D) {
|
||||
freeRopeItem();
|
||||
@@ -945,7 +966,7 @@ BOOL daPy_lk_c::commonProcInit(daPy_lk_c::daPy_PROC procID) {
|
||||
|
||||
setBgCheckParam();
|
||||
|
||||
return true;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 80112954-80112A24 .text procScope_init__9daPy_lk_cFi */
|
||||
@@ -1229,8 +1250,8 @@ void daPy_lk_c::procBackJumpLand() {
|
||||
}
|
||||
|
||||
/* 80115E88-80115EA4 .text checkAutoJumpFlying__9daPy_lk_cCFv */
|
||||
void daPy_lk_c::checkAutoJumpFlying() const {
|
||||
/* Nonmatching */
|
||||
int daPy_lk_c::checkAutoJumpFlying() const {
|
||||
return mCurProcID != 0x24 ? -1 : m34D0;
|
||||
}
|
||||
|
||||
/* 80115EA4-8011602C .text procAutoJump_init__9daPy_lk_cFv */
|
||||
@@ -1550,12 +1571,51 @@ void daPy_lk_c::setStickData() {
|
||||
|
||||
/* 8011FF50-801200F8 .text setBgCheckParam__9daPy_lk_cFv */
|
||||
void daPy_lk_c::setBgCheckParam() {
|
||||
/* Nonmatching */
|
||||
mAcchCir[0].SetWallH(30.1f);
|
||||
mAcchCir[1].SetWallH(89.9f);
|
||||
mAcchCir[2].SetWallH(125.0f);
|
||||
|
||||
if (mCurProcID == 0x7C) {
|
||||
mAcchCir[0].SetWallH(-125.0f);
|
||||
mAcchCir[1].SetWallH(-89.9f);
|
||||
mAcchCir[2].SetWallH(0.0f);
|
||||
} else if (mCurProcID == 0x6A || mProcFlags & 0x410000) {
|
||||
mAcchCir[0].SetWallR(5.0f);
|
||||
} else if (mProcFlags & 0x200000) {
|
||||
mAcchCir[0].SetWallR(40.0f);
|
||||
} else if (mProcFlags & 0x10) {
|
||||
mAcchCir[0].SetWallR(daPy_HIO_wall_c0::m.field_0x50);
|
||||
if (checkNoResetFlg0(daPyFlg0_UNK10000)) {
|
||||
mAcchCir[2].SetWallH(89.9f);
|
||||
}
|
||||
} else if (mProcFlags & 0x40000) {
|
||||
mAcchCir[0].SetWallR(67.5f);
|
||||
mAcchCir[0].SetWallH(-5.0f);
|
||||
mAcchCir[1].SetWallH(0.0f);
|
||||
mAcchCir[2].SetWallH(20.0f);
|
||||
} else if (mProcFlags & 0x1000000 && mCurProcID != 0x12) {
|
||||
mAcchCir[0].SetWallR(30.0f);
|
||||
mAcchCir[0].SetWallH(10.0f);
|
||||
mAcchCir[1].SetWallH(50.0f);
|
||||
mAcchCir[2].SetWallH(50.0f);
|
||||
} else if (mProcFlags & 0x20) {
|
||||
mAcchCir[0].SetWallR(12.5f);
|
||||
mAcchCir[0].SetWallH(25.0f);
|
||||
mAcchCir[1].SetWallH(25.0f);
|
||||
mAcchCir[2].SetWallH(25.0f);
|
||||
} else if (field_0x2b0 < 0.0f) {
|
||||
mAcchCir[0].SetWallR(50.0f);
|
||||
} else {
|
||||
mAcchCir[0].SetWallR(35.0f);
|
||||
}
|
||||
|
||||
mAcchCir[1].SetWallR(mAcchCir[0].GetWallR());
|
||||
mAcchCir[2].SetWallR(mAcchCir[0].GetWallR());
|
||||
}
|
||||
|
||||
/* 801200F8-8012010C .text setParamData__9daPy_lk_cFiiii */
|
||||
u32 daPy_lk_c::setParamData(int, int, int, int) {
|
||||
/* Nonmatching */
|
||||
u32 daPy_lk_c::setParamData(int roomNo, int spawnType, int evntIdx, int extraParams) {
|
||||
return roomNo & 0x3F | (spawnType & 0xF) << 0xC | evntIdx << 0x18 | extraParams;
|
||||
}
|
||||
|
||||
/* 8012010C-8012024C .text checkLavaFace__9daPy_lk_cFP4cXyzi */
|
||||
@@ -1583,12 +1643,12 @@ BOOL daPy_lk_c::startRestartRoom(u32 param_1, int param_2, f32 param_3, int i_po
|
||||
dComIfGp_setNextStage("sea", 1, 48, -1, 0.0f, 0, 1, 0);
|
||||
mDoAud_seStart(JA_SE_FORCE_BACK, NULL, 0, 0);
|
||||
// daNpc_Sarace_c::ship_race_result = 3;
|
||||
field_0x354e = 0;
|
||||
mTinkleShieldTimer = 0;
|
||||
return TRUE;
|
||||
} else {
|
||||
u32 stageType = dStage_stagInfo_GetSTType(dComIfGp_getStageStagInfo());
|
||||
setDamagePoint(param_3);
|
||||
field_0x354e = 0;
|
||||
mTinkleShieldTimer = 0;
|
||||
|
||||
if (stageType == 7 && !dComIfGs_isEventBit(0x2A08) && (current.roomNo == 11 || current.roomNo == 44) && dStage_chkPlayerId(0x80, current.roomNo)) {
|
||||
dComIfGp_setNextStage(dComIfGp_getStartStageName(), 0x80, current.roomNo, -1, 0.0f, param_1, 1, 0);
|
||||
@@ -1599,9 +1659,9 @@ BOOL daPy_lk_c::startRestartRoom(u32 param_1, int param_2, f32 param_3, int i_po
|
||||
}
|
||||
|
||||
if (checkNoResetFlg0(daPyFlg0_UNK10) && mCurProcID != 0xB2) {
|
||||
i_point = field_0x34CB;
|
||||
i_point = m34CB;
|
||||
} else {
|
||||
i_point = field_0x3594;
|
||||
i_point = m3594;
|
||||
if (i_point != 0xFF && !dComIfGs_checkSeaLandingEvent(current.roomNo)) {
|
||||
i_point = 0xFF;
|
||||
}
|
||||
@@ -1714,50 +1774,49 @@ static BOOL daPy_IsDelete(daPy_lk_c*) {
|
||||
|
||||
/* 80122D58-80123058 .text playerDelete__9daPy_lk_cFv */
|
||||
BOOL daPy_lk_c::playerDelete() {
|
||||
/* Nonmatching */
|
||||
for (int i = 0; i < (int)ARRAY_SIZE(field_0x31e8); i++) {
|
||||
daPy_footEffect_c* footEffect = &field_0x31e8[i];
|
||||
footEffect->mSmokeCb.end();
|
||||
footEffect->mFollowCb.end();
|
||||
int i;
|
||||
for (i = 0; i < (int)ARRAY_SIZE(m31E8); i++) {
|
||||
m31E8[i].getSmokeCallBack()->end();
|
||||
m31E8[i].getOtherCallBack()->end();
|
||||
}
|
||||
if (mFanSwingCb.mpEmitter) {
|
||||
mFanSwingCb.mpEmitter->clearStatus(0x40);
|
||||
mFanSwingCb.mpEmitter->setEmitterCallBackPtr(NULL);
|
||||
mFanSwingCb.mpEmitter = NULL;
|
||||
}
|
||||
field_0x338c.end();
|
||||
field_0x33a8.end();
|
||||
field_0x3280.end();
|
||||
field_0x334C.end();
|
||||
field_0x336C.end();
|
||||
m338C.end();
|
||||
m33A8.end();
|
||||
m3280.end();
|
||||
m334C.end();
|
||||
m336C.end();
|
||||
mSwimTailEcallBack[0].remove();
|
||||
mSwimTailEcallBack[1].remove();
|
||||
field_0x32e4.end();
|
||||
field_0x32f0.end();
|
||||
field_0x33E8.end();
|
||||
m32E4.end();
|
||||
m32F0.end();
|
||||
m33E8.end();
|
||||
mSmokeEcallBack.end();
|
||||
field_0x331C.end();
|
||||
field_0x332C.end();
|
||||
field_0x333C.end();
|
||||
field_0x3400.end();
|
||||
field_0x3410.end();
|
||||
field_0x3438.end();
|
||||
field_0x342C.end();
|
||||
field_0x3454.end();
|
||||
field_0x3460[0].end();
|
||||
field_0x3460[1].end();
|
||||
m331C.end();
|
||||
m332C.end();
|
||||
m333C.end();
|
||||
m3400.end();
|
||||
m3410.end();
|
||||
m3438.end();
|
||||
m342C.end();
|
||||
m3454.end();
|
||||
m3460[0].end();
|
||||
m3460[1].end();
|
||||
|
||||
endDamageEmitter();
|
||||
dKy_plight_cut(&field_0x3498);
|
||||
dKy_plight_cut(&m3498);
|
||||
mDoAud_seDeleteObject(&mSwordTopPos);
|
||||
mDoAud_seDeleteObject(&mRopePos);
|
||||
mDoAud_seDeleteObject(&field_0x338c.field_0x08);
|
||||
mDoAud_seDeleteObject(&field_0x488c.GetEndP());
|
||||
mDoAud_seDeleteObject(&m338C.field_0x08);
|
||||
mDoAud_seDeleteObject(&m488C.GetEndP());
|
||||
|
||||
for (int i = 0; i < (int)ARRAY_SIZE(m_anm_heap_under); i++) {
|
||||
for (i = 0; i < (int)ARRAY_SIZE(m_anm_heap_under); i++) {
|
||||
mDoExt_destroySolidHeap(m_anm_heap_under[i].mpAnimeHeap);
|
||||
}
|
||||
for (int i = 0; i < (int)ARRAY_SIZE(m_anm_heap_upper); i++) {
|
||||
for (i = 0; i < (int)ARRAY_SIZE(m_anm_heap_upper); i++) {
|
||||
mDoExt_destroySolidHeap(m_anm_heap_upper[i].mpAnimeHeap);
|
||||
}
|
||||
|
||||
@@ -1765,10 +1824,14 @@ BOOL daPy_lk_c::playerDelete() {
|
||||
mDoExt_destroySolidHeap(mpTextureScrollResHeap);
|
||||
mDoExt_destroySolidHeap(mpItemHeaps[0]);
|
||||
mDoExt_destroySolidHeap(mpItemHeaps[1]);
|
||||
mDoExt_destroySolidHeap(field_0x2ECC);
|
||||
mDoExt_destroySolidHeap(m2ECC);
|
||||
|
||||
mJAIZelAnime.stop();
|
||||
|
||||
if (checkNoResetFlg1(daPyFlg1_UNK8)) {
|
||||
*m0338 = m033C;
|
||||
}
|
||||
|
||||
dComIfGp_clearPlayerStatus0(0, 0x00400000); // Waiting for the boomerang to come back
|
||||
dComIfGp_clearPlayerStatus1(0, 0x00040000);
|
||||
g_dComIfG_gameInfo.play.field_0x4947 = 0;
|
||||
@@ -2003,14 +2066,14 @@ int phase_3(daPy_lk_c* i_this) {
|
||||
}
|
||||
|
||||
static s32 daPy_Create(fopAc_ac_c* i_this) {
|
||||
static int (*l_method[3])(void*) = {
|
||||
(int (*)(void*))phase_1,
|
||||
(int (*)(void*))phase_2,
|
||||
(int (*)(void*))phase_3,
|
||||
static int (*l_method[3])(daPy_lk_c*) = {
|
||||
phase_1,
|
||||
phase_2,
|
||||
phase_3,
|
||||
};
|
||||
daPy_lk_c* player_link = (daPy_lk_c*)i_this;
|
||||
|
||||
return dComLbG_PhaseHandler(&player_link->mPhsLoad, l_method, player_link);
|
||||
return dComLbG_PhaseHandler(&player_link->mPhsLoad, (cPhs__Handler*)l_method, player_link);
|
||||
}
|
||||
|
||||
/* 80127BA0-80127CC0 .text setSeAnime__9daPy_lk_cFPC14daPy_anmHeap_cP12J3DFrameCtrl */
|
||||
|
||||
@@ -636,15 +636,15 @@ void dComIfGp_setNextStage(const char* i_stageName, s16 i_point, s8 i_roomNo, s8
|
||||
g_dComIfG_gameInfo.play.setNextStage(i_stageName, i_roomNo, i_point, i_layer, i_wipe);
|
||||
|
||||
if (daPy_getPlayerLinkActorClass() != NULL) {
|
||||
u32 mode = daPy_getPlayerLinkActorClass()->mNoResetFlg1;
|
||||
daPy_lk_c* link = daPy_getPlayerLinkActorClass();
|
||||
|
||||
if (mode & daPy_lk_c::daPyFlg1_EQUIP_DRAGON_SHIELD) {
|
||||
if (link->checkEquipDragonShield()) {
|
||||
i_lastMode |= 0x8000;
|
||||
}
|
||||
|
||||
i_lastMode |= daPy_getPlayerLinkActorClass()->field_0x354e << 16;
|
||||
i_lastMode |= link->checkTinkleShield() << 0x10;
|
||||
|
||||
if (mode & daPy_lk_c::daPyFlg1_UNK8000) {
|
||||
if (link->checkNoResetFlg1(daPy_lk_c::daPyFlg1_UNK8000)) {
|
||||
i_lastMode |= 0x4000;
|
||||
}
|
||||
}
|
||||
@@ -1148,7 +1148,7 @@ void dComIfGs_setGameStartStage() {
|
||||
dKy_set_nexttime(120.0f);
|
||||
} else if (stage_type == 7) {
|
||||
daPy_lk_c* player_p = daPy_getPlayerLinkActorClass();
|
||||
point = player_p->field_0x3594;
|
||||
point = player_p->m3594;
|
||||
|
||||
s8 temp_r3 = player_p->current.roomNo;
|
||||
room_no = temp_r3;
|
||||
|
||||
@@ -386,7 +386,7 @@ void dMetronome_c::melodyShow() {
|
||||
pos.y = 0.0f;
|
||||
pos.z = 0.0f;
|
||||
|
||||
s32 note = daPy_getPlayerLinkActorClass()->field_0x34d6;
|
||||
s32 note = daPy_getPlayerLinkActorClass()->m34D6;
|
||||
if (pane_wn[0].mUserArea < mMelodyNum) {
|
||||
mNote[pane_wn[0].mUserArea] = note;
|
||||
melodyGuideShow(note, pane_wn[0].mUserArea);
|
||||
|
||||
Reference in New Issue
Block a user