package Vehicle
using RTDB, BaseStats, Driving, Camera

v_sport2_villefort_alvarado : Vehicle_4w_Default
{
	entityTemplatePath = "base\vehicles\sport\v_sport2_villefort_alvarado__basic_01.ent";
	visualTags = 
	[
		"Standard"
	];
	tags += 
	[
		"Sport"
	];
	manufacturer = "Vehicle.Villefort";
	randomPassengers = 
	[
		"Passengers.LowlifeDriverEntry", "Passengers.LowlifePassengerFrontEntry"
	];
	displayName = "LocKey#1619";
	vehicleUIData = "Vehicle.VehicleVillefortAlvaradoUIData";
	fk< UIIcon > icon = "UIIcon.villefort_alvarado__basic_player_01";
	headlightColor = 
	[
		210, 210, 255, 255
	];
	destroyedAppearance = "villefort_alvarado__basic_burnt_01";
	fxWheelsDecalsFrontOverride = "Vehicle.FxWheels_Radial_M";
	fxWheelsDecals = "Vehicle.FxWheels_Radial_L";
	model = "Vehicle.Alvarado";
	player_audio_resource = "v_car_villefort_alvarado";
	traffic_audio_resource = "v_car_villefort_alvarado_traffic";
	widgetStyleSheetPath = "base/gameplay/gui/widgets/vehicle/villefort/villefort_regular.inkstyle";
	statModifiers += 
	[
		{
			statType = "BaseStats.PowerLevel";
			modifierType = "Additive";
			value = 5;
		} : ConstantStatModifier
	];
	statModifierGroups += 
	[
		"VehicleStatPreset.Durable"
	];
	enableDestruction = true;
	destruction = "Vehicle.VehicleDestructionParamsAlvarado";
	vehDataPackage = 
	{
		useAuxiliary = true;
		vehSeatSet = "Vehicle.Vehicle2SeatSetDefault";
		canStoreBody = true;
	} : VehicleDataPackageSport2;
	vehWheelDimensionsSetup = 
	{
		frontPreset = 
		{
			tireRadius = 0.40f;
			rimRadius = 0.315f;
			tireWidth = 0.29f;
			wheelOffset = 0.05f;
		} : VehicleWheelDimensionsPreset;
		backPreset = 
		{
			tireRadius = 0.40f;
			rimRadius = 0.34f;
			tireWidth = 0.40f;
			wheelOffset = -0.04f;
		} : VehicleWheelDimensionsPreset;
	} : VehicleWheelDimensionsSetup;
	vehDriveModelData = "Vehicle.VehicleDriveModelData_Alvarado";
	vehEngineData = "Vehicle.VehicleEngineData_4_Regular_Large";
	vehDriver_FPPCameraParams = 
	{
		lookat_offset_vertical = 0.07f;
		enable_rear_view = true;
		rear_view_offset = ( 0.0000, -2.1978, 0.8259 );
	} : VehicleDriverFPPCameraParamsDefault;
	vehDriverCombat_FPPCameraParams = 
	{
		lookat_offset_vertical = 0.07f;
		is_forward_offset = 1.0f;
		forward_offset_value = 0.0f;
	} : VehicleDriverCombatFPPCameraParamsDefault;
	tppCameraPresets = 
	[
		"Camera.VehicleTPP_4w_Alvarado_Preset_High_Close", "Camera.VehicleTPP_4w_Alvarado_Preset_High_Medium", "Camera.VehicleTPP_4w_Alvarado_Preset_High_Far", "Camera.VehicleTPP_4w_Alvarado_Preset_High_DriverCombatClose", "Camera.VehicleTPP_4w_Alvarado_Preset_High_DriverCombatMedium", "Camera.VehicleTPP_4w_Alvarado_Preset_High_DriverCombatFar", "Camera.VehicleTPP_4w_Alvarado_Preset_Low_Close", "Camera.VehicleTPP_4w_Alvarado_Preset_Low_Medium", "Camera.VehicleTPP_4w_Alvarado_Preset_Low_Far", "Camera.VehicleTPP_4w_Alvarado_Preset_Low_DriverCombatClose", "Camera.VehicleTPP_4w_Alvarado_Preset_Low_DriverCombatMedium", "Camera.VehicleTPP_4w_Alvarado_Preset_Low_DriverCombatFar"
	];
	trafficSuspension = "Vehicle.TrafficSuspension_Sport";
}

VehicleDriveModelData_Alvarado : VehicleDriveModelData_Regular_Medium_RWD
{
	center_of_mass_offset = ( 0.0f, 0.18f, 0.22f );
	momentOfInertia = ( 7300.0f, 1150.0f, 7900.0f );
	chassis_mass = 2350.0f;
	total_mass = 2350.0f;
	wheelTurnMaxAddPerSecond = 60.f;
	wheelTurnMaxSubPerSecond = 100.f;
	turnUpdateMidSpeedTurnMul = 0.77f;
	turnUpdateMidSpeedTurnChangeMul = 1.15f;
	turnUpdateMaxSpeedTurnChangeMul = 1.31f;
	airResistanceFactor = 2.1f;
	handbrakeBrakingTorque = 1100.f;
	wheelSetup = 
	{
		frontPreset = 
		{
		} : VehicleWheelDrivingPreset_Alvarado_Front;
		backPreset = 
		{
		} : VehicleWheelDrivingPreset_Alvarado_Rear;
	} : VehicleWheelDrivingSetup_4_RWD;
	burnOut = 
	{
		lateralForceMaxAcceleration = 0.29f;
		lateralForceMaxSpeed = 5.8f;
		lateralAccelForwardSpeedMaxDecimation = 0.99f;
		maxLateralAccelSlipRatioMultipler = 0.69f;
	} : VehicleBurnOut_4w_RWD_Lux;
}

VehicleWheelDrivingPreset_Alvarado_Front : VehicleWheelDrivingPreset_Cortes_Front
{
	maxBrakingTorque = 660.0f;
	frictionMulLateral = 0.89f;
	frictionMulLongitudinal = 0.88f;
	tireLateralSlipEffectsMul = 0.5f;
	swaybarLengthScalar = 1.7f;
	swaybarDisplacementLimit = 0.22f;
	springDamping = 3500;
	springReboundDamping = 3000;
	springDampingHighRateCompression = 0.50f;
	wheelsVerticalOffset = 0.05f;
	visualSuspensionCompressionLength = 0.07f;
}

VehicleWheelDrivingPreset_Alvarado_Rear : VehicleWheelDrivingPreset_Cortes_Rear
{
	maxBrakingTorque = 390.0f;
	frictionMulLateral = 0.87f;
	frictionMulLongitudinal = 0.87f;
	tireLateralSlipEffectsMul = 0.95f;
	tireLongitudinalSlipEffectsMul = 1.0f;
	swaybarStiffness = 14.0f;
	swaybarLengthScalar = 1.4f;
	swaybarDisplacementLimit = 0.22f;
	springDamping = 3400;
	springReboundDamping = 2800;
	springDampingHighRateCompression = 0.50f;
	wheelsVerticalOffset = 0.04f;
	visualSuspensionCompressionLength = 0.20f;
}

v_sport2_villefort_alvarado_quest : v_sport2_villefort_alvarado
{
	savable = true;
	tags += 
	[
		"Immortal", "IgnoreImpulses"
	];
	vehDefaultState = 
	{
		DisableAllInteractions = true;
	};
	vehicleUIData = 
	{
		horsepower = 440.0f;
	} : VehicleVillefortAlvaradoUIData;
	vehEngineData = "Vehicle.VehicleEngineData_4_Regular_Large_SC";
}

v_sport2_villefort_alvarado_poor : v_sport2_villefort_alvarado
{
	visualTags = 
	[
		"Poor"
	];
	headlightColor = 
	[
		255, 230, 150, 255
	];
	randomPassengers = 
	[
		"Passengers.LowlifeRedneckDriverEntry", "Passengers.LowlifeRedneckPassengerFrontEntry"
	];
}

v_sport2_villefort_alvarado_premium : v_sport2_villefort_alvarado
{
	visualTags = 
	[
		"Premium"
	];
	headlightColor = 
	[
		175, 200, 255, 255
	];
	randomPassengers = 
	[
		"Passengers.NightLifeDriverEntry", "Passengers.NightLifePassengerFrontEntry"
	];
}

v_sport2_villefort_alvarado_valentinos : v_sport2_villefort_alvarado
{
	visualTags = 
	[
		"Valentinos"
	];
	headlightColor = 
	[
		255, 220, 220, 255
	];
	vehDriver_FPPCameraParams = 
	{
		lookat_offset_vertical = 0.07f;
		enable_rear_view = true;
		rear_view_offset = ( 0.0000, -1.5598, 1.1184 );
	} : VehicleDriverFPPCameraParamsDefault;
}

v_sport2_villefort_alvarado_cabrio : v_sport2_villefort_alvarado
{
	savable = true;
	bool hasSideWindows = false;
	entityTemplatePath = "base\vehicles\sport\v_sport2_villefort_alvarado__cabrio_01.ent";
	player_audio_resource = "v_car_villefort_alvarado_cabrio";
	traffic_audio_resource = "v_car_villefort_alvarado_cabrio_traffic";
	headlightColor = 
	[
		255, 255, 255, 255
	];
	destroyedAppearance = "villefort_alvarado__basic_burnt_cabrio_1";
	displayName = "LocKey#22092";
	vehicleUIData = 
	{
		mass = 2359.0f;
	} : VehicleVillefortAlvaradoUIData;
	visualTags = 
	[
		"Premium"
	];
	vehDriver_FPPCameraParams = 
	{
		lookat_offset_vertical = 0.07f;
		enable_rear_view = true;
	} : VehicleDriverFPPCameraParamsDefault;
}

v_sport2_villefort_alvarado_valentinos_cabrio : v_sport2_villefort_alvarado_cabrio
{
	visualTags = 
	[
		"Valentinos"
	];
	displayName = "LocKey#23303";
	fk< UIIcon > icon = "UIIcon.villefort_alvarado__basic_valentinos_02";
	headlightColor = 
	[
		255, 220, 220, 255
	];
	player_audio_resource = "v_car_villefort_alvarado_cabrio";
	traffic_audio_resource = "v_car_villefort_alvarado_cabrio_traffic";
}

v_sport2_villefort_alvarado_mox : v_sport2_villefort_alvarado_cabrio
{
	visualTags = 
	[
		"TheMox"
	];
	headlightColor = 
	[
		255, 255, 255, 255
	];
	player_audio_resource = "v_car_villefort_alvarado_cabrio";
	traffic_audio_resource = "v_car_villefort_alvarado_cabrio_traffic";
}

VehicleDestructionParamsAlvarado : VehicleDestructionParamsDefault_4w
{
	gridDimensions = ( 2.1f, 5.5f, 0.2f );
	gridLocalOffset = ( 0.0f, -0.1f, 0.75f );
	chargePortCenter = ( -1.03783989f, -2.77171516f, 0.455098629f );
	glass = 
	[
		{
			component = "window_f";
			effect = "damage_windshield";
			isWindshield = true;
			gridCells = 
			[
				4, 5, 12, 13
			];
			threshold = 0.15;
		}, 
		{
			component = "window_fl";
			effect = "damage_glass_fl";
			gridCells = 
			[
				2, 10
			];
			threshold = 0.1;
		}, 
		{
			component = "window_fr";
			effect = "damage_glass_fr";
			gridCells = 
			[
				3, 11
			];
			threshold = 0.1;
		}, 
		{
			component = "window_bl_01";
			effect = "damage_glass_bl";
			gridCells = 
			[
				2, 10
			];
			threshold = 0.1;
		}, 
		{
			component = "window_bl_02";
			effect = "damage_glass_bl";
			gridCells = 
			[
				2, 10
			];
			threshold = 0.1;
		}, 
		{
			component = "window_br_01";
			effect = "damage_glass_br";
			gridCells = 
			[
				11, 3
			];
			threshold = 0.1;
		}, 
		{
			component = "window_br_02";
			effect = "damage_glass_br";
			gridCells = 
			[
				11, 3
			];
			threshold = 0.1;
		}, 
		{
			component = "window_b_01";
			effect = "damage_glass_b";
			gridCells = 
			[
				0, 1, 8, 9
			];
			threshold = 0.1;
		}
	];
	detachableParts = 
	[
		{
			name = "Trunk";
			gridCells = 
			[
				0, 1
			];
			threshold = 0.8;
			components = 
			[
				"trunk_a", "trunk_a_shadow"
			];
		}, 
		{
			name = "Hood";
			gridCells = 
			[
				6, 7
			];
			threshold = 0.8;
			components = 
			[
				"hood_a", "hood_a_shadow"
			];
		}, 
		{
			name = "license_plate";
			gridCells = 
			[
				0, 1
			];
			threshold = 0.07;
			components = 
			[
				"license_plate"
			];
		}, 
		{
			name = "BumperFront";
			gridCells = 
			[
				6, 7
			];
			threshold = 0.7;
			components = 
			[
				"bumper_f_01", "bumper_f_shadow"
			];
		}, 
		{
			name = "BumperBack";
			gridCells = 
			[
				0, 1
			];
			threshold = 0.7;
			components = 
			[
				"bumper_b_01", "bumper_b_shadow", "bumper_b_01_lights"
			];
		}, 
		{
			name = "MirrorLeft_01";
			gridCells = 
			[
				4
			];
			threshold = 0.07;
			components = 
			[
				"mirror_fl"
			];
		}, 
		{
			name = "MirrorRight_01";
			gridCells = 
			[
				5
			];
			threshold = 0.07;
			components = 
			[
				"mirror_fr"
			];
		}, 
		{
			name = "DoorFrontLeft";
			gridCells = 
			[
				4
			];
			threshold = 0.5;
			components = 
			[
				"door_fl_a", "door_fl_shadow", "window_fl"
			];
		}, 
		{
			name = "DoorFrontRight";
			gridCells = 
			[
				5
			];
			threshold = 0.5;
			components = 
			[
				"door_fr_a", "door_fr_shadow", "window_fr"
			];
		}, 
		{
			name = "DoorBackLeft";
			gridCells = 
			[
				2
			];
			threshold = 0.5;
			components = 
			[
				"door_bl_a", "door_bl_shadow", "door_bl_b", "door_bl_c", "window_bl_01", "window_bl_02"
			];
		}, 
		{
			name = "DoorBackRight";
			gridCells = 
			[
				3
			];
			threshold = 0.5;
			components = 
			[
				"door_br_a", "door_br_shadow", "door_br_b", "door_br_c", "window_br_01", "window_br_02"
			];
		}
	];
	wheels = 
	[
		{
			name = "FrontLeft";
			intact = "tire_01_fl_a";
			hitsToFlatten = 2;
		}, 
		{
			name = "FrontRight";
			intact = "tire_01_fr_a";
			hitsToFlatten = 2;
		}, 
		{
			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";
		}, 
		{
			name = "FrontLeft2";
			intact = "tire_01_fl_b";
			linkedTire = 0;
			hitsToFlatten = 2;
		}, 
		{
			name = "FrontRight2";
			intact = "tire_01_fr_b";
			linkedTire = 1;
			hitsToFlatten = 2;
		}
	];
	lights = 
	[
		{
			component = "head_light_left_01";
			gridCells = 
			[
				6
			];
			threshold = 0.1f;
		}, 
		{
			component = "head_light_left_02";
			gridCells = 
			[
				6
			];
			threshold = 0.1f;
		}, 
		{
			component = "head_light_right_01";
			gridCells = 
			[
				7
			];
			threshold = 0.1f;
		}, 
		{
			component = "position_light_left_01";
			gridCells = 
			[
				6
			];
			threshold = 0.1f;
		}, 
		{
			component = "position_light_right_01";
			gridCells = 
			[
				7
			];
			threshold = 0.1f;
		}, 
		{
			component = "position_light_left_02";
			gridCells = 
			[
				0
			];
			threshold = 0.1f;
		}, 
		{
			component = "position_light_right_02";
			gridCells = 
			[
				1
			];
			threshold = 0.1f;
		}, 
		{
			component = "reverse_light_left_01";
			gridCells = 
			[
				0
			];
			threshold = 0.1f;
		}, 
		{
			component = "reverse_light_right_01";
			gridCells = 
			[
				1
			];
			threshold = 0.1f;
		}, 
		{
			component = "brake_light_left_01";
			gridCells = 
			[
				0
			];
			threshold = 0.1f;
		}, 
		{
			component = "brake_light_right_01";
			gridCells = 
			[
				1
			];
			threshold = 0.1f;
		}, 
		{
			component = "break_light_back_01";
			gridCells = 
			[
				0, 1
			];
			threshold = 0.1f;
		}
	];
	deformableParts = 
	[
		{
			component = "hood_a";
			zones = 
			[
				{
					shapes = 
					[
						0, 1
					];
					gridCells = 
					[
						6, 7
					];
				}
			];
		}, 
		{
			component = "trunk_a";
			zones = 
			[
				{
					shapes = 
					[
						0, 1
					];
					gridCells = 
					[
						0, 1
					];
				}
			];
		}, 
		{
			component = "bumper_b_01";
			zones = 
			[
				{
					shapes = 
					[
						0, 1, 2, 3, 4, 5
					];
					gridCells = 
					[
						0, 1, 8, 9
					];
				}
			];
		}, 
		{
			component = "bumper_f_01";
			zones = 
			[
				{
					shapes = 
					[
						0, 1, 2, 3, 4, 5
					];
					gridCells = 
					[
						6, 7, 14, 15
					];
				}
			];
		}, 
		{
			component = "body_01";
			zones = 
			[
				{
					shapes = 
					[
						1, 2, 3, 16, 17
					];
					gridCells = 
					[
						6, 7
					];
				}, 
				{
					shapes = 
					[
						9, 10, 13, 14
					];
					gridCells = 
					[
						0, 1
					];
				}
			];
		}
	];
}

VehicleVillefortAlvaradoUIData : VehicleDefaultUIData
{
	productionYear = "2044-2055";
	driveLayout = "LocKey#45371";
	horsepower = 407.0f;
	mass = 2270.0f;
	info = "LocKey#53541";
}

