Просмотр полной версии : [Вопрос] /delcarall
Нужна команда по удалению транспорта.
Пример: Администратор удалил весь не занятый т\с игроками.
Или хотя бы рабочую защиту от флуда транспортом.
CMD:delcarall(playerid, params[]) // if(strcmp(cmdtext, "/delcarall", true, 10) == 0)
{
new
str[71],
occupied[(MAX_VEHICLES + 1) char],
vehicleid,
i = GetMaxPlayers();
do
{
--i;
if(!IsPlayerConnected(i) || (vehicleid = GetPlayerVehicleID(i)) == 0)
continue;
occupied{vehicleid} = 1;
if((vehicleid = GetVehicleTrailer(vehicleid)) == 0)
continue;
occupied{vehicleid} = 1;
}
while(i);
i = MAX_VEHICLES - 1;
do
if(occupied{i} == 0)
DestroyVehicle(i);
while(--i);
GetPlayerName(playerid, str, sizeof(str));
format(str, 71, "AdmCMD: %s (%i) удалил весь незанятый игроками транспорт.", str, playerid);
SendClientMessageToAll(0xFF0000FF, str);
return 1;
}
Вы точно уверены, что хотите удалять, может возвращать на место спавна?
CMD:delcarall(playerid, params[]) // if(strcmp(cmdtext, "/delcarall", true, 10) == 0)
{
new
str[71],
occupied[(MAX_VEHICLES + 1) char],
vehicleid,
i = GetMaxPlayers();
do
{
--i;
if(!IsPlayerConnected(i) || (vehicleid = GetPlayerVehicleID(i)) == 0)
continue;
occupied{vehicleid} = 1;
if((vehicleid = GetVehicleTrailer(vehicleid)) == 0)
continue;
occupied{vehicleid} = 1;
}
while(i);
i = MAX_VEHICLES - 1;
do
if(occupied{i} == 0)
DestroyVehicle(i);
while(--i);
GetPlayerName(playerid, str, sizeof(str));
format(str, 71, "AdmCMD: %s (%i) удалил весь незанятый игроками транспорт.", str, playerid);
SendClientMessageToAll(0xFF0000FF, str);
return 1;
}
Вы точно уверены, что хотите удалять, может возвращать на место спавна?
Спавн я пробовал т.е. при спавне транспорта, они всё равно остаются, там где игрок с читами, нафлудил транспортом.
Попробуйте это (http://pro-pawn.ru/showthread.php?9177).
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot