mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-09-01 08:22:58 -04:00
fopEn_enemy / fix e_wb
This commit is contained in:
+10
-10
@@ -1430,7 +1430,7 @@ public:
|
||||
/* 800E01CC */ void cancelBoomerangLock(fopAc_ac_c*);
|
||||
/* 800E0210 */ fopAc_ac_c* getBoomerangActor();
|
||||
/* 800E0244 */ bool checkBoomerangChargeEnd();
|
||||
/* 800E02B8 */ void checkBoomerangCarry(fopAc_ac_c*);
|
||||
/* 800E02B8 */ BOOL checkBoomerangCarry(fopAc_ac_c*);
|
||||
/* 800E03D0 */ void initBoomerangUpperAnimeSpeed(int);
|
||||
/* 800E0440 */ BOOL checkBoomerangAnime() const;
|
||||
/* 800E04AC */ BOOL checkBoomerangThrowAnime() const;
|
||||
@@ -5596,17 +5596,17 @@ class daAlinkHIO_boom_c1 {
|
||||
public:
|
||||
/* 0x00 */ daAlinkHIO_anm_c mThrowAnm;
|
||||
/* 0x14 */ daAlinkHIO_anm_c mCatchAnm;
|
||||
/* 0x28 */ s16 field_0x28;
|
||||
/* 0x28 */ s16 field_0x28; // return time?
|
||||
/* 0x2A */ s16 mBgThroughTime;
|
||||
/* 0x2C */ f32 field_0x2c;
|
||||
/* 0x30 */ f32 field_0x30;
|
||||
/* 0x34 */ f32 field_0x34;
|
||||
/* 0x38 */ f32 field_0x38;
|
||||
/* 0x3C */ f32 field_0x3c;
|
||||
/* 0x40 */ f32 field_0x40;
|
||||
/* 0x44 */ f32 field_0x44;
|
||||
/* 0x2C */ f32 mIdleAnmSpeed;
|
||||
/* 0x30 */ f32 mStartInterpolation;
|
||||
/* 0x34 */ f32 mFlySpeed;
|
||||
/* 0x38 */ f32 mFlySpeed2; // return speed?
|
||||
/* 0x3C */ f32 mFlyDistMax;
|
||||
/* 0x40 */ f32 mHorsebackFlyDistMax;
|
||||
/* 0x44 */ f32 mLockDistMax;
|
||||
/* 0x48 */ f32 mCatchSpeed;
|
||||
}; // Size: 0x4c
|
||||
}; // Size: 0x4C
|
||||
|
||||
class daAlinkHIO_boom_c0 {
|
||||
public:
|
||||
|
||||
@@ -34,12 +34,15 @@ private:
|
||||
class daPy_boomerangMove_c {
|
||||
public:
|
||||
/* 8015E5B0 */ void initOffset(cXyz const*);
|
||||
/* 8015E654 */ void posMove(cXyz*, s16*, fopAc_ac_c*, s16);
|
||||
/* 8015E654 */ int posMove(cXyz*, s16*, fopAc_ac_c*, s16);
|
||||
/* 8015E87C */ void bgCheckAfterOffset(cXyz const*);
|
||||
|
||||
static s16 m_dropAngleY;
|
||||
static s16 m_eventKeepFlg;
|
||||
|
||||
private:
|
||||
/* 0x0 */ u8 field_0x0;
|
||||
/* 0x2 */ u16 field_0x2;
|
||||
/* 0x2 */ s16 field_0x2;
|
||||
/* 0x4 */ f32 field_0x4;
|
||||
/* 0x8 */ f32 field_0x8;
|
||||
}; // Size: 0xC
|
||||
@@ -213,7 +216,15 @@ public:
|
||||
|
||||
HEAVY_STATE_BOOTS = FLG0_UNK_40000000 | EQUIP_HEAVY_BOOTS | FLG0_UNK_20000,
|
||||
};
|
||||
enum daPy_FLG1 { IS_WOLF = 0x2000000, FLG1_UNK_10000 = 0x10000, THROW_DAMAGE = 0x4000, FLG1_UNK_4 = 4, };
|
||||
|
||||
enum daPy_FLG1 {
|
||||
IS_WOLF = 0x2000000,
|
||||
FLG1_UNK_10000 = 0x10000,
|
||||
THROW_DAMAGE = 0x4000,
|
||||
FLG1_UNK_4 = 4,
|
||||
FLG1_UNK_2 = 2,
|
||||
};
|
||||
|
||||
enum daPy_FLG2 {
|
||||
FLG2_UNK_20000000 = 0x20000000,
|
||||
FLG2_UNK_4080000 = 0x4080000,
|
||||
@@ -227,12 +238,14 @@ public:
|
||||
UNK_FLG2_2 = 2,
|
||||
UNK_DAPY_FLG2_1 = 1
|
||||
};
|
||||
|
||||
enum daPy_FLG3 {
|
||||
FLG3_UNK_2000000 = 0x2000000,
|
||||
FLG3_UNK_1000000 = 0x1000000,
|
||||
FLG3_UNK_100000 = 0x100000,
|
||||
COPY_ROD_THROW_AFTER = 0x40000
|
||||
};
|
||||
|
||||
enum daPy_ERFLG0 {
|
||||
ERFLG0_UNK_8000000 = 0x8000000,
|
||||
ERFLG0_UNK_1000000 = 0x1000000,
|
||||
@@ -243,15 +256,18 @@ public:
|
||||
ERFLG0_UNK_2 = 2,
|
||||
ERFLG0_UNK_1 = 1,
|
||||
};
|
||||
|
||||
enum daPy_ERFLG1 {
|
||||
GANON_FINISH = 0x80000000,
|
||||
UNK_FORCE_PUT_POS = 0x2000,
|
||||
ERFLG1_UNK_2 = 2,
|
||||
ERFLG1_UNK_1 = 1,
|
||||
};
|
||||
|
||||
enum daPy_ERFLG2 {
|
||||
ERFLG2_UNK_100 = 0x100,
|
||||
};
|
||||
|
||||
enum daPy_RFLG0 {
|
||||
RFLG0_UNK_8000000 = 0x8000000,
|
||||
RFLG0_UNK_4000 = 0x4000,
|
||||
@@ -321,7 +337,7 @@ public:
|
||||
static u32 checkCarryStartLightBallA();
|
||||
static u32 checkCarryStartLightBallB();
|
||||
float getSpinnerRideSpeed() const;
|
||||
void checkSpinnerReflectEffect();
|
||||
bool checkSpinnerReflectEffect();
|
||||
static bool checkBoomerangCharge();
|
||||
bool checkBoomerangChargeTime();
|
||||
static daBoomerang_c* getThrowBoomerangActor();
|
||||
|
||||
@@ -47,7 +47,7 @@ public:
|
||||
bool ChkWallHit() { return m_flags & WALL_HIT; }
|
||||
|
||||
void SetCir(cXyz& pos) { m_cir.Set(pos.x, pos.z, pos.y + GetWallH(), m_wall_r); }
|
||||
};
|
||||
}; // Size: 0x40
|
||||
|
||||
class dBgS;
|
||||
class dBgS_Acch : public cBgS_Chk, public dBgS_Chk {
|
||||
|
||||
@@ -364,7 +364,10 @@ public:
|
||||
|
||||
void setPlayerPtr(int i, fopAc_ac_c* ptr) { mPlayerPtr[i] = ptr; }
|
||||
void setPlayer(int i, fopAc_ac_c* player) { mPlayer[i] = (daAlink_c*)player; }
|
||||
void setPlayerInfo(int i, fopAc_ac_c* ptr, int camIdx) { mPlayer[i] = (daAlink_c*)ptr; mPlayerCameraID[camIdx] = 0; }
|
||||
void setPlayerInfo(int i, fopAc_ac_c* ptr, int camIdx) {
|
||||
mPlayer[i] = (daAlink_c*)ptr;
|
||||
mPlayerCameraID[camIdx] = 0;
|
||||
}
|
||||
void setPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[i] |= flag; }
|
||||
void clearPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[i] &= ~flag; }
|
||||
bool checkPlayerStatus(int param_0, int i, u32 flag) { return flag & mPlayerStatus[i]; }
|
||||
@@ -1477,7 +1480,6 @@ inline void dComIfGs_setMemoryToCard(u8* p_saveData, int dataNum) {
|
||||
g_dComIfG_gameInfo.info.memory_to_card((char*)p_saveData, dataNum);
|
||||
}
|
||||
|
||||
|
||||
void dComIfGp_setSelectItem(int index);
|
||||
s32 dComIfGp_offHeapLockFlag(int flag);
|
||||
void dComIfGp_createSubExpHeap2D();
|
||||
@@ -2024,7 +2026,8 @@ inline BOOL dComIfGp_checkCameraAttentionStatus(int i, u32 flag) {
|
||||
return g_dComIfG_gameInfo.play.checkCameraAttentionStatus(i, flag);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setCameraInfo(int camIdx, camera_class* p_cam, int param_2, int param_3, int param_4) {
|
||||
inline void dComIfGp_setCameraInfo(int camIdx, camera_class* p_cam, int param_2, int param_3,
|
||||
int param_4) {
|
||||
g_dComIfG_gameInfo.play.setCameraInfo(camIdx, p_cam, param_2, param_3, param_4);
|
||||
}
|
||||
|
||||
@@ -2288,7 +2291,8 @@ inline int dComIfGp_event_moveApproval(void* actor) {
|
||||
|
||||
inline int dComIfGp_event_order(u16 eventType, u16 priority, u16 flag, u16 param_3, void* param_4,
|
||||
void* param_5, s16 eventID, u8 infoIdx) {
|
||||
return g_dComIfG_gameInfo.play.getEvent().order(eventType, priority, flag, param_3, param_4, param_5, eventID, infoIdx);
|
||||
return g_dComIfG_gameInfo.play.getEvent().order(eventType, priority, flag, param_3, param_4,
|
||||
param_5, eventID, infoIdx);
|
||||
}
|
||||
|
||||
inline void dComIfGp_event_setGtItm(int i_itemNo) {
|
||||
@@ -2436,10 +2440,10 @@ inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2,
|
||||
param_10, param_11, 1.0f);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2, const csXyz* param_3,
|
||||
const cXyz* param_4, u8 param_5, dPa_levelEcallBack* param_6,
|
||||
s8 param_7, const GXColor* param_8, const GXColor* param_9,
|
||||
const cXyz* param_10) {
|
||||
inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2,
|
||||
const csXyz* param_3, const cXyz* param_4, u8 param_5,
|
||||
dPa_levelEcallBack* param_6, s8 param_7, const GXColor* param_8,
|
||||
const GXColor* param_9, const cXyz* param_10) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->setNormal(
|
||||
param_0, param_1, param_2, NULL, param_3, param_4, param_5, param_6, param_7, param_8,
|
||||
param_9, param_10, 1.0f);
|
||||
@@ -2454,20 +2458,29 @@ inline u32 dComIfGp_particle_set(u16 param_1, const cXyz* param_2, const dKy_tev
|
||||
param_9, param_10, param_11, 1.0f);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_set(u16 param_1, const cXyz* param_2, const csXyz* param_3,
|
||||
const cXyz* param_4, u8 param_5, dPa_levelEcallBack* param_6,
|
||||
s8 param_7, const GXColor* param_8, const GXColor* param_9,
|
||||
const cXyz* param_10) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->setNormal(param_1, param_2, NULL, param_3,
|
||||
param_4, param_5, param_6, param_7,
|
||||
param_8, param_9, param_10, 1.0f);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const csXyz* param_2,
|
||||
const cXyz* param_3) {
|
||||
return dComIfGp_particle_set(param_0, param_1, NULL, param_2, param_3, 0xFF, NULL, -1, NULL,
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const dKy_tevstr_c* param_2, const csXyz* param_3,
|
||||
const cXyz* param_4) {
|
||||
inline u32 dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const dKy_tevstr_c* param_2,
|
||||
const csXyz* param_3, const cXyz* param_4) {
|
||||
return dComIfGp_particle_set(param_0, param_1, param_2, param_3, param_4, 0xFF, NULL, -1, NULL,
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2, const csXyz* param_3,
|
||||
const cXyz* param_4) {
|
||||
inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2,
|
||||
const csXyz* param_3, const cXyz* param_4) {
|
||||
return dComIfGp_particle_set(param_0, param_1, param_2, param_3, param_4, 0xFF, NULL, -1, NULL,
|
||||
NULL, NULL);
|
||||
}
|
||||
@@ -2496,7 +2509,6 @@ int dComIfGd_setShadow(u32 param_0, s8 param_1, J3DModel* param_2, cXyz* param_3
|
||||
f32 param_5, f32 param_6, f32 param_7, cBgS_PolyInfo& param_8,
|
||||
dKy_tevstr_c* param_9, s16 param_10, f32 param_11, _GXTexObj* param_12);
|
||||
|
||||
|
||||
inline int dComIfGd_setRealShadow(u32 param_0, s8 param_1, J3DModel* param_2, cXyz* param_3,
|
||||
f32 param_4, f32 param_5, dKy_tevstr_c* param_6) {
|
||||
return g_dComIfG_gameInfo.drawlist.setRealShadow(param_0, param_1, param_2, param_3, param_4,
|
||||
@@ -2522,6 +2534,10 @@ inline void dComIfGd_set2DOpa(dDlst_base_c* dlst) {
|
||||
g_dComIfG_gameInfo.drawlist.set2DOpa(dlst);
|
||||
}
|
||||
|
||||
inline void dComIfGd_set2DXlu(dDlst_base_c* dlst) {
|
||||
g_dComIfG_gameInfo.drawlist.set2DXlu(dlst);
|
||||
}
|
||||
|
||||
inline void dComIfGd_set2DOpaTop(dDlst_base_c* dlst) {
|
||||
g_dComIfG_gameInfo.drawlist.set2DOpaTop(dlst);
|
||||
}
|
||||
|
||||
@@ -284,6 +284,7 @@ public:
|
||||
|
||||
void set2DOpa(dDlst_base_c* dlst) { set(mp2DOpaSet[0], mp2DOpaSet[1], dlst); }
|
||||
void set2DOpaTop(dDlst_base_c* dlst) { set(mp2DOpaTopSet[0], mp2DOpaTopSet[1], dlst); }
|
||||
void set2DXlu(dDlst_base_c* dlst) { set(mp2DXluSet[0], mp2DXluSet[1], dlst); }
|
||||
view_class* getView() { return mView; }
|
||||
void setView(view_class* view) { mView = view; }
|
||||
void setWindow(dDlst_window_c* window) { mWindow = window; }
|
||||
|
||||
@@ -104,6 +104,8 @@ public:
|
||||
void setPtD(void* ptr);
|
||||
void setGtItm(u8 itemNo);
|
||||
void isOrderOK();
|
||||
/* 807DFAD8 */ void checkSkipEdge();
|
||||
/* 807E2908 */ void startCheckSkipEdge(void*);
|
||||
|
||||
u16 chkFlag2(u16 flag) { return flag & mFlag2; }
|
||||
bool runCheck() { return mEventStatus != 0; }
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
#define D_PARTICLE_D_PARTICLE_H
|
||||
|
||||
#include "JSystem/JParticle/JPAParticle.h"
|
||||
#include "d/particle/d_particle_name.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "d/particle/d_particle_name.h"
|
||||
|
||||
class dPa_levelEcallBack : public JPAEmitterCallBack {
|
||||
public:
|
||||
@@ -138,8 +138,8 @@ public:
|
||||
|
||||
/* 8004AB1C */ void create(u8);
|
||||
/* 8004ABC4 */ void remove();
|
||||
/* 8004AC00 */ void setModel(JPABaseEmitter*, J3DModelData*, dKy_tevstr_c const&, u8, void*, u8,
|
||||
u8);
|
||||
/* 8004AC00 */ static void setModel(JPABaseEmitter*, J3DModelData*, dKy_tevstr_c const&, u8,
|
||||
void*, u8, u8);
|
||||
/* 8004AC90 */ void resetModel(JPABaseEmitter*);
|
||||
/* 8004ACC0 */ void setupModel(JPABaseEmitter*);
|
||||
/* 8004ACEC */ void drawModel(JPABaseEmitter*, f32 (*)[4]);
|
||||
@@ -152,7 +152,15 @@ public:
|
||||
/* 80050014 */ virtual void drawAfter(JPABaseEmitter*);
|
||||
/* 8004AAA8 */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
|
||||
|
||||
static u8 mEcallback[4];
|
||||
static void setModel(JPABaseEmitter* param_0, J3DModelData* param_1,
|
||||
const dKy_tevstr_c& param_2, u8 param_3, J3DAnmTexPattern* param_4,
|
||||
u8 param_5) {
|
||||
setModel(param_0, param_1, param_2, param_3, param_4, param_5);
|
||||
}
|
||||
|
||||
static dPa_modelEcallBack* getEcallback() { return mEcallback; }
|
||||
|
||||
static dPa_modelEcallBack* mEcallback;
|
||||
static u8 mPcallback[4];
|
||||
static J3DModel* mModel;
|
||||
};
|
||||
@@ -207,7 +215,6 @@ public:
|
||||
/* 8004FE6C */ virtual ~dPa_fsenthPcallBack();
|
||||
/* 8004DCA0 */ virtual void execute(JPABaseEmitter*, JPABaseParticle*);
|
||||
/* 8004DD0C */ virtual void draw(JPABaseEmitter*, JPABaseParticle*);
|
||||
|
||||
};
|
||||
|
||||
class dPa_simpleData_c {
|
||||
@@ -244,7 +251,7 @@ public:
|
||||
|
||||
void offActive() { mStatus &= ~1; }
|
||||
bool isActive() { return mStatus & 1; }
|
||||
|
||||
|
||||
private:
|
||||
/* 0x00 */ u32 mId;
|
||||
/* 0x04 */ u16 mNameId;
|
||||
@@ -341,6 +348,10 @@ public:
|
||||
static void offStatus(u8 status) { mStatus &= ~status; }
|
||||
static bool isStatus(u8 status) { return mStatus & status; }
|
||||
|
||||
static dPa_selectTexEcallBack* getTsuboSelectTexEcallBack(int idx) {
|
||||
return ((dPa_selectTexEcallBack*)mTsubo) + idx;
|
||||
}
|
||||
|
||||
static u8 mTsubo[64];
|
||||
static u8 mLifeBall[24];
|
||||
static Mtx mWindViewMatrix;
|
||||
|
||||
Reference in New Issue
Block a user