Files
Ammar Askar 78d6f0384b Merge pull request #765 from ammaraskar/d_a_fire
Match and link d_a_fire
2025-05-22 17:59:39 -04:00

81 lines
2.0 KiB
C++

#ifndef D_A_FIRE_H
#define D_A_FIRE_H
#include "d/d_cc_d.h"
#include "f_op/f_op_actor.h"
#include "f_op/f_op_actor_mng.h"
class JPABaseEmitter;
class daFire_c : public fopAc_ac_c {
public:
bool _delete();
BOOL CreateInit();
cPhs_State _create();
bool _execute();
void search_wind();
void ctrlEffect();
void demo_proc();
void normal_proc();
void eventOrder();
void checkOrder();
void execStopFire();
void execStopNowFire();
void execPlayFire();
void setDirParticle(cXyz*);
void checkCol();
bool _draw();
public:
/* 0x290 */ dCcD_Stts mStts;
/* 0x2CC */ dCcD_Cyl field_0x2CC[3];
/* 0x65C */ dCcD_Cyl field_0x65C;
/* 0x78C */ dCcD_Cyl field_0x78C;
/* 0x8BC */ JPABaseEmitter* field_0x8BC;
/* 0x8C0 */ JPABaseEmitter* field_0x8C0;
/* 0x8C4 */ JPABaseEmitter* field_0x8C4;
/* 0x8C8 */ s32 mSwitchNo;
/* 0x8CC */ u32 mTrboxBit;
/* 0x8D0 */ u8 mShape;
/* 0x8D1 */ u8 field_0x8D1;
/* 0x8D2 */ u8 field_0x8D2;
/* 0x8D4 */ cXyz field_0x8D4;
/* 0x8E0 */ cXyz field_0x8E0;
/* 0x8EC */ u8 field_0x8EC;
/* 0x8ED */ bool field_0x8ED;
/* 0x8EE */ u8 field_0x8EE[0x8F0 - 0x8EE];
/* 0x8F0 */ fpc_ProcID field_0x8F0;
/* 0x8F4 */ s32 field_0x8F4;
/* 0x8F8 */ s32 field_0x8F8;
/* 0x8FC */ s16 field_0x8FC;
/* 0x8FE */ s16 field_0x8FE;
/* 0x900 */ u8 mType;
/* 0x901 */ s8 field_0x901;
/* 0x902 */ u8 field_0x902;
/* 0x903 */ u8 field_0x903;
};
namespace daFire_prm {
inline u8 getSwitch(daFire_c* ac) {
return fopAcM_GetParam(ac);
}
inline u8 getTrboxBit(daFire_c* ac) {
return (fopAcM_GetParam(ac) >> 12) & 0x1F;
}
inline u8 getType(daFire_c* ac) {
return (fopAcM_GetParam(ac) >> 17) & 0x7;
}
inline u8 getShape(daFire_c* ac) {
return (fopAcM_GetParam(ac) >> 8) & 0xF;
}
inline u8 getSound(daFire_c* ac) {
return (fopAcM_GetParam(ac) >> 20) & 0xF;
}
}
#endif /* D_A_FIRE_H */