diff --git a/core/PlayerManager.cpp b/core/PlayerManager.cpp index c490d1a8..8cf53f61 100644 --- a/core/PlayerManager.cpp +++ b/core/PlayerManager.cpp @@ -285,11 +285,11 @@ void PlayerManager::OnServerActivate(edict_t *pEdictList, int edictCount, int cl /* Initialize all players */ m_PlayerCount = 0; - m_Players = new CPlayer[ABSOLUTE_PLAYER_LIMIT + 1]; - m_AuthQueue = new unsigned int[ABSOLUTE_PLAYER_LIMIT + 1]; + m_Players = new CPlayer[SM_MAXPLAYERS + 1]; + m_AuthQueue = new unsigned int[SM_MAXPLAYERS + 1]; m_FirstPass = true; - memset(m_AuthQueue, 0, sizeof(unsigned int) * (ABSOLUTE_PLAYER_LIMIT + 1)); + memset(m_AuthQueue, 0, sizeof(unsigned int) * (SM_MAXPLAYERS + 1)); g_NumPlayersToAuth = &m_AuthQueue[0]; } diff --git a/core/smn_usermsgs.cpp b/core/smn_usermsgs.cpp index d8e5995f..dae1fb3c 100644 --- a/core/smn_usermsgs.cpp +++ b/core/smn_usermsgs.cpp @@ -47,7 +47,7 @@ Handle_t g_ReadBufHandle; bf_read g_ReadBitBuf; #endif -int g_MsgPlayers[256]; +int g_MsgPlayers[SM_MAXPLAYERS+1]; bool g_IsMsgInExec = false; typedef List MsgWrapperList; diff --git a/extensions/clientprefs/cookie.cpp b/extensions/clientprefs/cookie.cpp index f8a092ac..40237bb1 100644 --- a/extensions/clientprefs/cookie.cpp +++ b/extensions/clientprefs/cookie.cpp @@ -37,7 +37,7 @@ CookieManager g_CookieManager; CookieManager::CookieManager() { - for (int i=0; i<=MAXCLIENTS; i++) + for (int i=0; i<=SM_MAXPLAYERS; i++) { connected[i] = false; statsLoaded[i] = false; diff --git a/extensions/clientprefs/cookie.h b/extensions/clientprefs/cookie.h index d8916c96..0e2b6424 100644 --- a/extensions/clientprefs/cookie.h +++ b/extensions/clientprefs/cookie.h @@ -73,13 +73,13 @@ struct Cookie dbid = -1; - for (int i=0; i<=MAXCLIENTS; i++) + for (int i=0; i<=SM_MAXPLAYERS; i++) data[i] = NULL; } ~Cookie() { - for (int i=0; i<=MAXCLIENTS; i++) + for (int i=0; i<=SM_MAXPLAYERS; i++) { if (data[i] != NULL) delete data[i]; @@ -89,7 +89,7 @@ struct Cookie char name[MAX_NAME_LENGTH+1]; char description[MAX_DESC_LENGTH+1]; int dbid; - CookieData *data[MAXCLIENTS+1]; + CookieData *data[SM_MAXPLAYERS+1]; CookieAccess access; static inline bool matches(const char *name, const Cookie *cookie) @@ -133,11 +133,11 @@ public: private: NameHashSet cookieFinder; - SourceHook::List clientData[MAXCLIENTS+1]; + SourceHook::List clientData[SM_MAXPLAYERS+1]; - bool connected[MAXCLIENTS+1]; - bool statsLoaded[MAXCLIENTS+1]; - bool statsPending[MAXCLIENTS+1]; + bool connected[SM_MAXPLAYERS+1]; + bool statsLoaded[SM_MAXPLAYERS+1]; + bool statsPending[SM_MAXPLAYERS+1]; }; extern CookieManager g_CookieManager; diff --git a/extensions/clientprefs/extension.h b/extensions/clientprefs/extension.h index cadd4bee..d850e46d 100644 --- a/extensions/clientprefs/extension.h +++ b/extensions/clientprefs/extension.h @@ -32,8 +32,6 @@ #ifndef _INCLUDE_SOURCEMOD_EXTENSION_PROPER_H_ #define _INCLUDE_SOURCEMOD_EXTENSION_PROPER_H_ -#define MAXCLIENTS 65 - #include #include #include "smsdk_ext.h" diff --git a/extensions/sdktools/tenatives.cpp b/extensions/sdktools/tenatives.cpp index 9d14d466..c245099a 100644 --- a/extensions/sdktools/tenatives.cpp +++ b/extensions/sdktools/tenatives.cpp @@ -37,7 +37,7 @@ SH_DECL_HOOK5_void(IVEngineServer, PlaybackTempEntity, SH_NOATTRIB, 0, IRecipien CellRecipientFilter g_TERecFilter; TempEntityInfo *g_CurrentTE = NULL; -int g_TEPlayers[256]; +int g_TEPlayers[SM_MAXPLAYERS+1]; bool tenatives_initialized = false; /************************* diff --git a/extensions/sdktools/vnatives.cpp b/extensions/sdktools/vnatives.cpp index 05d7cc81..aeaf26e5 100644 --- a/extensions/sdktools/vnatives.cpp +++ b/extensions/sdktools/vnatives.cpp @@ -576,7 +576,7 @@ static cell_t SlapPlayer(IPluginContext *pContext, const cell_t *params) { char name[48]; const char *sound_name; - cell_t player_list[256], total_players = 0; + cell_t player_list[SM_MAXPLAYERS], total_players = 0; int maxClients = playerhelpers->GetMaxClients(); int r = (rand() % s_sound_count) + 1; diff --git a/extensions/sdktools/voice.cpp b/extensions/sdktools/voice.cpp index 95e8e2d9..f21ea7e0 100644 --- a/extensions/sdktools/voice.cpp +++ b/extensions/sdktools/voice.cpp @@ -51,10 +51,10 @@ enum ListenOverride Listen_Yes, /**< Can hear */ }; -size_t g_VoiceFlags[65]; +size_t g_VoiceFlags[SM_MAXPLAYERS+1]; size_t g_VoiceHookCount = 0; -ListenOverride g_VoiceMap[65][65]; -bool g_ClientMutes[65][65]; +ListenOverride g_VoiceMap[SM_MAXPLAYERS+1][SM_MAXPLAYERS+1]; +bool g_ClientMutes[SM_MAXPLAYERS+1][SM_MAXPLAYERS+1]; SH_DECL_HOOK3(IVoiceServer, SetClientListening, SH_NOATTRIB, 0, bool, int, int, bool); diff --git a/extensions/sdktools/vsound.cpp b/extensions/sdktools/vsound.cpp index 722f30be..3e190abb 100644 --- a/extensions/sdktools/vsound.cpp +++ b/extensions/sdktools/vsound.cpp @@ -308,11 +308,11 @@ void SoundHooks::OnEmitSound(IRecipientFilter &filter, int iEntIndex, int iChann for (iter=m_NormalFuncs.begin(); iter!=m_NormalFuncs.end(); iter++) { - int players[64], size; + int players[SM_MAXPLAYERS], size; size = _FillInPlayers(players, &filter); pFunc = (*iter); - pFunc->PushArray(players, 64, SM_PARAM_COPYBACK); + pFunc->PushArray(players, SM_ARRAYSIZE(players), SM_PARAM_COPYBACK); pFunc->PushCellByRef(&size); pFunc->PushStringEx(buffer, sizeof(buffer), SM_PARAM_STRING_COPY, SM_PARAM_COPYBACK); pFunc->PushCellByRef(&iEntIndex); @@ -423,11 +423,11 @@ void SoundHooks::OnEmitSound2(IRecipientFilter &filter, int iEntIndex, int iChan for (iter=m_NormalFuncs.begin(); iter!=m_NormalFuncs.end(); iter++) { - int players[64], size; + int players[SM_MAXPLAYERS], size; size = _FillInPlayers(players, &filter); pFunc = (*iter); - pFunc->PushArray(players, 64, SM_PARAM_COPYBACK); + pFunc->PushArray(players, SM_ARRAYSIZE(players), SM_PARAM_COPYBACK); pFunc->PushCellByRef(&size); pFunc->PushStringEx(buffer, sizeof(buffer), SM_PARAM_STRING_COPY, SM_PARAM_COPYBACK); pFunc->PushCellByRef(&iEntIndex); diff --git a/extensions/tf2/extension.h b/extensions/tf2/extension.h index 4fefd35b..d90903e1 100644 --- a/extensions/tf2/extension.h +++ b/extensions/tf2/extension.h @@ -42,8 +42,6 @@ #include #include -#define MAXPLAYERS 65 - /** * @brief Sample implementation of the SDK Extension. * Note: Uncomment one of the pre-defined virtual functions in order to use it. diff --git a/extensions/topmenus/TopMenu.cpp b/extensions/topmenus/TopMenu.cpp index ee410bcc..07894858 100644 --- a/extensions/topmenus/TopMenu.cpp +++ b/extensions/topmenus/TopMenu.cpp @@ -93,7 +93,7 @@ unsigned int TopMenu::CalcMemUsage() size += m_Config.strings.GetMemTable()->GetMemUsage(); size += (m_Config.cats.size() * sizeof(int)); - size += (sizeof(topmenu_player_t) * (ABSOLUTE_PLAYER_LIMIT + 1)); + size += (sizeof(topmenu_player_t) * (SM_MAXPLAYERS + 1)); size += (m_SortedCats.size() * sizeof(unsigned int)); size += (m_UnsortedCats.size() * sizeof(unsigned int)); size += (m_Categories.size() * (sizeof(topmenu_category_t *) + sizeof(topmenu_category_t))); @@ -938,8 +938,8 @@ void TopMenu::SortCategoriesIfNeeded() void TopMenu::CreatePlayers(int max_clients) { m_max_clients = max_clients; - m_clients = (topmenu_player_t *)malloc(sizeof(topmenu_player_t) * (ABSOLUTE_PLAYER_LIMIT + 1)); - memset(m_clients, 0, sizeof(topmenu_player_t) * (ABSOLUTE_PLAYER_LIMIT + 1)); + m_clients = (topmenu_player_t *)malloc(sizeof(topmenu_player_t) * (SM_MAXPLAYERS + 1)); + memset(m_clients, 0, sizeof(topmenu_player_t) * (SM_MAXPLAYERS + 1)); } void TopMenu::TearDownClient(topmenu_player_t *player) diff --git a/extensions/topmenus/TopMenu.h b/extensions/topmenus/TopMenu.h index 2a41ff90..6752cd23 100644 --- a/extensions/topmenus/TopMenu.h +++ b/extensions/topmenus/TopMenu.h @@ -42,8 +42,6 @@ using namespace SourceHook; using namespace SourceMod; -#define ABSOLUTE_PLAYER_LIMIT 255 // not 256, so we can send the limit as a byte - struct config_category_t { int name; diff --git a/public/IPlayerHelpers.h b/public/IPlayerHelpers.h index 95d9904f..22fe1553 100644 --- a/public/IPlayerHelpers.h +++ b/public/IPlayerHelpers.h @@ -49,6 +49,8 @@ class IPlayerInfo; #define SM_REPLY_CONSOLE 0 /**< Reply to console. */ #define SM_REPLY_CHAT 1 /**< Reply to chat. */ +#define SM_MAXPLAYERS 65 /**< Maxplayer Count */ + namespace SourceMod { /**