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

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

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

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

Проблема с диалоговым окном.

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

Drez.Damone

Новичок
Доброе время суток! Итак у меня возникла проблема с диалогом, вообщем я написал диалог на стиле DIALOG_STYLE_LIST на switch(на case) всё нормально компилируется, захожу на сервер открываю данное диалоговое окно, жму на один вариант из предложенного списка, и далее после выбора диалог пропадает(закрывается) и код который был прописан в данный вариант не срабатывает. Что делать не знаю.

Код показывания самого диалога через пикап:
PHP:
function Trailer_OnPlayerPickUpPickup(playerid, pickupid)
{
    if(pickupid == pickupbuy)
    {
    	ShowPlayerDialog(playerid,d_trailerbuy,DIALOG_STYLE_LIST,"Покупка трейлера","Hobby Prestige 535T\nKnaus KNAUS SUDWIND\nFendt 600","Выбрать","Закрыть");
    }
	return 1;
}
Далее решил не мудрить и скинул весь паблик диалоговых окон, все диалоги связаны с одной системой:
PHP:
function Trailer_OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	switch( dialogid )
	{
		case d_trailerbuy:
		{
		 /*   if( !response )
			{
			    SetCameraBehindPlayer(playerid);
			    return 1;
			}*/
			switch( listitem )
			{
	  			case 0:
		    	{
					SetPlayerCameraPos(playerid, -71.4961, -1133.1202, 2.0209);
					SetPlayerCameraLookAt(playerid, -71.1791, -1132.1672, 1.9508);
					Player[playerid][uTypeTrailer] = 1;
				//	ShowDialog = 1;
					ShowPlayerDialog(playerid,d_trailerbuys,DIALOG_STYLE_LIST,"Выберите цвет трейлера","Красный\nСиний\nФиолетовый\nЗелёный\nЧёрный\nБелый\nСтандартный","Выбрать","Назад");
	    		}
		   		case 1:
			    {
	      			SetPlayerCameraPos(playerid, -64.2890, -1135.5176, 2.0209);
					SetPlayerCameraLookAt(playerid, -64.0045, -1134.5542, 1.9508);
					Player[playerid][uTypeTrailer] = 2;
					ShowPlayerDialog(playerid,d_trailerbuys,DIALOG_STYLE_LIST,"Выберите цвет трейлера","Красный\nСиний\nФиолетовый\nЗелёный\nЧёрный\nБелый\nСтандартный","Выбрать","Назад");
	    		}
			    case 2:
			    {
	      			SetPlayerCameraPos(playerid, -58.7622, -1142.5833, 2.3846);
					SetPlayerCameraLookAt(playerid, -58.4777, -1141.6199, 2.3145);
					Player[playerid][uTypeTrailer] = 3;
					ShowPlayerDialog(playerid,d_trailerbuys,DIALOG_STYLE_LIST,"Выберите цвет трейлера","Красный\nСиний\nФиолетовый\nЗелёный\nЧёрный\nБелый\nСтандартный","Выбрать","Назад");
	    		}
			}
		}
		case d_trailerbuys:
		{
		  /*  if( !response )
			{
   				SetCameraBehindPlayer(playerid);
      			Player[playerid][uTypeTrailer] = 0;
	         	Player[playerid][uTrailerColor] = 0;
			    ShowPlayerDialog(playerid,d_trailerbuy,DIALOG_STYLE_LIST,"Покупка трейлера","Hobby Prestige 535T\nKnaus KNAUS SUDWIND\nFendt 600","Выбрать","Закрыть");
			    return 1;
			}*/
			switch( listitem )
			{
			//    if( !response ) return 1;
	     		case 0:
	  			{
	     			Player[playerid][uTrailerColor] = 1;// Красный
					ShowPlayerDialog(playerid,d_trailermenubuy,DIALOG_STYLE_MSGBOX,"Покупка","Вы хотите купить этот трейлер?","Да","Закрыть");
	    		}
	      		case 1:
	      		{
	        		Player[playerid][uTrailerColor] = 2; //Синий
	          		ShowPlayerDialog(playerid,d_trailermenubuy,DIALOG_STYLE_MSGBOX,"Покупка","Вы хотите купить этот трейлер?","Да","Закрыть");
	      		}
	        	case 2:
		        {
	         		Player[playerid][uTrailerColor] = 3;// Фиолетовый
	           		ShowPlayerDialog(playerid,d_trailermenubuy,DIALOG_STYLE_MSGBOX,"Покупка","Вы хотите купить этот трейлер?","Да","Закрыть");
		        }
	         	case 3:
				{
	   				Player[playerid][uTrailerColor] = 4;  //Зелёный
				    ShowPlayerDialog(playerid,d_trailermenubuy,DIALOG_STYLE_MSGBOX,"Покупка","Вы хотите купить этот трейлер?","Да","Закрыть");
				}
				case 4:
				{
	   				Player[playerid][uTrailerColor] = 5; // Чёрный
			    	ShowPlayerDialog(playerid,d_trailermenubuy,DIALOG_STYLE_MSGBOX,"Покупка","Вы хотите купить этот трейлер?","Да","Закрыть");
				}
	   			case 5:
				{
	   				Player[playerid][uTrailerColor] = 6; // Белый
				    ShowPlayerDialog(playerid,d_trailermenubuy,DIALOG_STYLE_MSGBOX,"Покупка","Вы хотите купить этот трейлер?","Да","Закрыть");
				}
				case 6:
				{
	   				Player[playerid][uTrailerColor] = 6; // Стандартный
				    ShowPlayerDialog(playerid,d_trailermenubuy,DIALOG_STYLE_MSGBOX,"Покупка","Вы хотите купить этот трейлер?","Да","Закрыть");
				}
	   		}
		}
		case d_trailermenubuy:
		{
		/*	if( !response )
			{
			    SetCameraBehindPlayer(playerid);
      			Player[playerid][uTypeTrailer] = 0;
	         	Player[playerid][uTrailerColor] = 0;
			    return 1;
			}*/
  			if( !IsOwnerVehicleCount( playerid ) ) return SendClient:( playerid, C_WHITE, !""gbError"У Вас нет личного транспорта." );
   			if( Player[playerid][uTrailer] == 1 ) return SendClient:( playerid, C_WHITE, !""gbError"У Вас уже есть трейлер." );
     		if(Player[playerid][uTypeTrailer] == 1)
      		{
      			if(Player[playerid][uMoney] < 25000) return SendClientMessage(playerid,C_WHITE,"Недостаточно денег!");
       			Player[playerid][uMoney] -= 25000;
         		Player[playerid][uTrailer] = 1;
          		SetCameraBehindPlayer(playerid);
           		SendClient:( playerid, C_WHITE, !"Поздравляем! "cBLUE"Вы успешно купили трейлер.");
				SendClientMessage(playerid,C_WHITE,"Чтобы зацепить трейлер введите команду /tratt, для того чтобы отцепить /deatt");
				switch(random(4))
				{
					case 0:
					{
						carvid_0 = CreateVehicle(611,-49.4843,-1133.4541,0.8410,185.2216,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
					case 1:
					{
						carvid_0 = CreateVehicle(611,-46.7679,-1136.6703,0.8410,161.9064,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
					case 2:
					{
						carvid_0 = CreateVehicle(611,-38.4437,-1150.2195,0.8410,63.5635,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
					case 3:
					{
						carvid_0 = CreateVehicle(611,-61.9295,-1146.9536,0.8410,337.8704,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
				}
  			}
   			else if(Player[playerid][uTypeTrailer] == 2)
     		{
     			if(Player[playerid][uMoney] < 35000) return SendClientMessage(playerid,C_WHITE,"Недостаточно денег!");
      			Player[playerid][uMoney] -= 35000;
       			Player[playerid][uTrailer] = 1;
         		SetCameraBehindPlayer(playerid);
				SendClient:( playerid, C_WHITE, !"Поздравляем! "cBLUE"Вы успешно купили трейлер.");
				SendClientMessage(playerid,C_WHITE,"Чтобы зацепить трейлер введите команду /tratt, для того чтобы отцепить /deatt");
				switch(random(4))
				{
					case 0:
					{
						carvid_0 = CreateVehicle(611,-49.4843,-1133.4541,0.8410,185.2216,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
					case 1:
					{
						carvid_0 = CreateVehicle(611,-46.7679,-1136.6703,0.8410,161.9064,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
					case 2:
					{
						carvid_0 = CreateVehicle(611,-38.4437,-1150.2195,0.8410,63.5635,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
					case 3:
					{
						carvid_0 = CreateVehicle(611,-61.9295,-1146.9536,0.8410,337.8704,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
				}
  			}
   			else if(Player[playerid][uTypeTrailer] == 3)
     		{
     			if(Player[playerid][uMoney] < 60000) return SendClientMessage(playerid,C_WHITE,"Недостаточно денег!");
      			Player[playerid][uMoney] -= 60000;
        		Player[playerid][uTrailer] = 1;
         		SetCameraBehindPlayer(playerid);
          		SendClient:( playerid, C_WHITE, !"Поздравляем! "cBLUE"Вы успешно купили трейлер.");
            	SendClientMessage(playerid,C_WHITE,"Чтобы зацепить трейлер введите команду /tratt, для того чтобы отцепить /deatt");
				switch(random(4))
				{
					case 0:
					{
						carvid_0 = CreateVehicle(611,-49.4843,-1133.4541,0.8410,185.2216,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
					case 1:
					{
						carvid_0 = CreateVehicle(611,-46.7679,-1136.6703,0.8410,161.9064,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
					case 2:
					{
						carvid_0 = CreateVehicle(611,-38.4437,-1150.2195,0.8410,63.5635,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
					case 3:
					{
						carvid_0 = CreateVehicle(611,-61.9295,-1146.9536,0.8410,337.8704,-1,-1,-1,0);
						objectscar = CreateDynamicObject(3171,0.0,0.0,-1000.0,0.0,0.0,0.0,-1,-1,-1,300.0,300.0);
						AttachDynamicObjectToVehicle(objectscar, carvid_0, 0.000, -2.132, -0.600, -1.499, 0.000, 180.000);
					}
				}
  			}
    	}
/*	       	else
	        {
	        	Player[playerid][uTypeTrailer] = 0;
	         	Player[playerid][uTrailerColor] = 0;
				return 1;
	   		}*/
	}
	return 1;
}
Буду благодарен за любую помощь!) За помощь кину +реп =)
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу