GetSVarType

Материал из Pro-Pawn Wiki
Перейти к: навигация, поиск

Описание:

Узнаёт тип серверной переменной.

Параметры:

(varname[])
varname[] Название переменной.


Возвращаемое значение:

  • SERVER_VARTYPE_NONE, если переменная не существует.
  • SERVER_VARTYPE_INT, если переменная целочисленного типа.
  • SERVER_VARTYPE_STRING, если переменная строкового типа.
  • SERVER_VARTYPE_FLOAT, если переменная вещественного типа.

Пример использования:

/*
Вывод:
    #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));
        }
    }
}


См. также: