mirror of https://github.com/zeldaret/tp.git
101 lines
3.0 KiB
C++
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 */
|