GetPVarType
Материал из Pro-Pawn Wiki
Описание:
Узнаёт тип привязанной к игроку переменной.
Параметры:
(playerid, varname[]) |
playerid | ID игрока. |
varname[] | Название переменной. |
Возвращаемое значение:
-
PLAYER_VARTYPE_NONE
, если переменная не существует или игрок не подключен. -
PLAYER_VARTYPE_INT
, если переменная целочисленного типа. -
PLAYER_VARTYPE_STRING
, если переменная строкового типа. -
PLAYER_VARTYPE_FLOAT
, если переменная вещественного типа.
Пример использования:
/*
Вывод:
#0: Не существует
#1: "LEVEL" (целое число): 42
#2: "HEALTH" (вещ. число): 100.00
#3: "TEAM_NAME" (строка): "RED"
*/
SetPVarInt(playerid, "money", 1000);
SetPVarInt(playerid, "level", 42);
SetPVarFloat(playerid, "health", 100.0);
SetPVarString(playerid, "team_name", "RED");
DeletePVar(playerid, "money");
new upper = GetPVarsUpperIndex(playerid); // Если созданы PVar'ы под ID от 0 до 3,
new name[40 + 1]; // GetPVarsUpperIndex() вернёт 4.
for (new i = 0; i < upper; ++i)
{
if (0 == GetPVarNameAtIndex(playerid, i, name, sizeof(name)))
{
printf("#%d: Не существует", i);
continue;
}
switch (GetPVarType(playerid, name))
{
case PLAYER_VARTYPE_INT:
{
printf("#%d: \"%s\" (целое число): %d", i, name, GetPVarInt(playerid, name));
}
case PLAYER_VARTYPE_STRING:
{
new string[256];
GetPVarString(playerid, name, string, sizeof(string));
printf("#%d: \"%s\" (строка): \"%s\"", i, name, string);
}
case PLAYER_VARTYPE_FLOAT:
{
printf("#%d: \"%s\" (вещ. число): %.2f", i, name, GetPVarFloat(playerid, name));
}
}
}
Вывод:
#0: Не существует
#1: "LEVEL" (целое число): 42
#2: "HEALTH" (вещ. число): 100.00
#3: "TEAM_NAME" (строка): "RED"
*/
SetPVarInt(playerid, "money", 1000);
SetPVarInt(playerid, "level", 42);
SetPVarFloat(playerid, "health", 100.0);
SetPVarString(playerid, "team_name", "RED");
DeletePVar(playerid, "money");
new upper = GetPVarsUpperIndex(playerid); // Если созданы PVar'ы под ID от 0 до 3,
new name[40 + 1]; // GetPVarsUpperIndex() вернёт 4.
for (new i = 0; i < upper; ++i)
{
if (0 == GetPVarNameAtIndex(playerid, i, name, sizeof(name)))
{
printf("#%d: Не существует", i);
continue;
}
switch (GetPVarType(playerid, name))
{
case PLAYER_VARTYPE_INT:
{
printf("#%d: \"%s\" (целое число): %d", i, name, GetPVarInt(playerid, name));
}
case PLAYER_VARTYPE_STRING:
{
new string[256];
GetPVarString(playerid, name, string, sizeof(string));
printf("#%d: \"%s\" (строка): \"%s\"", i, name, string);
}
case PLAYER_VARTYPE_FLOAT:
{
printf("#%d: \"%s\" (вещ. число): %.2f", i, name, GetPVarFloat(playerid, name));
}
}
}
См. также: