mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-09 06:03:22 -04:00
61 lines
1.4 KiB
C++
61 lines
1.4 KiB
C++
#ifndef D_A_DEKU_ITEM_H
|
|
#define D_A_DEKU_ITEM_H
|
|
|
|
#include "d/d_bg_s_acch.h"
|
|
#include "d/d_cc_d.h"
|
|
#include "d/d_particle.h"
|
|
#include "f_op/f_op_actor_mng.h"
|
|
#include "m_Do/m_Do_ext.h"
|
|
|
|
class daDekuItem_c : public fopAc_ac_c {
|
|
public:
|
|
typedef void (daDekuItem_c::*ModeFunc)();
|
|
|
|
enum Mode_e {
|
|
Mode_WAIT_e,
|
|
Mode_GETDEMO_INIT_e,
|
|
Mode_GETDEMO_WAIT_e,
|
|
Mode_GETDEMO_e,
|
|
};
|
|
|
|
bool _delete();
|
|
BOOL CreateHeap();
|
|
void CreateInit();
|
|
cPhs_State _create();
|
|
void set_mtx();
|
|
bool _execute();
|
|
void mode_proc_call();
|
|
void mode_wait();
|
|
void mode_getdemo_init();
|
|
void mode_getdemo_wait();
|
|
void mode_getdemo();
|
|
void eventOrder();
|
|
void checkOrder();
|
|
bool _draw();
|
|
|
|
static const char m_arcname[];
|
|
|
|
public:
|
|
/* 0x290 */ request_of_phase_process_class mPhs;
|
|
/* 0x298 */ J3DModel* mpModel;
|
|
/* 0x29C */ mDoExt_bckAnm mBck1;
|
|
/* 0x2AC */ mDoExt_bckAnm mBck2;
|
|
/* 0x2BC */ dBgS_ObjAcch mAcch;
|
|
/* 0x480 */ dBgS_AcchCir mAcchCir;
|
|
/* 0x4C0 */ dCcD_Stts mStts;
|
|
/* 0x4FC */ dCcD_Cyl mCyl;
|
|
/* 0x62C */ Mode_e mMode;
|
|
/* 0x630 */ BOOL unk630;
|
|
/* 0x634 */ s32 mItemBitNo;
|
|
/* 0x638 */ fpc_ProcID mItemPID;
|
|
/* 0x63C */ JPABaseEmitter* mpEmitter;
|
|
};
|
|
|
|
namespace daDekuItem_prm {
|
|
inline u8 getItemBitNo(daDekuItem_c* ac) {
|
|
return (fopAcM_GetParam(ac) >> 0) & 0xFF;
|
|
}
|
|
};
|
|
|
|
#endif /* D_A_DEKU_ITEM_H */
|