[Ajuda] Lataria if (Speedo_HP <= 95)
#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 код:
    new Float:Speedo_HP;
    for(new 
0MAX_PLAYERSi++)
    {
    new 
vehicle GetPlayerVehicleID(i);
    
GetVehicleHealth(vehicleSpeedo_HP);
    if (
Speedo_HP <= 95)
    {
        
TempoReparar[i] = SetTimerEx("AutoReparar"10000"i"i);
       }
       } 

Final do GM


PHP код:
public AutoReparar(vehicleid,playerid)
{
    
RepairVehicle(GetPlayerVehicleID(playerid));
}
public 
OnVehicleDamageStatusUpdate(vehicleidplayerid)
{
    if(
Vuln[vehicleid] >= 1)
    {
        
Vuln[vehicleid] --;
        
TempoReparar[playerid] = SetTimerEx("AutoReparar",1000,0,"i",playerid);
    }
    return 
1;

Reply
#2

Quote:
Originally Posted by petrick_schoba
Посмотреть сообщение
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 код:
    new Float:Speedo_HP;
    for(new 
0MAX_PLAYERSi++)
    {
    new 
vehicle GetPlayerVehicleID(i);
    
GetVehicleHealth(vehicleSpeedo_HP);
    if (
Speedo_HP <= 95)
    {
        
TempoReparar[i] = SetTimerEx("AutoReparar"10000"i"i);
       }
       } 

Final do GM


PHP код:
public AutoReparar(vehicleid,playerid)
{
    
RepairVehicle(GetPlayerVehicleID(playerid));
}
public 
OnVehicleDamageStatusUpdate(vehicleidplayerid)
{
    if(
Vuln[vehicleid] >= 1)
    {
        
Vuln[vehicleid] --;
        
TempoReparar[playerid] = SetTimerEx("AutoReparar",1000,0,"i",playerid);
    }
    return 
1;

Tente isso na public

Do auto reparar

Код:
forward AutoReparar(playerid);
public AutoReparar(playerid) {
RepairVehicle(GetPlayerVehicleID(playerid));
return 1;
}
Reply
#3

Faz ele sem timer poem sу para puxar a funзгo
Reply
#4

Quote:
Originally Posted by willttoonn
Посмотреть сообщение
Faz ele sem timer poem sу para puxar a funзгo
Se eu fazer ele sem settime ele ira reparar o veнculo sу 1 vez o melhor й que ele atualiza a cada 1 segundo
Reply
#5

pawn Код:
public OnVehicleDamageStatusUpdate(vehicleid, playerid) {

    static Float:health;
    GetVehicleHealth(vehicleid, health);
   
    if(floatcmp(health, 95.0) == -1) {
        RepairVehicle(vehicleid);
    }
   
    return true;
}

Deve funcionar sem precisar de timer nem nada. Somente isso.
Reply
#6

Tente isso aqui nao sei se ira dar Certo

Код:
// 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;
}
Reply
#7

Quote:
Originally Posted by zPain
Посмотреть сообщение
pawn Код:
public OnVehicleDamageStatusUpdate(vehicleid, playerid) {

    static Float:health;
    GetVehicleHealth(vehicleid, health);
   
    if(floatcmp(health, 95.0) == -1) {
        RepairVehicle(vehicleid);
    }
   
    return true;
}

Deve funcionar sem precisar de timer nem nada. Somente isso.
Cara com timmer й melhor pro meu sistema.
Reply
#8

Quote:
Originally Posted by petrick_schoba
Посмотреть сообщение
Cara com timmer й melhor pro meu sistema.
Nesse cуdigo, quando o veнculo й danificado, ele й reparado caso a lataria, apуs o dano, seja inferior a 95.0.
Reply
#9

Quote:
Originally Posted by zPain
Посмотреть сообщение
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.
Reply
#10

Quote:
Originally Posted by petrick_schoba
Посмотреть сообщение
Mais isso ira fazer que acontece com todos os veнculos do servidor, eu sу quero que aconteзa com os veнculos blindados.
E qual o mistйrio?


pawn Код:
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;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)