Windows_8
Умник
При назначении можно выдать любой LVL админки, а не с 1 по 5
Сначала выдает текст в чате "Вы назначены на 100 уровень (пример)"
А ниже строчка "Разрешено не больше 5"
В БД прописывается 100 LVL
Сначала выдает текст в чате "Вы назначены на 100 уровень (пример)"
А ниже строчка "Разрешено не больше 5"
В БД прописывается 100 LVL
CSS:
CMD:setadmin(playerid, params[])
{
if(pInfo[playerid][pAdmin] < 6) return true;
if(sscanf(params, "dd", params[0], params[1])) return SendClientMessage(playerid, -1, "/setadmin [ID] [уровень]");
if(params[0] == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Игрок не найден");
if(params[1] < 0 || params[1] > 5) SendClientMessage(playerid, -1, "Уровень администратора может быть от 0 до 5");
if(IsPlayerNPC(params[0])) return SendClientMessage(playerid, -1, "Это NPC");
new string[256];
if(params[1] >= 1 && pInfo[params[0]][pAdmin] == 0)
{
pInfo[params[0]][pAdmin] = params[1];
mysql_strings = "";
mysql_format(connect_mysql, mysql_strings, sizeof(mysql_strings), "INSERT INTO `admins` (`name`, `ID`, `level`, `put`) VALUES ('%e','%i', '%i', '%e')",
pInfo[params[0]][pName], pInfo[params[0]][pID], params[1], pInfo[playerid][pName]);
mysql_pquery(connect_mysql, mysql_strings, "", "");
ShowPlayerDialog(params[0], 6, DIALOG_STYLE_INPUT, "Пароль администратора", "Придумайте пароль администратора.","Принять","");
return true;
}
else if(params[1] >= 1 && pInfo[params[0]][pAdmin] != 0)
{
pInfo[params[0]][pAdmin] = params[1];
mysql_strings = "";
mysql_format(connect_mysql, mysql_strings, sizeof(mysql_strings), "UPDATE `admins` SET `level` = '%d' WHERE `ID` = '%d' LIMIT 1",params[1], pInfo[params[0]][pID]);
mysql_pquery(connect_mysql, mysql_strings, "", "");
format(string, sizeof(string), "%s[%d] изменил ваши админ полномочия на %d уровень", pInfo[playerid][pName], playerid, params[1]);
SendClientMessage(params[0], -1, string);
}
else if(params[1] == 0)
{
if(pInfo[params[0]][pAdmin] == 0) return SendClientMessage(playerid, -1, "Игрок не администратор");
pInfo[params[0]][pAdmin] = 0;
mysql_strings ="";
new idx[100]; format(idx, sizeof(idx), "Вы были сняты с поста администратора.\nСнял: %s",pInfo[playerid][pName]);
SendClientMessage(params[0], -1, idx);
ShowPlayerDialog(params[0], 0, DIALOG_STYLE_MSGBOX, "Панель администратора", idx,"Принять","");
mysql_format(connect_mysql, mysql_strings, sizeof mysql_strings, "DELETE FROM `admins` WHERE `ID` = '%i' LIMIT 1", pInfo[params[0]][pID]);
mysql_pquery(connect_mysql, mysql_strings, "", "");
return Kick(params[0]);
}
return true;
}
