Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

/kick

Статус
В этой теме нельзя размещать новые ответы.

NybikSry

Умник
Хочу в код вставить такую функцию, которая не даст админу кикнуть админа и отправит в чат красное сообщение "Админ %s[id%d] попытался кикнуть админа %s[id%d]"
Я попробовал сделать сам, но выбило эти ошибки:
Код:
C:\Users\Maxim\Desktop\NORTHSIDE\gamemodes\motiongm.pwn(17303) : warning 217: loose indentation
C:\Users\Maxim\Desktop\NORTHSIDE\gamemodes\motiongm.pwn(17304) : error 029: invalid expression, assumed zero
C:\Users\Maxim\Desktop\NORTHSIDE\gamemodes\motiongm.pwn(17304) : error 001: expected token: ";", but found "if"
C:\Users\Maxim\Desktop\NORTHSIDE\gamemodes\motiongm.pwn(17304) : warning 217: loose indentation
Вот код исходный:
PHP:
CMD:kick(playerid, params[])
{
	if(PI[playerid][pAdmin] < ADM_SUPER_MODER) return 1;
	else if(AdminLogged[playerid] == false) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
	else if(sscanf(params, "uS()[32]", params[0], params[1])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /kick [id игрока] [причина]");
	else if(!IsPlayerConnected(params[0]) || params[0] == INVALID_PLAYER_ID || params[0] == playerid) return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotOnline);
   	else if(PlayerLogged[params[0]] == false) return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotAuthorized);
    else if(PI[playerid][pAdmin] <= PI[params[0]][pAdmin]) return AttemptRemoveAdmin(playerid);
    else if(IsIpFound(params[1]) || CheckString(params[1])) return AdminAntisliv(playerid, params[1]);
    new string[128];
	if(strlen(params[1])) format(string, sizeof(string), "Администратор %s кикнул игрока %s. Причина: %s", GetName(playerid), GetName(params[0]), params[1]);
	else format(string, sizeof(string), "Администратор %s кикнул игрока %s.", GetName(playerid), GetName(params[0]));
	SendAdminMessageToAll(COLOR_RED, string, params[0]);
	SendLog("Kick",string);
	Kick(params[0]);
	return 1;
}

Вот код, где я попробовал вставить самостоятельно через format:
PHP:
CMD:kick(playerid, params[])
{
	if(PI[playerid][pAdmin] < ADM_SUPER_MODER) return 1;
	else if(AdminLogged[playerid] == false) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
	else if(sscanf(params, "uS()[32]", params[0], params[1])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /kick [id игрока] [причина]");
	else if(!IsPlayerConnected(params[0]) || params[0] == INVALID_PLAYER_ID || params[0] == playerid) return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotOnline);
   	else if(PlayerLogged[params[0]] == false) return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotAuthorized);
   	else if(PI[playerid][pAdmin] > ADM_MODER)
   		{
   			new string[128];
			format(string, sizeof(string), "[A] Администратор %s[%d] попытался кикнуть администратора %s", GetName(playerid), playerid, params[0]);
			SendAdminMessage(COLOR_RED, string);
   		}return
    else if(PI[playerid][pAdmin] <= PI[params[0]][pAdmin]) return AttemptRemoveAdmin(playerid);
    else if(IsIpFound(params[1]) || CheckString(params[1])) return AdminAntisliv(playerid, params[1]);
    new string[128];
	if(strlen(params[1])) format(string, sizeof(string), "Администратор %s кикнул игрока %s. Причина: %s", GetName(playerid), GetName(params[0]), params[1]);
	else format(string, sizeof(string), "Администратор %s кикнул игрока %s.", GetName(playerid), GetName(params[0]));
	SendAdminMessageToAll(COLOR_RED, string, params[0]);
	SendLog("Kick",string);
	Kick(params[0]);
	return 1;
}


---------- Сообщение добавлено в 18:22 ---------- Предыдущее сообщение добавлено в 17:51 ----------

Разобрался. Закрываю.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу