Добро пожаловать!

Зарегистрировавшись у нас, вы сможете обсуждать, делиться и отправлять личные сообщения другим участникам нашего сообщества.

Зарегистрироваться!
  • Если Вы желаете помогать развитию проекта, готовы заполнять раздел(-ы) и подсказывать другим пользователям на портале, есть возможность попасть в команду редакторов. Для этого следует обратиться в техническую поддержку
Статус
В этой теме нельзя размещать новые ответы.
Active
Активный
Регистрация
30 Авг 2023
Сообщения
142
Когда я поставил человека на ГА, а это 9 уровень админки, а стою на 11 и он может меня просто снять, а 10 уровень админки не может
Что делать?
 
Решение
C:
c:makeadmin;
{
    if(pData[playerid][pAdmin] < 9 || !GetPVarInt(playerid,"AdminLogin")) return true;
    if(sscanf(params,"dd",params[0],params[1])) return SendClientMessage(playerid,0xFFa500AA, "Используйте: /makeadmin [id] [уровень]");
    if(params[1] > 8 || params[1] < 0) return SCM(playerid, CR, "Значение не может быть меньше 0 и больше 8");
    if(pData[playerid][pAdmin] <= pData[params[0]][pAdmin]) return SCM(playerid, CR, "Вы не можете изменить уровень администратору, у которого уровень выше, чем ваш!");
    if(!pData[params[0]][pMysqlID] || !IsPlayerConnected(params[0])) return SCM(playerid, CR, "Данный игрок не авторизован.");
    if(params[1] == 0)
    {
        pData[params[0]][pAdmin] = 0...
Создатель WayDev
Команда форума
Администратор
Регистрация
13 Мар 2022
Сообщения
881
C:
CMD:makeadmin(playerid, params[]) {
    if(sscanf(params, "ud", params[0], params[1]))
        return SendClientMessage(playerid, -1, "Введите: /makeadmin [playerid] [level]");
    
    if(PlayerInfo[playerid][pAdmin] <= PlayerInfo[params[0]][pAdmin])
        return SendClientMessage(playerid, -1, "Вы не можете изменить уровень администратору, у которого уровень выше, чем ваш!");
    
    ...
    return 1;
}
 
Active
Активный
Регистрация
30 Авг 2023
Сообщения
142
C:
c:makeadmin;
{
    if(pData[playerid][pAdmin] < 9 || !GetPVarInt(playerid,"AdminLogin")) return true;
    if(sscanf(params,"dd",params[0],params[1])) return SendClientMessage(playerid,0xFFa500AA, "Используйте: /makeadmin [id] [уровень]");
    if(params[1] > 8 || params[1] < 0) return SCM(playerid, CR, "Значение не может быть меньше 0 и больше 8");
    if(!pData[params[0]][pMysqlID] || !IsPlayerConnected(params[0])) return SCM(playerid, CR, "Данный игрок не авторизован.");
    if(params[1] == 0)
    {
        pData[params[0]][pAdmin] = 0;
        pData[params[0]][pAdmprefix] = 0;
        SFCM(params[0], CR, "Администратор {FFFFFF}%s {FF8A30}аннулировал вам полномочия администратора",pData[playerid][pNickname]);
        SFCM(playerid, CR, "Аннулирование прав администратора у игрока {FFFFFF}%s {FF8A30}прошло успешно", pData[params[0]][pNickname]);
        UpdatePlayerData(params[0], "admin", pData[params[0]][pAdmin]);
        UpdatePlayerData(params[0], "admprefix", pData[params[0]][pAdmprefix]);
        return true;
          }
    new query[128];
    pData[params[0]][pAdmin] = params[1];
    pData[params[0]][pAdmprefix] = 0;
    UpdatePlayerData(params[0], "admprefix", pData[params[0]][pAdmprefix]);
    UpdatePlayerData(params[0], "admin", pData[params[0]][pAdmin]);
    SFCM(params[0], CGREEN, "Администратор {FFFFFF}%s {33AA33}установил вам новый уровень администратора", pData[playerid][pNickname]);
    ShowPlayerDialog(params[0],dAPassNew,DIALOG_STYLE_INPUT,"{f4b042}Настройки администратора","{FFFFFF}Введите Ваш будущий админ пароль.\nОн должен состоять мин. - 5 сим. и макс. - 10 сим.\nЖелательно в нём должны присутствовать буквы и цифры.","Далее","");
    SFCM(playerid, CGREEN, "Вы успешно выдали {FFFFFF}%s {33AA33}права администратора {FFFFFF}%d {33AA33}уровня", pData[params[0]][pNickname],params[1]);
    mysql_format(MySQLGo, query,sizeof(query),"INSERT INTO `admin` (`Name`,`level`,`Postavil`) VALUES ('%s','%d','%s')", pData[params[0]][pNickname],params[1],pData[playerid][pNickname]);
    mysql_query(MySQLGo, query);
    return true;
  
}
 
Последнее редактирование модератором:
Создатель WayDev
Команда форума
Администратор
Регистрация
13 Мар 2022
Сообщения
881
C:
c:makeadmin;
{
    if(pData[playerid][pAdmin] < 9 || !GetPVarInt(playerid,"AdminLogin")) return true;
    if(sscanf(params,"dd",params[0],params[1])) return SendClientMessage(playerid,0xFFa500AA, "Используйте: /makeadmin [id] [уровень]");
    if(params[1] > 8 || params[1] < 0) return SCM(playerid, CR, "Значение не может быть меньше 0 и больше 8");
    if(pData[playerid][pAdmin] <= pData[params[0]][pAdmin]) return SCM(playerid, CR, "Вы не можете изменить уровень администратору, у которого уровень выше, чем ваш!");
    if(!pData[params[0]][pMysqlID] || !IsPlayerConnected(params[0])) return SCM(playerid, CR, "Данный игрок не авторизован.");
    if(params[1] == 0)
    {
        pData[params[0]][pAdmin] = 0;
        pData[params[0]][pAdmprefix] = 0;
        SFCM(params[0], CR, "Администратор {FFFFFF}%s {FF8A30}аннулировал вам полномочия администратора",pData[playerid][pNickname]);
        SFCM(playerid, CR, "Аннулирование прав администратора у игрока {FFFFFF}%s {FF8A30}прошло успешно", pData[params[0]][pNickname]);
        UpdatePlayerData(params[0], "admin", pData[params[0]][pAdmin]);
        UpdatePlayerData(params[0], "admprefix", pData[params[0]][pAdmprefix]);
        return true;
          }
    new query[128];
    pData[params[0]][pAdmin] = params[1];
    pData[params[0]][pAdmprefix] = 0;
    UpdatePlayerData(params[0], "admprefix", pData[params[0]][pAdmprefix]);
    UpdatePlayerData(params[0], "admin", pData[params[0]][pAdmin]);
    SFCM(params[0], CGREEN, "Администратор {FFFFFF}%s {33AA33}установил вам новый уровень администратора", pData[playerid][pNickname]);
    ShowPlayerDialog(params[0],dAPassNew,DIALOG_STYLE_INPUT,"{f4b042}Настройки администратора","{FFFFFF}Введите Ваш будущий админ пароль.\nОн должен состоять мин. - 5 сим. и макс. - 10 сим.\nЖелательно в нём должны присутствовать буквы и цифры.","Далее","");
    SFCM(playerid, CGREEN, "Вы успешно выдали {FFFFFF}%s {33AA33}права администратора {FFFFFF}%d {33AA33}уровня", pData[params[0]][pNickname],params[1]);
    mysql_format(MySQLGo, query,sizeof(query),"INSERT INTO `admin` (`Name`,`level`,`Postavil`) VALUES ('%s','%d','%s')", pData[params[0]][pNickname],params[1],pData[playerid][pNickname]);
    mysql_query(MySQLGo, query);
    return true;
 
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху