[Problema] IsPlayerInAnyVehicle
#1

Hola gente de Forum.sa-mp, hago este topic para ver si me pueden ayudar, tengo un problema, el cual es que a todos los comandos que son para los autos y les puse la funciуn IsPlayerInAnyVehicle al testear IG y usar un comando me dice que no estoy en el vehнculo, no sй por quй serб, necesito su ayuda.

Aquн uno de los comandos:

pawn Код:
CMD:repararveh(playerid,params[])
{
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_ROJO, "No estбs en un vehiculo");
new Float:health;
new veh = GetPlayerVehicleID(playerid);
GetVehicleHealth(veh, health);
if(health > 500) return SendClientMessage(playerid, COLOR_ROJO, "El auto no necesita reparaciуn.");
SetVehicleHealth(veh, 100);
RepairVehicle(playerid);
GameTextForPlayer(playerid, "~r~Vehiculo reparado", 5000, 3);
return 1;
}
Saludos y de antemano muchнsimas gracias.
Reply
#2

Eso detectarнa si el jugador estб en un vehнculo...

Es asн:


pawn Код:
if(!IsPlayerInAnyVehicle(playerid)) // ...
El operador '!' detecta si la condiciуn no se cumpliу.
Reply
#3

Quote:
Originally Posted by EnzoMetlc
Посмотреть сообщение
Eso detectarнa si el jugador estб en un vehнculo...

Es asн:


pawn Код:
if(!IsPlayerInAnyVehicle(playerid)) // ...
El operador '!' detecta si la condiciуn no se cumpliу.
Muchнsimas gracias Enzo , me sirviу, otra cosa, al testear el comando que estб en el topic (/repararveh) cuando lo ejecuto al cmd se me quema el motor del auto O.o їpor quй es eso? saludos y muchнsimas gracias.
Reply
#4

pawn Код:
CMD:repararveh(playerid,params[])
{
    if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_ROJO, "No estбs en un vehiculo");
    else
    {
        new Float:health = GetVehicleHealth(GetPlayerVehicleID(playerid), health);
        if(health > 500) return SendClientMessage(playerid, COLOR_ROJO, "El auto no necesita reparaciуn.");
        SetVehicleHealth(GetPlayerVehicleID(playerid), 100.0);
        //RepairVehicle(playerid); // 'playerid'? LoL.
        RepairVehicle(GetPlayerVehicleID(playerid));
        GameTextForPlayer(playerid, "~r~Vehiculo reparado", 5000, 3);
    }
    return 1;
}
Reply
#5

pawn Код:
SetVehicleHealth(GetPlayerVehicleID(playerid), 100.0);
Le estбn poniendo la vida al vehнculo a 100.0 (De 1000.0), que es muy bajo, causando que йste se prenda en llamas.

Lo correcto serнa:

pawn Код:
SetVehicleHealth(GetPlayerVehicleID(playerid), 1000.0);
650 para arriba = Vehнculo en buenas condiciones.
650-550 = Vehнculo con humo blanco.
550-390 = Vehнculo con humo gris.
390-250 = Vehнculo con humo negro.
250 para abajo = Vehнculo en llamas.

Fuente.


pawn Код:
CMD:repararveh(playerid,params[])
{
    if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_ROJO, "No estбs en un vehiculo");
   
    new Float:health = GetVehicleHealth(GetPlayerVehicleID(playerid), health);
   
    if(health > 500) return SendClientMessage(playerid, COLOR_ROJO, "El auto no necesita reparaciуn.");
   
    SetVehicleHealth(GetPlayerVehicleID(playerid), 1000.0);
    RepairVehicle(GetPlayerVehicleID(playerid));
    GameTextForPlayer(playerid, "~r~Vehiculo reparado", 5000, 3);
   
    return 1;
}
Reply
#6

Ahh, ahora entendн un poquito mбs, muchнsimas gracias
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)