package Vehicle
using RTDB, BaseStats, Driving

v_sport1_rayfield_aerondight : Vehicle_4w_Default
{
	entityTemplatePath = "base\vehicles\sport\v_sport1_rayfield_aerondight__basic_01.ent";
	visualTags = 
	[
		"Premium"
	];
	tags += 
	[
		"Sport", "CombatDisabled"
	];
	manufacturer = "Vehicle.Rayfield";
	randomPassengers = 
	[
		"Passengers.CitizenRichDriverEntry", "Passengers.CitizenRichPassengerFrontEntry"
	];
	displayName = "LocKey#95882";
	vehicleUIData = "Vehicle.VehicleRayfieldAerondightUIData";
	fk< UIIcon > icon = "UIIcon.rayfield_aerondight__basic_player_01";
	destroyedAppearance = "rayfield_aerondight__basic_burnt";
	fxWheelsDecalsFrontOverride = "Vehicle.FxWheels_Sport_M";
	fxWheelsDecals = "Vehicle.FxWheels_Sport_L";
	model = "Vehicle.Aerondight";
	widgetStyleSheetPath = "base/gameplay/gui/widgets/vehicle/rayfield/rayfield_regular.inkstyle";
	statModifiers += 
	[
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 11;
		} : ConstantStatModifier
	];
	statModifierGroups += 
	[
		"VehicleStatPreset.VeryDurable"
	];
	vehDataPackage = 
	{
		vehSeatSet = "Vehicle.Vehicle2SeatSetDefault";
		driverCombat = "DriverCombatTypes.Doors";
		entering = 2.4f;
		slideDuration = 0.8f;
		open_close_duration = 1.2f;
		normal_open = 1.7f;
		stealing_open = 3.5f;
		exitDelay = 0.2f;
		hasSpoiler = true;
		spoilerSpeedToDeploy = 16.0f;
		spoilerSpeedToRetract = 11.0f;
		windowsRollDown = false;
	} : VehicleDataPackageSport1;
	vehDefaultState = 
	{
		trunk = 
		{
			disableInteraction = true;
		};
	};
	enableDestruction = true;
	destruction = "Vehicle.VehicleDestructionParamsRayfieldAerondight";
	player_audio_resource = "v_car_rayfield_aerondight";
	traffic_audio_resource = "v_car_rayfield_aerondight_traffic";
	vehWheelDimensionsSetup = 
	{
		frontPreset = 
		{
			tireRadius = 0.415f;
			rimRadius = 0.36f;
			tireWidth = 0.32f;
			wheelOffset = 0.195f;
		} : VehicleWheelDimensionsPreset;
		backPreset = 
		{
			tireRadius = 0.415f;
			rimRadius = 0.36f;
			tireWidth = 0.365f;
			wheelOffset = 0.18f;
		} : VehicleWheelDimensionsPreset;
	} : VehicleWheelDimensionsSetup;
	vehDriveModelData = 
	{
		center_of_mass_offset = ( 0.0f, -0.07f, 0.14f );
		total_mass = 1800.0f;
		chassis_mass = 1800.0f;
		momentOfInertia = ( 5200.0f, 900.0f, 5800.0f );
		wheelTurnMaxAddPerSecond = 85.f;
		wheelTurnMaxSubPerSecond = 113.f;
		airResistanceFactor = 2.3f;
		wheelSetup = 
		{
			frontPreset = 
			{
				mass = 23.0f;
				maxBrakingTorque = 800.0f;
				tireLateralSlipEffectsMul = 1.1f;
				swaybarStiffness = 20.0f;
				swaybarLengthScalar = 1.6f;
				swaybarDisplacementLimit = 0.12;
				springStiffness = 17.0f;
				springDamping = 3600;
				springReboundDamping = 3100;
				springBoundDampingLowRate = 1850.0f;
				springReboundDampingLowRate = 1700.0f;
				springDampingLowRateCompression = 0.18f;
				springDampingHighRateCompression = 0.32f;
				extremeCompressionEventScalor = 0.75f;
				logicalSuspensionCompressionLength = 0.27f;
				visualSuspensionDroop = 0.10f;
				visualSuspensionCompressionLength = 0.08f;
				wheelsVerticalOffset = 0.02f;
			} : VehicleWheelDrivingPreset_4_RWD_Front;
			backPreset = 
			{
				mass = 23.0f;
				maxBrakingTorque = 750.0f;
				frictionMulLateral = 0.91f;
				frictionMulLongitudinal = 0.91f;
				tireLateralSlipEffectsMul = 1.0f;
				swaybarStiffness = 18.0f;
				swaybarLengthScalar = 0.9f;
				swaybarDisplacementLimit = 0.12;
				springStiffness = 18.0f;
				springDamping = 3700;
				springReboundDamping = 3200;
				springBoundDampingLowRate = 1900.0f;
				springReboundDampingLowRate = 1700.0f;
				springDampingLowRateCompression = 0.18f;
				springDampingHighRateCompression = 0.32f;
				logicalSuspensionCompressionLength = 0.27f;
				visualSuspensionDroop = 0.10f;
				visualSuspensionCompressionLength = 0.09f;
				wheelsVerticalOffset = 0.02f;
			} : VehicleWheelDrivingPreset_4_RWD_Rear;
		} : VehicleWheelDrivingSetup_4_RWD;
		driveHelpers = 
		[
			{
				type = "Vehicle.RotationLimiter_HelperType";
			} : RotationLimiter_Exotic, 
			{
				type = "Vehicle.DriveWheelsAccelerateNoise_HelperType";
			} : DriveWheelsAccelerateNoise_Sport, 
			{
				type = "Vehicle.HandbrakeFrictionModifier_HelperType";
				rearWheelsLongFrictionCoef = 0.81f;
				rearWheelsLatFrictionCoef = 0.82f;
				postHandbrakeTractionBoost = 2.0f;
			} : HandbrakeFrictionModifier_Sport, 
			{
				type = "Vehicle.UphillDriveHelper_HelperType";
			} : UphillDriveHelper_Standard, 
			{
				type = "Vehicle.DynamicDownforceHelper_HelperType";
			} : DynamicDownforceHelper_Sport, 
			{
				type = "Vehicle.InAirGravityModifier_HelperType";
			} : InAirGravityModifier, 
			{
				type = "Vehicle.RearWheelsFrictionModifier_HelperType";
				minLatFrictionCoef = 0.75f;
			} : RearWheelsFrictionModifier_Sport
		];
		burnOut = 
		{
			maxSpeedToInitiateBurnOut = 24.f;
			lateralForceMaxAcceleration = 0.4f;
			maxLateralAccelSlipRatioMultipler = 0.79f;
			maxLongFrictionSlipRatioMultipler = 0.75f;
			minLongFrictionCoeff = 0.47f;
			burnOutGripBonus = 8.0f;
			gripBonusMaxLaunchSpeed = 8.5f;
			maxBrakeForceModifier = 0.95f;
		} : VehicleBurnOut_4w_RWD;
	} : VehicleDriveModelData_Sport_RWD;
	vehEngineData = 
	{
		gearCurvesPath = "base\gameplay\vehicles\curves\engine_torque\large_balanced_na.curveset";
		engineMaxTorque = 950.0f;
		gearChangeTime = 0.15f;
		finalGearTorqueDecimationScalor = 0.9f;
	} : VehicleEngineData_4_Muscle;
	crowdMemberSettings = "Crowds.Sport_DrivingPackage";
	vehDriver_FPPCameraParams = 
	{
		lookat_offset_vertical = 0.05f;
		enable_rear_view = true;
		rear_view_offset = ( 0.0000, -1.3535, 0.9069 );
	} : VehicleDriverFPPCameraParamsDefault;
	vehDriverCombat_FPPCameraParams = 
	{
		lookat_yaw_left_offset = 0.4f;
		lookat_yaw_left_up_offset = 0.0f;
		lookat_yaw_right_offset = 0.25f;
		lookat_yaw_right_up_offset = 0.0f;
		lookat_offset_vertical = 0.05f;
		is_forward_offset = 1.0f;
		forward_offset_value = 0.10f;
	} : VehicleDriverCombatFPPCameraParamsDefault;
	tppCameraPresets = 
	[
		"Camera.VehicleTPP_4w_aerondight_High_Close", "Camera.VehicleTPP_4w_aerondight_High_Medium", "Camera.VehicleTPP_4w_aerondight_High_Far", "Camera.VehicleTPP_4w_aerondight_High_DriverCombatClose", "Camera.VehicleTPP_4w_aerondight_High_DriverCombatMedium", "Camera.VehicleTPP_4w_aerondight_High_DriverCombatFar", "Camera.VehicleTPP_4w_aerondight_Low_Close", "Camera.VehicleTPP_4w_aerondight_Low_Medium", "Camera.VehicleTPP_4w_aerondight_Low_Far", "Camera.VehicleTPP_4w_aerondight_Low_DriverCombatClose", "Camera.VehicleTPP_4w_aerondight_Low_DriverCombatMedium", "Camera.VehicleTPP_4w_aerondight_Low_DriverCombatFar"
	];
	drivingParamsPanic = "Driving.Panic_Sport";
	trafficSuspension = "Vehicle.TrafficSuspension_Sport";
	weaponSafeModeBounds = 
	{
		enableSafeModeBounds = true;
		windshieldBound = 
		{
			yawMin = -54.56f;
			yawMax = 17.67f;
		};
		backBound = 
		{
			yawMin = -109.15f;
			yawMax = 180.f;
		};
	} : WeaponSafeModeBounds;
	isArmoredVehicle = true;
}

v_sport1_rayfield_aerondight_quest : v_sport1_rayfield_aerondight
{
	savable = true;
	tags += 
	[
		"Immortal", "IgnoreImpulses"
	];
	vehDefaultState = 
	{
		DisableAllInteractions = true;
	};
}

v_sport1_rayfield_aerondight_kerry : v_sport1_rayfield_aerondight
{
	appearanceName = "rayfield_aerondight__basic_kerry";
	vehWheelDimensionsSetup = 
	{
		frontPreset = 
		{
			tireRadius = 0.415f;
			rimRadius = 0.36f;
			tireWidth = 0.31f;
			wheelOffset = 0.195f;
		} : VehicleWheelDimensionsPreset;
		backPreset = 
		{
			tireRadius = 0.415f;
			rimRadius = 0.36f;
			tireWidth = 0.34f;
			wheelOffset = 0.18f;
		} : VehicleWheelDimensionsPreset;
	} : VehicleWheelDimensionsSetup;
}

v_013_rayfield_aerodnight : v_sport1_rayfield_aerondight
{
}

VehicleDestructionParamsRayfieldAerondight : VehicleDestructionParamsDefault_4w
{
	gridDimensions = ( 2.2f, 5.2f, 0.2f );
	gridLocalOffset = ( 0.0f, -0.1f, 0.6f );
	chargePortCenter = ( -1.03624153f, 1.13144970f, 0.396615505f );
	wheels = 
	[
		{
			name = "FrontLeft";
			intact = "tire_01_fl_a";
			flat = "tire_flat_01_fl_a";
		}, 
		{
			name = "FrontRight";
			intact = "tire_01_fr_a";
			flat = "tire_flat_01_fr_a";
		}, 
		{
			name = "BackRight";
			intact = "tire_01_br_a";
			flat = "tire_flat_01_br_a";
		}, 
		{
			name = "BackLeft";
			intact = "tire_01_bl_a";
			flat = "tire_flat_01_bl_a";
		}
	];
	detachableParts = 
	[
		{
			name = "LicensePlate";
			gridCells = 
			[
				0, 1
			];
			threshold = 0.07;
			components = 
			[
				"license_plate"
			];
		}, 
		{
			name = "HoodLeft";
			gridCells = 
			[
				6
			];
			threshold = 0.7;
			components = 
			[
				"hood_a", "hood_a_shadow"
			];
		}, 
		{
			name = "HoodRight";
			gridCells = 
			[
				7
			];
			threshold = 0.7;
			components = 
			[
				"hood_b"
			];
		}, 
		{
			name = "BumperFront";
			gridCells = 
			[
				6, 7
			];
			threshold = 0.5;
			components = 
			[
				"bumper_f_01", "bumper_f_shadow"
			];
		}, 
		{
			name = "BumperBack";
			gridCells = 
			[
				0, 1
			];
			threshold = 0.4;
			components = 
			[
				"bumper_b_01", "bumper_b_shadow"
			];
		}, 
		{
			name = "DoorFrontLeft";
			gridCells = 
			[
				4
			];
			threshold = 0.65;
			components = 
			[
				"door_fl_a", "door_fl_b", "door_fl_c", "door_fl_d", "door_fl_e", "v_sport1_rayfield_aerondight__ext01_window_fl", "v_sport1_rayfield_aerondight__int01_crystal_dome_fl", "door_fl_shadow"
			];
		}, 
		{
			name = "DoorFrontRight";
			gridCells = 
			[
				5
			];
			threshold = 0.65;
			components = 
			[
				"door_fr_a", "door_fr_b", "door_fr_c", "door_fr_d", "door_fr_e", "v_sport1_rayfield_aerondight__ext01_window_fr", "v_sport1_rayfield_aerondight__int01_crystal_dome_fr", "door_fr_shadow"
			];
		}
	];
	lights = 
	[
		{
			component = "head_light_right_01";
			gridCells = 
			[
				7
			];
			threshold = 0.1f;
		}, 
		{
			component = "position_light_right_01";
			gridCells = 
			[
				7
			];
			threshold = 0.1f;
		}, 
		{
			component = "head_light_left_01";
			gridCells = 
			[
				6
			];
			threshold = 0.1f;
		}, 
		{
			component = "position_light_left_01";
			gridCells = 
			[
				6
			];
			threshold = 0.1f;
		}, 
		{
			component = "position_light_left_02";
			gridCells = 
			[
				0
			];
			threshold = 0.1f;
		}, 
		{
			component = "brake_light_left_01";
			gridCells = 
			[
				0
			];
			threshold = 0.1f;
		}, 
		{
			component = "reverse_light_left_01";
			gridCells = 
			[
				0
			];
			threshold = 0.1f;
		}, 
		{
			component = "break_light_01";
			gridCells = 
			[
				0, 1
			];
			threshold = 0.2f;
		}, 
		{
			component = "reverse_light_right_01";
			gridCells = 
			[
				1
			];
			threshold = 0.1f;
		}, 
		{
			component = "brake_light_right_01";
			gridCells = 
			[
				1
			];
			threshold = 0.1f;
		}, 
		{
			component = "position_light_right_02";
			gridCells = 
			[
				1
			];
			threshold = 0.1f;
		}
	];
	deformableParts = 
	[
		{
			component = "hood_a";
			zones = 
			[
				{
					shapes = 
					[
						0, 1
					];
					gridCells = 
					[
						4, 6, 12, 14
					];
				}
			];
		}, 
		{
			component = "hood_b";
			zones = 
			[
				{
					shapes = 
					[
						0, 1
					];
					gridCells = 
					[
						5, 7, 13, 15
					];
				}
			];
		}, 
		{
			component = "bumper_b_01";
			zones = 
			[
				{
					shapes = 
					[
						0, 1, 2, 3
					];
					gridCells = 
					[
						0, 1, 8, 9
					];
				}
			];
		}, 
		{
			component = "bumper_f_01";
			zones = 
			[
				{
					shapes = 
					[
						0, 1, 2
					];
					gridCells = 
					[
						6, 7, 14, 15
					];
				}
			];
		}, 
		{
			component = "body_01";
			zones = 
			[
				{
					shapes = 
					[
						1, 10
					];
					gridCells = 
					[
						6, 7
					];
				}, 
				{
					shapes = 
					[
						3, 4, 12
					];
					gridCells = 
					[
						0, 1, 2, 3, 8, 9, 10, 11
					];
				}
			];
		}
	];
	doorDetachRules = 
	[
		{
			componentToQuery = "door_fr_a";
			doorEnumIndex = 1;
			partsToDetach = 
			[
				"DoorFrontRight"
			];
		}, 
		{
			componentToQuery = "door_fl_a";
			doorEnumIndex = 0;
			partsToDetach = 
			[
				"DoorFrontLeft"
			];
		}
	];
}

VehicleRayfieldAerondightUIData : VehicleDefaultUIData
{
	productionYear = "2075-2077";
	driveLayout = "LocKey#45371";
	horsepower = 950.0f;
	mass = 1838.0f;
	info = "LocKey#53530";
}

