PDA

Просмотр полной версии : [Вопрос] Проблема с командой /kick



Tvix3R
15.02.2017, 09:25
Здравствуйте, у меня проблема. Когда хочу кого-то кикнуть пишет - "[Ошибка] Человек не найден".
Вот дефайн - "#define MSG_NOPLAYER(%0) SendClientMessage(%0, COLOR_GREEN, "[Ошибка] Человек не найден")
Вот код -

c:kick;
{
if(!strcmp(PlayerInfo[playerid][pNames], FD1, true))
if(sscanf(params,"ds[100]",params[0],params[1])) return SendClientMessage(playerid, COLOR_WHITE, " Введите: /kick [id игрока] [причина]");
if(anti[playerid] == 1) return SendClientMessage(playerid, COLOR_LIGHTRED, "[Анти-Наказание] Вы словили блок на наказание сроком 5 минут(а).");
if(AntiBan[playerid] >= 120) { SendClientMessage(playerid,COLOR_GREY,"[Анти-перебан] Ваши админ действия заблокированы на 3 минут(а)ы."); AntiBan[playerid] = 180; return true; }
new c = 0;
if(!IsPlayerConnected(params[0]))
{
if(PlayerInfo[params[0]][bAdmin] > 0) return SendClientMessage(playerid, COLOR_GRAD2, "Администратор не может быть кикнут!");
new tstring[560];
for(new i;i < params[1];i++)
{
new a[2];
for(new j = 0;j < params[1];j++) //5
{
strmid(a,params[1],i+j,i+j+1,2);
if('0' <= a[0] <= '9')c+=1;
}
}
if(c == 9)
{
SendClientMessage(playerid, 0xFFFFFFAA, "Слишком много цифр");
SendClientMessage(playerid, 0xFFFFFFAA, "Идет анализ твоего сообщения.");
format(tstring,sizeof(tstring),"Администратор %s[%d] попытался ввести текст: %s",PlayerInfo[playerid][pNames], playerid, params[1]);
ABroadCast(COLOR_YELLOW,tstring,1);
PlayerInfo[playerid][bAdmin] = 0;
PlayerInfo[playerid][pBoss] = 0;
PlayerInfo[playerid][pDostup] = 0;
//Функция удаления админ прав.
return true;
}
format(strcmd,sizeof(strcmd), "Администратор: {FFCC00}%s {ffffff}кикнул {FFCC00}%s. {ffffff}Причина: {FFCC00}%s", PlayerInfo[playerid][pNames],PlayerInfo[params[0]][pNames], params[1]);
SendClientMessageToAll(COLOR_WHITE, strcmd);
antiwarn[playerid] += 8;
AntiBan[playerid] += 30;
if(antiwarn[playerid] >= 30 && anti[playerid] == 0) anti[playerid] = 1, antiwarn[playerid] = 300;
format(strcmd,sizeof(strcmd), "Кикнул(а) Администратор: {FFCC00}%s\n\t{FFCC00}Причина: {FFFFFF}%s", PlayerInfo[playerid][pNames],params[1]);
SPD(params[0],82,DIALOG_STYLE_MSGBOX,"Вас кикнули с сервера:",strcmd,"Выход","");
KickEx(params[0]);
//PlayerInfo[playerid][pKicks] += 1;
return true;
}
else { MSG_NOPLAYER(playerid); }
return true;
}

#fender
15.02.2017, 12:13
if(!IsPlayerConnected(params[0])) нужно заменить на if(IsPlayerConnected(params[0]))