mirror of https://github.com/zeldaret/tp.git
105 lines
2.9 KiB
C++
105 lines
2.9 KiB
C++
#ifndef D_A_OBJ_WDSTICK_H
|
|
#define D_A_OBJ_WDSTICK_H
|
|
|
|
#include "d/d_bg_s_acch.h"
|
|
#include "d/d_cc_d.h"
|
|
#include "f_op/f_op_actor_mng.h"
|
|
|
|
/**
|
|
* @ingroup actors-objects
|
|
* @class daWdStick_c
|
|
* @brief Wooden Stick
|
|
*
|
|
* @details
|
|
*
|
|
*/
|
|
class daWdStick_c : public fopAc_ac_c {
|
|
public:
|
|
typedef void (daWdStick_c::*modeFunc)();
|
|
|
|
enum Mode {
|
|
MODE_WAIT,
|
|
MODE_CARRY,
|
|
MODE_DROP,
|
|
MODE_ROLL,
|
|
MODE_SINK,
|
|
};
|
|
|
|
/* 80D31BD0 */ void setBaseMtx();
|
|
/* 80D31C58 */ virtual int CreateHeap();
|
|
/* 80D31CC4 */ int create();
|
|
/* 80D32168 */ static int createHeapCallBack(fopAc_ac_c*);
|
|
/* 80D32194 */ void lightInit();
|
|
/* 80D32198 */ void setLight();
|
|
/* 80D3219C */ void setFire();
|
|
/* 80D3269C */ virtual int Execute();
|
|
/* 80D32DB4 */ void bgCheck();
|
|
/* 80D33348 */ void setBoundSe();
|
|
/* 80D333F4 */ void mode_proc_call();
|
|
/* 80D3350C */ void mode_init_wait();
|
|
/* 80D3353C */ void mode_proc_wait();
|
|
/* 80D33588 */ void mode_init_carry();
|
|
/* 80D335AC */ void mode_proc_carry();
|
|
/* 80D3386C */ void mode_init_drop();
|
|
/* 80D33890 */ void mode_proc_drop();
|
|
/* 80D338DC */ void mode_init_roll();
|
|
/* 80D338F4 */ void mode_proc_roll();
|
|
/* 80D33D44 */ BOOL chkWaterLineIn();
|
|
/* 80D33D68 */ void mode_init_sink();
|
|
/* 80D33D8C */ void mode_proc_sink();
|
|
/* 80D33EB0 */ virtual int Draw();
|
|
/* 80D33F14 */ virtual int Delete();
|
|
|
|
static dCcD_SrcGObjInf const mCcDObjInfo;
|
|
static dCcD_SrcSph mCcDSph;
|
|
|
|
private:
|
|
/* 0x56C */ request_of_phase_process_class mPhase;
|
|
/* 0x574 */ J3DModel* mModel;
|
|
/* 0x578 */ u8 mMode;
|
|
/* 0x579 */ bool misCarrying;
|
|
/* 0x57C */ cXyz field_0x57c;
|
|
/* 0x588 */ u8 field_0x588[0x594 - 0x588];
|
|
/* 0x594 */ cXyz field_0x594;
|
|
/* 0x5A0 */ dBgS_ObjAcch mAcch;
|
|
/* 0x778 */ dBgS_AcchCir mAcchCir;
|
|
/* 0x7B8 */ dCcD_Stts mStts;
|
|
/* 0x7F4 */ dCcD_Sph mSph1;
|
|
/* 0x92C */ dCcD_Sph mSph2;
|
|
/* 0xA64 */ cXyz field_0xa64;
|
|
/* 0xA70 */ cXyz field_0xa70;
|
|
/* 0xA7C */ cXyz field_0xa7c;
|
|
/* 0xA88 */ cXyz field_0xa88;
|
|
/* 0xA94 */ cXyz field_0xa94;
|
|
/* 0xAA0 */ cXyz field_0xaa0;
|
|
/* 0xAAC */ u8 field_0xaac;
|
|
/* 0xAAD */ u8 field_0xaad;
|
|
/* 0xAAE */ u16 field_0xaae;
|
|
/* 0xAB0 */ u16 field_0xab0;
|
|
/* 0xAB4 */ cXyz field_0xab4;
|
|
/* 0xAC0 */ cXyz field_0xac0;
|
|
/* 0xACC */ cXyz field_0xacc;
|
|
/* 0xAD8 */ cXyz field_0xad8;
|
|
/* 0xAE4 */ u32 field_0xae4[2];
|
|
/* 0xAEC */ u32 field_0xaec[2];
|
|
/* 0xAF4 */ u8 field_0xaf4;
|
|
};
|
|
|
|
STATIC_ASSERT(sizeof(daWdStick_c) == 0xaf8);
|
|
|
|
class daWdStick_HIO_c : public mDoHIO_entry_c {
|
|
public:
|
|
/* 80D31B4C */ daWdStick_HIO_c();
|
|
/* 80D34030 */ virtual ~daWdStick_HIO_c() {}
|
|
|
|
void genMessage(JORMContext*);
|
|
|
|
/* 0x04 */ u8 field_0x04;
|
|
/* 0x05 */ u8 field_0x05;
|
|
/* 0x06 */ s16 field_0x06;
|
|
/* 0x08 */ u8 field_0x08;
|
|
};
|
|
|
|
|
|
#endif /* D_A_OBJ_WDSTICK_H */
|