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.
180 lines
6.0 KiB
180 lines
6.0 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//===========================================================================// |
|
|
|
#ifndef CDLL_CLIENT_INT_H |
|
#define CDLL_CLIENT_INT_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "iclientnetworkable.h" |
|
#include "utllinkedlist.h" |
|
#include "cdll_int.h" |
|
#include "eiface.h" |
|
|
|
|
|
class IVModelRender; |
|
class IVEngineClient; |
|
class IVModelRender; |
|
class IVEfx; |
|
class IVRenderView; |
|
class IVDebugOverlay; |
|
class IMaterialSystem; |
|
class IMaterialSystemStub; |
|
class IDataCache; |
|
class IMDLCache; |
|
class IVModelInfoClient; |
|
class IEngineVGui; |
|
class ISpatialPartition; |
|
class IBaseClientDLL; |
|
class ISpatialPartition; |
|
class IFileSystem; |
|
class IStaticPropMgrClient; |
|
class IShadowMgr; |
|
class IEngineSound; |
|
class IMatSystemSurface; |
|
class IMaterialSystemHardwareConfig; |
|
class ISharedGameRules; |
|
class IEngineTrace; |
|
class IGameUIFuncs; |
|
class IGameEventManager2; |
|
class IPhysicsGameTrace; |
|
class CGlobalVarsBase; |
|
class IClientTools; |
|
class C_BaseAnimating; |
|
class IColorCorrectionSystem; |
|
class IInputSystem; |
|
class ISceneFileCache; |
|
class IXboxSystem; // Xbox 360 only |
|
class IMatchmaking; |
|
class IVideoServices; |
|
class CSteamAPIContext; |
|
class IClientReplayContext; |
|
class IReplayManager; |
|
class IEngineReplay; |
|
class IEngineClientReplay; |
|
class IReplayScreenshotManager; |
|
class CSteamID; |
|
|
|
//============================================================================= |
|
// HPE_BEGIN |
|
// [dwenger] Necessary for stats display |
|
//============================================================================= |
|
|
|
class AchievementsAndStatsInterface; |
|
|
|
//============================================================================= |
|
// HPE_END |
|
//============================================================================= |
|
|
|
extern IVModelRender *modelrender; |
|
extern IVEngineClient *engine; |
|
extern IVModelRender *modelrender; |
|
extern IVEfx *effects; |
|
extern IVRenderView *render; |
|
extern IVDebugOverlay *debugoverlay; |
|
extern IMaterialSystem *materials; |
|
extern IMaterialSystemStub *materials_stub; |
|
extern IMaterialSystemHardwareConfig *g_pMaterialSystemHardwareConfig; |
|
extern IDataCache *datacache; |
|
extern IMDLCache *mdlcache; |
|
extern IVModelInfoClient *modelinfo; |
|
extern IEngineVGui *enginevgui; |
|
extern ISpatialPartition* partition; |
|
extern IBaseClientDLL *clientdll; |
|
extern IFileSystem *filesystem; |
|
extern IStaticPropMgrClient *staticpropmgr; |
|
extern IShadowMgr *shadowmgr; |
|
extern IEngineSound *enginesound; |
|
extern IMatSystemSurface *g_pMatSystemSurface; |
|
extern IEngineTrace *enginetrace; |
|
extern IGameUIFuncs *gameuifuncs; |
|
extern IGameEventManager2 *gameeventmanager; |
|
extern IPhysicsGameTrace *physgametrace; |
|
extern CGlobalVarsBase *gpGlobals; |
|
extern IClientTools *clienttools; |
|
extern IInputSystem *inputsystem; |
|
extern ISceneFileCache *scenefilecache; |
|
extern IXboxSystem *xboxsystem; // Xbox 360 only |
|
extern IMatchmaking *matchmaking; |
|
extern IVideoServices *g_pVideo; |
|
extern IUploadGameStats *gamestatsuploader; |
|
extern CSteamAPIContext *steamapicontext; |
|
extern IReplaySystem *g_pReplay; |
|
extern IClientReplayContext *g_pClientReplayContext; |
|
extern IReplayManager *g_pReplayManager; |
|
extern IReplayScreenshotManager *g_pReplayScreenshotManager; |
|
extern IEngineReplay *g_pEngineReplay; |
|
extern IEngineClientReplay *g_pEngineClientReplay; |
|
|
|
//============================================================================= |
|
// HPE_BEGIN |
|
// [dwenger] Necessary for stats display |
|
//============================================================================= |
|
|
|
extern AchievementsAndStatsInterface* g_pAchievementsAndStatsInterface; |
|
|
|
//============================================================================= |
|
// HPE_END |
|
//============================================================================= |
|
|
|
// Set to true between LevelInit and LevelShutdown. |
|
extern bool g_bLevelInitialized; |
|
extern bool g_bTextMode; |
|
|
|
// Kyle says: this is here to obsfucate our accessing of the g_bTextMode variable and for no other purpose. |
|
// See the mess of TF_ANTI_IDLEBOT_VERIFICATION code. If that code doesn't exist anymore, this |
|
// probably also doesn't need to exist anymore. |
|
// |
|
// On a suggestion from Joe, we also point it to an incomplete type. |
|
extern class IClientPurchaseInterfaceV2 *g_pClientPurchaseInterface; |
|
|
|
|
|
// Returns true if a new OnDataChanged event is registered for this frame. |
|
bool AddDataChangeEvent( IClientNetworkable *ent, DataUpdateType_t updateType, int *pStoredEvent ); |
|
|
|
void ClearDataChangedEvent( int iStoredEvent ); |
|
|
|
//----------------------------------------------------------------------------- |
|
// Precaches a material |
|
//----------------------------------------------------------------------------- |
|
void PrecacheMaterial( const char *pMaterialName ); |
|
|
|
//----------------------------------------------------------------------------- |
|
// Converts a previously precached material into an index |
|
//----------------------------------------------------------------------------- |
|
int GetMaterialIndex( const char *pMaterialName ); |
|
|
|
//----------------------------------------------------------------------------- |
|
// Converts precached material indices into strings |
|
//----------------------------------------------------------------------------- |
|
const char *GetMaterialNameFromIndex( int nIndex ); |
|
|
|
//----------------------------------------------------------------------------- |
|
// Precache-related methods for particle systems |
|
//----------------------------------------------------------------------------- |
|
void PrecacheParticleSystem( const char *pParticleSystemName ); |
|
int GetParticleSystemIndex( const char *pParticleSystemName ); |
|
const char *GetParticleSystemNameFromIndex( int nIndex ); |
|
|
|
|
|
//----------------------------------------------------------------------------- |
|
// Called during bone setup to test perf |
|
//----------------------------------------------------------------------------- |
|
void TrackBoneSetupEnt( C_BaseAnimating *pEnt ); |
|
|
|
bool IsEngineThreaded(); |
|
|
|
#ifndef NO_STEAM |
|
|
|
/// Returns Steam ID, given player index. Returns an invalid SteamID upon |
|
/// failure |
|
extern CSteamID GetSteamIDForPlayerIndex( int iPlayerIndex ); |
|
|
|
#endif |
|
|
|
#endif // CDLL_CLIENT_INT_H
|
|
|