Этот урок посвящён автоматической починке.
Создаём таймер в public OnGameModeInit()
Код
SetTimer("AutoRepair", 1000, true);
,где 1000 - время в миллисекундах (1000 = 1 секунда).
В любое место:
Код
forward AutoRepair();
public AutoRepair()
{
for(new playerid=0; playerid<MAX_PLAYERS; playerid++)
{
if (IsPlayerInAnyVehicle(playerid))
{
new Float:CarHP;
GetVehicleHealth(GetPlayerVehicleID(playerid), CarHP);
if (CarHP < 999)
{
RepairVehicle(GetPlayerVehicleID(playerid));
}
}
}
return 1;
}
,где:
if (IsPlayerInAnyVehicle(playerid)) - если игрок в машине.
GetVehicleHealth(GetPlayerVehicleID(playerid), CarHP); - записываем количество здоровья машины в переменную CarHP.
if (CarHP < 999) - если здоровья меньше чем 999 (Справка: полное >= 1000).
RepairVehicle(GetPlayerVehicleID(playerid)); - чиним машину.
Что у нас получилось?
Таймер, каждую секунду запускает public AutoRepair(), в котором идёт проверка на количество здоровья машины. Если уменьшилось, то происходит автоматическая починка.