Add some generic constants to amxconst.inc file.

This commit is contained in:
Arkshine 2014-07-19 19:46:40 +02:00
parent 3a5cb29e67
commit 2c4e99fe8d
3 changed files with 19 additions and 1 deletions

View File

@ -167,6 +167,14 @@ int CPluginMngr::loadPluginsFromFile(const char* filename, bool warn)
plugin->setError(errorMsg); plugin->setError(errorMsg);
AMXXLOG_Error("[AMXX] %s", plugin->getError()); AMXXLOG_Error("[AMXX] %s", plugin->getError());
} }
else
{
cell addr;
if (amx_FindPubVar(plugin->getAMX(), "MaxClients", &addr) != AMX_ERR_NOTFOUND)
{
*get_amxaddr(plugin->getAMX(), addr) = gpGlobals->maxClients;
}
}
} }
fclose(fp); fclose(fp);

View File

@ -72,7 +72,7 @@ static cell AMX_NATIVE_CALL get_xvar_id(AMX *amx, cell *params)
for (CPluginMngr::iterator a = g_plugins.begin(); a ; ++a) for (CPluginMngr::iterator a = g_plugins.begin(); a ; ++a)
{ {
if ((*a).isValid() && amx_FindPubVar((*a).getAMX(), sName, &ptr) == AMX_ERR_NONE) if ((*a).isValid() && amx_FindPubVar((*a).getAMX(), sName, &ptr) == AMX_ERR_NONE && strcmp(sName, "MaxClients"))
return g_xvars.put((*a).getAMX(), get_amxaddr((*a).getAMX(), ptr)); return g_xvars.put((*a).getAMX(), get_amxaddr((*a).getAMX(), ptr));
} }

View File

@ -25,6 +25,16 @@
*/ */
#define MAX_STRING_LENGTH 16384 #define MAX_STRING_LENGTH 16384
/**
* MAX_PLAYERS is not the same as MaxClients.
* MAX_PLAYERS is a hardcoded value as an upper limit. MaxClients changes based on the server.
*/
#define MAX_PLAYERS 32 /* Maximum number of players Half-Life 1 based games support */
#define MAX_NAME_LENGTH 32 /* Maximum buffer required to store a client name */
public const MaxClients; /* Maximum number of players the server supports (dynamic) */
#define M_PI 3.1415926535 #define M_PI 3.1415926535
#define ADMIN_ALL 0 /* everyone */ #define ADMIN_ALL 0 /* everyone */