mirror of
https://github.com/nillerusr/source-engine.git
synced 2025-01-15 01:20:30 +00:00
52 lines
1.5 KiB
C
52 lines
1.5 KiB
C
|
#ifndef _INCLUDED_C_ASW_SENTRY_TOP_H
|
||
|
#define _INCLUDED_C_ASW_SENTRY_TOP_H
|
||
|
|
||
|
class C_ASW_Sentry_Base;
|
||
|
|
||
|
class C_ASW_Sentry_Top : public C_BaseAnimating
|
||
|
{
|
||
|
public:
|
||
|
DECLARE_CLASS( C_ASW_Sentry_Top, C_BaseAnimating );
|
||
|
DECLARE_CLIENTCLASS();
|
||
|
DECLARE_PREDICTABLE();
|
||
|
|
||
|
C_ASW_Sentry_Top();
|
||
|
virtual ~C_ASW_Sentry_Top();
|
||
|
virtual void OnDataChanged( DataUpdateType_t updateType );
|
||
|
virtual void UpdateOnRemove();
|
||
|
virtual void ClientThink( void );
|
||
|
virtual void ProcessMuzzleFlashEvent();
|
||
|
float GetMuzzleFlashScale();
|
||
|
int GetMuzzleAttachment();
|
||
|
virtual void ASWSentryTracer( const Vector &vecEnd );
|
||
|
virtual bool HasPilotLight() { return false; }
|
||
|
|
||
|
int GetSentryAngle( void );
|
||
|
void Scan( void );
|
||
|
void CreateRadiusBeamEdges( const Vector &vecStart, const Vector &vecDir, int iControlPoint );
|
||
|
|
||
|
C_ASW_Sentry_Base* GetSentryBase();
|
||
|
|
||
|
protected:
|
||
|
CUtlReference<CNewParticleEffect> m_hPilotLight;
|
||
|
|
||
|
private:
|
||
|
// CNetworkHandle( CBaseEntity, m_hSentryBase );
|
||
|
C_ASW_Sentry_Top( const C_ASW_Sentry_Top & ); // not defined, not accessible
|
||
|
|
||
|
|
||
|
void AdjustRadiusBeamEdges( const Vector &vecStart, const Vector &vecDir, int iControlPoint );
|
||
|
|
||
|
CNetworkHandle(CBaseEntity, m_hSentryBase);
|
||
|
CNetworkVar(int, m_iSentryAngle);
|
||
|
CNetworkVar(float, m_fDeployYaw);
|
||
|
CNetworkVar(bool, m_bLowAmmo);
|
||
|
float m_fPrevDeployYaw;
|
||
|
|
||
|
bool m_bSpawnedDisplayEffects;
|
||
|
CUtlReference<CNewParticleEffect> m_hRadiusDisplay;
|
||
|
CUtlReference<CNewParticleEffect> m_hWarningLight;
|
||
|
};
|
||
|
|
||
|
#endif /* _INCLUDED_C_ASW_SENTRY_TOP_H */
|