PDA

Просмотр полной версии : [Вопрос] Спаун транспорта по заданному радиусу



Kovshevoy
08.01.2018, 20:57
Здравствуйте, вырисовалась такая проблема, что не работает команда. Изначально, команда была на стандартном процессоре, после перевел на DC_CMD.
Вот только не разобрался с new Float:pos = floatstr(tmpp). Не подскажите, как довести это до конца?
Вот команда на DC_CMD

CMD:spveh(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >=4)
{
new cars = 0;
if(sscanf(params, "d", cars)) return SendClientMessage(playerid,COLOR_ORANGERED,"/spveh [Радиус]");
new Float:pos = floatstr(tmpp),Float:car_x,Float:car_y,Float:car_z;
for(new cars=0;cars<600;cars++)
{
if(GetVehicleModel(cars) > 399)
{
GetVehiclePos(cars,car_x,car_y,car_z);
if(IsPlayerInRangeOfPoint(playerid,pos,car_x,car_y,car_z))
{
SetVehicleToRespawn(cars);
}
}
}
}
return 1;
}

Оригинал команды на стандарте:

CMD:spveh(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >=4)
{
tmp = strtok(cmd,idx);
if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_ORANGERED,"/spveh [Радиус]");
new Float:pos = floatstr(tmp),Float:car_x,Float:car_y,Float:car_z;
for(new cars=0;cars<600;cars++)
{
if(GetVehicleModel(cars) > 399)
{
GetVehiclePos(cars,car_x,car_y,car_z);
if(IsPlayerInRangeOfPoint(playerid,pos,car_x,car_y,car_z))
{
if(cars != NPCTram[0] && cars != NPCTram[1] && cars != NPCTram[2] && cars != NPCTram[3])
{
SetVehicleToRespawn(cars);
}
}
}
}
}
return 1;
}

DeimoS
08.01.2018, 21:08
CMD:spveh(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >=4)
{
new Float:radius;
if(sscanf(params, "f", radius))
return SendClientMessage(playerid,COLOR_ORANGERED,"/spveh [Радиус]");
new Float:car_x,
Float:car_y,
Float:car_z;
for(new cars=0; cars<600;cars++)
{
if(GetVehiclePos(cars,car_x,car_y,car_z))
{
if(IsPlayerInRangeOfPoint(playerid,radius,car_x,car_y,car_z))
{
SetVehicleToRespawn(cars);
}
}
}
}
return 1;
}

Kovshevoy
08.01.2018, 21:11
CMD:spveh(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >=4)
{
new Float:radius;
if(sscanf(params, "f", radius))
return SendClientMessage(playerid,COLOR_ORANGERED,"/spveh [Радиус]");
new Float:car_x,
Float:car_y,
Float:car_z;
for(new cars=0; cars<600;cars++)
{
if(GetVehiclePos(cars,car_x,car_y,car_z))
{
if(IsPlayerInRangeOfPoint(playerid,radius,car_x,car_y,car_z))
{
SetVehicleToRespawn(cars);
}
}
}
}
return 1;
}

Благодарю