Доступ к готовым решениям

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

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

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

Поворотники по координатам текстуры машины

killswich

Умник
Автора изначального кода не помню, по сути от него осталось только 4 строки и массив.
Если наберу плюсов много, выложу сюда все остальные координаты, как сам дособираю.



Создадим массив.

PHP:
enum VehControl
{
	vLeftLamp,
	vRightLamp,
}

В OnPlayerVehicleSpawn добавим

PHP:
DestroyObject(Lamps[vehicleid][0]);
DestroyObject(Lamps[vehicleid][1]);
VehInfo[vehicleid][vRightLamp] = 0;
DestroyObject(Lamps[vehicleid][2]);
DestroyObject(Lamps[vehicleid][3]);
VehInfo[vehicleid][vLeftLamp] = 0;

В OnPlayerKeyStateChange вставляем

PHP:
    new v = GetPlayerVehicleID(playerid); // Записываем id транспорта в переменную
    new modelp = GetVehicleModel(v); // Записываем id модели транспорта в переменную
	if(newkeys&64) // Если нажали "E" (англ.)
	{
		if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) // Если в транспорте без поворотников
		{
			if(modelp == 509 || modelp == 481 || modelp == 510 || modelp == 577
			|| modelp == 511 || modelp == 512 || modelp == 593 || modelp == 520
			|| modelp == 553 || modelp == 476 || modelp == 519 || modelp == 460
			|| modelp == 513 || modelp == 548 || modelp == 425 || modelp == 417
			|| modelp == 487 || modelp == 488 || modelp == 497 || modelp == 563
			|| modelp == 447 || modelp == 469 || modelp == 430 || modelp == 446
			|| modelp == 452 || modelp == 453 || modelp == 454 || modelp == 472
			|| modelp == 473 || modelp == 484 || modelp == 493 || modelp == 539
			|| modelp == 595 || modelp == 462 || modelp == 522 || modelp == 581
			|| modelp == 521 || modelp == 461 || modelp == 523 || modelp == 586
			|| modelp == 468 || modelp == 448 || modelp == 471)
		{
		return 1;
		}
			if(VehInfo[v][vRightLamp] == 0) // Если правый поворотник выключил
			{ // Дальше код повторяется, меняем только id и координаты
			    if(modelp == 400)
			    {
					Lamps[v][0] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0,0.0,100.0);//Создаем объект для правого переднего поворотника
					Lamps[v][1] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,100.0);//Создаем объект для правого заднего поворотника
					AttachObjectToVehicle(Lamps[v][0], v, 0.899999,2.025000,-0.075000,0.000000,0.000000,0.000000);//крепим правый передний
					AttachObjectToVehicle(Lamps[v][1], v, 0.899999,-2.250000,-0.075000,0.000000,0.000000,0.000000);//крепим правый задний
					VehInfo[v][vRightLamp] = 1; // Записываем что теперь он включен
				} // Далее по аналогии
			    if(modelp == 401)
			    {
					Lamps[v][0] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0,0.0,100.0);//Правй передний
					Lamps[v][1] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,100.0);//Правый задний
					AttachObjectToVehicle(Lamps[v][0], v, 0.974999,2.550000,0.000000,0.000000,0.000000,0.000000);//Правый передний
					AttachObjectToVehicle(Lamps[v][1], v, 0.899999,-2.325000,0.000000,0.000000,0.000000,0.000000);//Правый задний
					VehInfo[v][vRightLamp] = 1;
				}
			    if(modelp == 402)
			    {
					Lamps[v][0] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0,0.0,100.0);//Правй передний
					Lamps[v][1] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,100.0);//Правый задний
					AttachObjectToVehicle(Lamps[v][0], v, 0.899999,2.625000,-0.075000,0.000000,0.000000,0.000000);//Правый передний
					AttachObjectToVehicle(Lamps[v][1], v, 0.899999,-2.400000,0.000000,0.000000,0.000000,0.000000);//Правый задний
					VehInfo[v][vRightLamp] = 1;
				}
			    if(modelp == 403)
			    {
					Lamps[v][0] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0,0.0,100.0);//Правй передний
					Lamps[v][1] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,100.0);//Правый задний
					AttachObjectToVehicle(Lamps[v][0], v, 1.350000,-4.050001,-0.300000,0.000000,0.000000,0.000000);//Правый передний
					AttachObjectToVehicle(Lamps[v][1], v, 1.049999,4.425000,-0.824999,0.000000,0.000000,0.000000);//Правый задний
					VehInfo[v][vRightLamp] = 1;
				}
			    if(modelp == 404)
			    {
					Lamps[v][0] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0,0.0,100.0);//Правй передний
					Lamps[v][1] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,100.0);//Правый задний
					AttachObjectToVehicle(Lamps[v][0], v, 0.750000,2.100000,0.000000,0.000000,0.000000,0.000000);//Правый передний
					AttachObjectToVehicle(Lamps[v][1], v, 0.824999,-2.775001,0.000000,0.000000,0.000000,0.000000);//Правый задний
					VehInfo[v][vRightLamp] = 1;
				}
			    if(modelp == 405)
			    {
					Lamps[v][0] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0,0.0,100.0);//Правй передний
					Lamps[v][1] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,100.0);//Правый задний
					AttachObjectToVehicle(Lamps[v][0], v, 0.899999,2.250000,-0.075000,0.000000,0.000000,0.000000);//Правый передний
					AttachObjectToVehicle(Lamps[v][1], v, 0.899999,-2.625000,-0.075000,0.000000,0.000000,0.000000);//Правый задний
					VehInfo[v][vRightLamp] = 1;
				}
			    if(modelp == 406)
			    {
					Lamps[v][0] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0,0.0,100.0);//Правй передний
					Lamps[v][1] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,100.0);//Правый задний
					AttachObjectToVehicle(Lamps[v][0], v, 1.950000,4.949999,0.000000,0.000000,0.000000,0.000000);//Правый передний
					AttachObjectToVehicle(Lamps[v][1], v, 2.250000,-5.099998,0.449999,0.000000,0.000000,0.000000);//Правый задний
					VehInfo[v][vRightLamp] = 1;
				}
			    if(modelp == 408)
			    {
					Lamps[v][0] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0,0.0,100.0);//Правй передний
					Lamps[v][1] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,100.0);//Правый задний
					AttachObjectToVehicle(Lamps[v][0], v, 0.974999,4.799999,-0.150000,0.000000,0.000000,0.000000);//Правый передний
					AttachObjectToVehicle(Lamps[v][1], v, 0.824999,-4.125001,-0.449999,0.000000,0.000000,0.000000);//Правый задний
					VehInfo[v][vRightLamp] = 1;
				}
			}
			else if(VehInfo[v][vRightLamp] == 1) //Если вклен правый выключаем
			{
				DestroyObject(Lamps[v][0]);
				DestroyObject(Lamps[v][1]);
				VehInfo[v][vRightLamp] = 0;
			}
			else if(VehInfo[v][vLeftLamp] == 1) // Если включен левый выключаем
			{
				DestroyObject(Lamps[v][2]);
				DestroyObject(Lamps[v][3]);
				VehInfo[v][vLeftLamp] = 0;
			}
		}
	} // Далее по аналогии тольок с левым
	if(newkeys&256)
	{
		if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
		{
			if(modelp == 509 || modelp == 481 || modelp == 510 || modelp == 577
			|| modelp == 511 || modelp == 512 || modelp == 593 || modelp == 520
			|| modelp == 553 || modelp == 476 || modelp == 519 || modelp == 460
			|| modelp == 513 || modelp == 548 || modelp == 425 || modelp == 417
			|| modelp == 487 || modelp == 488 || modelp == 497 || modelp == 563
			|| modelp == 447 || modelp == 469 || modelp == 430 || modelp == 446
			|| modelp == 452 || modelp == 453 || modelp == 454 || modelp == 472
			|| modelp == 473 || modelp == 484 || modelp == 493 || modelp == 539
			|| modelp == 595 || modelp == 462 || modelp == 522 || modelp == 581
			|| modelp == 521 || modelp == 461 || modelp == 523 || modelp == 586
			|| modelp == 468 || modelp == 448 || modelp == 471)
		{
		return 1;
		}
			if(VehInfo[v][vLeftLamp] == 0)
			{
			    if(modelp == 400)
			    {
					Lamps[v][2] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый передний
					Lamps[v][3] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый задний
					AttachObjectToVehicle(Lamps[v][2], v, -0.899999,2.025000,-0.075000,0.000000,0.000000,0.000000);//Левый передний
					AttachObjectToVehicle(Lamps[v][3], v, -0.899999,-2.250000,-0.075000,0.000000,0.000000,0.000000);//Левый зайдний
					VehInfo[v][vLeftLamp] = 1;
				}
			    if(modelp == 401)
			    {
					Lamps[v][2] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый передний
					Lamps[v][3] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый задний
					AttachObjectToVehicle(Lamps[v][2], v, -0.974999,2.475000,0.000000,0.000000,0.000000,0.000000);//Левый передний
					AttachObjectToVehicle(Lamps[v][3], v, -0.899999,-2.325000,0.000000,0.000000,0.000000,0.000000);//Левый зайдний
					VehInfo[v][vLeftLamp] = 1;
				}
			    if(modelp == 402)
			    {
					Lamps[v][2] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый передний
					Lamps[v][3] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый задний
					AttachObjectToVehicle(Lamps[v][2], v, -0.899999,2.550000,-0.075000,0.000000,0.000000,0.000000);//Левый передний
					AttachObjectToVehicle(Lamps[v][3], v, -0.974999,-2.400000,0.000000,0.000000,0.000000,0.000000);//Левый зайдний
					VehInfo[v][vLeftLamp] = 1;
				}
			    if(modelp == 403)
			    {
					Lamps[v][2] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый передний
					Lamps[v][3] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый задний
					AttachObjectToVehicle(Lamps[v][2], v, -0.974999,4.500000,-0.824999,0.000000,0.000000,0.000000);//Левый передний
					AttachObjectToVehicle(Lamps[v][3], v, -1.350000,-3.975001,-0.300000,0.000000,0.000000,0.000000);//Левый зайдний
					VehInfo[v][vLeftLamp] = 1;
				}
			    if(modelp == 404)
			    {
					Lamps[v][2] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый передний
					Lamps[v][3] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый задний
					AttachObjectToVehicle(Lamps[v][2], v, -0.749999,2.100000,0.000000,0.000000,0.000000,0.000000);//Левый передний
					AttachObjectToVehicle(Lamps[v][3], v, -0.824999,-2.775000,0.000000,0.000000,0.000000,0.000000);//Левый зайдний
					VehInfo[v][vLeftLamp] = 1;
				}
			    if(modelp == 405)
			    {
					Lamps[v][2] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый передний
					Lamps[v][3] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый задний
					AttachObjectToVehicle(Lamps[v][2], v, -0.899999,2.250000,-0.075000,0.000000,0.000000,0.000000);//Левый передний
					AttachObjectToVehicle(Lamps[v][3], v, -0.899999,-2.625000,-0.075000,0.000000,0.000000,0.000000);//Левый зайдний
					VehInfo[v][vLeftLamp] = 1;
				}
			    if(modelp == 406)
			    {
					Lamps[v][2] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый передний
					Lamps[v][3] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый задний
					AttachObjectToVehicle(Lamps[v][2], v, -2.250000,4.949999,-0.075000,0.000000,0.000000,0.000000);//Левый передний
					AttachObjectToVehicle(Lamps[v][3], v, -2.250000,-5.099998,0.449999,0.000000,0.000000,0.000000);//Левый зайдний
					VehInfo[v][vLeftLamp] = 1;
				}
			    if(modelp == 408)
			    {
					Lamps[v][2] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый передний
					Lamps[v][3] = CreateObject(19294, 0.0, 0.0, 0.0, 0.0,0.0, 0.0,100.0);//Левый задний
					AttachObjectToVehicle(Lamps[v][2], v, -0.974999,4.799999,-0.150000,0.000000,0.000000,0.000000);//Левый передний
					AttachObjectToVehicle(Lamps[v][3], v, -0.824999,-4.050001,-0.449999,0.000000,0.000000,0.000000);//Левый зайдний
					VehInfo[v][vLeftLamp] = 1;
				}
			}
			else if(VehInfo[v][vLeftLamp] == 1)
			{
				DestroyObject(Lamps[v][2]);
				DestroyObject(Lamps[v][3]);
				VehInfo[v][vLeftLamp] = 0;
			}
			else if(VehInfo[v][vRightLamp] == 1)
			{
				DestroyObject(Lamps[v][0]);
				DestroyObject(Lamps[v][1]);
				VehInfo[v][vRightLamp] = 0;
			}
		}
	}

 
Последнее редактирование:
Сверху Снизу