From f8d3192fd5594adcf5cf378c40d6e35c243ca30c Mon Sep 17 00:00:00 2001 From: GAMMACASE <31375974+GAMMACASE@users.noreply.github.com> Date: Sat, 9 Aug 2025 15:07:50 +0300 Subject: [PATCH] Update CNetworkGameServerBase --- public/icvar.h | 8 ++++---- public/iserver.h | 21 +++++++++++++++------ 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/public/icvar.h b/public/icvar.h index 92dfe2a8..acd9dbdf 100644 --- a/public/icvar.h +++ b/public/icvar.h @@ -53,7 +53,7 @@ typedef void(*FnChangeCallbackGlobal_t)(ConVarRefAbstract* ref, CSplitScreenSlot //----------------------------------------------------------------------------- // ConVar & ConCommand creation listener callbacks //----------------------------------------------------------------------------- -class ICVarListenerCallbacks +class IConVarListener { public: virtual void OnConVarCreated( ConVarRefAbstract *pNewCvar ) {}; @@ -93,8 +93,8 @@ public: virtual void SetMaxSplitScreenSlots( int nSlots ) = 0; virtual int GetMaxSplitScreenSlots() const = 0; - virtual void RegisterCreationListeners( ICVarListenerCallbacks *callbacks ) = 0; - virtual void RemoveCreationListeners( ICVarListenerCallbacks *callbacks ) = 0; + virtual void RegisterCreationListeners( IConVarListener *callbacks ) = 0; + virtual void RemoveCreationListeners( IConVarListener *callbacks ) = 0; virtual void unk001() = 0; @@ -235,7 +235,7 @@ public: CUtlLinkedList m_ConVarChangeCBList; int m_ConVarCount; - CUtlVector m_CvarCreationListeners; + CUtlVector m_CvarCreationListeners; CUtlVector m_GlobalChangeCBList; CUtlLinkedList m_ConCommandList; diff --git a/public/iserver.h b/public/iserver.h index e593114a..086cc4d6 100644 --- a/public/iserver.h +++ b/public/iserver.h @@ -15,6 +15,8 @@ #include #include #include +#include "networksystem/inetworkmessages.h" +#include "icvar.h" #include class IGameSpawnGroupMgr; @@ -124,27 +126,34 @@ public: virtual void unk201() = 0; virtual void unk202() = 0; - + + virtual void BroadcastMessage( INetworkMessageInternal *pNetMessage, const CNetMessage *pData, IRecipientFilter *filter ) = 0; + virtual bool IsRecordingDemo() = 0; + + virtual void unk301() = 0; }; -abstract_class CNetworkGameServerBase : public INetworkGameServer, protected IConnectionlessPacketHandler +abstract_class CNetworkGameServerBase : public INetworkGameServer, protected IConnectionlessPacketHandler, public IConVarListener { public: virtual ~CNetworkGameServerBase() = 0; - + virtual void SetMaxClients( int nMaxClients ) = 0; - virtual void unk301() = 0; + virtual void unk011() = 0; + virtual bool ProcessConnectionlessPacket( const ns_address *addr, bf_read *bf ) = 0; // process a connectionless packet + virtual void OnConVarCreated( ConVarRefAbstract *pNewCvar ) = 0; + virtual void OnConCommandCreated( ConCommand *pNewCommand ) = 0; virtual CPlayerUserId GetPlayerUserId( CPlayerSlot slot ) = 0; virtual const char *GetPlayerNetworkIDString( CPlayerSlot slot ) = 0; // Returns udp port of this server instance - virtual int GetUDPPort() = 0; + virtual uint16 GetUDPPort() = 0; // Returns hostname of this server instance - virtual const char *GetName() = 0; + virtual const char *GetHostName() = 0; // AMNOTE: arg names are speculative and might be incorrect! // Sums up across all the connected players.