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.
121 lines
3.3 KiB
121 lines
3.3 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: Expose functions from sv_main.cpp. |
|
// |
|
// $NoKeywords: $ |
|
//===========================================================================// |
|
|
|
#ifndef SV_MAIN_H |
|
#define SV_MAIN_H |
|
|
|
|
|
#include "edict.h" |
|
#include "packed_entity.h" |
|
#include "utlvector.h" |
|
#include "convar.h" |
|
#include "netadr.h" |
|
#include "checksum_crc.h" |
|
#include "soundflags.h" |
|
#include "tier1/bitbuf.h" |
|
|
|
class CGameClient; |
|
|
|
//=========================================================== |
|
|
|
// sv_main.c |
|
|
|
// Which areas are we going to transmit (usually 1, but with portals you can see into multiple other areas). |
|
extern CUtlVector<int> g_AreasNetworked; |
|
|
|
void SV_Frame( bool send_client_updates ); |
|
void SV_FrameExecuteThreadDeferred(); |
|
|
|
void SV_InitGameDLL( void ); |
|
|
|
void SV_ReplicateConVarChange( ConVar const *var, char const *newValue ); |
|
void SV_ExecuteRemoteCommand( const char *pCommand, int nClientSlot = -1 ); |
|
void SV_InstallClientStringTableMirrors( void ); |
|
|
|
void SV_ResetModInfo( void ); |
|
|
|
class IRecipientFilter; |
|
void SV_StartSound ( IRecipientFilter& filter, edict_t *pSoundEmittingEntity, int iChannel, const char *pSample, |
|
float flVolume, soundlevel_t iSoundLevel, int iFlags, int iPitch, int iSpecialDSP, const Vector *pOrigin, float soundtime, int speakerentity, CUtlVector< Vector >* pUtlVecOrigins ); |
|
|
|
|
|
int SV_ModelIndex (const char *name); |
|
int SV_FindOrAddModel (const char *name, bool preload ); |
|
int SV_SoundIndex (const char *name); |
|
int SV_FindOrAddSound(const char *name, bool preload ); |
|
int SV_GenericIndex(const char *name); |
|
int SV_FindOrAddGeneric(const char *name, bool preload ); |
|
int SV_DecalIndex(const char *name); |
|
int SV_FindOrAddDecal(const char *name, bool preload ); |
|
|
|
void SV_ForceSimpleMaterial( const char *name ); |
|
void SV_ForceModelBounds( const char *name, const Vector &mins, const Vector &maxs ); |
|
|
|
void SV_Physics( bool bIsSimulating ); |
|
void SV_PreClientUpdate( bool bIsSimulating ); |
|
|
|
class IServerEntity; |
|
|
|
void SV_ExecuteClientMessage (CGameClient *cl); |
|
|
|
bool SV_ActivateServer(); |
|
void SV_InitGameServerSteam(); |
|
|
|
#ifdef ENABLE_RPT |
|
void SV_NotifyRPTOfDisconnect( int nClientSlot ); |
|
#endif // ENABLE_RPT |
|
|
|
// sv_redirect.cpp |
|
|
|
enum redirect_t |
|
{ |
|
RD_NONE = 0, // server console |
|
RD_CLIENT, // client console |
|
RD_PACKET, // connectionless UDP |
|
RD_SOCKET // TCP/IP remote socket |
|
}; |
|
|
|
bool SV_RedirectActive( void ); |
|
void SV_RedirectAddText( const char *txt ); |
|
void SV_RedirectStart( redirect_t rd, const netadr_t *addr ); |
|
void SV_RedirectEnd( void ); |
|
|
|
|
|
class ServerClass; |
|
class IClient; |
|
class CClientFrame; |
|
|
|
|
|
// Builds an alternate copy of the datatable for any classes that have datatables with props excluded. |
|
void SV_InitSendTables( ServerClass *pClasses ); |
|
void SV_TermSendTables( ServerClass *pClasses ); |
|
|
|
// send voice data from cl to other clients |
|
void SV_BroadcastVoiceData(IClient * cl, int nBytes, char * data, int64 xuid); |
|
void SV_SendRestoreMsg( bf_write &dest ); |
|
|
|
// A client has uploaded its logo to us; |
|
void SV_SendLogo( CRC32_t& logoCRC ); |
|
void SV_PruneRequestList( void ); |
|
|
|
|
|
/* |
|
============= |
|
Calculates a PVS that is the inclusive or of all leafs within 8 pixels of the |
|
given point. |
|
============= |
|
*/ |
|
void SV_ResetPVS( byte* pvs, int pvssize ); |
|
void SV_AddOriginToPVS( const Vector& origin ); |
|
|
|
extern CGlobalVars g_ServerGlobalVariables; |
|
|
|
void SV_FlushMemoryOnNextServer(); |
|
|
|
#endif |
|
|
|
|
|
|