d_a_deku_item (#651)

* Started implementing d_a_deku_item

* Implemented daDekuItem_c::set_mtx

* d_a_deku_item l_cyl_src matching

* daDekuItem_c::_create matching

* daDekuItem_c::_delete matching

* daDekuItem_c::CreateInit

* daDekuItem_c::CreateHeap matching

* d_a_deku_item static methods matching

* daDekuItem_c::_execute matching

* daDekuItem_c::_draw matching

* daDekuItem_c::checkOrder matching

* daDekuItem_c::eventOrder matching

* daDekuItem_c::mode_proc_call matching

* daDekuItem_c mode_getdemo functions matching

* daDekuItem_c::mode_wait matching

* d_a_deku_item cleanup

* Update include/d/actor/d_a_deku_item.h

Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>

* d_a_deku_item Removed auto-generated comments

* d_a_deku_item Fixed matching

---------

Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
This commit is contained in:
Daniel Hajjar
2024-05-15 03:02:15 +02:00
committed by GitHub
parent 3e02c1e450
commit 29a9b56c6d
3 changed files with 236 additions and 32 deletions
+36 -3
View File
@@ -1,12 +1,25 @@
#ifndef D_A_DEKU_ITEM_H
#define D_A_DEKU_ITEM_H
#include "f_op/f_op_actor.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();
void CreateHeap();
BOOL CreateHeap();
void CreateInit();
s32 _create();
void set_mtx();
@@ -20,8 +33,28 @@ public:
void checkOrder();
BOOL _draw();
static const char m_arcname[];
public:
/* Place member variables here */
/* 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 */ uint 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 */