
// БК - боевая кнопка (гашетка)
// ЛА - летательный аппарат
// СК - система координат
// ССК - связанная СК

// Варианты модификации вооружения

// GunsVisualize = true // Визуализация отладочной графической информации о позиции, ориентации СК, массе и аэродинамическом сопротивлении лафетов и стрелкового оружия

// Если пользователем выбрано одновременно несколько WeaponModes, то для решения возможных коллизий и нестыковок между ними приоритет отдан WeaponModes с бОльшими номерами
// Поэтому инициализация начинается с WeaponMode=31, и заканчивается WeaponMode=0 (default)

[WeaponMode=0] // Номер WeaponMode
	PlaneModArg=-1
	TurretID=-1
	TurretDefault=""
	TurretMod=""

	[AdditionalElement]
		AttachToPart = "part_name"  // Наименование CollisionBox той части ЛА, к которой присоединяется дополнительный элемент конструкции
		Position = 0.0, 0.0, 0.0 // Координаты ц.м. и центра площади дополнительного элемента конструкции в ССК ЛА, [м]
		Mass = 0.0 // Масса дополнительного элемента конструкции, [кг], (>=0)
		CxaS = 0.0 // Произведение коэффициента лобового сопротивления на площадь миделевого сечения дополнительного элемента конструкции, [кв.м], (>=0)
	[end]

	[Gun=1] // Номер слота стрелкового оружия, [0...5]
		GunType = "Reserved" // Слот зарезервирован для WeaponMode с меньшими порядковыми номерами
	[end]

	[Gun=0] // Номер слота стрелкового оружия, [0...5]
		GunType = "LuaScripts/WorldObjects/Weapons/Vickers_MK1.txt" // Путь к файлу конфигурации данной модели (образца) стрелкового оружия

		AttachToPart = "part_name" // Наименование CollisionBox той части ЛА, к которой присоединяется лафет стрелкового оружия (ВНИМАНИЕ! Оружие может быть установлено на ЛА ТОЛЬКО с помощью лафета!)

		WeaponGroupCommon = false // Принадлежность стрелкового оружия к общей группе управления огнём "стрельба из всего оружия"
		WeaponGroup1 = false // Принадлежность стрелкового оружия к 1-ой группе управления огнём
		WeaponGroup2 = false // Принадлежность стрелкового оружия ко 2-ой группе управления огнём
		WeaponGroup3 = false // Принадлежность стрелкового оружия к 3-ей группе управления огнём
		
		ProbabilityOfHit = 0.0 // Вероятность повреждения стрелкового оружия при попадании средствами поражения по той части ЛА, к которой присоединяется лафет стрелкового оружия, [безразм.], [0...1]

		CarriagePosition = 0.0, 0.0, 0.0 // Координаты начала ССК лафета стрелкового оружия в ССК ЛА, [м]
		CarriageYawPitchRoll = 0.0, 0.0, 0.0 // Угловая ориентация ССК лафета стрелкового оружия в ССК ЛА: рыскание, тангаж, крен, [град.]

		CarriageMass = 1.0 // Масса лафета стрелкового оружия, [кг], (>0)
		CarriageMassPosition_inCarriageAxis = 0.0, 0.0, 0.0 // Координаты ц.м. лафета стрелкового оружия в ССК лафета стрелкового оружия, [м]
		CarriageMOI_inCarriageAxis = 1.0, 1.0, 1.0, 0.0, 0.0, 0.0 // Осевые (Ixx > 0, Iyy > 0, Izz > 0) и центробежные (Ixy, Ixz, Iyz) моменты инерции лафета стрелкового оружия относительно осей, параллельных осям ССК лафета и проходящих через его ц.м, [кг*м^2]

		CarriageCxaS = 0.0 // Произведение коэффициента лобового сопротивления на площадь миделевого сечения лафета стрелкового оружия, [кв.м], (>=0)
		CarriageDragPosition = 0.0, 0.0, 0.0 // Координаты центра площади миделевого сечения лафета стрелкового оружия в ССК ЛА, [м]

		GunPositionArgIdx = -1 // Номер аргумента графической анимации положения стрелкового оружия на лафете, (>=0), default = -1 (не инициализирован)
		GunPositionArgKeys = 0.02, 0.98	// Ключевые значения аргумента графической анимации положения стрелкового оружия на лафете:
						//  первое число - точка окончания снятия стрелкового оружия с замка фиксации исходного положения оружия на лафете и начала движения оружия из исходного положения в отклонённое, [безразм.], [0...второе число]
						//  второе число - точка окончания движения оружия из исходного положения в отклонённое и начала установки стрелкового оружия на замок фиксации отклонённого положения, [безразм.], [первое число...1]

		GunMovingTime = 0.5, 1.0, 0.5 // Временные интервалы этапов перемещения стрелкового оружия на лафете:
					      //  первое число - время снятия стрелкового оружия с замка фиксации текущего положения на лафете, [сек], (>=0)
					      //  второе число - время перемещения стрелкового оружия из одного фиксированного положения в другое, [сек], (>=0)
					      //  третье число - время установки стрелкового оружия на замок фиксации нового положения оружия на лафете, [сек], (>=0)

		GunMovingSoundIdx = -1 // Тип звуковой анимации перемещения стрелкового оружия на лафете, (>=0), по умолчанию: -1 (не инициализирован)
				       // 0 - рельсовая направляющая
				       // 1 - поворотный шарнир

		DefaultGunPosition = 0.0, 0.0, 0.0 // Координаты начала ССК стрелкового оружия в ССК ЛА в исходном положении стрелкового оружия на лафете, [м]
		DefaultGunYawPitchRoll = 0.0, 0.0, 0.0 // Угловая ориентация ССК стрелкового оружия в ССК ЛА в исходном положении стрелкового оружия на лафете: рыскание, тангаж, крен, [град.]

		DefaultGunCxaS = 0.0 // Произведение коэффициента лобового сопротивления на площадь миделевого сечения стрелкового оружия в исходном положении стрелкового оружия на лафете, [кв.м], (>=0)
		DefaultGunDragPosition = 0.0, 0.0, 0.0 // Координаты в ССК ЛА центра площади миделевого сечения стрелкового оружия в исходном положении стрелкового оружия на лафете, [м]

		[AdditionalGunPosition] // Дополнительное положение стрелкового оружия на лафете (количество дополнительных положений не ограничено)
			Stage = 1.0 // Этап перемещения стрелкового оружия на лафете, соответствующий данному положению стрелкового оружия, (безразм) [0(default) ... 1(deflected)] (ВНИМАНИЕ! Значение этапа должно быть >0 и уникальным для каждого дополнительного положения!)
			GunPosition = 0.0, 0.0, 0.0 // Координаты начала ССК стрелкового оружия в ССК ЛА в данном положении стрелкового оружия на лафете, [м]
			GunYawPitchRoll = 0.0, 0.0, 0.0 // Угловая ориентация ССК стрелкового оружия в ССК ЛА в данном положении стрелкового оружия на лафете: рыскание, тангаж, крен, [град.]
			GunCxaS = 0.0 // Произведение коэффициента лобового сопротивления на площадь миделевого сечения стрелкового оружия в данном положении стрелкового оружия на лафете, [кв.м], (>=0)
			GunDragPosition = 0.0, 0.0, 0.0 // Координаты в ССК ЛА центра площади миделевого сечения стрелкового оружия в данном положении стрелкового оружия на лафете, [м]
		[end]

		[AdditionalGunPosition] // Ещё одно дополнительное положение стрелкового оружия на лафете (количество дополнительных положений не ограничено)
			Stage = 0.2
			GunPosition = 0.0, 0.0, 0.0
			GunYawPitchRoll = 0.0, 0.0, 0.0
			GunCxaS = 0.0
			GunDragPosition = 0.0, 0.0, 0.0
		[end]

		AmmunitionAttachToPart = "part_name"  // Наименование CollisionBox той части ЛА, к которой присоединяется боекомплект стрелкового оружия
		AmmunitionPosition = 0.0, 0.0, 0.0 // Координаты ц.м. боекомплекта стрелкового оружия в ССК ЛА, [м]

		CartridgeCasesEjection = true // Флаг запрещающий выброс стрелянных гильз стрелкового оружия за борт ЛА [false - гильзы остаются на борту ЛА; true (default) - параметры выброса стрелянных гильз заданы в конфигурации модели (образца) стрелкового оружия]
		CartridgeCasesEjectionPosition = 0.0, 0.0, 0.0 // Переопределение координат точки выброса стрелянных гильз стрелкового оружия в ССК ЛА, [м]
		CartridgeCasesEjectionSpeed = 0.0, 0.0, 0.0 // Переопределение вектора линейной скорости выброса стрелянных гильз стрелкового оружия в ССК ЛА, [м/сек]

		CockpitGun = true // Оружие считается расположеным в кабине пилота (по умолчанию: false)
		OverwingGun = false // Оружие считается расположеным над кабиной пилота (над верхним крылом ЛА) (по умолчанию: false)
		WingGun = false // Оружие считается расположеным на крыле ЛА (по умолчанию: false)
		ForwardGun = -1 // Значение аргумента графической анимации положения стрелкового оружия на лафете, при котором оружие считается ориентированым по курсу полёта ЛА, [0; 1], по умолчанию: -1 (не инициализировано)

		[Synchronizer=1] // Номер двигателя, с которым синхронизируется работа стрелкового оружия, (>0)
			minRPM = 300.0 // Модуль минимальной частоты вращения воздушного винта, при которой синхронизатор способен нажимать спусковой крючок стрелкового оружия , [об/мин]
			Point = 180.0, 0.0 // Ключевое значение максимально возможного положения спускового крючка стрелкового оружия при нажатой БК:
					   // первое число - угол поворота воздушного винта, [0...360°], (отсчитывается вправо (по часовой стрелке) по полёту)
					   // второе число - соответствующее этому углу максимально возможное положение спускового крючка стрелкового оружия при нажатой БК: [0(отпущен)...1(нажат)]
					   // Между различными ключевыми значениями максимально возможного положения спускового крючка стрелкового оружия при нажатой БК производится линейная интерполяция
			Point = 190.0, 1.0
			Point = 200.0, 0.0
		[end]

		BarrelTemperatureDecreaseCorrectionData = 1.0, 2.0, 100.0 // Закон охлаждения стрелкового оружия в зависимости от скоростного напора:
									  //  первое число - коэффициент коррекции коэффициента уменьшения температуры ствола стрелкового оружия, находящегося в неподвижном состоянии, [безразм.], (0...1(default)]
									  //  второе число - коэффициент коррекции коэффициента уменьшения температуры ствола стрелкового оружия, находящегося в неподвижном состоянии, при скорости обтекания стрелкового оружия воздушным потоком, заданной третьим числом, [безразм.], (>= первое число), по умолчанию: 1.0
									  //  третье число - скорость обтекания стрелкового оружия воздушным потоком, при которой во втором числе задан коэффициент коррекции коэффициента уменьшения температуры ствола стрелкового оружия, находящегося в неподвижном состоянии, [км/ч], (>=0), по умолчанию: 0.0

		CarriageAdditionalBulletDispertionAngle = 0.0, 0.0 // Добавочные углы рассеивания пуль (снарядов) относительно оси ствола стрелкового оружия, обусловленные особенностями конструкции лафета стрелкового оружия:
									  //  первое число - добавочный угол рассеивания при первом выстреле в очереди, [°], (>=0)
									  //  второе число - добавочный угол рассеивания при втором и последующих выстрелах в очереди, [°], (>= первое число)

		MaxReservedMagazines = 0 // Максимальное количество дополнительных патронных лент (магазинов) в боекомплекте стрелкового оружия, (>=0)

		CockingPosition = 0.0, 1.0 // Минимальное и максимальное значения аргумента графической анимации положения стрелкового оружия на лафете, определяющие диапазон положений стрелкового оружия на лафете в котором может выполняться взведение стрелкового оружия
		ReLoadingPosition = 0.98, 1.0 // Минимальное и максимальное значения аргумента графической анимации положения стрелкового оружия на лафете, определяющие диапазон положений стрелкового оружия на лафете в котором может выполняться перезарядка стрелкового оружия

		ReLoadingStagesTime = 0.5, 2.5, 0.5, 0.3 // Временные интервалы этапов перезарядки стрелкового оружия:
							 //  первое число - время снятия патронной ленты (магазина) со стрелкового оружия, [сек], (>=0)
							 //  второе число - пауза, в течение которой патронная лента (магазин) не отображается, [сек], (>=0)
							 //  третье число - время зарядки новой патронной ленты (магазина) в стрелковое оружие, [сек], (>=0)
							 //  четвёртое число - пауза между перезарядкой и взведением стрелкового оружия, [сек], (>=0)

		AfterServiceOperationDelay = 0.0 // Временная пауза после выполнения сервисной операции со стрелковым оружием, [сек], (>=0)

		ReArmTime = 60 // Время перевооружения боекомплекта при техническом обслуживании, [сек], (>=0, или -1 если перевооружение невозможно) 

		FireButtonArgIdx = -1 // Номер аргумента графической анимации положения боевой кнопки (гашетки) в кабине ЛА, управляющей стрелковым оружием, (>=0), по умолчанию: -1 (не инициализирован)

		SafetyLockPositionArgIdx = -1 // Номер аргумента графической анимации положения предохранителя стрелкового оружия, (>=0), default = -1 (не инициализирован)
		TriggerPositionArgIdx = -1 // Номер аргумента графической анимации положения спускового крючка стрелкового оружия, (>=0), default = -1 (не инициализирован)

		FiringPinPositionArgIdx = -1 // Номер аргумента графической анимации положения бойка стрелкового оружия, (>=0), default = -1 (не инициализирован)

		AmmunitionMovingArgIdx = -1 // Номер аргумента графической анимации протяга патронной ленты (поворота барабанного магазина) стрелкового оружия, (>=0), default = -1 (не инициализирован)
		RoundsInMagazineArgIdx = -1 // Номер аргумента графической анимации остатка патронов в патронной ленте (в расходуемом магазине) стрелкового оружия, (>=0), default = -1 (не инициализирован)
		HideAmmunitionArgIdx = -1 // Номер аргумента визуализации патронной ленты (магазина) стрелкового оружия, (>=0), default = -1 (не инициализирован)
		ReLoadingArgIdx = -1 // Номер аргумента графической анимации перезарядки стрелкового оружия, (>=0), default = -1 (не инициализирован)


		AzimuthDeviationArgIdx = -1 // Номер аргумента графической анимации отклонения ствола стрелкового оружия от оси OX ССК оружия по углу азимута (горизонтальное биение ствола оружия при стрельбе), (>=0), default = -1 (не инициализирован)
		ElevationDeviationArgIdx = -1 // Номер аргумента графической анимации отклонения ствола стрелкового оружия от оси OX ССК оружия по углу места (вертикальное биение ствола оружия при стрельбе), (>=0), default = -1 (не инициализирован)

		FlashAnimationGroup = -1 // Номер группы, к которой относится спецэффект вспышки выстрела: 0, 1, 2, default = -1 (не инициализирован)
		FlashAnimationArgIdx = -1 // Номер аргумента графической анимации пламени выстрела стрелкового оружия, (>=0), default = -1 (не инициализирован)

		DrawAnimationArgIdx = 0, 9000	// Назначение номера дополнительного аргумента графической анимации стрелкового оружия
						// первое число - уникальный идентификационный номер аргумента графической анимации данной модели (образца) стрелкового оружия, (>=0)
						// второе число - переназначаемый номер аргумента графической анимации стрелкового оружия в общей системе аргументов графической анимации объекта, (>=0)

		DrawAnimationArgIdx = 1, 9001	// Назначение номера дополнительного аргумента графической анимации стрелкового оружия
						// первое число - уникальный идентификационный номер аргумента графической анимации данной модели (образца) стрелкового оружия, (>=0)
						// второе число - переназначаемый номер аргумента графической анимации стрелкового оружия в общей системе аргументов графической анимации объекта, (>=0)

		GunSoundsIdx = -1 // Номер внутренней звуковой звуковой анимации стрелкового оружия, (>=0), по умолчанию: -1 (не инициализирован)

		ShotSoundType = -1 // Номер внешней звуковой анимации выстрела стрелкового оружия, (>=0), по умолчанию: -1 (не инициализирован)
	[end]
[end]

[GunAmmunition=0] // Вариант боекомплекта стрелкового оружия
	ExpendableMass = 0.0 // Расходуемая часть массы боекомплекта стрелкового оружия, [кг], (>=0)
	ResidualMass = 0.0 // Нерасходуемая (остаточная) часть массы боекомплекта стрелкового оружия, [кг], (>=0)
	MaxRoundsInMagazine = 1 // Максимальное количество патронов (снарядов) в одном магазине (патронной ленте, диске, обойме), (>0), по умолчанию: 1
	RoundsInMagazine = 0 // Фактически заряженное количество патронов (снарядов) в одном магазине (патронной ленте, диске, обойме), (>=0), default = 0
	ReservedMagazines = 0 // Количество запасных (!) магазинов (патронных лент, дисков, обойм) для данного стрелкового оружия, (>=0), default = 0
	MaxMisFiresInMagazine = 0 // Максимально возможное количество бракованных патронов (снарядов) в одном магазине (патронной ленте, диске, обойме), (>=0), default = 0
	AmountRoundsWithOneTracer = 0 // Количество боеприпасов (пуль, снарядов) включающих в себя 1 трассирующий, (>=0), default = 0 (т.е. трассирующих боеприпасов (пуль, снарядов) в данном варианте боекомплекта нет)
	TracerIdx = 0 // ?
	object0 = "LuaScripts/WorldObjects/Weapons/Bullet0.txt" // Путь к файлу конфигурации данного типа боеприпаса стрелкового оружия
	object1 = "LuaScripts/WorldObjects/Weapons/Bullet0.txt" // Путь к файлу конфигурации данного типа боеприпаса стрелкового оружия
[end]
