NybikSry
Умник
Хочу в код вставить такую функцию, которая не даст админу кикнуть админа и отправит в чат красное сообщение "Админ %s[id%d] попытался кикнуть админа %s[id%d]"
Я попробовал сделать сам, но выбило эти ошибки:
Вот код исходный:
Вот код, где я попробовал вставить самостоятельно через format:
---------- Сообщение добавлено в 18:22 ---------- Предыдущее сообщение добавлено в 17:51 ----------
Разобрался. Закрываю.
Я попробовал сделать сам, но выбило эти ошибки:
Код:
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 ----------
Разобрался. Закрываю.
