mirror of
https://github.com/zeldaret/tww.git
synced 2026-06-26 01:34:39 -04:00
106 lines
2.7 KiB
C++
106 lines
2.7 KiB
C++
#ifndef D_A_DAI_ITEM_H
|
|
#define D_A_DAI_ITEM_H
|
|
|
|
#include "f_op/f_op_actor.h"
|
|
#include "d/d_bg_s_acch.h"
|
|
#include "d/d_cloth_packet.h"
|
|
#include "d/d_cc_d.h"
|
|
#include "SSystem/SComponent/c_phase.h"
|
|
|
|
class JPABaseEmitter;
|
|
class mDoExt_bckAnm;
|
|
class J3DNode;
|
|
|
|
class daStandItem_c : public fopAc_ac_c {
|
|
public:
|
|
enum Mode {
|
|
MODE_CARRY = 0x0,
|
|
MODE_WAIT = 0x1,
|
|
MODE_DROP = 0x2,
|
|
};
|
|
|
|
int getItemNo() const { return mItemNo; }
|
|
|
|
bool _delete();
|
|
BOOL CreateHeap();
|
|
void CreateInit();
|
|
cPhs_State _create();
|
|
void set_mtx();
|
|
bool _execute();
|
|
void itemProc();
|
|
bool actionFobj00();
|
|
bool actionFobj01();
|
|
bool actionFobj02();
|
|
bool actionFobj03();
|
|
bool actionFobj04();
|
|
bool actionFobj05();
|
|
bool actionFobj06();
|
|
bool actionFobj07();
|
|
bool actionFobj08();
|
|
bool actionFobj09();
|
|
bool actionFobj10();
|
|
bool actionFobj11();
|
|
void animTest();
|
|
void animTestForOneTime();
|
|
void execAction();
|
|
void mode_carry_init();
|
|
void mode_carry();
|
|
void mode_wait_init();
|
|
void mode_wait();
|
|
void mode_drop_init();
|
|
void mode_drop();
|
|
bool _draw();
|
|
|
|
static BOOL daiItemNodeCallBack(J3DNode*, int);
|
|
|
|
public:
|
|
static const char m_arcname[5];
|
|
static const s16 m_bmdidx[12];
|
|
static const s16 m_bckidx[12];
|
|
static const u16 m_heapsize[12];
|
|
static const s16 m_anim_min_time[12];
|
|
static const s16 m_anim_max_time[12];
|
|
static const s16 m_stop_min_time[12];
|
|
static const s16 m_stop_max_time[12];
|
|
|
|
public:
|
|
/* 0x290 */ request_of_phase_process_class mPhsDai;
|
|
/* 0x298 */ request_of_phase_process_class mPhsCloth;
|
|
/* 0x2A0 */ J3DModel* mpModel;
|
|
/* 0x2A4 */ mDoExt_bckAnm* mpBckAnm;
|
|
/* 0x2A8 */ dCcD_Stts mStts;
|
|
/* 0x2E4 */ dCcD_Cyl mCyl;
|
|
/* 0x414 */ dBgS_ObjAcch mAcch;
|
|
/* 0x5D8 */ dBgS_AcchCir mAcchCir;
|
|
/* 0x618 */ u8 mItemNo;
|
|
/* 0x619 */ u8 mItemType;
|
|
/* 0x61A */ u8 m61A[0x61C - 0x61A];
|
|
/* 0x61C */ int mTimer;
|
|
/* 0x620 */ int mMode;
|
|
/* 0x624 */ bool mCarry;
|
|
/* 0x625 */ u8 m625[0x628 - 0x625];
|
|
/* 0x628 */ s16 mBckPlayTimer;
|
|
/* 0x62A */ s16 mBckStopTimer;
|
|
/* 0x62C */ f32 mBckSpeed;
|
|
/* 0x630 */ Mtx m630;
|
|
/* 0x660 */ Mtx m660;
|
|
/* 0x690 */ JPABaseEmitter* m690;
|
|
/* 0x694 */ JPABaseEmitter* m694;
|
|
/* 0x698 */ JPABaseEmitter* m698;
|
|
/* 0x69C */ dCloth_packet_c* mpCloth;
|
|
/* 0x6A0 */ u8 mClothType;
|
|
/* 0x6A1 */ u8 m6A1[0x6A2 - 0x6A1];
|
|
/* 0x6A2 */ s16 m6A2;
|
|
/* 0x6A4 */ cXyz m6A4;
|
|
/* 0x6B0 */ u8 mbBckDidPlay;
|
|
/* 0x6B1 */ u8 m6B1;
|
|
/* 0x6B2 */ s16 m6B2;
|
|
/* 0x6B4 */ s16 m6B4;
|
|
/* 0x6B6 */ u8 m6B6[0x6BC - 0x6B6];
|
|
/* 0x6BC */ f32 m6BC;
|
|
/* 0x6C0 */ u8 m6C0[0x6C4 - 0x6C0];
|
|
/* 0x6C4 */ f32 m6C4;
|
|
};
|
|
|
|
#endif /* D_A_DAI_ITEM_H */
|