tp/include/d/actor/d_a_e_sf.h

101 lines
3.0 KiB
C++

#ifndef D_A_E_SF_H
#define D_A_E_SF_H
#include "d/d_bg_s_acch.h"
#include "d/d_cc_d.h"
#include "d/d_cc_uty.h"
#include "f_op/f_op_actor.h"
/**
* @ingroup actors-enemies
* @class e_sf_class
* @brief Stalfos
*
* @details
*
*/
class e_sf_class {
public:
/* 0x000 */ fopEn_enemy_c actor;
/* 0x5AC */ request_of_phase_process_class mPhase;
/* 0x5B4 */ s16 mActionPhase;
/* 0x5B6 */ u8 mWaitType;
/* 0x5B7 */ u8 arg1;
/* 0x5B8 */ u8 mType;
/* 0x5B9 */ u8 arg3;
/* 0x5BC */ int mSwBit;
/* 0x5C0 */ s8 field_0x5c0;
/* 0x5C4 */ cXyz field_5c4;
/* 0x5D0 */ s16 mAngleYOffset;
/* 0x5D4 */ mDoExt_McaMorfSO* mpModelMorf;
/* 0x5D8 */ int mAnm;
/* 0x5DC */ J3DModel* mSwordModel;
/* 0x5E0 */ J3DModel* mShieldModel;
/* 0x5E4 */ Z2CreatureEnemy mSound;
/* 0x688 */ s16 mFrameCounter;
/* 0x68A */ s16 mAction;
/* 0x68C */ f32 mPlayerDistanceXZ;
/* 0x690 */ s16 mPlayerAngleY;
/* 0x692 */ s16 mPlayerAngleX;
/* 0x694 */ f32 mRecognizeDist;
/* 0x698 */ u32 mShadowKey;
/* 0x69C */ s16 mTimers[4];
/* 0x6A4 */ s16 mInvulnerabilityTimer;
/* 0x6A6 */ s16 mColor;
/* 0x6A8 */ u8 field_0x6a8;
/* 0x6A9 */ s8 mHitCheckFlag;
/* 0x6AA */ s8 field_0x6aa;
/* 0x6AB */ s8 field_0x6ab;
/* 0x6AC */ s8 mCoSetBitFlag;
/* 0x6AD */ s8 field_0x6ad;
/* 0x6AE */ s8 field_0x6ae;
/* 0x6B0 */ s16 mHeadAngleY;
/* 0x6B2 */ s16 mHeadAngleX;
/* 0x6B4 */ s16 mTargetHeadAngleX;
/* 0x6B6 */ s16 mHeadAngleZ;
/* 0x6B8 */ s16 mHeadBobAngleY;
/* 0x6BA */ s16 mTargetHeadBobAngleY;
/* 0x6BC */ s16 field_0x6bc;
/* 0x6C0 */ f32 field_0x6c0;
/* 0x6C4 */ f32 field_0x6c4;
/* 0x6C8 */ s16 mHitDirectionY;
/* 0x6CA */ u8 field_0x6ca[0x6d4 - 0x6ca];
/* 0x6D4 */ cXyz field_0x6d4;
/* 0x6E0 */ u8 field_0x6e0[0x6e4 - 0x6e0];
/* 0x6E4 */ csXyz field_0x6e4;
/* 0x6EA */ csXyz field_0x6ea;
/* 0x6F0 */ csXyz field_0x6f0;
/* 0x6F6 */ s8 field_0x6f6;
/* 0x6F8 */ cXyz field_0x6f8;
/* 0x704 */ u8 field_0x704[0x708 - 0x704];
/* 0x708 */ csXyz field_0x708;
/* 0x70E */ csXyz field_0x70e;
/* 0x714 */ u8 field_0x714[0x718 - 0x714];
/* 0x718 */ s16 mUnkTimer1;
/* 0x71A */ s16 mUnkTimer2;
/* 0x71C */ dBgS_AcchCir mAcchCir;
/* 0x75C */ dBgS_ObjAcch mBgc;
/* 0x934 */ dCcD_Stts mStts;
/* 0x970 */ dCcD_Sph mCcSphs[3];
/* 0xD18 */ dCcD_Sph mAtSph;
/* 0xE50 */ dCcD_Sph mTateSph;
/* 0xF88 */ dCcU_AtInfo mAtInfo;
/* 0xFAC */ bool mIsFirstSpawn;
/* 0xFAD */ u8 field_0xfad[0xfb8 - 0xfad];
/* 0xFB8 */ s8 field_0xfb8;
/* 0xFBC */ u32 field_0xfbc[2];
/* 0xFC4 */ u32 field_0xfc4[2];
/* 0xFCC */ u8 field_0xfcc[0xfd8 - 0xfcc];
/* 0xFD8 */ s16 mDemoMode;
/* 0xFDA */ s16 field_0xfda;
/* 0xFDC */ cXyz mDemoCamEye;
/* 0xFE8 */ cXyz mDemoCamCenter;
/* 0xFF4 */ f32 mDemoCamFovy;
/* 0xFF8 */ u8 field_0xff8[0xffc - 0xff8];
/* 0xFFC */ u8 field_0xffc;
};
STATIC_ASSERT(sizeof(e_sf_class) == 0x1000);
#endif /* D_A_E_SF_H */