new Float:Speedo_HP;
for(new i = 0; i < MAX_PLAYERS; i++)
{
new vehicle = GetPlayerVehicleID(i);
GetVehicleHealth(vehicle, Speedo_HP);
if (Speedo_HP <= 95)
{
TempoReparar[i] = SetTimerEx("AutoReparar", 1000, 0, "i", i);
}
}
public AutoReparar(vehicleid,playerid)
{
RepairVehicle(GetPlayerVehicleID(playerid));
}
public OnVehicleDamageStatusUpdate(vehicleid, playerid)
{
if(Vuln[vehicleid] >= 1)
{
Vuln[vehicleid] --;
TempoReparar[playerid] = SetTimerEx("AutoReparar",1000,0,"i",playerid);
}
return 1;
}
|
Bom Pessoal estou colocando pra veiculo auto reparar se a lataria estiver abaixo de 95% , mais ele nгo repara de geito nenhum olhem
Na public OnGameModeInit() PHP код:
Final do GM PHP код:
|
forward AutoReparar(playerid);
public AutoReparar(playerid) {
RepairVehicle(GetPlayerVehicleID(playerid));
return 1;
}
public OnVehicleDamageStatusUpdate(vehicleid, playerid) {
static Float:health;
GetVehicleHealth(vehicleid, health);
if(floatcmp(health, 95.0) == -1) {
RepairVehicle(vehicleid);
}
return true;
}
// Variaveis!
new AutorepararLIG[MAX_PLAYERS] =0;
new TempoAutoReparar;
new Float:Speedo_HP;
for(new i = 0; i < MAX_PLAYERS; i++)
{
new vehicle = GetPlayerVehicleID(i);
GetVehicleHealth(vehicle, Speedo_HP);
if (Speedo_HP <= 95)
{
if(AutorepararLIG[playerid] == 1)
}
AutorepararLIG[playerid] =1;
TempoAutoReparar = SetTimerEx("AutoReparar", 200, true, "i", playerid);
}
forward AutoReparar(playerid);
public AutoReparar(playerid)
{
RepairVehicle(GetPlayerVehicleID(playerid));
return 1;
}
|
pawn Код:
Deve funcionar sem precisar de timer nem nada. Somente isso. |
|
Nesse cуdigo, quando o veнculo й danificado, ele й reparado caso a lataria, apуs o dano, seja inferior a 95.0.
|
|
Mais isso ira fazer que acontece com todos os veнculos do servidor, eu sу quero que aconteзa com os veнculos blindados.
|
public OnVehicleDamageStatusUpdate(vehicleid, playerid) {
if(blindado[vehicleid]) { // alterar de acordo com seu script
static Float:health;
GetVehicleHealth(vehicleid, health);
if(health < 95.0) {
RepairVehicle(vehicleid);
}
}
return true;
}