GetSVarNameAtIndex
Материал из Pro-Pawn Wiki
Описание:
Узнаёт название серверной переменной, имеющей указанный ID.
Параметры:
(index, ret_varname[], ret_len) |
index | ID переменной. |
ret_varname[] | Массив для сохранения названия переменной. |
ret_len | Размер массива ret_varname .
|
Возвращаемое значение:
Длина строки с названием переменной в случае успеха, либо
0
если переменной не существует. Само название переменной возвращается косвенно в массиве ret_varname
(если переменной не существует, в массив будет записана пустая строка).
Пример использования:
/*
Вывод:
#0: Не существует
#1: "LEVEL" (целое число): 42
#2: "HEALTH" (вещ. число): 100.00
#3: "TEAM_NAME" (строка): "RED"
*/
SetSVarInt("money", 1000);
SetSVarInt("level", 42);
SetSVarFloat("health", 100.0);
SetSVarString("team_name", "RED");
DeleteSVar("money");
new upper = GetSVarsUpperIndex(); // Если созданы SVar'ы под ID от 0 до 3,
new name[40 + 1]; // GetSVarsUpperIndex() вернёт 4.
for (new i = 0; i < upper; ++i)
{
if (0 == GetSVarNameAtIndex(i, name, sizeof(name)))
{
printf("#%d: Не существует", i);
continue;
}
switch (GetSVarType(name))
{
case SERVER_VARTYPE_INT:
{
printf("#%d: \"%s\" (целое число): %d", i, name, GetSVarInt(name));
}
case SERVER_VARTYPE_STRING:
{
new string[256];
GetSVarString(name, string, sizeof(string));
printf("#%d: \"%s\" (строка): \"%s\"", i, name, string);
}
case SERVER_VARTYPE_FLOAT:
{
printf("#%d: \"%s\" (вещ. число): %.2f", i, name, GetSVarFloat(name));
}
}
}
Вывод:
#0: Не существует
#1: "LEVEL" (целое число): 42
#2: "HEALTH" (вещ. число): 100.00
#3: "TEAM_NAME" (строка): "RED"
*/
SetSVarInt("money", 1000);
SetSVarInt("level", 42);
SetSVarFloat("health", 100.0);
SetSVarString("team_name", "RED");
DeleteSVar("money");
new upper = GetSVarsUpperIndex(); // Если созданы SVar'ы под ID от 0 до 3,
new name[40 + 1]; // GetSVarsUpperIndex() вернёт 4.
for (new i = 0; i < upper; ++i)
{
if (0 == GetSVarNameAtIndex(i, name, sizeof(name)))
{
printf("#%d: Не существует", i);
continue;
}
switch (GetSVarType(name))
{
case SERVER_VARTYPE_INT:
{
printf("#%d: \"%s\" (целое число): %d", i, name, GetSVarInt(name));
}
case SERVER_VARTYPE_STRING:
{
new string[256];
GetSVarString(name, string, sizeof(string));
printf("#%d: \"%s\" (строка): \"%s\"", i, name, string);
}
case SERVER_VARTYPE_FLOAT:
{
printf("#%d: \"%s\" (вещ. число): %.2f", i, name, GetSVarFloat(name));
}
}
}
См. также: