if (HOLDING( KEY_FIRE ))
{
new Float:fx, Float:fy, Float:fz;
GetDynamicObjectPos(FireObject, fx, fy, fz);
new string[256];
if(GetPlayerWeapon(playerid) == 42 || GetVehicleModel(GetPlayerVehicleID(playerid)) == 407)
{
if(IsPlayerInRangeOfPoint(playerid, 40.0, fx, fy, fz))
{
FireHealth -= 1;
format(string, sizeof(string), "%d/100%", FireHealth);
Update3DTextLabelText(FireText, GREEN, string);
if(FireHealth <= 0)
{
DestroyDynamicObject(FireObject);
DestroyDynamicObject(SmokeObject);
Delete3DTextLabel(FireText);
FireHealth = 0;
FireTimer = SetTimer("StartRandomFire", 900000, false);
format(string, sizeof(string), "Auto-Dispatcher: The fire that was started has been successfully put out. Continue with normal duties.");
foreach(new i : Player)
{
if(IsACop(i) || IsAGov(i) || IsMedic(i) || IsSASD(i))
{
SendClientMessage(i, COLOR_DEPTRADIO, string);
}
}
return 1;
}
}
}
}
|
If you want a gradual reduction of the health, you need a timer to check multiple times.
|