Перейти к содержанию
Авторизация  
Aleksandr_Fedosov

Что не так в команде?

Рекомендуемые сообщения

Aleksandr_Fedosov

Доброго времени суток.Уважаемые форумчане подскажите что не так в команде я хочу сделать чтобы у админов с 1-3 уровень было одно у админов с 4-10 другое
вот команда

if (strcmp(cmd, "/aduty", true) == 0 || strcmp(cmd, "/adminduty", true) == 0 || strcmp(cmd, "/админить", true) == 0)
	{
		if(IsPlayerConnected(playerid))
		{
			if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_GREY, "Для начала залогинетесь!");
			if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pAdmin] <= 3)
			{
				if(AdminDuty[playerid] == 0)
				{
					AdminDuty[playerid] = 1;
					SetPlayerSkin(playerid,221);
					GetPlayerName(playerid, sendername, sizeof(sendername));
					GivePlayerWeapon(playerid, 5, 1);// Пила
					GivePlayerWeapon(playerid, 22, 99999);// Дигл
					GivePlayerWeapon(playerid, 42, 99999);// МП-5
					SetPlayerColor(playerid,0xFF0080FF);
					return true;
				}
				else if(AdminDuty[playerid] == 1)
				{
					AdminDuty[playerid] = 0;
					SetPlayerColor(playerid,TEAM_HIT_COLOR);
					GetPlayerName(playerid, sendername, sizeof(sendername));
					SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);
					ResetPlayerWeapons(playerid);
					return true;
				}
			}
			else if(PlayerInfo[playerid][pAdmin] >= 4 || PlayerInfo[playerid][pLeader] <= 10)
			{
				if(AdminDuty[playerid] == 0)
				{
					AdminDuty[playerid] = 1;
					SetPlayerSkin(playerid,224);
					GetPlayerName(playerid, sendername, sizeof(sendername));
					GivePlayerWeapon(playerid, 9, 1);// Пила
					GivePlayerWeapon(playerid, 24, 99999);// Дигл
					GivePlayerWeapon(playerid, 31, 99999);// МП-5
					GivePlayerWeapon(playerid, 38, 99999);// Дигл
					GivePlayerWeapon(playerid, 42, 99999);// МП-5
					SetPlayerColor(playerid,0xFF0080FF);
					return true;
				}
				else if(AdminDuty[playerid] == 1)
				{
					AdminDuty[playerid] = 0;
					SetPlayerColor(playerid,TEAM_HIT_COLOR);
					GetPlayerName(playerid, sendername, sizeof(sendername));
					SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);
					ResetPlayerWeapons(playerid);
					return true;
				}
			}
			else
			{
				SendClientMessage(playerid, COLOR_GREY, "Вам недоступна эта команда.");
				return true;
			}
		}
		return true;
	}

Заранее спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Smolin
else if(PlayerInfo[playerid][pAdmin] >= 4 || PlayerInfo[playerid][pLeader] <= 10)

А лидеры причем тут

 

 

|| замени на &&

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Aleksandr_Fedosov
else if(PlayerInfo[playerid][pAdmin] >= 4 || PlayerInfo[playerid][pLeader] <= 10)

А лидеры причем тут

 

 

|| замени на &&

 

сори прогледел щас скомпилирую напишу

p.s.:сижу сонный

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Aleksandr_Fedosov

Все равно все выдается как в первом случае

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Max_Eitzen

А для чего везде идет гетнэйм, но нигде не используется? Да.. С оптимизацией тут туго.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Aleksandr_Fedosov

А для чего везде идет гетнэйм, но нигде не используется? Да.. С оптимизацией тут туго.

Можешь помочь оптимизировать команду?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Max_Eitzen

Вот хотя бы так.

	if (strcmp(cmd, "/aduty", true) == 0 || strcmp(cmd, "/adminduty", true) == 0 || strcmp(cmd, "/админить", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] == 0) return false;
            if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_GREY, "Для начала залогинетесь!");
            if(AdminDuty[playerid] == 0)
            {
				switch(PlayerInfo[playerid][pAdmin])
				{
				    case 1..3:
				    {
				        SetPlayerSkin(playerid,221);
				        GivePlayerWeapon(playerid, 5, 1);
                    	GivePlayerWeapon(playerid, 22, 99999);
                    	GivePlayerWeapon(playerid, 42, 99999);
				    }
				    case 4..10:
				    {
				        SetPlayerSkin(playerid,224);
	                    GivePlayerWeapon(playerid, 9, 1);
	                    GivePlayerWeapon(playerid, 24, 99999);
	                    GivePlayerWeapon(playerid, 31, 99999);
	                    GivePlayerWeapon(playerid, 38, 99999);
	                    GivePlayerWeapon(playerid, 42, 99999);
				    }
				}
				AdminDuty[playerid] = 1;
				SetPlayerColor(playerid,0xFF0080FF);
            }
            else AdminDuty[playerid] = 0, SetPlayerColor(playerid,TEAM_HIT_COLOR), ResetPlayerWeapons(playerid);
        }
        return true;
    }
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Aleksandr_Fedosov

 

Вот хотя бы так.

	if (strcmp(cmd, "/aduty", true) == 0 || strcmp(cmd, "/adminduty", true) == 0 || strcmp(cmd, "/админить", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] == 0) return false;
            if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_GREY, "Для начала залогинетесь!");
            if(AdminDuty[playerid] == 0)
            {
				switch(PlayerInfo[playerid][pAdmin])
				{
				    case 1..3:
				    {
				        SetPlayerSkin(playerid,221);
				        GivePlayerWeapon(playerid, 5, 1);
                    	GivePlayerWeapon(playerid, 22, 99999);
                    	GivePlayerWeapon(playerid, 42, 99999);
				    }
				    case 4..10:
				    {
				        SetPlayerSkin(playerid,224);
	                    GivePlayerWeapon(playerid, 9, 1);
	                    GivePlayerWeapon(playerid, 24, 99999);
	                    GivePlayerWeapon(playerid, 31, 99999);
	                    GivePlayerWeapon(playerid, 38, 99999);
	                    GivePlayerWeapon(playerid, 42, 99999);
				    }
				}
				AdminDuty[playerid] = 1;
				SetPlayerColor(playerid,0xFF0080FF);
            }
            else AdminDuty[playerid] = 0, SetPlayerColor(playerid,TEAM_HIT_COLOR), ResetPlayerWeapons(playerid);
        }
        return true;
    }

секунду пошел проверять

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Aleksandr_Fedosov

 

Вот хотя бы так.

	if (strcmp(cmd, "/aduty", true) == 0 || strcmp(cmd, "/adminduty", true) == 0 || strcmp(cmd, "/админить", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] == 0) return false;
            if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_GREY, "Для начала залогинетесь!");
            if(AdminDuty[playerid] == 0)
            {
				switch(PlayerInfo[playerid][pAdmin])
				{
				    case 1..3:
				    {
				        SetPlayerSkin(playerid,221);
				        GivePlayerWeapon(playerid, 5, 1);
                    	GivePlayerWeapon(playerid, 22, 99999);
                    	GivePlayerWeapon(playerid, 42, 99999);
				    }
				    case 4..10:
				    {
				        SetPlayerSkin(playerid,224);
	                    GivePlayerWeapon(playerid, 9, 1);
	                    GivePlayerWeapon(playerid, 24, 99999);
	                    GivePlayerWeapon(playerid, 31, 99999);
	                    GivePlayerWeapon(playerid, 38, 99999);
	                    GivePlayerWeapon(playerid, 42, 99999);
				    }
				}
				AdminDuty[playerid] = 1;
				SetPlayerColor(playerid,0xFF0080FF);
            }
            else AdminDuty[playerid] = 0, SetPlayerColor(playerid,TEAM_HIT_COLOR), ResetPlayerWeapons(playerid);
        }
        return true;
    }

Работает как надо только когда уходишь с дежурства не возвращается скин

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Smolin
else AdminDuty[playerid] = 0, SetPlayerColor(playerid,TEAM_HIT_COLOR), ResetPlayerWeapons(playerid), SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);

замени

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.