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.7 KiB
54 lines
1.7 KiB
5 years ago
|
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||
|
//
|
||
|
// Purpose: Entity that propagates general data needed by clients for non-player AI characters
|
||
|
//
|
||
|
// $NoKeywords: $
|
||
|
//=============================================================================//
|
||
|
|
||
|
#ifndef MONSTER_RESOURCE_H
|
||
|
#define MONSTER_RESOURCE_H
|
||
|
#ifdef _WIN32
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
#include "shareddefs.h"
|
||
|
|
||
|
class CMonsterResource : public CBaseEntity
|
||
|
{
|
||
|
DECLARE_CLASS( CMonsterResource, CBaseEntity );
|
||
|
public:
|
||
|
DECLARE_SERVERCLASS();
|
||
|
DECLARE_DATADESC();
|
||
|
|
||
|
virtual void Spawn( void );
|
||
|
virtual int ObjectCaps( void ) { return BaseClass::ObjectCaps() | FCAP_DONT_SAVE; }
|
||
|
|
||
|
virtual void Update( void );
|
||
|
virtual int UpdateTransmitState( void );
|
||
|
|
||
|
virtual void SetBossHealthPercentage( float percentFull ); // if this is nonnegative, a HUD meter will be shown
|
||
|
virtual void HideBossHealthMeter( void );
|
||
|
|
||
|
virtual void SetBossStunPercentage( float percentFull );
|
||
|
virtual void HideBossStunMeter( void );
|
||
|
|
||
|
virtual void StartSkillShotComboMeter( float comboMaxDuration );
|
||
|
virtual void IncrementSkillShotComboMeter( void );
|
||
|
virtual void HideSkillShotComboMeter( void );
|
||
|
|
||
|
void SetBossState( int iState ) { m_iBossState = iState; }
|
||
|
|
||
|
protected:
|
||
|
CNetworkVar( int, m_iBossHealthPercentageByte ); // 0-255
|
||
|
CNetworkVar( int, m_iBossStunPercentageByte ); // 0-255
|
||
|
|
||
|
CNetworkVar( int, m_iSkillShotCompleteCount ); // the number of consecutive skill shots that have been completed. 0 = don't show combo HUD
|
||
|
CNetworkVar( float, m_fSkillShotComboEndTime ); // the time when the current skill shot combo window closes
|
||
|
|
||
|
CNetworkVar( int, m_iBossState ); // boss state?
|
||
|
};
|
||
|
|
||
|
extern CMonsterResource *g_pMonsterResource;
|
||
|
|
||
|
#endif // MONSTER_RESOURCE_H
|