player_main work, player_ship start

This commit is contained in:
LagoLunatic
2023-11-19 22:33:45 -05:00
parent 785effa0c3
commit c130095d7f
34 changed files with 261 additions and 100 deletions
+1
View File
@@ -114,6 +114,7 @@ public:
daPyFlg1_FORCE_VOMIT_JUMP_SHORT = 0x00010000,
daPyFlg1_FOREST_WATER_USE = 0x00020000,
daPyFlg1_WATER_DROP = 0x00080000,
daPyFlg1_UNK200000 = 0x00200000,
daPyFlg1_UNK800000 = 0x00800000,
daPyFlg1_UNK1000000 = 0x01000000,
daPyFlg1_VINE_CATCH = 0x02000000,
+41 -25
View File
@@ -110,7 +110,7 @@ public:
class daPy_swimTailEcallBack_c : public dPa_levelEcallBack {
public:
void setup(JPABaseEmitter*, const cXyz*, const csXyz*, s8);
void getMaxWaterY(JGeometry::TVec3<float>*);
void getMaxWaterY(JGeometry::TVec3<f32>*);
void remove();
void execute(JPABaseEmitter*);
void draw(JPABaseEmitter*);
@@ -176,7 +176,7 @@ public:
class daPy_swBlur_c : public J3DPacket {
public:
void initSwBlur(MtxP, int, float, int);
void initSwBlur(MtxP, int, f32, int);
void copySwBlur(MtxP, int);
void draw();
~daPy_swBlur_c() {}
@@ -212,7 +212,10 @@ struct daPy_aura_c {
f32 getFrame() { return mFrame; }
};
class daPy_anmIndex_c;
class daPy_anmIndex_c {
public:
};
enum LINK_RES_FILE_ID { // IDs and indexes are synced
/* BCK */
@@ -1506,13 +1509,13 @@ public:
void initSeAnime();
void resetSeAnime();
void setMoveAnime(f32, f32, f32, daPy_lk_c::daPy_ANM, daPy_lk_c::daPy_ANM, int, f32);
void setSingleMoveAnime(daPy_lk_c::daPy_ANM, float, float, short, float);
BOOL setSingleMoveAnime(daPy_lk_c::daPy_ANM, f32, f32, s16, f32);
void setActAnimeUpper(u16, daPy_lk_c::daPy_UPPER, f32, f32, s16, f32);
void resetActAnimeUpper(daPy_lk_c::daPy_UPPER, float);
void resetActAnimeUpper(daPy_lk_c::daPy_UPPER, f32);
void animeUpdate();
void simpleAnmPlay(J3DAnmBase*);
void setHandModel(daPy_lk_c::daPy_ANM);
void getAnmData(daPy_lk_c::daPy_ANM) const;
daPy_anmIndex_c* getAnmData(daPy_lk_c::daPy_ANM) const;
BOOL checkGrabWeapon(int);
void endDemoMode();
void setAuraEffect();
@@ -2066,7 +2069,6 @@ public:
void getIceWaterParticleBtk() {}
void getShadowID() const {}
void npcStartRestartRoom() {}
void offModeFlg(u32) {}
void setDaiokutaEnd() {}
void setWhirlId(unsigned int) {}
@@ -2074,6 +2076,10 @@ public:
int getStartMode() { return (fopAcM_GetParam(this) >> 0x0C) & 0xF; }
int getStartEvent() { return (fopAcM_GetParam(this) >> 0x18) & 0xFF; }
void onModeFlg(u32 flag) { mModeFlg |= flag; }
void offModeFlg(u32 flag) { mModeFlg &= ~flag; }
BOOL checkModeFlg(u32 flag) const { return mModeFlg & flag; }
request_of_phase_process_class* getPhase() { return &mPhsLoad; }
virtual MtxP getLeftHandMatrix() { return mpCLModel->getAnmMtx(0x08); } // cl_LhandA joint
@@ -2083,7 +2089,7 @@ public:
virtual int getTactTimerCancel() const;
virtual BOOL checkPlayerGuard() const;
virtual fopAc_ac_c* getGrabMissActor();
virtual BOOL checkPlayerFly() const { return mProcFlags & 0x10452822; } // TODO add enum
virtual BOOL checkPlayerFly() const { return checkModeFlg(0x10452822); } // TODO add enum
virtual BOOL checkFrontRoll() const { return mCurProcID == PROC_FRONT_ROLL_e; }
virtual BOOL checkBottleSwing() const { return mCurProcID == PROC_BOTTLE_SWING_e; }
virtual BOOL checkCutCharge() const { return mCurProcID == PROC_CUT_TURN_MOVE_e; }
@@ -2109,7 +2115,7 @@ public:
virtual BOOL setHookshotCarryOffset(unsigned int, const cXyz*);
virtual void setPlayerPosAndAngle(cXyz*, s16);
virtual void setPlayerPosAndAngle(cXyz*, csXyz*);
virtual void setPlayerPosAndAngle(float (*)[4]);
virtual void setPlayerPosAndAngle(MtxP);
virtual BOOL setThrowDamage(cXyz*, s16, f32, f32, int);
virtual void changeTextureAnime(u16, u16, int);
virtual void cancelChangeTextureAnime();
@@ -2165,7 +2171,7 @@ public:
/* 0x2E90 */ JKRSolidHeap* mpItemHeaps[2];
/* 0x2E98 */ J3DModel* mpHeldItemModel;
/* 0x2E9C */ mDoExt_bckAnm mSwordAnim;
/* 0x2EAC */ u8 m2EAC[0x2EB0 - 0x2EAC];
/* 0x2EAC */ mDoExt_McaMorf* m2EAC;
/* 0x2EB0 */ J3DAnmTevRegKey* mpBombBrk;
/* 0x2EB4 */ J3DAnmTevRegKey* mpGwp00BrkData;
/* 0x2EB8 */ J3DAnmTextureSRTKey* mpGwp00BtkData;
@@ -2284,7 +2290,10 @@ public:
/* 0x34C9 */ u8 m34C9;
/* 0x34CA */ u8 m34CA;
/* 0x34CB */ u8 mDekuSpRestartPoint;
/* 0x34CC */ u8 m34CC[0x34D0 - 0x34CC];
/* 0x34CC */ u8 m34CC;
/* 0x34CD */ u8 m34CD;
/* 0x34CE */ u8 m34CE;
/* 0x34CF */ u8 m34CF[0x34D0 - 0x34CF];
/* 0x34D0 */ s16 m34D0;
/* 0x34D2 */ s16 m34D2;
/* 0x34D4 */ s16 m34D4;
@@ -2342,16 +2351,20 @@ public:
/* 0x353C */ s16 m353C;
/* 0x353E */ s16 m353E;
/* 0x3540 */ s16 m3540;
/* 0x3542 */ u8 m3542[0x3544 - 0x3542];
/* 0x3542 */ s16 m3542;
/* 0x3544 */ s16 m3544;
/* 0x3546 */ s16 mShieldFrontRangeYAngle;
/* 0x3548 */ u8 m3548[0x354C - 0x3548];
/* 0x3548 */ s16 m3548;
/* 0x354A */ u8 m354A[0x354C - 0x354A];
/* 0x354C */ s16 m354C;
/* 0x354E */ s16 mTinkleShieldTimer;
/* 0x3550 */ u8 m3550[0x3552 - 0x3550];
/* 0x3550 */ s16 m3550;
/* 0x3552 */ u16 mKeepItemType;
/* 0x3554 */ s16 m3554;
/* 0x3556 */ u8 m3556[0x355E - 0x3556];
/* 0x3556 */ u8 m3556[0x3558 - 0x3556];
/* 0x3558 */ s16 m3558;
/* 0x355A */ s16 m355A;
/* 0x355C */ s16 m355C;
/* 0x355E */ u16 m355E;
/* 0x3560 */ u16 mHeldItemType;
/* 0x3562 */ u8 m3562[0x3564 - 0x3562];
@@ -2362,7 +2375,8 @@ public:
/* 0x356C */ int mCameraInfoIdx;
/* 0x3570 */ int m3570;
/* 0x3574 */ int m3574;
/* 0x3578 */ u8 m3578[0x3580 - 0x3578];
/* 0x3578 */ int m3578;
/* 0x357C */ u8 m357C[0x3580 - 0x357C];
/* 0x3580 */ int m3580;
/* 0x3584 */ int mCurrentGroundAttributeCode;
/* 0x3588 */ u8 m3588[0x358C - 0x3588];
@@ -2373,7 +2387,9 @@ public:
/* 0x359C */ u8 m359C[0x35A0 - 0x359C];
/* 0x35A0 */ f32 m35A0;
/* 0x35A4 */ f32 m35A4;
/* 0x35A8 */ u8 m35A8[0x35BC - 0x35A8];
/* 0x35A8 */ u8 m35A8[0x35B0 - 0x35A8];
/* 0x35B0 */ f32 m35B0;
/* 0x35B4 */ u8 m35B4[0x35BC - 0x35B4];
/* 0x35BC */ f32 mVelocity;
/* 0x35C0 */ u8 m35C0[0x35C4 - 0x35C0];
/* 0x35C4 */ f32 m35C4;
@@ -2396,7 +2412,7 @@ public:
/* 0x360C */ f32 mSeAnmRate;
/* 0x3610 */ f32 m3610;
/* 0x3614 */ int m3614;
/* 0x3618 */ u32 mProcFlags;
/* 0x3618 */ u32 mModeFlg;
/* 0x361C */ u32 mMtrlSndId;
/* 0x3620 */ u32 m3620;
/* 0x3624 */ int m3624;
@@ -2409,9 +2425,8 @@ public:
/* 0x3640 */ s16 m3640;
/* 0x3642 */ u8 m3642[0x3644 - 0x3642];
/* 0x3644 */ f32 m3644;
/* 0x3648 */ u8 m3648[0x3654 - 0x3648];
/* 0x3654 */ f32 m3654;
/* 0x3658 */ u8 m3658[0x3668 - 0x3658];
/* 0x3648 */ Quaternion m3648;
/* 0x3658 */ Quaternion m3658;
/* 0x3668 */ J3DTransformInfo m3668;
/* 0x3688 */ cXyz m3688;
/* 0x3694 */ cXyz mOldSpeed;
@@ -2422,15 +2437,16 @@ public:
/* 0x36D0 */ cXyz m36D0;
/* 0x36DC */ cXyz m36DC;
/* 0x36E8 */ cXyz mHookshotRootPos;
/* 0x36F4 */ u8 m36F4[0x3700 - 0x36F4];
/* 0x36F4 */ cXyz m36F4;
/* 0x3700 */ cXyz m3700;
/* 0x370C */ cXyz m370C;
/* 0x3718 */ u8 m3718[0x3724 - 0x3718];
/* 0x3718 */ cXyz m3718;
/* 0x3724 */ cXyz m3724;
/* 0x3730 */ cXyz m3730;
/* 0x373C */ u8 m373C[0x3748 - 0x373C];
/* 0x373C */ cXyz m373C;
/* 0x3748 */ cXyz m3748;
/* 0x3754 */ u8 m3754[0x37E4 - 0x3754];
/* 0x3754 */ u8 m3754[0x37B4 - 0x3754];
/* 0x37B4 */ Mtx m37B4;
/* 0x37E4 */ daPy_swBlur_c mSwBlur;
/* 0x3DB8 */ daPy_footData_c mFootData[2];
/* 0x3FE8 */ dCcD_Stts mStts;
+4 -3
View File
@@ -100,10 +100,11 @@ public:
/* 0x0304 */ J3DModel* mpSalvageArmModel;
/* 0x0308 */ J3DModel* field_0x308;
/* 0x030C */ mDoExt_3DlineMat1_c mRopeLine;
/* 0x0341 */ u8 field_0x0348[0x034d - 0x0341];
/* 0x034d */ u8 field_0x034d;
/* 0x0348 */ u8 field_0x0348[0x034D - 0x0348];
/* 0x034D */ u8 field_0x034D;
/* 0x034E */ u8 mShipMode;
/* 0x0358 */ u32 field_0x0358; //showing 390
/* 0x034F */ u8 field_0x034F[0x0358 - 0x034F];
/* 0x0358 */ u32 field_0x0358;
/* 0x035C */ int mNextMessageID;
/* 0x0360 */ int mShadowId;
/* 0x0364 */ u8 field_0x0364[0x183C - 0x0364];
+2 -2
View File
@@ -292,7 +292,6 @@ public:
void SetAtMtrl(u8 mtrl) { mGObjAt.SetMtrl(mtrl); }
void SetTgMtrl(u8 mtrl) { mGObjTg.SetMtrl(mtrl); }
fopAc_ac_c* GetAtHitAc() { return mGObjAt.GetAc(); }
bool ChkAtShieldHit() { return mGObjAt.ChkRPrm(1); }
cXyz* GetAtVecP() { return mGObjAt.GetVecP(); }
cXyz* GetTgVecP() { return mGObjTg.GetVecP(); }
cXyz* GetTgRVecP() { return mGObjTg.GetRVecP(); }
@@ -361,9 +360,10 @@ public:
void SubtractCoEffCounter() { mGObjCo.SubtractEffCounter(); }
void OnTgShieldHit() { mGObjTg.OnRPrm(2); }
void OffTgShieldHit() { mGObjTg.OffRPrm(2); }
bool ChkTgShieldHit() { return mGObjTg.ChkRPrm(2); }
void OnAtShieldHit() { mGObjAt.OnRPrm(1); }
void OffAtShieldHit() { mGObjAt.OffRPrm(1); }
void OffTgMagneHit() { mGObjTg.OffRPrm(4); }
bool ChkAtShieldHit() { return mGObjAt.ChkRPrm(1); }
void SetTgRVec(cXyz& vec) { mGObjTg.SetRVec(vec); }
void SetAtRVec(cXyz& vec) { mGObjAt.SetRVec(vec); }
void SetTgHitPos(cXyz& pos) { mGObjTg.SetHitPos(pos); }
+8
View File
@@ -1851,6 +1851,14 @@ inline bool dComIfGp_checkPlayerStatus1(int param_0, u32 flag) {
return g_dComIfG_gameInfo.play.checkPlayerStatus(param_0, 1, flag);
}
inline void dComIfGp_setPlayerStatus0(int param_0, u32 flag) {
g_dComIfG_gameInfo.play.setPlayerStatus(param_0, 0, flag);
}
inline void dComIfGp_setPlayerStatus1(int param_0, u32 flag) {
g_dComIfG_gameInfo.play.setPlayerStatus(param_0, 1, flag);
}
inline void dComIfGp_clearPlayerStatus0(int param_0, u32 flag) {
g_dComIfG_gameInfo.play.clearPlayerStatus(param_0, 0, flag);
}
+4
View File
@@ -97,6 +97,10 @@ inline void mDoAud_seStart(u32 i_sfxID, Vec* i_sePos, u32 param_2, s8 i_reverb)
mDoAud_zelAudio_c::getInterface()->seStart(i_sfxID, i_sePos, param_2, i_reverb, 1.0f, 1.0f, -1.0f, -1.0f, 0);
}
inline void mDoAud_bgmSetSwordUsing(s32 param_1) {
mDoAud_zelAudio_c::getInterface()->bgmSetSwordUsing(param_1);
}
inline void mDoAud_seStop(u32 i_sfxID, s32 param_2) {
mDoAud_zelAudio_c::getInterface()->seStop(i_sfxID, param_2);
}
+1 -1
View File
@@ -619,7 +619,7 @@ JKRSolidHeap * mDoExt_createSolidHeapFromSystem(u32 i_size, u32 i_alignment);
void mDoExt_restoreCurrentHeap();
s32 mDoExt_adjustSolidHeap(JKRSolidHeap * pHeap);
void mDoExt_destroySolidHeap(JKRSolidHeap * pHeap);
JKRHeap* mDoExt_setCurrentHeap(JKRHeap*);
JKRHeap* mDoExt_setCurrentHeap(JKRHeap* pHeap);
JUTFont* mDoExt_getMesgFont();
JUTFont* mDoExt_getRubyFont();