11#ifndef D_A_OBJ_LV6SZGATE_H
22#define D_A_OBJ_LV6SZGATE_H
33
4+ #include " d/d_bg_s_movebg_actor.h"
45#include " f_op/f_op_actor_mng.h"
56
67/* *
1112 * @details
1213 *
1314 */
14- class daLv6SzGate_c : public fopAc_ac_c {
15+ class daLv6SzGate_c : public dBgS_MoveBgActor {
1516public:
17+ enum Mode {
18+ MODE_WAIT = 0 ,
19+ MODE_OPENWAIT0 = 1 ,
20+ MODE_OPENWAIT = 2 ,
21+ MODE_OPEN = 3 ,
22+ MODE_CLOSE = 4 ,
23+ MODE_END = 5 ,
24+ };
25+
1626 /* 80C75900 */ void setBaseMtx ();
17- /* 80C75A54 */ void CreateHeap ();
18- /* 80C75C0C */ void create ();
19- /* 80C75E18 */ void Execute (f32 (**)[3][4] );
27+ /* 80C75A54 */ int CreateHeap ();
28+ /* 80C75C0C */ cPhs__Step create ();
29+ /* 80C75E18 */ int Execute (Mtx** );
2030 /* 80C75E78 */ void moveGate ();
2131 /* 80C75F64 */ void init_modeWait ();
2232 /* 80C75F70 */ void modeWait ();
@@ -29,20 +39,41 @@ class daLv6SzGate_c : public fopAc_ac_c {
2939 /* 80C7624C */ void modeClose ();
3040 /* 80C76328 */ void init_modeEnd ();
3141 /* 80C76344 */ void modeEnd ();
32- /* 80C7637C */ void Draw ();
33- /* 80C76490 */ void Delete ();
42+ /* 80C7637C */ int Draw ();
43+ /* 80C76490 */ int Delete ();
44+
45+ u32 getWaitTime () { return fopAcM_GetParamBit (this , 8 , 8 ); }
46+ u32 getSw () { return fopAcM_GetParamBit (this , 0 , 8 ); }
3447
3548private:
36- /* 0x568 */ u8 field_0x568[0x61c - 0x568 ];
49+ /* 0x5A0 */ request_of_phase_process_class mPhase ;
50+ /* 0x5A8 */ J3DModel* field_0x5a8;
51+ /* 0x5AC */ J3DModel* field_0x5ac;
52+ /* 0x5B0 */ mDoExt_brkAnm field_0x5b0;
53+ /* 0x5C8 */ mDoExt_btkAnm field_0x5c8;
54+ /* 0x5E0 */ u8 mMode ;
55+ /* 0x5E1 */ u8 field_0x5e1;
56+ /* 0x5E2 */ u8 field_0x5e2;
57+ /* 0x5E3 */ u8 field_0x5e3;
58+ /* 0x5E4 */ f32 field_0x5e4;
59+ /* 0x5E8 */ dBgW* field_0x5e8;
60+ /* 0x5EC */ Mtx mMtx ;
3761};
3862
3963STATIC_ASSERT (sizeof (daLv6SzGate_c) == 0x61c);
4064
41- class daLv6SzGate_HIO_c {
65+ class daLv6SzGate_HIO_c : public mDoHIO_entry_c {
4266public:
4367 /* 80C7586C */ daLv6SzGate_HIO_c();
44- /* 80C76584 */ ~daLv6SzGate_HIO_c ();
68+ /* 80C76584 */ virtual ~daLv6SzGate_HIO_c () {};
69+
70+ /* 0x04 */ f32 mSpeed ;
71+ /* 0x08 */ f32 field_0x08;
72+ /* 0x0C */ f32 field_0x0c;
73+ /* 0x10 */ f32 field_0x10;
74+ /* 0x14 */ u8 mShockStrength ;
4575};
4676
77+ STATIC_ASSERT (sizeof (daLv6SzGate_HIO_c) == 0x18);
4778
4879#endif /* D_A_OBJ_LV6SZGATE_H */
0 commit comments