В SA:MP 0.3.7 добавили такую функцию, с помощью которой можно узнать: включена ли сирена?
GetVehicleParamsSirenState(vehicleid)
Эта функция возвращает только три значения:
-1 - В большинстве случаев - выключена
0 - Выключена
1 - Включена
Пример:
Код
public OnPlayerCommandText(playerid, cmd[])
{
if(strcmp(cmdtext, "/stoped", true) == 0)
{
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, "Вы не в машине!");
if(GetPlayerState != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, -1, "Вы не водитель!");
if(GetVehicleParamsSirenState(vehicleid) != 1) return SendClientMessage(playerid, -1, "Мигалка выключена!");
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
new Float:dist, virtualworld = GetPlayerVirtualWorld(playerid), interior = GetPlayerInterior(playerid);
for(new i = 0; i < MAX_PLAYERS; i++)
{
dist = GetPlayerDistanceFromPoint(i, x, y, z);
if(dist <= 40.0) SCM(i, 0xFFFF00FF, "Прижмитесь к обочине!");
}
return 1;
}
}