d_a_player_particle (#674)

* daPy_mtxPosFollowEcallBack_c::execute matching

* daPy_waterDropEcallBack_c::end matching

* daPy_dmEcallBack_c::execute matching

* daPy_fanSwingEcallBack_c::execute matching

* daPy_waterDropPcallBack_c::execute matching

* daPy_sightPacket_c::draw matching

* daPy_sightPacket_c::setSight matching

* daPy_swBlur_c::initSwBlur matching

* daPy_swBlur_c matching

* daPy_lk_c::setWaterDrop matching

* daPy_lk_c::setFootMark matching

* daPy_footEffect_c work

* daPy_lk_c::resetFootEffect matching

* daPy_lk_c::setSwimTail matching

* daPy_lk_c::setCutWaterSplash matching

* daPy_lk_c::setDamageCurseEmitter matching

* daPy_lk_c::setDamageElecEmitter matching

* daPy_lk_c::setDamageEmitter matching

* daPy_lk_c::endFlameDamageEmitter matching

* daPy_lk_c::setSwimWaterDrop matching

* daPy_lk_c::setItemWaterEffect matching

* daPy_lk_c::setFootEffectType matching

* daPy_lk_c::setFootEffect matching

* daPy_lk_c::setAuraEffect work

* daPy_lk_c::setWaterRipple matching

* d_a_player_particle minor cleanup

* daPy_lk_c::setAuraEffect matching

* Removed comment

* Removed another old comment

* PR suggestions
This commit is contained in:
Daniel Hajjar
2024-08-09 23:05:24 +02:00
committed by GitHub
parent f3670781af
commit c2bacf5658
11 changed files with 1023 additions and 96 deletions
+3 -1
View File
@@ -80,6 +80,7 @@ public:
daPyFlg0_UNK8 = 0x00000008,
daPyFlg0_DEKU_SP_RETURN_FLG = 0x00000010,
daPyFlg0_CUT_AT_FLG = 0x00000040,
daPyFlg0_UNK80 = 0x00000080,
daPyFlg0_UNK100 = 0x00000100,
daPyFlg0_SHIP_DROP = 0x00000200,
daPyFlg0_PUSH_PULL_KEEP = 0x00000800,
@@ -135,6 +136,7 @@ public:
enum daPy_RFLG0 {
daPyRFlg0_UNK2 = 0x00000002,
daPyRFlg0_ROPE_GRAB_RIGHT_HAND = 0x00000004,
daPyRFlg0_UNK10 = 0x00000010,
daPyRFlg0_GRAB_UP_END = 0x00000020,
daPyRFlg0_AUTO_JUMP_LAND = 0x00000040,
daPyRFlg0_UNK80 = 0x00000080,
@@ -346,7 +348,7 @@ public:
/* 0x29C */ u32 mNoResetFlg0;
/* 0x2A0 */ u32 mNoResetFlg1;
/* 0x2A4 */ u32 mResetFlg0;
/* 0x2A8 */ f32 field_0x2a8;
/* 0x2A8 */ f32 mMaxNormalSpeed;
/* 0x2AC */ f32 mHeight;
/* 0x2B0 */ f32 field_0x2b0;
/* 0x2B4 */ csXyz mBodyAngle;
+38 -14
View File
@@ -40,19 +40,20 @@ public:
void onLockFlg() { mLockFlag = true; }
void offLockFlg() { mLockFlag = false; }
void setPos(const cXyz* i_pos) { mPos = *i_pos; }
void setSightTex(void* sightTex) { mSightTex = sightTex; }
void setSightTex(void* sightTex) { mpSightTex = sightTex; }
void setLockTex(void* lockTex) { mpLockTex = lockTex; }
void setImage(ResTIMG* image) { mpImg = image; }
private:
/* 0x04 */ bool mDrawFlag;
/* 0x05 */ bool mLockFlag;
/* 0x06 */ u8 field_0x6[2];
/* 0x06 */ u8 field_0x6;
/* 0x07 */ u8 mLockAlpha;
/* 0x08 */ cXyz mPos;
/* 0x14 */ Mtx field_0x14;
/* 0x14 */ Mtx mMtx;
/* 0x44 */ ResTIMG* mpImg;
/* 0x48 */ void* mpLockTex;
/* 0x4C */ void* mSightTex;
/* 0x4C */ void* mpSightTex;
};
class daPy_actorKeep_c {
@@ -78,10 +79,19 @@ public:
dPa_smokeEcallBack* getSmokeCallBack() { return &mSmokeCb; }
dPa_followEcallBack* getOtherCallBack() { return &mFollowCb; }
void setID(s32 id) { mId = id; }
s32 getID() const { return mId; }
void setAngle(csXyz* angle) { mAngle = *angle; }
const csXyz& getAngle() { return mAngle; }
void setPos(const cXyz* pos) { mPos = *pos; }
const cXyz& getPos() { return mPos; }
/* 0x00 */ dPa_smokeEcallBack mSmokeCb;
/* 0x20 */ dPa_followEcallBack mFollowCb;
/* 0x34 */ u8 field_0x34[0x4C - 0x34];
/* 0x34 */ cXyz mPos;
/* 0x40 */ csXyz mAngle;
/* 0x48 */ s32 mId;
};
class daPy_fanSwingEcallBack_c : public dPa_levelEcallBack {
@@ -108,8 +118,8 @@ public:
void execute(JPABaseEmitter*, JPABaseParticle*);
~daPy_waterDropPcallBack_c() {}
/* 0x4 */ u8 field_0x4[0x4];
/* 0x8 */ dBgS_ObjGndChk field_0x8;
/* 0x4 */ BOOL field_0x4;
/* 0x8 */ dBgS_ObjGndChk mGndChk;
};
class daPy_swimTailEcallBack_c : public dPa_levelEcallBack {
@@ -127,12 +137,16 @@ public:
field_0x20 = NULL;
}
JPABaseEmitter* getEmitter() { return mpEmitter; }
cXyz& getPos() { return mPos; }
void setPos(cXyz& pos) { mPos = pos; }
/* 0x04 */ bool field_0x04;
/* 0x05 */ bool field_0x05;
/* 0x08 */ f32 field_0x08;
/* 0x0C */ f32 field_0x0C;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ cXyz field_0x14;
/* 0x14 */ cXyz mPos;
/* 0x20 */ const csXyz* field_0x20;
/* 0x24 */ JPABaseEmitter* mpEmitter;
}; // Size: 0x28
@@ -145,10 +159,14 @@ public:
void setup(JPABaseEmitter*, const cXyz*, const csXyz*, s8);
void end();
~daPy_followEcallBack_c() {}
JPABaseEmitter* getEmitter() { return mpEmitter; }
void setPos(const cXyz* pos) { mPos = *pos; }
cXyz& getPos() { return mPos; }
void setAngle(s16 x, s16 y, s16 z) { mAngle.set(x, y, z); }
/* 0x04 */ JPABaseEmitter* mpEmitter;
/* 0x08 */ cXyz field_0x08;
/* 0x14 */ csXyz field_0x14;
/* 0x08 */ cXyz mPos;
/* 0x14 */ csXyz mAngle;
/* 0x1A */ u8 field_0x1A[0x1C - 0x1A];
}; // Size: 0x1C
@@ -162,7 +180,7 @@ public:
static daPy_waterDropPcallBack_c m_pcallback;
/* 0x1C */ u8 field_0x1C[0x4];
/* 0x1C */ BOOL field_0x1C;
}; // Size: 0x20
class daPy_dmEcallBack_c : public daPy_mtxFollowEcallBack_c {
@@ -240,6 +258,12 @@ public:
}; // Size: 0x7C
class daPy_swBlur_c : public J3DPacket {
public:
enum BlurColorType {
NORMAL_SLASH_BLUR,
ELIXIR_SOUP_SLASH_BLUR,
PARRYING_SLASH_BLUR,
};
public:
void initSwBlur(MtxP, int, f32, int);
void copySwBlur(MtxP, int);
@@ -250,8 +274,8 @@ public:
/* 0x014 */ int field_0x014;
/* 0x018 */ int field_0x018;
/* 0x01C */ int mBlurColorType;
/* 0x020 */ f32 field_0x020;
/* 0x024 */ void* mpPosBuffer;
/* 0x020 */ f32 mBlurTopRate;
/* 0x024 */ Vec* mpPosBuffer;
/* 0x028 */ cXyz field_0x028;
/* 0x034 */ cXyz field_0x034[60];
/* 0x304 */ cXyz field_0x304[60];