In Range Respawn [ Help Pleas] -
EasyMan - 09.11.2012
Hello, can eny one help me with that code ?
Код:
if(strcmp(cmdtext, "/rcars", true) == 0)
{
new currentveh;
currentveh = GetPlayerVehicleID(playerid);
new Float:vehx, Float:vehy, Float:vehz;
GetVehiclePos(currentveh, vehx, vehy, vehz);
if(IsPlayerInRangeOfPoint(playerid, 20.0, vehx, vehy, vehz))
{
new vehicleid = GetPlayerVehicleID(playerid);
SetVehicleHealth(vehicleid, 1000.0);
SetVehicleToRespawn(vehicleid);
}
return 1;
}
I can't find out, how to make a command, to respawn car, in range of player .
Re: In Range Respawn [ Help Pleas] -
Camorra - 09.11.2012
If the cmd not working just place it into the code " GetPlayerNearestVehicle "
pawn Код:
if(strcmp(cmdtext, "/rcars", true) == 0)
{
new currentveh;
currentveh = GetPlayerVehicleID(playerid);
new carid = GetPlayerNearestVehicle(playerid);
SetVehicleToRespawn(carid);
new Float:vehx, Float:vehy, Float:vehz;
GetVehiclePos(currentveh, vehx, vehy, vehz);
if(IsPlayerInRangeOfPoint(playerid, 20.0, vehx, vehy, vehz))
{
new vehicleid = GetPlayerVehicleID(playerid);
SetVehicleHealth(vehicleid, 1000.0);
SetVehicleToRespawn(vehicleid);
}
return 1;
}
Add this code some where into script.
pawn Код:
stock GetPlayerNearestVehicle(playerid)
{
new closest = -1;
if(IsPlayerInAnyVehicle(playerid)) return GetPlayerVehicleID(playerid);
for(new i = 0; i < MAX_VEHICLES; i++)
{
if(GetDistanceFromPlayerToVehicle(playerid, i) < GetDistanceFromPlayerToVehicle(playerid, closest) && closest != -1 && IsVehicleConnected(i))
{
closest = i;
}
if(closest == -1 && IsVehicleConnected(i)) closest = i;
}
return closest;
}
stock GetDistanceFromPlayerToVehicle(playerid, vehicleid2)
{
new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
new Float:tmpdis;
GetPlayerPos(playerid,x1,y1,z1);
GetVehiclePos(vehicleid2,x2,y2,z2);
tmpdis = floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
return floatround(tmpdis);
}
stock IsVehicleConnected(vehicleid)
{
new Float:x1,Float:y1,Float:z1;
GetVehiclePos(vehicleid,x1,y1,z1);
if(x1==0.0 && y1==0.0 && z1==0.0)
{
return 0;
}
return 1;
}
Re: In Range Respawn [ Help Pleas] -
EasyMan - 09.11.2012
Thank you dude, that is f**king amazing, added rep for you!
Re: In Range Respawn [ Help Pleas] -
Camorra - 10.11.2012
Quote:
Originally Posted by EasyMan
Thank you dude, that is f**king amazing, added rep for you!
|
Your welcome ! Anymore help you can feel free to PM me !