mirror of
https://github.com/nillerusr/source-engine.git
synced 2026-08-14 04:31:05 +00:00
1
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose: This is an entity that represents a vgui screen
|
||||
//
|
||||
// $NoKeywords: $
|
||||
//=============================================================================//
|
||||
|
||||
#ifndef VGUISCREEN_H
|
||||
#define VGUISCREEN_H
|
||||
|
||||
#ifdef _WIN32
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// This is an entity that represents a vgui screen
|
||||
//-----------------------------------------------------------------------------
|
||||
class CVGuiScreen : public CBaseEntity
|
||||
{
|
||||
public:
|
||||
DECLARE_CLASS( CVGuiScreen, CBaseEntity );
|
||||
|
||||
DECLARE_SERVERCLASS();
|
||||
DECLARE_DATADESC();
|
||||
|
||||
CVGuiScreen();
|
||||
|
||||
virtual void Precache();
|
||||
virtual bool KeyValue( const char *szKeyName, const char *szValue );
|
||||
virtual void Spawn();
|
||||
virtual void Activate();
|
||||
virtual void OnRestore();
|
||||
|
||||
const char *GetPanelName() const;
|
||||
|
||||
// Sets the screen size + resolution
|
||||
void SetActualSize( float flWidth, float flHeight );
|
||||
|
||||
// Activates/deactivates the screen
|
||||
bool IsActive() const;
|
||||
void SetActive( bool bActive );
|
||||
|
||||
// Is this screen only visible to teammates?
|
||||
bool IsVisibleOnlyToTeammates() const;
|
||||
void MakeVisibleOnlyToTeammates( bool bActive );
|
||||
bool IsVisibleToTeam( int nTeam );
|
||||
|
||||
// Sets the overlay material
|
||||
void SetOverlayMaterial( const char *pMaterial );
|
||||
|
||||
void SetAttachedToViewModel( bool bAttached );
|
||||
bool IsAttachedToViewModel() const;
|
||||
|
||||
void SetTransparency( bool bTransparent );
|
||||
|
||||
virtual int UpdateTransmitState( void );
|
||||
virtual int ShouldTransmit( const CCheckTransmitInfo *pInfo );
|
||||
|
||||
void SetPlayerOwner( CBasePlayer *pPlayer, bool bOwnerOnlyInput = false );
|
||||
|
||||
private:
|
||||
void SetAttachmentIndex( int nIndex );
|
||||
void SetPanelName( const char *pPanelName );
|
||||
void InputSetActive( inputdata_t &inputdata );
|
||||
void InputSetInactive( inputdata_t &inputdata );
|
||||
|
||||
string_t m_strOverlayMaterial;
|
||||
|
||||
CNetworkVar( float, m_flWidth );
|
||||
CNetworkVar( float, m_flHeight );
|
||||
CNetworkVar( int, m_nPanelName ); // The name of the panel
|
||||
CNetworkVar( int, m_nAttachmentIndex );
|
||||
CNetworkVar( int, m_nOverlayMaterial );
|
||||
CNetworkVar( int, m_fScreenFlags );
|
||||
CNetworkVar( EHANDLE, m_hPlayerOwner );
|
||||
|
||||
friend CVGuiScreen *CreateVGuiScreen( const char *pScreenClassname, const char *pScreenType, CBaseEntity *pAttachedTo, CBaseEntity *pOwner, int nAttachmentIndex );
|
||||
};
|
||||
|
||||
|
||||
void PrecacheVGuiScreen( const char *pScreenType );
|
||||
void PrecacheVGuiScreenOverlayMaterial( const char *pMaterialName );
|
||||
CVGuiScreen *CreateVGuiScreen( const char *pScreenClassname, const char *pScreenType, CBaseEntity *pAttachedTo, CBaseEntity *pOwner, int nAttachmentIndex );
|
||||
void DestroyVGuiScreen( CVGuiScreen *pVGuiScreen );
|
||||
|
||||
|
||||
#endif // VGUISCREEN_H
|
||||
Reference in New Issue
Block a user