mirror of
https://github.com/zeldaret/tp
synced 2026-07-07 22:22:05 -04:00
d_a_arrow work (#2139)
* WIP commit, about halfway done * More progress, fixed up some issues * Most functions match, minor issues in draw/create, dtor needs particle work * Forgot to remove NONMATCHING define --------- Co-authored-by: GinNoOokami <noreply>
This commit is contained in:
@@ -1762,7 +1762,7 @@ public:
|
||||
/* 800D74A4 */ void setLandDamagePoint(int);
|
||||
/* 800D74F4 */ Vec* getDamageVec(dCcD_GObjInf*);
|
||||
/* 800D76C4 */ void setDashDamage();
|
||||
/* 800D7768 */ static bool checkIcePolygonDamage(cBgS_PolyInfo*);
|
||||
/* 800D7768 */ static BOOL checkIcePolygonDamage(cBgS_PolyInfo*);
|
||||
/* 800D77C8 */ BOOL checkMagicArmorNoDamage();
|
||||
/* 800D7820 */ void checkPolyDamage();
|
||||
/* 800D7A98 */ bool checkElecReturnDamage(dCcD_GObjInf&, fopAc_ac_c**);
|
||||
@@ -3237,6 +3237,7 @@ public:
|
||||
BOOL checkReinRide() const { return mRideStatus == 1 || mRideStatus == 2; }
|
||||
int getGrassHowlEventActor() const { return field_0x3198; }
|
||||
MtxP getShieldMtx() const { return mShieldModel->getBaseTRMtx(); }
|
||||
MtxP getMagneBootsMtx() { return mMagneBootMtx; }
|
||||
|
||||
bool checkFishingCastMode() const {
|
||||
bool var_r5;
|
||||
@@ -3360,6 +3361,8 @@ public:
|
||||
s8 getOnLineNum() { return mZ2WolfHowlMgr.getOnLineNum(); }
|
||||
SongNote getCorrectLine(u8 param_0) { return mZ2WolfHowlMgr.getCorrectLine(param_0); }
|
||||
|
||||
void itemHitSE(u32 param_1, u32 param_2, Z2SoundObjBase* param_3) { mZ2Link.startHitItemSE(param_1, param_2, param_3, -1.0f); }
|
||||
|
||||
inline bool checkWindSpeedOnXZ() const;
|
||||
inline void startRestartRoomFromOut(int, u32, int);
|
||||
inline u16 getReadyItem();
|
||||
|
||||
@@ -236,6 +236,7 @@ public:
|
||||
u8 GetHitMark() { return mHitMark; }
|
||||
void SetRVec(cXyz& vec) { mRVec = vec; }
|
||||
cXyz* GetVecP() { return &mVec; }
|
||||
cXyz* GetRVecP() { return &mRVec; }
|
||||
void SetHitPos(cXyz& pos) { mHitPos = pos; }
|
||||
cXyz* GetHitPosP() { return &mHitPos; }
|
||||
|
||||
@@ -362,6 +363,7 @@ public:
|
||||
bool ChkTgWolfSpNoDamage() { return mGObjTg.ChkSPrm(0x800); }
|
||||
bool ChkAtNoHitMark() { return mGObjAt.ChkSPrm(2); }
|
||||
bool ChkTgNoHitMark() { return mGObjTg.ChkSPrm(4); }
|
||||
bool ChkTgArrowThrough() { return mGObjTg.ChkSPrm(0x20); }
|
||||
bool ChkTgHookShotNoHitMark() { return mGObjTg.ChkSPrm(0x400); }
|
||||
bool ChkTgArrowNoHitMark() { return mGObjTg.ChkSPrm(0x1000); }
|
||||
dCcG_Tg_Spl GetTgSpl() { return (dCcG_Tg_Spl)mGObjTg.GetSpl(); }
|
||||
@@ -389,6 +391,7 @@ public:
|
||||
u32 GetTgHitObjHitSeID(int i_soundID) { return getHitSeID(GetTgHitObjSe(),i_soundID); }
|
||||
cXyz* GetAtHitPosP() { return mGObjAt.GetHitPosP(); }
|
||||
cXyz* GetTgHitPosP() { return mGObjTg.GetHitPosP(); }
|
||||
cXyz* GetTgRVecP() { return mGObjTg.GetRVecP(); }
|
||||
bool ChkTgHookshotThrough() { return mGObjTg.ChkSPrm(0x80); }
|
||||
|
||||
static const Z2SoundID m_hitSeID[24];
|
||||
|
||||
@@ -22,7 +22,7 @@ public:
|
||||
/* 80035CA0 */ int init(fopAc_ac_c*, dJntColData_c const*, J3DModel*, int);
|
||||
/* 80035CC8 */ static void setNowLine(cM3dGLin*, cXyz const*, csXyz const*, cXyz*);
|
||||
/* 80035DC8 */ void searchNearPos(cM3dGLin const*, cXyz const*, cXyz*, int) const;
|
||||
/* 80036AEC */ void getArrowOffsetPosAndAngle(cXyz const*, csXyz const*, cXyz*, cXyz*) const;
|
||||
/* 80036AEC */ int getArrowOffsetPosAndAngle(cXyz const*, csXyz const*, cXyz*, cXyz*) const;
|
||||
/* 80036C44 */ int getHitmarkPosAndAngle(cXyz const*, csXyz const*, cXyz*, csXyz*, int) const;
|
||||
/* 80036FA8 */ void setArrowPosAndAngle(cXyz const*, cXyz const*, int, cXyz*, csXyz*);
|
||||
|
||||
|
||||
@@ -31,6 +31,8 @@ public:
|
||||
/* 8004F6C4 */ virtual void executeAfter(JPABaseEmitter*);
|
||||
/* 8004FABC */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
|
||||
|
||||
void setRate(f32 rate) { mRate = rate; }
|
||||
|
||||
private:
|
||||
/* 0x04 */ f32 mRate;
|
||||
/* 0x08 */ int mMaxCnt;
|
||||
|
||||
Reference in New Issue
Block a user