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

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

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

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

Команда по нажатию на кнопку

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

cooller1995

Дебютант
У меня есть команда /auto
Код:
if(strcmp("/auto", cmdtext, true) == 0)
	{
	    if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0xFFFFFFFF,"Вы должны быть в машине!");
	    if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
        {
                SendClientMessage(playerid, 0xFFFFFFFF, "  Вы должны находиться за рулём транспортного средства!");
                return 1;
            }
			ShowPlayerDialog(playerid,586,DIALOG_STYLE_LIST,"Авто-Меню [Rp]Free|City","Запустить двигатель\nЗаглушить двигатель\n\nВключить свет\nВыключить свет\n\nОткрыть капот\nЗакрыть капот\n\nОткрыть багажник\nЗакрыть багажникn","Выбрать","Отмена");
	}
Как сделать что бы по нажатию на ALT, когда игрок находится в машине прописывалась эта команда?
Пробовал делать вот так:
Код:
if(newkeys == 1024)
    {
        if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
        {
            OnPlayerCommandText(playerid, "/auto");
        }
    }
Но тогда по непонятной причине когда садишься в машину и двигатель не заведен то диалог открывается, но игрок выходит из машины. А если машина заведена то ничего не происходит.

Если нужно то вот так заводится машина:
Код:
if(newkeys == 512)
	{
	    if(IsPlayerInAnyVehicle(playerid))
	    {
	        if(GetPlayerState(playerid) == 2)
	        {
	            new carisd = GetPlayerVehicleID(playerid);
	            new Float:health;
				GetVehicleHealth(GetPlayerVehicleID(playerid),health);
	            if(!IsAPlane(carisd)||!IsABoat(carisd)||!IsABycicle(carisd))
	        	{
	        		if(health < 450)
					{
		    		GetPlayerName(playerid,sendername,sizeof(sendername));
					SendClientMessage(playerid,0xFFFFFFFF,"* Вызовите механика, машина повреждена! (/service)");
					format(string, sizeof(string), "* %s попытался завести двигатель (неудачно)",sendername);
					ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,0,0);
					return 1;
					}
		            if(engine1[carisd] == 0)
		            {
		                if(engineplayer[playerid] == 0)
		                {
			                engineplayer[playerid] = 4;
			                GetPlayerName(playerid,sendername,sizeof(sendername));
			                format(string, sizeof(string), "* %s пытается завести транспорт", sendername);
							ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,0,0);
						}
					}
		            else if(engine1[carisd] == 1)
		            {
           	            if(!IsAPlane(carisd)||!IsABoat(carisd)||!IsABycicle(carisd))
						{
		                engine1[carisd] = 0;
	                    GetPlayerName(playerid,sendername,sizeof(sendername));
		                format(string, sizeof(string), "* %s заглушил транспорт", sendername);
						ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,0,0);
						TogglePlayerControllable(playerid, 0);
						}
		            }
	            }
	        }
	    }
	}
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу