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

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

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

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

/demote - как на samp-rp

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

Bruse_Williams

Умник
Не актуально
Здравствуйте форумчани. Думаю многие искали /demote как на samp-rp. Вот она
PHP:
if(strcmp(cmd, "/demote", true) == 0)
    {
        if(PlayerInfo[playerid][pMember] == 2 && PlayerInfo[playerid][pRank] >= 7)
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp)) return  SendClientMessage(playerid, COLOR_WHITE, "Введите: /demote [id]");
            new para1;
            new rank;
            para1 = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
            GetPlayerName(para1, giveplayer, sizeof(giveplayer));
            GetPlayerName(playerid, sendername, sizeof(sendername));
            if(PlayerInfo[playerid][pMember] == 2 && PlayerInfo[playerid][pRank] >= 6)
            {
                if(IsPlayerConnected(para1))
                {
                    if(para1 != INVALID_PLAYER_ID)
                    {
                        switch(PlayerInfo[para1][pMember])
                        {
                        	case 4,5..9,11..18: return SendClientMessage(playerid, COLOR_GREY, "Этот человек не состоит в армии/ПД/ФБР!");
                        }
                        if(PlayerInfo[para1][pMember] == 2 && PlayerInfo[para1][pRank] >= 2)
                        {
                        	if(PlayerInfo[para1][pLeader] != 0) { return SendClientMessage(playerid, COLOR_GREY, "Вы не можете понизить лидера!"); }
                        	PlayerInfo[para1][pRank] --;
                        	rank = PlayerInfo[para1][pRank];
                        	format(string, sizeof(string), "Вы были понижены до %d ранга агентом FBI %s", rank, sendername);
                        	SendClientMessage(para1, 0x6495EDFF, string);
                        	format(string, sizeof(string), "Вы понизили %s до %d ранга", giveplayer, rank);
                        	SendClientMessage(playerid, 0x6495EDFF, string);
                        	return true;
			}
			if(PlayerInfo[para1][pMember] == 2 && PlayerInfo[para1][pRank] == 1)
                        {
                        	if(PlayerInfo[para1][pLeader] != 0) { return SendClientMessage(playerid, COLOR_GREY, "Вы не можете уволить лидера!"); }
                        	PlayerInfo[para1][pRank] = 6;
   				PlayerInfo[para1][pMember] = 1;
   				SetSpawnInfo(playerid, 0, 0, 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);
            			SpawnPlayer(para1);
            			SetPlayerArmourAC(para1,0);
				DelGun(para1);
				FormaFrac[para1] = 0;
				SetPlayerColor(para1, TEAM_HIT_COLOR);
				SetPlayerSkin(para1, PlayerInfo[para1][pChar]);
                        	format(string, sizeof(string), "Вы были переведены агентом FBI %s", sendername);
              			SendClientMessage(para1, 0x6495EDFF, string);
           			format(string, sizeof(string), "Вы перевели %s", giveplayer);
               			SendClientMessage(playerid, 0x6495EDFF, string);
                        	return true;
			}
                        if(PlayerInfo[para1][pMember] == 1 && PlayerInfo[para1][pRank] >= 2 || PlayerInfo[para1][pMember] == 10 && PlayerInfo[para1][pRank] >= 2 || PlayerInfo[para1][pMember] == 21 && PlayerInfo[para1][pRank] >= 2)
                        {
                        	if(PlayerInfo[para1][pLeader] != 0) { return SendClientMessage(playerid, COLOR_GREY, "Вы не можете понизить лидера!"); }
                        	PlayerInfo[para1][pRank] --;
                        	rank = PlayerInfo[para1][pRank];
                        	format(string, sizeof(string), "Вы были понижены до %d ранга агентом FBI %s", rank, sendername);
                        	SendClientMessage(para1, 0x6495EDFF, string);
                        	format(string, sizeof(string), "Вы понизили %s до %d ранга", giveplayer, rank);
                        	SendClientMessage(playerid, 0x6495EDFF, string);
                        	return true;
			}
			if(PlayerInfo[para1][pMember] == 1 && PlayerInfo[para1][pRank] == 1 || PlayerInfo[para1][pMember] == 10 && PlayerInfo[para1][pRank] == 1 || PlayerInfo[para1][pMember] == 21 && PlayerInfo[para1][pRank] == 1)
			{
			        if(PlayerInfo[para1][pLeader] != 0) { return SendClientMessage(playerid, COLOR_GREY, "Вы не можете уволить лидера!"); }
				PlayerInfo[para1][pRank] = 2;
   				PlayerInfo[para1][pMember] = 19;
   				SetSpawnInfo(playerid, 0, 0, 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);
            			SpawnPlayer(para1);
            			SetPlayerArmourAC(para1,0);
				DelGun(para1);
				FormaFrac[para1] = 0;
				SetPlayerColor(para1, TEAM_HIT_COLOR);
				SetPlayerSkin(para1, PlayerInfo[para1][pChar]);
           			format(string, sizeof(string), "Вы были переведены агентом FBI %s", sendername);
              			SendClientMessage(para1, 0x6495EDFF, string);
           			format(string, sizeof(string), "Вы перевели %s", giveplayer);
               			SendClientMessage(playerid, 0x6495EDFF, string);
                  		return true;
			}
			if(PlayerInfo[para1][pMember] == 3 && PlayerInfo[para1][pRank] >= 2 || PlayerInfo[para1][pMember] == 19 && PlayerInfo[para1][pRank] >= 2)
                        {
                        	if(PlayerInfo[para1][pLeader] != 0) { return SendClientMessage(playerid, COLOR_GREY, "Вы не можете понизить лидера!"); }
                        	PlayerInfo[para1][pRank] --;
                        	rank = PlayerInfo[para1][pRank];
                        	format(string, sizeof(string), "Вы были понижены до %d ранга агентом FBI %s", rank, sendername);
                        	SendClientMessage(para1, 0x6495EDFF, string);
                        	format(string, sizeof(string), "Вы понизили %s до %d ранга", giveplayer, rank);
                        	SendClientMessage(playerid, 0x6495EDFF, string);
                        	return true;
			}
			if(PlayerInfo[para1][pMember] == 3 && PlayerInfo[para1][pRank] == 1 || PlayerInfo[para1][pMember] == 19 && PlayerInfo[para1][pRank] == 1)
                        {
                        	if(PlayerInfo[para1][pLeader] != 0) { return SendClientMessage(playerid, COLOR_GREY, "Вы не можете уволить лидера!"); }
                        	PlayerInfo[para1][pRank] = 0;
   				PlayerInfo[para1][pMember] = 0;
   				PlayerInfo[para1][pLeader] = 0;
   				SetSpawnInfo(playerid, 0, 0, 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);
            			SpawnPlayer(para1);
            			SetPlayerArmourAC(para1,0);
				DelGun(para1);
				FormaFrac[para1] = 0;
				SetPlayerColor(para1, TEAM_HIT_COLOR);
				SetPlayerSkin(para1, PlayerInfo[para1][pChar]);
                        	format(string, sizeof(string), "Вы были уволены агентом FBI %s", sendername);
              			SendClientMessage(para1, 0x6495EDFF, string);
           			format(string, sizeof(string), "Вы уволили %s", giveplayer);
               			SendClientMessage(playerid, 0x6495EDFF, string);
                        	return true;
			}
                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "Вы не уполномочены использовать эту команду!");
            }
        }
        return true;
    }
Понравилось? Ставь +). Оптимизацией еще толком не займаюсь, еще только начинаю, поэтому строго не судить.
Автор: Я
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу