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

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

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

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

Управление транспортом [Samp-VL]

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

Charles

Начинающий
Регистрация
23 Дек 2012
Сообщения
75
Лучшие ответы
0
Репутация
108
Здравствуйте, уважаемые пользователи Pawno-Info.Ru

Решил выложить мануал: Управление транспортом [SVL]
Warning: Так как я новичок в pawno, строго не судите)
И еще, если у кого нету системы /menu and /repair car как на SVL, вот ссылка: http://pawno-info.ru/threads/108472-RP-repair-car-menu-Version-2?highlight=/menu

Приступим:

в enum pinfo:
PHP:
	pEngine,
	pLight,
	pBonnet,
	pBoot,
далее добавляем команды:
PHP:
	if(strcmp(cmd, "/light", true) == 0)
	{
		if(PlayerInfo[playerid][pLight] == 0)
		{
			  new vid = GetPlayerVehicleID(playerid);
              if(vid != INVALID_VEHICLE_ID)
        {
                  PlayerInfo[playerid][pLight] = 1;
                  GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
                  SetVehicleParamsEx(vid,engine,VEHICLE_PARAMS_ON,alarm,doors,bonnet,boot,objective);
              }
              return 1;
		}
		else if(PlayerInfo[playerid][pLight] == 1)
		{
			new vid = GetPlayerVehicleID(playerid);
              if(vid != INVALID_VEHICLE_ID)
        {
                  PlayerInfo[playerid][pLight] = 0;
                  GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
                  SetVehicleParamsEx(vid,engine,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective);
              }
		}
	}
	if(strcmp(cmd, "/bonnet", true) == 0)
	{
		if(PlayerInfo[playerid][pBonnet] == 0)
		{
			  new vid = GetPlayerVehicleID(playerid);
              if(vid != INVALID_VEHICLE_ID)
        {
                  PlayerInfo[playerid][pBonnet] = 1;
                  GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
                  SetVehicleParamsEx(vid,engine,lights,alarm,doors,VEHICLE_PARAMS_ON,boot,objective);
              }
              return 1;
		}
		else if(PlayerInfo[playerid][pBonnet] == 1)
		{
			new vid = GetPlayerVehicleID(playerid);
              if(vid != INVALID_VEHICLE_ID)
        {
                  PlayerInfo[playerid][pBonnet] = 0;
                  GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
                  SetVehicleParamsEx(vid,engine,lights,alarm,doors,VEHICLE_PARAMS_OFF,boot,objective);
              }
		}
	}
 	if(strcmp(cmd, "/boot", true) == 0)
	{
		if(PlayerInfo[playerid][pBoot] == 0)
		{
			  new vid = GetPlayerVehicleID(playerid);
              if(vid != INVALID_VEHICLE_ID)
        {
                  PlayerInfo[playerid][pBoot] = 1;
                  GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
                  SetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,VEHICLE_PARAMS_ON,objective);
              }
              return 1;
		}
		else if(PlayerInfo[playerid][pBoot] == 1)
		{
			new vid = GetPlayerVehicleID(playerid);
              if(vid != INVALID_VEHICLE_ID)
        {
                  PlayerInfo[playerid][pBoot] = 0;
                  GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
                  SetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,VEHICLE_PARAMS_OFF,objective);
              }
		}
	}
 	else if (strcmp("/engine", cmdtext, true) == 0)
	{
		new caridi = GetPlayerVehicleID(playerid);
		if(zavodis[playerid] == 0)
		{
			if (Fuell[caridi] <= 0) return SendClientMessage(playerid, COLOR_REDD, "{F70000}x {ADAEAD}Вызовите механика или заправьтесь с канистры!");
			if(GetPlayerVehicleID(playerid) != INVALID_VEHICLE_ID)
			{
				if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
				{
					GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
					zavodis[playerid] = 1;
					PlayerInfo[playerid][pEngine] = 1;
				}
			}
		}
		else if(zavodis[playerid] == 1)
		{
			if(GetPlayerVehicleID(playerid) != INVALID_VEHICLE_ID)
			{
				if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
				{
					GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
					zavodis[playerid] = 0;
					PlayerInfo[playerid][pEngine] = 0;
				}
			}
		}
		return true;
	}
   		if(strcmp(cmd, "/testcommand", true) == 0)
	    {
		if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, COLOR_GRAD2, "{F70000}x {ADAEAD}Вы не в транспорте!");
        new engine[32],light[32],bonnet[32],boot[32];
	    if(zavodis[playerid] == 1) { engine = "{00a86b}ON{ffffff}"; }
        else if(zavodis[playerid] == 0) { engine = "{ff0000}OFF{ffffff}"; }
	    if(PlayerInfo[playerid][pLight] == 1) { light = "{00a86b}ON{ffffff}"; }
        else if(PlayerInfo[playerid][pLight] == 0) { light = "{ff0000}OFF{ffffff}"; }
   	    if(PlayerInfo[playerid][pBonnet] == 1) { bonnet = "{00a86b}ON{ffffff}"; }
        else if(PlayerInfo[playerid][pBonnet] == 0) { bonnet = "{ff0000}OFF{ffffff}"; }
   	    if(PlayerInfo[playerid][pBoot] == 1) { boot = "{00a86b}ON{ffffff}"; }
        else if(PlayerInfo[playerid][pBoot] == 0) { boot = "{ff0000}OFF{ffffff}"; }
		format(string, sizeof(string),"{ffffff}[1] > [%s] Двигатель\n[2] > [%s] Фары\n[3] > [%s] Капот\n[4] > [%s] Багажник\n[5] > Ремонт [инструментов: %d]\n[6] > Заправить [канистр: %d]\n[7] > Информация",engine,light,bonnet,boot,PlayerInfo[playerid][pIns],PlayerInfo[playerid][pCan]);
        ShowPlayerDialog(playerid,6646,DIALOG_STYLE_LIST,"Управление транспортом",string, "Выбрать", "Скрыть");
	    }
в public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]):
PHP:
	case 6646: 
{
    if(response)
{
	switch(listitem)
{
	case 0: OnPlayerCommandText(playerid,"/engine");
	case 1: OnPlayerCommandText(playerid,"/light");
	case 2: OnPlayerCommandText(playerid,"/bonnet");
	case 3: OnPlayerCommandText(playerid,"/boot");
	case 4:
	{
    new sendername[MAX_PLAYER_NAME];
    GetPlayerName(playerid, sendername, sizeof(sendername));
	if(PlayerInfo[playerid][pIns] == 0) { SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет с собой набора инструментов!"); return true; }
            if(IsPlayerInAnyVehicle(playerid))
            {
            AnRepairVehicle(GetPlayerVehicleID(playerid));
            PlayerInfo[playerid][pIns] -= 1;
            GameTextForPlayer(playerid, "~g~Repair Car", 5000, 6);
            format(string,sizeof(string), "Использовал(а) набор инструментов");
            SetPlayerChatBubble(playerid,string,COLOR_PURPLE,30.0,10000);
            format(string, sizeof(string), "%s использовал(а) набор инструментов", sendername);
            ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
            }
	}
	case 5:
	    {
	      new sendername[MAX_PLAYER_NAME];
          GetPlayerName(playerid, sendername, sizeof(sendername));
          if(PlayerInfo[playerid][pCan] == 0) { SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет с собой канистры!"); return true; }
          if(IsPlayerInAnyVehicle(playerid))
          {
          Fuell[GetPlayerVehicleID(playerid)] += 50;
          PlayerInfo[playerid][pFuelcar] += 50;
          PlayerInfo[playerid][pCan] -= 1;
          GameTextForPlayer(playerid, "~g~Fill Car", 5000, 6);
          format(string,sizeof(string), "Использовал(а) канистру");
          SetPlayerChatBubble(playerid,string,COLOR_PURPLE,30.0,10000);
          format(string, sizeof(string), "%s использовал(а) канистру", sendername);
          ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
          }
    return true;
}
	case 6: OnPlayerCommandText(playerid,"/carpass"); 
}
} 
return true; 
}
Находим:
PHP:
else if (newkeys == KEY_SUBMISSION){ OnPlayerCommandText(playerid,"/en");
Заменяем на:
PHP:
else if (newkeys == KEY_SUBMISSION){ OnPlayerCommandText(playerid,"/testcommand");

Скриншот:

 
Последнее редактирование модератором:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу