Modified source engine (2017) developed by valve and leaked in 2020. Not for commercial purporses
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

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