mirror of
https://github.com/alliedmodders/amxmodx.git
synced 2024-12-24 13:55:36 +03:00
added more api to help with amxmod compat layer
cleaned up some more bcompat stuff
This commit is contained in:
parent
4f8917ec44
commit
651c5d9f01
@ -58,6 +58,7 @@ public:
|
|||||||
inline const char* getPluginName() { return plugin.c_str(); }
|
inline const char* getPluginName() { return plugin.c_str(); }
|
||||||
inline const char* getName() { return name.c_str(); }
|
inline const char* getName() { return name.c_str(); }
|
||||||
inline bool operator == (const char* string) { return (strcmp(name.c_str(), string) == 0); }
|
inline bool operator == (const char* string) { return (strcmp(name.c_str(), string) == 0); }
|
||||||
|
int plugin_id;
|
||||||
};
|
};
|
||||||
|
|
||||||
// *****************************************************
|
// *****************************************************
|
||||||
|
@ -1112,6 +1112,16 @@ static cell AMX_NATIVE_CALL get_plugin(AMX *amx, cell *params) /* 11 param */
|
|||||||
|
|
||||||
return a->getId();
|
return a->getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (params[0] / sizeof(cell) >= 12)
|
||||||
|
{
|
||||||
|
cell *jit_info = get_amxaddr(amx, params[12]);
|
||||||
|
#if defined AMD64 || !defined JIT
|
||||||
|
*jit_info = 0;
|
||||||
|
#else
|
||||||
|
*jit_info = a->isDebug() ? 0 : 1;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -1288,6 +1298,28 @@ static cell AMX_NATIVE_CALL get_concmd(AMX *amx, cell *params) /* 7 param */
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static cell AMX_NATIVE_CALL get_concmd_plid(AMX *amx, cell *params)
|
||||||
|
{
|
||||||
|
int who = params[3];
|
||||||
|
if (who > 0)
|
||||||
|
{
|
||||||
|
who = CMD_ClientCommand;
|
||||||
|
} else if (who == 0) {
|
||||||
|
who = CMD_ServerCommand;
|
||||||
|
} else {
|
||||||
|
who = CMD_ConsoleCommand;
|
||||||
|
}
|
||||||
|
|
||||||
|
CmdMngr::Command *cmd = g_commands.getCmd(params[1], who, params[2]);
|
||||||
|
|
||||||
|
if (cmd == NULL)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return cmd->getPlugin()->getId();
|
||||||
|
}
|
||||||
|
|
||||||
static cell AMX_NATIVE_CALL get_clcmd(AMX *amx, cell *params) /* 7 param */
|
static cell AMX_NATIVE_CALL get_clcmd(AMX *amx, cell *params) /* 7 param */
|
||||||
{
|
{
|
||||||
CmdMngr::Command* cmd = g_commands.getCmd(params[1], CMD_ClientCommand, params[7]);
|
CmdMngr::Command* cmd = g_commands.getCmd(params[1], CMD_ClientCommand, params[7]);
|
||||||
@ -2189,8 +2221,7 @@ static cell AMX_NATIVE_CALL register_cvar(AMX *amx, cell *params) /* 3 param */
|
|||||||
CPluginMngr::CPlugin *plugin = g_plugins.findPluginFast(amx);
|
CPluginMngr::CPlugin *plugin = g_plugins.findPluginFast(amx);
|
||||||
CCVar* cvar = new CCVar(temp, plugin->getName(), params[3], amx_ctof(params[4]));
|
CCVar* cvar = new CCVar(temp, plugin->getName(), params[3], amx_ctof(params[4]));
|
||||||
|
|
||||||
if (cvar == 0)
|
cvar->plugin_id = plugin->getId();
|
||||||
return 0;
|
|
||||||
|
|
||||||
g_cvars.put(cvar);
|
g_cvars.put(cvar);
|
||||||
|
|
||||||
@ -2582,6 +2613,43 @@ static cell AMX_NATIVE_CALL remove_quotes(AMX *amx, cell *params) /* 1 param */
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//native get_plugins_cvar(id, name[], namelen, &flags=0, &plugin_id=0, &pcvar_handle=0);
|
||||||
|
static cell AMX_NATIVE_CALL get_plugins_cvar(AMX *amx, cell *params)
|
||||||
|
{
|
||||||
|
int id = params[1];
|
||||||
|
int iter_id = 0;
|
||||||
|
|
||||||
|
for (CList<CCVar>::iterator iter=g_cvars.begin(); iter; ++iter)
|
||||||
|
{
|
||||||
|
if (id == iter_id)
|
||||||
|
{
|
||||||
|
CCVar *var = &(*iter);
|
||||||
|
set_amxstring(amx, params[2], var->getName(), params[3]);
|
||||||
|
cvar_t *ptr = CVAR_GET_POINTER(var->getName());
|
||||||
|
if (!ptr)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
cell *addr = get_amxaddr(amx, params[4]);
|
||||||
|
*addr = ptr->flags;
|
||||||
|
addr = get_amxaddr(amx, params[5]);
|
||||||
|
*addr = var->plugin_id;
|
||||||
|
addr = get_amxaddr(amx, params[6]);
|
||||||
|
*addr = (cell)ptr;
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
iter_id++;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
//native get_plugins_cvarsnum();
|
||||||
|
static cell AMX_NATIVE_CALL get_plugins_cvarsnum(AMX *amx, cell *params)
|
||||||
|
{
|
||||||
|
return g_cvars.size();
|
||||||
|
}
|
||||||
|
|
||||||
static cell AMX_NATIVE_CALL get_user_aiming(AMX *amx, cell *params) /* 4 param */
|
static cell AMX_NATIVE_CALL get_user_aiming(AMX *amx, cell *params) /* 4 param */
|
||||||
{
|
{
|
||||||
int index = params[1];
|
int index = params[1];
|
||||||
@ -4147,6 +4215,14 @@ static cell AMX_NATIVE_CALL AddTranslation(AMX *amx, cell *params)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static cell AMX_NATIVE_CALL GetLangTransKey(AMX *amx, cell *params)
|
||||||
|
{
|
||||||
|
int len;
|
||||||
|
const char *key = get_amxstring(amx, params[1], 0, len);
|
||||||
|
|
||||||
|
return g_langMngr.GetKeyEntry(key);
|
||||||
|
}
|
||||||
|
|
||||||
AMX_NATIVE_INFO amxmodx_Natives[] =
|
AMX_NATIVE_INFO amxmodx_Natives[] =
|
||||||
{
|
{
|
||||||
{"abort", amx_abort},
|
{"abort", amx_abort},
|
||||||
@ -4181,6 +4257,7 @@ AMX_NATIVE_INFO amxmodx_Natives[] =
|
|||||||
{"get_clcmdsnum", get_clcmdsnum},
|
{"get_clcmdsnum", get_clcmdsnum},
|
||||||
{"get_concmd", get_concmd},
|
{"get_concmd", get_concmd},
|
||||||
{"get_concmdsnum", get_concmdsnum},
|
{"get_concmdsnum", get_concmdsnum},
|
||||||
|
{"get_concmd_plid", get_concmd_plid},
|
||||||
{"get_cvar_flags", get_cvar_flags},
|
{"get_cvar_flags", get_cvar_flags},
|
||||||
{"get_cvar_float", get_cvar_float},
|
{"get_cvar_float", get_cvar_float},
|
||||||
{"get_cvar_num", get_cvar_num},
|
{"get_cvar_num", get_cvar_num},
|
||||||
@ -4205,6 +4282,8 @@ AMX_NATIVE_INFO amxmodx_Natives[] =
|
|||||||
{"get_playersnum", get_playersnum},
|
{"get_playersnum", get_playersnum},
|
||||||
{"get_plugin", get_plugin},
|
{"get_plugin", get_plugin},
|
||||||
{"get_pluginsnum", get_pluginsnum},
|
{"get_pluginsnum", get_pluginsnum},
|
||||||
|
{"get_plugins_cvar", get_plugins_cvar},
|
||||||
|
{"get_plugins_cvarsnum", get_plugins_cvarsnum},
|
||||||
{"get_srvcmd", get_srvcmd},
|
{"get_srvcmd", get_srvcmd},
|
||||||
{"get_srvcmdsnum", get_srvcmdsnum},
|
{"get_srvcmdsnum", get_srvcmdsnum},
|
||||||
{"get_systime", get_systime},
|
{"get_systime", get_systime},
|
||||||
@ -4334,6 +4413,7 @@ AMX_NATIVE_INFO amxmodx_Natives[] =
|
|||||||
{"CreateOneForward", CreateOneForward},
|
{"CreateOneForward", CreateOneForward},
|
||||||
{"DestroyForward", DestroyForward},
|
{"DestroyForward", DestroyForward},
|
||||||
{"ExecuteForward", ExecuteForward},
|
{"ExecuteForward", ExecuteForward},
|
||||||
|
{"GetLangTransKey", GetLangTransKey},
|
||||||
{"LibraryExists", LibraryExists},
|
{"LibraryExists", LibraryExists},
|
||||||
{"PrepareArray", PrepareArray},
|
{"PrepareArray", PrepareArray},
|
||||||
{"ShowSyncHudMsg", ShowSyncHudMsg},
|
{"ShowSyncHudMsg", ShowSyncHudMsg},
|
||||||
|
@ -24,7 +24,7 @@ new g_MaxPlayers
|
|||||||
|
|
||||||
public plugin_init()
|
public plugin_init()
|
||||||
{
|
{
|
||||||
register_plugin("AMX Mod Compat Engine", AMXX_VERSION_STR, "AMXX Dev Team")
|
register_plugin("AMX Mod Compat Engine", "1.76.rc4", "AMXX Dev Team")
|
||||||
|
|
||||||
g_MaxPlayers = get_maxplayers()
|
g_MaxPlayers = get_maxplayers()
|
||||||
|
|
||||||
|
@ -27,6 +27,11 @@ Core_Natives()
|
|||||||
register_native("fpower", "__fpower")
|
register_native("fpower", "__fpower")
|
||||||
register_native("flog", "__flog")
|
register_native("flog", "__flog")
|
||||||
register_native("get_cmdaccess", "__get_cmdaccess")
|
register_native("get_cmdaccess", "__get_cmdaccess")
|
||||||
|
register_native("is_translated", "__is_translated")
|
||||||
|
register_native("get_plugincmdsnum", "__get_plugincmdsnum")
|
||||||
|
register_native("get_plugincmd", "__get_plugincmd")
|
||||||
|
register_native("get_plugincvarsnum", "__get_plugincvarsnum")
|
||||||
|
register_native("get_plugincvar", "__get_plugincvar")
|
||||||
}
|
}
|
||||||
|
|
||||||
public __VelocityByAim(plid, num)
|
public __VelocityByAim(plid, num)
|
||||||
@ -185,7 +190,7 @@ public Float:__flog(plid, num)
|
|||||||
//get_cmdaccess(cmd[], accessflags[], len)
|
//get_cmdaccess(cmd[], accessflags[], len)
|
||||||
public __get_cmdaccess(plid, num)
|
public __get_cmdaccess(plid, num)
|
||||||
{
|
{
|
||||||
new command[32], accessflags[32]
|
static command[32], accessflags[32]
|
||||||
new ret
|
new ret
|
||||||
|
|
||||||
get_string(1, command, 31)
|
get_string(1, command, 31)
|
||||||
@ -197,3 +202,80 @@ public __get_cmdaccess(plid, num)
|
|||||||
|
|
||||||
return ret
|
return ret
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public __is_translated(plid, num)
|
||||||
|
{
|
||||||
|
static string[512]
|
||||||
|
|
||||||
|
get_string(1, string, 511)
|
||||||
|
|
||||||
|
return is_translated(string)
|
||||||
|
}
|
||||||
|
|
||||||
|
public __get_plugincmdsnum(plid, num)
|
||||||
|
{
|
||||||
|
static plugin[64]
|
||||||
|
|
||||||
|
get_string(1, plugin, 63)
|
||||||
|
|
||||||
|
return get_plugincmdsnum(plugin, get_param(2))
|
||||||
|
}
|
||||||
|
|
||||||
|
public __get_plugincmd(plid, num)
|
||||||
|
{
|
||||||
|
static plugin[64]
|
||||||
|
static command[32]
|
||||||
|
static accessflags[32]
|
||||||
|
static info[512]
|
||||||
|
|
||||||
|
get_string(1, plugin, 63)
|
||||||
|
|
||||||
|
if (get_plugincmd(plugin,
|
||||||
|
get_param(2),
|
||||||
|
command,
|
||||||
|
31,
|
||||||
|
accessflags,
|
||||||
|
31,
|
||||||
|
info,
|
||||||
|
511,
|
||||||
|
get_param(9),
|
||||||
|
get_param(10)))
|
||||||
|
{
|
||||||
|
set_string(3, command, get_param(4))
|
||||||
|
set_string(5, accessflags, get_param(6))
|
||||||
|
set_string(7, info, get_param(8))
|
||||||
|
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
public __get_plugincvarsnum(plid, num)
|
||||||
|
{
|
||||||
|
static plugin[64]
|
||||||
|
|
||||||
|
get_string(1, plugin, 63)
|
||||||
|
|
||||||
|
return get_plugincvarsnum(plugin, get_param(2))
|
||||||
|
}
|
||||||
|
|
||||||
|
//stock get_plugincvar(plugin[], index, cvar[], len1, value[], len2, flags=0)
|
||||||
|
public __get_plugincvar(plid, num)
|
||||||
|
{
|
||||||
|
static plugin[64]
|
||||||
|
static cvar[32]
|
||||||
|
static value[512]
|
||||||
|
|
||||||
|
get_string(1, plugin, 63)
|
||||||
|
|
||||||
|
if (get_plugincvar(plugin, get_param(2), cvar, 31, value, 511, get_param(7)))
|
||||||
|
{
|
||||||
|
set_string(3, cvar, get_param(4))
|
||||||
|
set_string(5, value, get_param(6))
|
||||||
|
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
@ -54,7 +54,7 @@ stock strtonum(const string[])
|
|||||||
|
|
||||||
stock build_path(path[], len, {Float,_}:... )
|
stock build_path(path[], len, {Float,_}:... )
|
||||||
{
|
{
|
||||||
format_args(path, len, 2)
|
format_args(path, len, 2);
|
||||||
new pathlen = strlen(path);
|
new pathlen = strlen(path);
|
||||||
new basedir[32];
|
new basedir[32];
|
||||||
if (containi(path, "$basedir") != -1)
|
if (containi(path, "$basedir") != -1)
|
||||||
@ -66,22 +66,22 @@ stock build_path(path[], len, {Float,_}:... )
|
|||||||
}
|
}
|
||||||
if ((pathlen+strlen(basedir)-strlen("$basedir")) < len)
|
if ((pathlen+strlen(basedir)-strlen("$basedir")) < len)
|
||||||
{
|
{
|
||||||
replace(path, len, "$basedir", basedir)
|
replace(path, len, "$basedir", basedir);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
new dir[64], subdir[63];
|
new dir[64], subdir[63];
|
||||||
if (containi(path, "$configdir") != -1)
|
if (containi(path, "$configdir") != -1)
|
||||||
{
|
{
|
||||||
get_localinfo("amxx_configsdir", dir, 63)
|
get_localinfo("amxx_configsdir", dir, 63);
|
||||||
if (!dir[0])
|
if (!dir[0])
|
||||||
{
|
{
|
||||||
format(dir, 63, "%s/configs", basedir)
|
format(dir, 63, "%s/configs", basedir);
|
||||||
}
|
}
|
||||||
if ((pathlen+strlen(basedir)-strlen("$configdir")) < len)
|
if ((pathlen+strlen(basedir)-strlen("$configdir")) < len)
|
||||||
{
|
{
|
||||||
replace(path, len, "$configdir", dir)
|
replace(path, len, "$configdir", dir);
|
||||||
}
|
}
|
||||||
dir[0] = '^0'
|
dir[0] = '^0';
|
||||||
}
|
}
|
||||||
if (containi(path, "$langdir") != -1)
|
if (containi(path, "$langdir") != -1)
|
||||||
{
|
{
|
||||||
@ -95,7 +95,7 @@ stock build_path(path[], len, {Float,_}:... )
|
|||||||
{
|
{
|
||||||
replace(path, len, "$langdir", dir);
|
replace(path, len, "$langdir", dir);
|
||||||
}
|
}
|
||||||
dir[0] = '^0''
|
dir[0] = '^0';
|
||||||
}
|
}
|
||||||
if (containi(path, "$modulesdir") != -1)
|
if (containi(path, "$modulesdir") != -1)
|
||||||
{
|
{
|
||||||
@ -128,14 +128,14 @@ stock build_path(path[], len, {Float,_}:... )
|
|||||||
get_localinfo("amx_logs", dir, 63);
|
get_localinfo("amx_logs", dir, 63);
|
||||||
if (!dir[0])
|
if (!dir[0])
|
||||||
{
|
{
|
||||||
format(dir, 63, "%s/logs", basedir)
|
format(dir, 63, "%s/logs", basedir);
|
||||||
}
|
}
|
||||||
if ((pathlen+strlen(basedir)-strlen("$logdir")) < len)
|
if ((pathlen+strlen(basedir)-strlen("$logdir")) < len)
|
||||||
{
|
{
|
||||||
replace(path, len, "$logdir", dir);
|
replace(path, len, "$logdir", dir);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 1
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
stock is_user_authorized(id)
|
stock is_user_authorized(id)
|
||||||
@ -161,7 +161,7 @@ stock angle_to_vector(Float:vector[3], FRU, Float:ret[3])
|
|||||||
return angle_vector(vector, FRU, ret);
|
return angle_vector(vector, FRU, ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
get_cmdaccess(cmd[], accessflags[], len)
|
stock get_cmdaccess(cmd[], accessflags[], len)
|
||||||
{
|
{
|
||||||
new num = get_concmdsnum(-1);
|
new num = get_concmdsnum(-1);
|
||||||
new command[32], info[3];
|
new command[32], info[3];
|
||||||
@ -179,3 +179,120 @@ get_cmdaccess(cmd[], accessflags[], len)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
stock is_translated(const sentence[])
|
||||||
|
{
|
||||||
|
return (GetLangTransKey(sentence) != TransKey_Bad);
|
||||||
|
}
|
||||||
|
|
||||||
|
stock get_plugincmdsnum(plugin[], type=7)
|
||||||
|
{
|
||||||
|
new plid = find_plugin_byfile(plugin);
|
||||||
|
new our_type;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Whoever wrote this was a bit confused about the type stuff...
|
||||||
|
*/
|
||||||
|
if (type == 1) {
|
||||||
|
our_type = 1;
|
||||||
|
} else if (type == 4) {
|
||||||
|
our_type = 0;
|
||||||
|
} else {
|
||||||
|
our_type = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
new found = 0;
|
||||||
|
new total = get_concmdsnum(-1, our_type);
|
||||||
|
for (new i=0; i<total; i++)
|
||||||
|
{
|
||||||
|
if (plid == get_concmd_plid(i, -1, our_type))
|
||||||
|
{
|
||||||
|
found++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return found;
|
||||||
|
}
|
||||||
|
|
||||||
|
stock get_plugincmd(plugin[], index, cmd[], len1, accessflags[], len2, info[], len3, destid=-1, type=7)
|
||||||
|
{
|
||||||
|
new plid = find_plugin_byfile(plugin);
|
||||||
|
new our_type;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Whoever wrote this was a bit confused about the type stuff...
|
||||||
|
*/
|
||||||
|
if (type == 1) {
|
||||||
|
our_type = 1;
|
||||||
|
} else if (type == 4) {
|
||||||
|
our_type = 0;
|
||||||
|
} else {
|
||||||
|
our_type = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
new found_iter = 0;
|
||||||
|
new total = get_concmdsnum(-1, our_type);
|
||||||
|
for (new i=0; i<total; i++)
|
||||||
|
{
|
||||||
|
if (plid == get_concmd_plid(i, -1, our_type))
|
||||||
|
{
|
||||||
|
if (found_iter == index)
|
||||||
|
{
|
||||||
|
new flags, result;
|
||||||
|
result = get_concmd(i, cmd, len1, flags, info, len3, -1, our_type);
|
||||||
|
get_flags(flags, accessflags, len2);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
found_iter++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* get rid of a compiler warning */
|
||||||
|
destid = -1;
|
||||||
|
return (++destid);
|
||||||
|
}
|
||||||
|
|
||||||
|
stock get_plugincvar(plugin[], index, cvar[], len1, value[], len2, flags=0)
|
||||||
|
{
|
||||||
|
new plid = find_plugin_byfile(plugin);
|
||||||
|
|
||||||
|
new total = get_plugins_cvarsnum();
|
||||||
|
new cvar_flags, plugin_id, pcvar_handle;
|
||||||
|
new iter_id = 0;
|
||||||
|
for (new i=0; i<total; i++)
|
||||||
|
{
|
||||||
|
get_plugins_cvar(i, cvar, len1, cvar_flags, plugin_id, pcvar_handle);
|
||||||
|
if ((plugin_id == plid)
|
||||||
|
&& (!flags || (cvar_flags & flags)))
|
||||||
|
{
|
||||||
|
if (iter_id == index)
|
||||||
|
{
|
||||||
|
get_pcvar_string(pcvar_handle, value, len2);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
iter_id++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
stock get_plugincvarsnum(plugin[], flags=0)
|
||||||
|
{
|
||||||
|
new plid = find_plugin_byfile(plugin);
|
||||||
|
|
||||||
|
new total = get_plugins_cvarsnum();
|
||||||
|
new cvar_flags, plugin_id;
|
||||||
|
new cvars_total = 0;
|
||||||
|
for (new i=0; i<total; i++)
|
||||||
|
{
|
||||||
|
get_plugins_cvar(i, "", 0, cvar_flags, plugin_id);
|
||||||
|
if ((plugin_id == plid)
|
||||||
|
&& (!flags || (cvar_flags & flags)))
|
||||||
|
{
|
||||||
|
cvars_total++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return cvars_total;
|
||||||
|
}
|
||||||
|
@ -497,9 +497,18 @@ then function returns only server cmds, if positive then
|
|||||||
returns only client cmds. in other case returns all console commands. */
|
returns only client cmds. in other case returns all console commands. */
|
||||||
native get_concmd(index,cmd[],len1,&flags, info[],len2, flag, id = -1);
|
native get_concmd(index,cmd[],len1,&flags, info[],len2, flag, id = -1);
|
||||||
|
|
||||||
|
/* Gets the parent plugin id of a console command. */
|
||||||
|
native get_concmd_plid(cid, flag_mask, id_type);
|
||||||
|
|
||||||
/* Returns number of registered console commands. */
|
/* Returns number of registered console commands. */
|
||||||
native get_concmdsnum(flag,id = -1);
|
native get_concmdsnum(flag,id = -1);
|
||||||
|
|
||||||
|
/* Returns the number of plugin-registered cvars. */
|
||||||
|
native get_plugins_cvarsnum();
|
||||||
|
|
||||||
|
/* Returns information about a plugin-registered cvar. */
|
||||||
|
native get_plugins_cvar(num, name[], namelen, &flags=0, &plugin_id=0, &pcvar_handle=0);
|
||||||
|
|
||||||
/* Gets unique id of menu. Outside set to 1 allows
|
/* Gets unique id of menu. Outside set to 1 allows
|
||||||
* to catch menus outside a plugin where register_menuid is called. */
|
* to catch menus outside a plugin where register_menuid is called. */
|
||||||
native register_menuid(const menu[], outside=0 );
|
native register_menuid(const menu[], outside=0 );
|
||||||
@ -588,8 +597,10 @@ native get_modulesnum();
|
|||||||
native is_plugin_loaded(const name[]);
|
native is_plugin_loaded(const name[]);
|
||||||
|
|
||||||
/* Gets info about plugin by given index.
|
/* Gets info about plugin by given index.
|
||||||
* Function returns -1 if plugin doesn't exist with given index. */
|
* Function returns -1 if plugin doesn't exist with given index.
|
||||||
native get_plugin(index,filename[],len1,name[],len2,version[],len3,author[],len4,status[],len5);
|
* Note: the [...] portion should not be used, and is only for backward compatibility.
|
||||||
|
*/
|
||||||
|
native get_plugin(index,filename[],len1,name[],len2,version[],len3,author[],len4,status[],len5,...);
|
||||||
|
|
||||||
/* Returns number of all loaded plugins. */
|
/* Returns number of all loaded plugins. */
|
||||||
native get_pluginsnum();
|
native get_pluginsnum();
|
||||||
|
@ -25,11 +25,22 @@ native register_dictionary(const filename[]);
|
|||||||
//returns 1 if the language is loaded, 0 otherwise.
|
//returns 1 if the language is loaded, 0 otherwise.
|
||||||
native lang_exists(const name[]);
|
native lang_exists(const name[]);
|
||||||
|
|
||||||
|
enum TransKey
|
||||||
|
{
|
||||||
|
TransKey_Bad = -1,
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds or finds a translation key.
|
* Adds or finds a translation key.
|
||||||
*/
|
*/
|
||||||
native TransKey:CreateLangKey(const key[]);
|
native TransKey:CreateLangKey(const key[]);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Finds a translation key id without adding on failure.
|
||||||
|
* Returns -1 on not found.
|
||||||
|
*/
|
||||||
|
native TransKey:GetLangTransKey(const key[]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds a translation.
|
* Adds a translation.
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user