You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.5 KiB
54 lines
1.5 KiB
#ifndef _DEFINED_ASW_SIMPLE_GRUB_H |
|
#define _DEFINED_ASW_SIMPLE_GRUB_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "asw_simple_alien.h" |
|
|
|
class CASW_Simple_Grub : public CASW_Simple_Alien |
|
{ |
|
public: |
|
DECLARE_CLASS( CASW_Simple_Grub, CASW_Simple_Alien ); |
|
//DECLARE_SERVERCLASS(); |
|
DECLARE_DATADESC(); |
|
CASW_Simple_Grub(); |
|
virtual ~CASW_Simple_Grub(); |
|
|
|
virtual void Spawn(); |
|
virtual void Precache(); |
|
virtual void AlienThink(); |
|
virtual Class_T Classify( void ) { return (Class_T) CLASS_ASW_GRUB; } |
|
|
|
// anims |
|
virtual void PlayRunningAnimation(); |
|
virtual void PlayAttackingAnimation(); |
|
virtual void PlayFallingAnimation(); |
|
|
|
// movement |
|
virtual float GetIdealSpeed() const; |
|
virtual float GetPitchSpeed() const; |
|
virtual float GetIdealPitch(); |
|
virtual void UpdatePitch(float delta); |
|
virtual float GetZigZagChaseDistance() const; |
|
virtual float GetFaceEnemyDistance() const; |
|
virtual bool TryMove(const Vector &vecSrc, Vector &vecTarget, float deltatime, bool bStepMove = false); |
|
virtual bool ApplyGravity(Vector &vecTarget, float deltatime); |
|
bool m_bSkipGravity; |
|
|
|
void GrubTouch( CBaseEntity *pOther ); |
|
|
|
// sounds |
|
virtual void PainSound( const CTakeDamageInfo &info ); |
|
virtual void AlertSound(); |
|
virtual void DeathSound( const CTakeDamageInfo &info ); |
|
virtual void AttackSound(); |
|
|
|
// health related |
|
bool ShouldGib( const CTakeDamageInfo &info ); |
|
bool CorpseGib( const CTakeDamageInfo &info ); |
|
void Event_Killed( const CTakeDamageInfo &info ); |
|
}; |
|
|
|
|
|
#endif // _DEFINED_ASW_SIMPLE_GRUB_H
|
|
|