[cmd] <Выговор администрации> /awarn - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: [CM]OlegEhtler, Getbackthere, Phoenixxx_Czar  
[cmd] <Выговор администрации> /awarn
Chester_Master Дата: Воскресенье, 25.05.2014, 16:18 | Сообщение # 1
Бывалый
Сообщений: 339
Статус: Offline
Всем привет, выкладываю лично свою команду /awarn, возможность Основателю / гл.администратору дать выговор администратору.

И так, ничего сложного нету, начнем.


В pInfoвставляем:


Код
pAWarn,


В publicOnPlayerConnect(playerid)


Код
PlayerInfo[playerid][pAWarn] = 0;


В public OnPlayerRegister(playerid, password[])

Код
ini_setInteger(File,"AWarn",PlayerInfo[playerid][pAWarn]);


[c]В public OnPlayerUpdateRL(playerid)


Код
ini_setInteger(File,"AWarn",PlayerInfo[playerid][pAWarn]);


В public OnPlayerLogin(playerid,password[])


Код
ini_getInteger(File,"AWarn",PlayerInfo[playerid][pAWarn]);


В public OnPlayerCommandText(playerid, cmdtext[])


Код

else  if(strcmp(cmd, "/awarn", true) == 0)
      {
         if (PlayerInfo[playerid][pAdmin] == 10)
       {
        tmp = strtok(cmdtext, idx);
        if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /awarn [id] [причина]");
                 giveplayerid = ReturnUser(tmp);
                 if(PlayerInfo[giveplayerid][pAdmin] == 10) return SCM(playerid, COLOR_GRAD2, "Запрещено");
                 if(PlayerInfo[giveplayerid][pAdmin] == 0) return SendClientMessage(playerid, COLOR_GRAD2, "Он не модератор!");
        if(PlayerInfo[playerid][pAdmin] == 10)
        {
         if(IsPlayerConnected(giveplayerid))
         {
          if(giveplayerid != INVALID_PLAYER_ID)
          {
           GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
           GetPlayerName(playerid, sendername, sizeof(sendername));
           new length = strlen(cmdtext);
           while ((idx < length) && (cmdtext[idx] <= ' '))
           {
            idx++;
           }
           new offset = idx;
           new result[64];
           while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
           {
            result[idx - offset] = cmdtext[idx];
            idx++;
           }
           result[idx - offset] = EOS;
           if(!strlen(result)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /awarn [id] [причина]");
           PlayerInfo[giveplayerid][pAWarn] += 1;
           if(PlayerInfo[giveplayerid][pAWarn] >= 4) return SendClientMessage(playerid, COLOR_GREY, "У него 3/3 выговоров");
           if(PlayerInfo[giveplayerid][pAWarn] == 2)
           {
            new ip[256];
            format(string, sizeof(string), "<ADM-CMD> Администратор %s понизил %s (2/3 Выговоров). Причина: %s ", sendername,giveplayer, (result));
            ABroadCast(COLOR_REDD,string,1);
            GetPlayerIp(giveplayerid,ip,sizeof(ip));
            PlayerInfo[giveplayerid][pAdmin] -= 1;
            return 1;
           }
           if(PlayerInfo[giveplayerid][pAWarn] >= 3)
           {
            new ip[256];
            format(string, sizeof(string), "<ADM-CMD> Администратор %s снял %s (3/3 Выговоров). Причина: %s ", sendername,giveplayer, (result));
            ABroadCast(COLOR_REDD,string,1);
            GetPlayerIp(giveplayerid,ip,sizeof(ip));
            format(string, sizeof(string), "%s.ini",giveplayer);
            GetPlayerIp(giveplayerid,ip,sizeof(ip));
            PlayerInfo[giveplayerid][pAdmin] = 0;
            PlayerInfo[giveplayerid][pDostup] = 0;
            return 1;
           }
           new ip[256];
           format(string, sizeof(string), "<ADM-CMD> Администратор %s дал выговор %s (1/3). Причина: %s", sendername, giveplayer, (result));
           ABroadCast(COLOR_REDD,string,1);
           GetPlayerIp(giveplayerid,ip,sizeof(ip));
           OnPlayerUpdateRL(giveplayerid);
           return 1;
          }
         }//not connected
        }
        else
        {
         SendClientMessage(playerid, COLOR_GREY, "Игрок не найден!");
        }
       }
       return 1;
      }

else if(strcmp(cmd, "/aunwarn", true) == 0) // Очистка варнов
      {
       if(PlayerInfo[playerid][pAdmin] >= 10)
       {
        tmp = strtok(cmdtext, idx);
        if(!strlen(tmp)) return    SendClientMessage(playerid, COLOR_WHITE, "Введите: /unwarn [id]");
        giveplayerid = ReturnUser(tmp);
        if(IsPlayerConnected(giveplayerid))
        {
         new planame[32];
         GetPlayerName(giveplayerid, planame, sizeof(planame));
         if(PlayerInfo[giveplayerid][pAWarn] <= 0) {SendClientMessage(playerid, COLOR_RED, "Выговоров нет."); return 1;}
         PlayerInfo[giveplayerid][pAWarn] = 0;
         format(string, sizeof(string), "Вы сняли все выговоры у %s!",planame);
         SendClientMessage(playerid, COLOR_REDD,string);
        }
        else
        {
         SendClientMessage(playerid, COLOR_GREY, "Игрок не найден!");
        }
       }
       else
       {
        SendClientMessage(playerid, COLOR_RED, "");
       }
       return 1;
      }


Вот и все, ничего сложного нету.

Если у вас возникнет проблема со вставкой сис-мы, пишите в ЛС или в тему описывайте проблемы.


Подкорректируйте систему под ваш мод, возможно проверки разные будут.


Сообщение отредактировал Chester_Master - Воскресенье, 25.05.2014, 16:20
artempetroff2004 Дата: Воскресенье, 03.04.2016, 13:09 | Сообщение # 2
Новичок
Сообщений: 1
Статус: Offline
Chester_Master, artempetroff2004 Добавь в скайп, вопрос есть.

Tema Rahmanin
Kirill_Morvol Дата: Суббота, 18.06.2016, 19:26 | Сообщение # 3
Новичок
Сообщений: 1
Статус: Offline
4 ошибки помогите исправить ((
error 029: invalid expression, assumed zero
warning 215: expression has no effect
error 001: expected token: ";", but found "if"
error 017: undefined symbol "cmd"
fatal error 107: too many error messages on one line
sad sad sad sad
  • Страница 1 из 1
  • 1
Поиск: