#ifndef D_A_OBJ_SW_H #define D_A_OBJ_SW_H #include "f_op/f_op_actor_mng.h" /** * @ingroup actors-objects * @class obj_sw_class * @brief Switch * * @details * */ struct obj_sc_s { public: /* 80CF2F3C */ ~obj_sc_s(); /* 80CF2FA8 */ obj_sc_s(); /* 0x00 */ s8 field_0x0; /* 0x01 */ u8 field_0x1[0x4 - 0x1]; /* 0x04 */ cXyz field_0x4; /* 0x10 */ cXyz field_0x10; /* 0x1C */ cXyz field_0x1c; /* 0x28 */ s16 field_0x28; /* 0x2A */ s16 field_0x2a; /* 0x2C */ s16 field_0x2c; /* 0x2E */ u8 field_0x2e[0x30 - 0x2e]; /* 0x30 */ f32 field_0x30; /* 0x34 */ s8 field_0x34; /* 0x35 */ s8 field_0x35; /* 0x36 */ u8 field_0x36[0x38 - 0x36]; /* 0x38 */ int field_0x38; /* 0x3C */ int field_0x3c; /* 0x40 */ mDoExt_McaMorf* mpModelMorf; /* 0x44 */ Z2SoundObjSimple mSound; /* 0x64 */ J3DModel* mpModel; /* 0x68 */ s16 field_0x68; // + 2 bytes of padding }; class obj_sw_class { public: /* 0x000 */ fopAc_ac_c actor; /* 0x568 */ u8 field_0x568[0x570 - 0x568]; /* 0x570 */ u8 field_0x570; /* 0x571 */ u8 field_0x571[0x576 - 0x571]; /* 0x576 */ s16 field_0x576; /* 0x578 */ u8 field_0x578[0x57a - 0x578]; /* 0x57A */ s16 field_0x57a; /* 0x57C */ s16 field_0x57c; /* 0x57E */ s16 field_0x57e; /* 0x580 */ s16 field_0x580; /* 0x582 */ s16 field_0x582; /* 0x584 */ u8 field_0x584[0x5a8 - 0x584]; /* 0x5A8 */ obj_sc_s field_0x5a8; /* 0x614 */ cXyz field_0x614; /* 0x620 */ u8 field_0x620[0x864 - 0x620]; /* 0x864 */ obj_sc_s field_0x864; /* 0x8D0 */ u8 field_0x8d0[0x8fc - 0x8d0]; /* 0x8FC */ f32 field_0x8fc; /* 0x900 */ f32 field_0x900; /* 0x904 */ cXyz field_0x904[2]; /* 0x91C */ int field_0x91c; /* 0x920 */ cXyz field_0x920[12]; /* 0x9B0 */ u8 field_0x9b0[0xd50 - 0x9b0]; /* 0xD50 */ mDoExt_3DlineMat1_c field_0xd50; /* 0xD8C */ int field_0xd8c; }; STATIC_ASSERT(sizeof(obj_sw_class) == 0xd90); #endif /* D_A_OBJ_SW_H */