GetPlayerSurfingVehicleID — различия между версиями
Материал из Pro-Pawn Wiki
VVWVV (обсуждение | вклад) (Новая страница: «{{NoteSAMPAddedIn|SA-MP 0.3a}} {{Description | Узнает ID транспортного средства, на котором находится игрок. }}…») |
DeimoS (обсуждение | вклад) |
||
(не показано 7 промежуточных версии 3 участников) | |||
Строка 1: | Строка 1: | ||
− | {{NoteSAMPAddedIn| | + | {{NoteSAMPAddedIn|0.3a}} |
{{Description | {{Description | ||
− | | Узнает ID транспортного средства, на | + | | Узнает ID транспортного средства, на поверхности которого стоит игрок. |
}} | }} | ||
{{Params|playerid}} | {{Params|playerid}} | ||
{{Param | {{Param | ||
| playerid | | playerid | ||
− | | ID игрока | + | | ID проверяемого игрока. |
}} | }} | ||
{{Returns | {{Returns | ||
− | | ID транспортного средства, | + | | ID транспортного средства, на котором находится игрок, либо <code>INVALID_VEHICLE_ID</code>. |
+ | }} | ||
+ | {{NoteInfo | ||
+ | | Функция будет возвращать <code>INVALID_VEHICLE_ID</code> для игрока, если в транспорте, на котором тот стоит, отсутствует '''водитель'''. | ||
}} | }} | ||
{{Example}} | {{Example}} | ||
Строка 15: | Строка 18: | ||
const VEHICLE_MODEL_INFERNUS = 411; | const VEHICLE_MODEL_INFERNUS = 411; | ||
const VEHICLE_COLOR_WHITE = 1; | const VEHICLE_COLOR_WHITE = 1; | ||
− | |||
− | |||
− | |||
− | |||
public OnGameModeInit() | public OnGameModeInit() | ||
{ | { | ||
− | // Создадим Infernus возле дома Сиджея | + | // Создадим Infernus возле дома Сиджея. |
− | + | ||
AddStaticVehicle( | AddStaticVehicle( | ||
VEHICLE_MODEL_INFERNUS, | VEHICLE_MODEL_INFERNUS, | ||
Строка 33: | Строка 31: | ||
CMD:getsurfveh(playerid, params[]) | CMD:getsurfveh(playerid, params[]) | ||
{ | { | ||
− | + | if (IsPlayerAdmin(playerid) == 0) | |
− | + | return SendClientMessage(playerid, -1, "Вы не администратор сервера!"); | |
− | // Узнаем ID игрока для проверки. | + | new targetid; |
− | + | if(sscanf(params, "r", targetid))// Узнаем ID игрока для проверки. | |
− | return SendClientMessage(playerid, -1, | + | return SendClientMessage(playerid, -1, "Использование: /getsurfveh [ID игрока]"); |
− | // Узнаем, находится ли игрок на каком-либо | + | if (targetid == INVALID_PLAYER_ID) |
− | + | return SendClientMessage(playerid, -1, "Игрок не найден."); | |
− | + | // Узнаем, находится ли игрок на каком-либо транспортном средстве, ... | |
− | + | new vehicleid = GetPlayerSurfingVehicleID(targetid); | |
− | new | + | // ... если нет - выводим соответствующее сообщение. |
− | + | if (vehicleid == INVALID_VEHICLE_ID) | |
− | if ( | + | return SendClientMessage(playerid, -1, "Игрок не находится на т/с."); |
− | return SendClientMessage(playerid, -1, | + | // Иначе выводим сообщение с ID т/с, на котором находится игрок. |
− | // | + | new buffer[64]; |
− | + | format(buffer, sizeof(buffer), "Игрок находится на т/с #%d", vehicleid); | |
− | new | + | |
− | + | ||
− | format(buffer, sizeof(buffer), | + | |
return SendClientMessage(playerid, -1, buffer); | return SendClientMessage(playerid, -1, buffer); | ||
} | } | ||
</pawn> | </pawn> | ||
[[Категория:Функции SA-MP]] | [[Категория:Функции SA-MP]] |
Текущая версия на 07:08, 28 марта 2023
Данная функция была добавлена в SA-MP 0.3a и не работает в более ранних версиях. |
Описание:
Узнает ID транспортного средства, на поверхности которого стоит игрок.
Параметры:
(playerid) |
playerid | ID проверяемого игрока. |
Возвращаемое значение:
ID транспортного средства, на котором находится игрок, либо
INVALID_VEHICLE_ID
.
Примечание |
Функция будет возвращать INVALID_VEHICLE_ID для игрока, если в транспорте, на котором тот стоит, отсутствует водитель.
|
Пример использования:
const VEHICLE_MODEL_INFERNUS = 411;
const VEHICLE_COLOR_WHITE = 1;
public OnGameModeInit()
{
// Создадим Infernus возле дома Сиджея.
AddStaticVehicle(
VEHICLE_MODEL_INFERNUS,
2498.0, -1682.0, 13.0, 280.0,
VEHICLE_COLOR_WHITE, VEHICLE_COLOR_WHITE
);
}
CMD:getsurfveh(playerid, params[])
{
if (IsPlayerAdmin(playerid) == 0)
return SendClientMessage(playerid, -1, "Вы не администратор сервера!");
new targetid;
if(sscanf(params, "r", targetid))// Узнаем ID игрока для проверки.
return SendClientMessage(playerid, -1, "Использование: /getsurfveh [ID игрока]");
if (targetid == INVALID_PLAYER_ID)
return SendClientMessage(playerid, -1, "Игрок не найден.");
// Узнаем, находится ли игрок на каком-либо транспортном средстве, ...
new vehicleid = GetPlayerSurfingVehicleID(targetid);
// ... если нет - выводим соответствующее сообщение.
if (vehicleid == INVALID_VEHICLE_ID)
return SendClientMessage(playerid, -1, "Игрок не находится на т/с.");
// Иначе выводим сообщение с ID т/с, на котором находится игрок.
new buffer[64];
format(buffer, sizeof(buffer), "Игрок находится на т/с #%d", vehicleid);
return SendClientMessage(playerid, -1, buffer);
}
const VEHICLE_COLOR_WHITE = 1;
public OnGameModeInit()
{
// Создадим Infernus возле дома Сиджея.
AddStaticVehicle(
VEHICLE_MODEL_INFERNUS,
2498.0, -1682.0, 13.0, 280.0,
VEHICLE_COLOR_WHITE, VEHICLE_COLOR_WHITE
);
}
CMD:getsurfveh(playerid, params[])
{
if (IsPlayerAdmin(playerid) == 0)
return SendClientMessage(playerid, -1, "Вы не администратор сервера!");
new targetid;
if(sscanf(params, "r", targetid))// Узнаем ID игрока для проверки.
return SendClientMessage(playerid, -1, "Использование: /getsurfveh [ID игрока]");
if (targetid == INVALID_PLAYER_ID)
return SendClientMessage(playerid, -1, "Игрок не найден.");
// Узнаем, находится ли игрок на каком-либо транспортном средстве, ...
new vehicleid = GetPlayerSurfingVehicleID(targetid);
// ... если нет - выводим соответствующее сообщение.
if (vehicleid == INVALID_VEHICLE_ID)
return SendClientMessage(playerid, -1, "Игрок не находится на т/с.");
// Иначе выводим сообщение с ID т/с, на котором находится игрок.
new buffer[64];
format(buffer, sizeof(buffer), "Игрок находится на т/с #%d", vehicleid);
return SendClientMessage(playerid, -1, buffer);
}