Перейти к содержанию
Авторизация  
АЛЕКСАНДР МАМАЕВ

чтобы выбор поевления при спавне было только для админов

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

АЛЕКСАНДР МАМАЕВ

Всем привет как сделать правильно чтоб выбор поевления при спавне был только для админов а то щас выходит для всех кроме админов:

        if(PLAYER_DATA[playerid][data_ADMLVL] >= 1)
		{
            ShowPlayerDialogFix(playerid, dialog_ALOGIN, DIALOG_STYLE_INPUT,"{4E94D9}Авторизация в АП","\
				{FFFFFF}Вы имеете полномочия администратора на нашем сервере\n\
				Для продолжения игры на сервере, Вам необходимо указать спец. пароль администратора\n\
				Пароль должен состоять только цифр, длина его - не ограничена\n\
				Введите пароль в строчку ниже, проверив его правильность:\n\n\
				{FB5F7C}При нажатии на клавишу 'ESC' или 'Отмена', Вы будете кикнуты с сервера","Далее","Отмена");
			return true;
		}
		else
		{
			ShowPlayerDialogFix(playerid, dialog_LOADSPAWN, DIALOG_STYLE_LIST, "{4485B3}Выберите место появления", "{F2EF15}1. {FFFFFF}База организации\n{F2EF15}2. {FFFFFF}Ж/Д Вокзал\n{F2EF15}3. {FFFFFF}Дом / квартира\n{F2EF15}4. {FFFFFF}Место, где вышел с сервера", "Выбрать", "Закрыть");
		}
        DeletePVar(playerid,"player_auth");
        PLAYER_DATA[playerid][data_LOGGED] = true;
        CancelSelectTextDraw(playerid);
        TogglePlayerControllable(playerid, true);
  	SpawnPlayerAC(playerid);	
	}
	else
	{
	    new wrongtext[145];
        if (GetPVarInt(playerid, "WrongPassword") == 3) return Kick(playerid);
        SetPVarInt(playerid, "WrongPassword", GetPVarInt ( playerid, "WrongPassword") + 1);
		format(wrongtext,sizeof(wrongtext),"Вы ввели неправильный пароль! Осталось попыток %d/3",GetPVarInt(playerid,"WrongPassword"));
		SendClientMessage(playerid, 0xFF333300, wrongtext);
		Dialog_PLAYER_LOGIN(playerid);
	}
	return true;
}

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


Ссылка на сообщение
Поделиться на другие сайты
Ilya_Mayor
if(PLAYER_DATA[playerid][data_ADMLVL] >= 1)
		{
            ShowPlayerDialogFix(playerid, dialog_ALOGIN, DIALOG_STYLE_INPUT,"{4E94D9}Авторизация в АП","\
				{FFFFFF}Вы имеете полномочия администратора на нашем сервере\n\
				Для продолжения игры на сервере, Вам необходимо указать спец. пароль администратора\n\
				Пароль должен состоять только цифр, длина его - не ограничена\n\
				Введите пароль в строчку ниже, проверив его правильность:\n\n\
				{FB5F7C}При нажатии на клавишу 'ESC' или 'Отмена', Вы будете кикнуты с сервера","Далее","Отмена");
			return true;
		}
		else
		{
			if(PI[playerid][pAdmin]) ShowPlayerDialogFix(playerid, dialog_LOADSPAWN, DIALOG_STYLE_LIST, "{4485B3}Выберите место появления", "{F2EF15}1. {FFFFFF}База организации\n{F2EF15}2. {FFFFFF}Ж/Д Вокзал\n{F2EF15}3. {FFFFFF}Дом / квартира\n{F2EF15}4. {FFFFFF}Место, где вышел с сервера", "Выбрать", "Закрыть");
		}
        DeletePVar(playerid,"player_auth");
        PLAYER_DATA[playerid][data_LOGGED] = true;
        CancelSelectTextDraw(playerid);
        TogglePlayerControllable(playerid, true);
  	SpawnPlayerAC(playerid);	
	}
	else
	{
	    new wrongtext[145];
        if (GetPVarInt(playerid, "WrongPassword") == 3) return Kick(playerid);
        SetPVarInt(playerid, "WrongPassword", GetPVarInt ( playerid, "WrongPassword") + 1);
		format(wrongtext,sizeof(wrongtext),"Вы ввели неправильный пароль! Осталось попыток %d/3",GetPVarInt(playerid,"WrongPassword"));
		SendClientMessage(playerid, 0xFF333300, wrongtext);
		Dialog_PLAYER_LOGIN(playerid);
	}
	return true;
}

Строку if(PI[playerid][pAdmin]) замени на свое (Думаю работать будет)

Изменено пользователем Ilya_Mayor

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


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

@Ilya_Mayor, и что ты сделал? Одной проверки на админку мало, давай вторую засунем, такую же. И причем эту проверку система никогда не пройдет. Еще и переменную умудрился новую создать свою, когда оригинальная перед глазами.

 

@АЛЕКСАНДР МАМАЕВ, покажите код диалога авторизации администратора.

Изменено пользователем Elrmrnt-Kritik

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


Ссылка на сообщение
Поделиться на другие сайты
АЛЕКСАНДР МАМАЕВ

case dialog_ALOGIN:
	{
		if(!response)
		{
			new str[145];
			format(str,sizeof(str),"[A] %s %s(%d) (%s) [ALVL: %d] не смог авторизоваться на сервере",GetAdminRang(PLAYER_DATA[playerid][data_ADMLVL]),PLAYER_DATA[playerid][data_NAME], playerid, PLAYER_DATA[playerid][data_LOGIN_IP],PLAYER_DATA[playerid][data_ADMLVL]);
			SendAdminMessage(COLOR_AC,str);
			Kick(playerid);
			return true;
		}
		if(response)
		{
			DeletePVar(playerid,"player_auth");
			PLAYER_DATA[playerid][data_LOGGED] = true;
			CancelSelectTextDraw(playerid);
			TogglePlayerControllable(playerid, true);
			SpawnPlayerAC(playerid);
			new str[145];
			if(PLAYER_DATA[playerid][data_ECODE] == strval(inputtext))
			{
				format(str,sizeof(str),"[A] %s %s(%d) (%s) [ALVL: %d] авторизовался на сервере",GetAdminRang(PLAYER_DATA[playerid][data_ADMLVL]),PLAYER_DATA[playerid][data_NAME], playerid, PLAYER_DATA[playerid][data_LOGIN_IP],PLAYER_DATA[playerid][data_ADMLVL]);
				SendAdminMessage(COLOR_AC,str);
				return true;
			}
			format(str,sizeof(str),"[A] %s %s(%d) (%s) [ALVL: %d] не смог авторизоваться на сервере",GetAdminRang(PLAYER_DATA[playerid][data_ADMLVL]),PLAYER_DATA[playerid][data_NAME], playerid, PLAYER_DATA[playerid][data_LOGIN_IP],PLAYER_DATA[playerid][data_ADMLVL]);
			SendAdminMessage(COLOR_AC,str);
			Kick(playerid);
		}
	} 

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


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

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

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

×

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

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