/* * This file is generated by Entity Class Compiler, (c) CroTeam 1997-98 */ #ifndef _EntitiesMP_EnemyDive_INCLUDED #define _EntitiesMP_EnemyDive_INCLUDED 1 #include #include #include extern DECL_DLL CEntityPropertyEnumType EnemyDiveType_enum; enum EnemyDiveType { EDT_GROUND_ONLY = 0, EDT_DIVE_ONLY = 1, EDT_GROUND_DIVE = 2, }; DECL_DLL inline void ClearToDefault(EnemyDiveType &e) { e = (EnemyDiveType)0; } ; extern "C" DECL_DLL CDLLEntityClass CEnemyDive_DLLClass; class DECL_DLL CEnemyDive : public CEnemyBase { public: virtual void SetDefaultProperties(void); enum EnemyDiveType m_EedtType; BOOL m_bInLiquid; FLOAT m_fDiveWalkSpeed; ANGLE m_aDiveWalkRotateSpeed; FLOAT m_fDiveAttackRunSpeed; ANGLE m_aDiveAttackRotateSpeed; FLOAT m_fDiveCloseRunSpeed; ANGLE m_aDiveCloseRotateSpeed; FLOAT m_fDiveAttackDistance; FLOAT m_fDiveCloseDistance; FLOAT m_fDiveAttackFireTime; FLOAT m_fDiveCloseFireTime; FLOAT m_fDiveStopDistance; FLOAT m_fDiveIgnoreRange; FLOAT m_fDiveLockOnEnemyTime; #line 49 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" virtual FLOAT & GetProp(FLOAT & m_fBase); #line 59 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" void StartPathFinding(void); #line 65 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" virtual void AdjustDifficulty(void); #line 82 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" virtual BOOL CanHitEnemy(CEntity * penTarget,FLOAT fCosAngle); #line 91 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" void PostMoving(void); #line 116 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" virtual ULONG SetDesiredMovement(void); #line 144 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" BOOL MayMoveToAttack(void); #line 153 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" void SetEntityPosition(); #line 179 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" virtual void ChangeCollisionToLiquid(void); #line 180 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" virtual void ChangeCollisionToGround(void); #define STATE_CEnemyDive_Hit 0x01390000 BOOL #line 192 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" Hit(const CEntityEvent &__eeInput); #define STATE_CEnemyDive_Fire 0x01390001 BOOL #line 202 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" Fire(const CEntityEvent &__eeInput); #define STATE_CEnemyDive_MainLoop 0x01390002 BOOL #line 215 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" MainLoop(const CEntityEvent &__eeInput); #define STATE_CEnemyDive_Main 1 BOOL #line 221 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" Main(const CEntityEvent &__eeInput); #define STATE_CEnemyDive_GroundHit 0x01390003 BOOL #line 231 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" GroundHit(const CEntityEvent &__eeInput); #define STATE_CEnemyDive_GroundFire 0x01390004 BOOL #line 236 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" GroundFire(const CEntityEvent &__eeInput); #define STATE_CEnemyDive_DiveHit 0x01390005 BOOL #line 242 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" DiveHit(const CEntityEvent &__eeInput); #define STATE_CEnemyDive_DiveFire 0x01390006 BOOL #line 248 "D:/SE1_GPL/Sources/EntitiesMP/EnemyDive.es" DiveFire(const CEntityEvent &__eeInput); }; #endif // _EntitiesMP_EnemyDive_INCLUDED