Files
tww/include/d/actor/d_a_fan.h
T
2024-03-11 19:03:47 -04:00

60 lines
1.7 KiB
C++

#ifndef D_A_FAN_H
#define D_A_FAN_H
#include "d/d_bg_s_movebg_actor.h"
#include "d/d_cc_d.h"
#include "m_Do/m_Do_ext.h"
class daFan_c : public dBgS_MoveBgActor {
public:
s32 _create();
BOOL Delete();
int CreateHeap();
int Create();
void set_mtx();
void set_wind_length(f32);
void set_cps(f32);
int Execute(Mtx**);
BOOL Draw();
public:
/* 0x2C8 */ request_of_phase_process_class mPhs;
/* 0x2D0 */ request_of_phase_process_class mWindPhs;
/* 0x2D8 */ J3DModel* mModel;
/* 0x2DC */ dCcD_Stts mStts;
/* 0x318 */ dCcD_Cps mCps;
/* 0x450 */ u32 field_0x450[13];
/* 0x484 */ mDoExt_btkAnm mBtkAnm;
/* 0x498 */ u32 mSwitchNo;
/* 0x49C */ u8 mType;
/* 0x4A0 */ cM3dGCpsS mCpsS;
/* 0x4BC */ s16 mFanAngle;
/* 0x4BE */ s16 mFanSpeed;
/* 0x4C0 */ u32 field_0x4c0;
/* 0x4C4 */ J3DModel* mWindModel;
/* 0x4C8 */ mDoExt_btkAnm mWindBtkAnm0;
/* 0x4C8 */ mDoExt_btkAnm mWindBtkAnm1;
/* 0x4C8 */ mDoExt_bckAnm mWindBckAnm;
/* 0x500 */ cXyz mWindScale;
/* 0x50C */ uint mWindSePId;
static const char* m_arcname[3];
static const char m_arcname2[8];
static const s16 m_bdlidx[3];
static const s16 m_dzbidx[3];
static const f32 m_wind_length[3];
static const f32 m_wind_r[3];
static const Vec m_wind_model_scale[3];
static const s16 m_fan_speed[3];
static const u32 m_heapsize[3];
static const Vec m_cull_min[3];
static const Vec m_cull_max[3];
};
namespace daFan_prm {
inline u8 getType(daFan_c* ac) { return (fopAcM_GetParam(ac) >> 8) & 0x03; }
inline u8 getSwitchNo(daFan_c* ac) { return (fopAcM_GetParam(ac) >> 0) & 0xFF; }
};
#endif /* D_A_FAN_H */