d_a_shutter 100% (#691)

* d_a_shutter 100%

- Wasn't sure what to name some of the used member variables that have yet to be assigned names (ex. `field_0x339`) but if you have an intuitive guess based on the code/previous actors I'd be happy to change them

* Requested PR changes made

The only thing I was unsure about was the new name for `mCount`. I settled on `mFrameTimer` because it's initialized to 30 and counts down every frame (assuming `_execute()` is called every frame).

* changed typing of `mbIsSwitch` to remove unnecessary cast

* file reference changes
This commit is contained in:
mattias-blum
2025-02-22 21:06:13 -05:00
committed by GitHub
parent 3f00e1e347
commit 8338fd56e6
3 changed files with 270 additions and 28 deletions
+42 -6
View File
@@ -2,12 +2,14 @@
#define D_A_SHUTTER_H
#include "f_op/f_op_actor.h"
#include "SSystem/SComponent/c_phase.h"
#include "f_op/f_op_actor_mng.h"
class dBgW;
class daShutter_c : public fopAc_ac_c {
public:
bool _delete();
void CreateHeap();
BOOL CreateHeap();
s32 Create();
s32 _create();
void set_mtx();
@@ -16,13 +18,47 @@ public:
void demo();
bool _draw();
/* 0x00 */ static const float m_max_speed[2];
/* 0x08 */ static const float m_min_speed[2];
/* 0x10 */ static const float m_move_len[2];
/* 0x18 */ static const float m_width[2];
/* 0x20 */ static const float m_height[2];
/* 0x28 */ static const s16 m_bdlidx[2];
/* 0x2C */ static const s16 m_dzbidx[2];
/* 0x30 */ static const s32 m_heapsize[2];
/* 0x38 */ static const Vec m_cull_min[2];
/* 0x50 */ static const Vec m_cull_max[2];
static char* m_arcname[2];
static char* m_open_ev_name[2];
static char* m_close_ev_name[2];
static char* m_staff_name[2];
public:
/* 0x290 */ request_of_phase_process_class mPhs;
/* 0x298 */ u8 m298[0x308 - 0x298];
/* 0x308 */ cXyz m308[2];
/* 0x320 */ u8 m320[0x335 - 0x320];
/* 0x298 */ J3DModel* mpModel[2];
/* 0x2A0 */ dBgW* mdBgW[2];
/* 0x2A8 */ Mtx mMtx[2];
/* 0x308 */ cXyz mcXyz[2];
/* 0x320 */ s32 field_0x320;
/* 0x324 */ s32 mSwitchNo;
/* 0x328 */ s32 field_0x328;
/* 0x32C */ s32 mStaffId;
/* 0x330 */ s16 mOpenEventIdx;
/* 0x332 */ s16 mCloseEventIdx;
/* 0x334 */ u8 field_0x334;
/* 0x335 */ u8 mType;
/* 0x336 */ u8 m336[0x33C - 0x336];
/* 0x336 */ u8 mbIsSwitch;
/* 0x337 */ s8 mFrameTimer;
/* 0x338 */ u8 mTimer;
/* 0x339 */ u8 field_0x339;
/* 0x33A */ u8 field_0x33A;
/* 0x33B */ u8 field_0x33B;
};
namespace daShutter_prm {
inline u8 getSwitchNo(daShutter_c* item) { return (fopAcM_GetParam(item) >> 0) & 0xFF; }
inline u8 getType(daShutter_c* item) { return (fopAcM_GetParam(item) >> 8) & 0x0F; }
}
#endif /* D_A_SHUTTER_H */