mirror of
https://github.com/nillerusr/source-engine.git
synced 2025-01-13 00:28:18 +00:00
51 lines
1.8 KiB
C++
51 lines
1.8 KiB
C++
#ifndef _INCLUDED_C_ASW_SIMPLE_ALIEN_H
|
|
#define _INCLUDED_C_ASW_SIMPLE_ALIEN_H
|
|
|
|
#include "iasw_client_aim_target.h"
|
|
#include "asw_shareddefs.h"
|
|
#include "glow_outline_effect.h"
|
|
|
|
class C_ASW_Simple_Alien : public C_BaseAnimating, public IASW_Client_Aim_Target
|
|
{
|
|
public:
|
|
DECLARE_CLASS( C_ASW_Simple_Alien, C_BaseAnimating );
|
|
DECLARE_CLIENTCLASS();
|
|
|
|
C_ASW_Simple_Alien();
|
|
|
|
Class_T Classify( void ) { return (Class_T) CLASS_ASW_UNKNOWN; }
|
|
|
|
void FireEvent( const Vector& origin, const QAngle& angles, int event, const char *options );
|
|
void AlienStepSound( surfacedata_t *psurface, const Vector &vecOrigin, const Vector &vecVelocity );
|
|
surfacedata_t* GetGroundSurface();
|
|
void PlayStepSound( Vector &vecOrigin, surfacedata_t *psurface, float fvol, bool force );
|
|
virtual void DoAlienFootstep( Vector &vecOrigin, float fvol );
|
|
|
|
C_BaseAnimating * BecomeRagdollOnClient( void );
|
|
void PostDataUpdate( DataUpdateType_t updateType );
|
|
|
|
bool m_bStepSideLeft;
|
|
|
|
// aim target interface
|
|
IMPLEMENT_AUTO_LIST_GET();
|
|
virtual float GetRadius() { return 23; }
|
|
virtual bool IsAimTarget() { return false; } // disabled this: no autoaiming at grubs
|
|
virtual const Vector& GetAimTargetPos(const Vector &vecFiringSrc, bool bWeaponPrefersFlatAiming);
|
|
virtual const Vector& GetAimTargetRadiusPos(const Vector &vecFiringSrc) { return m_vecLastRenderedPos; }
|
|
|
|
// custom shadow
|
|
virtual bool GetShadowCastDirection( Vector *pDirection, ShadowType_t shadowType ) const;
|
|
|
|
int m_nLastSetModel;
|
|
virtual void ClientThink();
|
|
Vector m_vecLastRenderedPos;
|
|
virtual int DrawModel( int flags, const RenderableInstance_t &instance );
|
|
|
|
private:
|
|
C_ASW_Simple_Alien( const C_ASW_Simple_Alien & ); // not defined, not accessible
|
|
static float sm_flLastFootstepTime;
|
|
|
|
CGlowObject m_GlowObject;
|
|
};
|
|
|
|
#endif /* _INCLUDED_C_ASW_SIMPLE_ALIEN_H */ |