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.
76 lines
2.3 KiB
76 lines
2.3 KiB
#ifndef ASW_OBJECTIVEINFO_H |
|
#define ASW_OBJECTIVEINFO_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "baseentity.h" |
|
|
|
|
|
class CASW_Marine_Profile; |
|
class CASW_Marine; |
|
class CASW_Player; |
|
class CASW_Alien; |
|
class CASW_Egg; |
|
class CASW_Alien_Goo; |
|
|
|
// This class holds information about a particular mission objective |
|
|
|
|
|
class CASW_Objective : public CBaseEntity |
|
{ |
|
public: |
|
DECLARE_CLASS( CASW_Objective, CBaseEntity ); |
|
DECLARE_SERVERCLASS(); |
|
DECLARE_DATADESC(); |
|
|
|
CASW_Objective(); |
|
virtual ~CASW_Objective(); |
|
|
|
virtual void AlienKilled(CBaseEntity* pAlien); |
|
virtual void MarineKilled(CASW_Marine* pMarine); |
|
virtual void EggKilled(CASW_Egg* pEgg); |
|
virtual void GooKilled(CASW_Alien_Goo* pGoo); |
|
virtual void MissionStarted(void); |
|
virtual void MissionFail(void); |
|
virtual void MissionSuccess(void); |
|
virtual void SetComplete(bool bComplete); |
|
virtual void SetFailed(bool bFailed); |
|
|
|
virtual int ShouldTransmit( const CCheckTransmitInfo *pInfo ); |
|
virtual bool KeyValue( const char *szKeyName, const char *szValue ); |
|
|
|
virtual bool IsObjectiveComplete() { return m_bComplete; } |
|
virtual bool IsObjectiveFailed() { return m_bFailed; } |
|
virtual bool IsObjectiveOptional() { return m_bOptional; } |
|
virtual bool IsObjectiveDummy() { return m_bDummy; } |
|
virtual bool IsObjectiveHidden() { return !m_bVisible; } |
|
virtual float GetObjectiveProgress() { return IsObjectiveComplete() ? 1.0f : 0.0f; } |
|
|
|
|
|
CNetworkString( m_ObjectiveTitle, 255 ); |
|
CNetworkString( m_ObjectiveDescription1, 255 ); |
|
CNetworkString( m_ObjectiveDescription2, 255 ); |
|
CNetworkString( m_ObjectiveDescription3, 255 ); |
|
CNetworkString( m_ObjectiveDescription4, 255 ); |
|
CNetworkString( m_ObjectiveImage, 255 ); |
|
CNetworkString( m_ObjectiveMarkerName, 255 ); |
|
CNetworkString( m_ObjectiveInfoIcon1, 255 ); |
|
CNetworkString( m_ObjectiveInfoIcon2, 255 ); |
|
CNetworkString( m_ObjectiveInfoIcon3, 255 ); |
|
CNetworkString( m_ObjectiveInfoIcon4, 255 ); |
|
CNetworkString( m_ObjectiveInfoIcon5, 255 ); |
|
CNetworkString( m_ObjectiveIcon, 255 ); |
|
CNetworkString( m_MapMarkings, 255 ); |
|
CNetworkVar( bool, m_bComplete ); |
|
CNetworkVar( bool, m_bFailed ); |
|
CNetworkVar( bool, m_bOptional ); |
|
CNetworkVar( bool, m_bDummy ); |
|
CNetworkVar( bool, m_bVisible); |
|
CNetworkVar( int, m_Priority ); |
|
|
|
COutputEvent m_OnObjectiveComplete; |
|
void InputSetVisible( inputdata_t &inputdata ); |
|
}; |
|
|
|
#endif /* ASW_OBJECTIVEINFO_H */ |