if(newstate == PLAYER_STATE_DRIVER)
{
new vehicleid = GetPlayerVehicleID(playerid);
new Float:chealth;
GetVehicleHealth(vehicleid, chealth);
{
if(chealth < 350.0)
{
SetVehicleParamsEx(vehicleid, false, true, true, true, false, false, false);
TogglePlayerControllable(playerid,0);
SendClientMessage(playerid, orange, "Your engine died. Please call a repairsman to repair it");
return 1;
} else if (GetVehicleHealth(vehicleid, chealth) >350) {
SetVehicleParamsEx(vehicleid, true, false, false, false, false, false, false);
TogglePlayerControllable(playerid, 1);
}
}
return 1;
}
you'd need a timer or put it under the vehicle damage update one.
|
forward CarWrecked(); Under Ongamemodeint SetTimer("CarWrecked", 500, true); anywhere public CarWrecked() { for(new i; i < MAX_PLAYERS; i++) { new Float:VehHealth; new PlayerVehicle; PlayerVehicle = GetPlayerVehicleID(i); GetVehicleHealth(PlayerVehicle, VehHealth); if(IsPlayerInAnyVehicle(i)) { if(VehHealth < 300) { RemovePlayerFromVehicle(i); SetVehicleHealth(PlayerVehicle, 299); GameTextForPlayer(i, "~r~ Wrecked", 2000, 4); } } } return 1; }
public CarWrecked()
{
for(new i; i < MAX_PLAYERS; i++)
{
new Float:VehHealth;
new PlayerVehicle;
new PID;
PID = GetPlayerName(playerid, PID, sizeof(PID)); <-- line 1693
PlayerVehicle = GetPlayerVehicleID(i);
GetVehicleHealth(PlayerVehicle, VehHealth);
if(IsPlayerInAnyVehicle(i))
{
if(VehHealth < 350)
{
SetVehicleParamsEx(PlayerVehicle, false, true, true, true, false, false, false);
TogglePlayerControllable(PID,0);
SendClientMessage(PID, orange, "Your engine died. Please call a repairsman to repair it");
SetVehicleHealth(PlayerVehicle, 349);
return 1;
} else if(VehHealth > 350) {
SetVehicleParamsEx(PlayerVehicle, true, false, false, false, false, false, false);
TogglePlayerControllable(PID, 1);
SendClientMessage(PID, orange, "Your engine have been fixed.");
SendClientMessage(PID, orange, "You gave the repairsman 500$.");
return 1;
}
}
}
return 1;
}
C:\Users\wesley.PC_van_Kelsey\Desktop\RolePlay\gamemodes\RolePlay.pwn(1693) : error 017: undefined symbol "playerid" C:\Users\wesley.PC_van_Kelsey\Desktop\RolePlay\gamemodes\RolePlay.pwn(1693) : error 035: argument type mismatch (argument 2) Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 2 Errors.
public CarWrecked()
{
for(new i; i < MAX_PLAYERS; i++)
{
new Float:VehHealth;
new PlayerVehicle;
PlayerVehicle = GetPlayerVehicleID(i);
GetVehicleHealth(PlayerVehicle, VehHealth);
if(IsPlayerInAnyVehicle(i))
{
if(VehHealth < 350)
{
SetVehicleParamsEx(PlayerVehicle, false, true, true, true, false, false, false);
TogglePlayerControllable(i,0);
SendClientMessage(i, orange, "Your engine died. Please call a repairsman to repair it");
SetVehicleHealth(PlayerVehicle, 349);
return 1;
} else if(VehHealth > 998) {
SetVehicleParamsEx(PlayerVehicle, true, false, false, false, false, false, false);
TogglePlayerControllable(i, 1);
SendClientMessage(i, orange, "Your engine have been fixed.");
SendClientMessage(i, orange, "You gave the repairsman 500$.");
return 1;
}
}
}
return 1;
}
new isTotalled[MAX_PLAYERS];
OnVehicleDamageStatusUpdate(vehicleid,playerid)
{
new Float:VehHealth;
new PlayerVehicle;
GetVehicleHealth(vehicleid, VehHealth);
if(VehHealth < 350 && isTotalled[playerid] == 0)
{
SetVehicleParamsEx(PlayerVehicle, false, true, true, true, false, false, false);
TogglePlayerControllable(i,0);
SendClientMessage(playerid, orange, "Your engine died. Please call a repairsman to repair it");
SetVehicleHealth(vehicleid, 349);
isTotalled[playerid] = 1;
return 1;
} else if(VehHealth > 998) {
SetVehicleParamsEx(vehicleid, true, false, false, false, false, false, false);
TogglePlayerControllable(playerid, 1);
SendClientMessage(playerid, orange, "Your engine have been fixed.");
SendClientMessage(playerid, orange, "You gave the repairsman 500$.");
return 1;
}
}