27.01.2011, 12:26
This is the callback (which I'd like to use just like the PlayerToPoint function) which doesn't work:
It should check if there is a car near the player, but even if I am on top of a car it says the else thing.
At the return 1; it should continue with the command:
But it doesn't
Код:
public IsVehicleInRadius(playerid)
{
for(new c=0;c<MAX_VEHICLES;c++)
{
new Float:x, Float:y, Float:z;
GetVehiclePos(c,x,y,z);
if(PlayerToPoint(5.0, playerid, x, y, z))
{
return 1;
}
else
{
SendClientMessage(playerid, COLOR_YELLOW, "You're not at your car!");
return 1;
}
}
return 1;
}
At the return 1; it should continue with the command:
Код:
else if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
{
GetVehicleParamsEx(carid,engine,lights,alarm,doors,bonnet,boot,objective);
if(doors == 0)
{
if(IsVehicleInRadius(playerid))
{
if(PlayerInfo[playerid][pCar] == DynamicCars[VehicleLockedPlayer[playerid]][CarID])
{
if(PlayerInfo[playerid][pSex] == 1)
{
PlayerActionMessage(playerid,15.0,"has just unlocked his vehicle.");
}
else
{
PlayerActionMessage(playerid,15.0,"has just unlocked her vehicle.");
}
SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"[INFO:] Vehicle Unlocked.");
SetVehicleParamsEx(carid,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF);
}
else
{
SendClientMessage(playerid, COLOR_RED, "You do not have the keys for this vehicle!");
}
}
}


