#include "BIS_AddonInfo.hpp"
#include "basicdefines_A3.hpp"
class DefaultEventhandlers;

#include "CfgPatches.hpp"

class WeaponFireGun;
class WeaponCloudsGun;
class WeaponFireMGun;
class WeaponCloudsMGun;
class CfgVehicles
{
	class LandVehicle;
	class Car: LandVehicle
	{
		class HitPoints;
		class NewTurret;
	};
	class Car_F: Car
	{
		class Turrets
		{
			class MainTurret: NewTurret
			{
				class ViewOptics;
				class ViewGunner;
			};
		};
	
		class HitPoints /// we want to use hitpoints predefined for all cars
		{
			class HitLFWheel;
			class HitLF2Wheel;
			class HitRFWheel;
			class HitRF2Wheel;
			class HitBody;
			class HitFuel;
			class HitEngine;
			class HitGlass1{};
			class HitGlass2;
			class HitGlass3;
			class HitGlass4;
		};
		class EventHandlers;
		class AnimationSources;
	};
	class Offroad_01_base_F: car_f {};
	class BRAF_LR_01_Base: Offroad_01_base_F 
	{
		selectionBackLights = "zadni svetlo";
		selectionBrakeLights = "brzdove svetlo"; 
		model = "braf\braf_soft\braf_land_rover\braf_LR.p3d";  /// simple path to model
		picture = "braf\braf_soft\braf_land_rover\DATA\UI\Picture_lr_CA.paa"; /// just some icon in command bar
		icon = "braf\braf_soft\braf_land_rover\data\UI\icon_lr_transport_ca.paa"; /// icon in map // imcompleto precisa ser feito
		vehicleClass = "BRAF_Car";
		displayName = "Defender 110 SW"; /// displayed in Editor				

		hiddenSelections[] = 
		{
			"camo1",
			"camo2"
		};
		hiddenSelectionsTextures[] = 
		{			
			"braf\braf_soft\braf_land_rover\data\braf_landrover_out_co.paa",
			"braf\braf_soft\braf_land_rover\data\braf_landrover_in_co.paa"			
		}; 	
		
	

		terrainCoef 	= 2.5; 	/// different surface affects this car more, stick to tarmac
		turnCoef 		= 2.5; 	/// should match the wheel turn radius
		precision 		= 10; 	/// how much freedom has the AI for its internal waypoints - lower number means more precise but slower approach to way
		brakeDistance 	= 3.0; 	/// how many internal waypoints should the AI plan braking in advance
		acceleration 	= 15; 	/// how fast acceleration does the AI think the car has

		fireResistance 	= 5; 	/// lesser protection against fire than tanks
		armor 			= 32; 	/// just some protection against missiles, collisions and explosions
		cost			= 50000; /// how likely is the enemy going to target this vehicle
		afmax = 100;
		transportMaxBackpacks 	= 8; /// just some backpacks fit the trunk by default
		transportSoldier 		= 4; /// number of cargo except driver
		
		
	
		cargoProxyIndexes[] = {4,5,6,7};
		getInProxyOrder[] = {1,2,3,4,5,6,7};
		class CargoTurret;
		class Turrets: Turrets
		{
			
			
			
			
			class CargoTurret_01: CargoTurret
			{
				gunnerAction = "passenger_inside_7";
				memoryPointsGetInGunner = "pos cargo RF";
				memoryPointsGetInGunnerDir = "pos cargo RF dir";
				gunnerName = "$STR_A3_TURRETS_CARGOTURRET_R1";
				gunnerCompartments = "Compartment2";
				proxyIndex = 1;
				isPersonTurret = 3;
				canHideGunner = 0;
				allowLauncherIn = 0;
				allowLauncherOut = 0;
				class TurnIn
				{
					limitsArrayTop[] = {{23.9621,-61.2561},{14.3315,-18.7728}};
					limitsArrayBottom[] = {{-19.6203,-79.3331},{-16.2632,-23.6018}};
				};
				class dynamicViewLimits
				{
					CargoTurret_02[] = {-65,75};
				};
			};
			class CargoTurret_02: CargoTurret_01
			{
				gunnerAction = "passenger_inside_7";
				gunnerName = "$STR_A3_TURRETS_CARGOTURRET_L2";
				memoryPointsGetInGunner = "pos cargo LR";
				memoryPointsGetInGunnerDir = "pos cargo LR dir";
				proxyIndex = 2;
				class TurnIn
				{
					limitsArrayTop[] = {{37.1488,-71.9003},{36.4967,92.2757}};
					limitsArrayBottom[] = {{-22.1832,-70.0989},{-13.9068,-22.8107},{-7.1236,75.6849},{-7.8564,102.5826}};
				};
				class dynamicViewLimits
				{
					CargoTurret_01[] = {-75,65};
				};
			};
			class CargoTurret_03: CargoTurret_01
			{
				gunnerAction = "passenger_inside_7";
				gunnerName = "$STR_A3_TURRETS_CARGOTURRET_R2";
				memoryPointsGetInGunner = "pos cargo RR";
				memoryPointsGetInGunnerDir = "pos cargo RR dir";
				proxyIndex = 3;
				
				class TurnIn
				{
					limitsArrayTop[] = {{23.9621,-61.2561},{14.3315,-18.7728}};
					limitsArrayBottom[] = {{-19.6203,-79.3331},{-16.2632,-23.6018}};
				};
				
				class dynamicViewLimits
				{
					CargoTurret_01[] = {5,75};
					CargoTurret_02[] = {-15,75};
					CargoTurret_04[] = {-75,75};
				};
			};
		};
		

		/// some values from parent class to show how to set them up
		wheelDamageRadiusCoef 	= 0.9; 			/// for precision tweaking of damaged wheel size
		wheelDestroyRadiusCoef 	= 0.4;			/// for tweaking of rims size to fit ground
		maxFordingDepth 		= 0.5;			/// how high water would damage the engine of the car
		waterResistance 		= 1;			/// if the depth of water is bigger than maxFordingDepth it starts to damage the engine after this time
		crewCrashProtection		= 0.25;			/// multiplier of damage to crew of the vehicle => low number means better protection
		driverLeftHandAnimName 	= "drivewheel"; /// according to what bone in model of car does hand move
		driverRightHandAnimName = "drivewheel";	/// beware, non-existent bones may cause game crashes (even if the bones are hidden during play)

		class TransportItems /// some first aid kits in trunk according to safety regulations
		{
			item_xx(FirstAidKit,4);
		};
		
		#include "cfg_TextureSources.hpp"
	

		driverAction 		= driver_offroad01; /// what action is going the driver take inside the vehicle. Non-existent action makes the vehicle inaccessible
		cargoAction[] 		= { passenger_generic01_foldhands, passenger_generic01_foldhands, passenger_generic01_foldhands, passenger_generic01_foldhands, passenger_generic01_foldhands}; /// the same of all the crew
		getInAction 		= GetInLow; 		/// how does driver look while getting in
		getOutAction 		= GetOutLow; 		/// and out
		cargoGetInAction[] 	= {"GetInLow"}; 	/// and the same for the rest, if the array has fewer members than the count of crew, the last one is used for the rest
		cargoGetOutAction[] = {"GetOutLow"}; 	/// that means all use the same in this case

		#include "sounds.hpp"	/// sounds are in a separate file to make this one simple
		#include "pip.hpp"		/// PiPs are in a separate file to make this one simple
		#include "physx.hpp"	/// PhysX settings are in a separate file to make this one simple

		class PlayerSteeringCoefficients /// steering sensitivity configuration
		{
			 turnIncreaseConst 	= 0.3; // basic sensitivity value, higher value = faster steering
			 turnIncreaseLinear = 1.0; // higher value means less sensitive steering in higher speed, more sensitive in lower speeds
			 turnIncreaseTime 	= 1.0; // higher value means smoother steering around the center and more sensitive when the actual steering angle gets closer to the max. steering angle

			 turnDecreaseConst 	= 5.0; // basic caster effect value, higher value = the faster the wheels align in the direction of travel
			 turnDecreaseLinear = 3.0; // higher value means faster wheel re-centering in higher speed, slower in lower speeds
			 turnDecreaseTime 	= 0.0; // higher value means stronger caster effect at the max. steering angle and weaker once the wheels are closer to centered position

			 maxTurnHundred 	= 0.7; // coefficient of the maximum turning angle @ 100km/h; limit goes linearly to the default max. turn. angle @ 0km/h
		};

		/// memory points where do tracks of the wheel appear *****(complete by OdyseusBR)******
		// front left track, left offset
		memoryPointTrackFLL = "TrackFLL";
		// front left track, right offset
		memoryPointTrackFLR = "TrackFLR";
		// back left track, left offset
		memoryPointTrackBLL = "TrackBLL";
		// back left track, right offset
		memoryPointTrackBLR = "TrackBLR";
		// front right track, left offset
		memoryPointTrackFRL = "TrackFRL";
		// front right track, right offset
		memoryPointTrackFRR = "TrackFRR";
		// back right track, left offset
		memoryPointTrackBRL = "TrackBRL";
		// back right track, right offset
		memoryPointTrackBRR = "TrackBRR";

		class Damage /// damage changes material in specific places (visual in hitPoint)
		{
			tex[]={};
			mat[]=
			{
			"braf\braf_soft\braf_land_rover\data\braf_landrover_out.rvmat", 
			"braf\braf_soft\braf_land_rover\data\LR_base_damage.rvmat", 
			"braf\braf_soft\braf_land_rover\data\LR_base_destruct.rvmat", 
			
			"braf\braf_soft\braf_land_rover\data\braf_landrover_glass.rvmat", 
			"braf\braf_soft\braf_land_rover\data\LR_glass_damage.rvmat", 
			"braf\braf_soft\braf_land_rover\data\LR_glass_destruct.rvmat",

			/*"braf\braf_soft\braf_land_rover\data\LR_Special.rvmat",
			"braf\braf_soft\braf_land_rover\data\LR_Special_damage.rvmat", 
			"braf\braf_soft\braf_land_rover\data\LR_Special_destruct.rvmat",*/

			"a3\data_f\default.rvmat", "a3\data_f\default.rvmat", 
			"a3\data_f\default_destruct.rvmat"
			};
		};
		
        /// class exhaust is complete ****(Complete by Bento)*****

		class Exhausts /// specific exhaust effects for the car
		{
			class Exhaust1 /// the car has two exhausts - each on one side
			{
				position 	= "vyfuk start";  		/// name of initial memory point
				direction 	= "vyfuk konec";	/// name of memory point for exhaust direction
				effect 		= "ExhaustsEffect";	/// what particle effect is it going to use
			};

			
		};

		class Reflectors	/// only front lights are considered to be reflectors to save CPU
		{
			class LightCarHeadL01 	/// lights on each side consist of two bulbs with different flares
			{
				color[] 		= {1900, 1800, 1700};		/// approximate colour of standard lights
				ambient[]		= {5, 5, 5};				/// nearly a white one
				position 		= "LightCarHeadL01";		/// memory point for start of the light and flare
				direction 		= "LightCarHeadL01_end";	/// memory point for the light direction
				hitpoint 		= "Light_L";				/// point(s) in hitpoint lod for the light (hitPoints are created by engine)
				selection 		= "Light_L";				/// selection for artificial glow around the bulb, not much used any more
				size 			= 1;						/// size of the light point seen from distance
				innerAngle 		= 100;						/// angle of full light
				outerAngle 		= 179;						/// angle of some light
				coneFadeCoef 	= 10;						/// attenuation of light between the above angles
				intensity 		= 1;						/// strength of the light
				useFlare 		= true;						/// does the light use flare?
				dayLight 		= false;					/// switching light off during day saves CPU a lot
				flareSize 		= 1.0;						/// how big is the flare

				class Attenuation
				{
					start 			= 1.0;
					constant 		= 0;
					linear 			= 0;
					quadratic 		= 0.25;
					hardLimitStart 	= 30;		/// it is good to have some limit otherwise the light would shine to infinite distance
					hardLimitEnd 	= 60;		/// this allows adding more lights into scene
				};
			};


			class LightCarHeadR01: LightCarHeadL01
			{
				position 	= "LightCarHeadR01";
				direction 	= "LightCarHeadR01_end";
				hitpoint 	= "Light_R";
				selection 	= "Light_R";
			};

	
		};

		aggregateReflectors[] = {{"LightCarHeadL01", "LightCarHeadL02"}, {"LightCarHeadR01", "LightCarHeadR02"}}; /// aggregating reflectors helps the engine a lot
		/// it might be even good to aggregate all lights into one source as it is done for most of the cars

		class EventHandlers: EventHandlers
		{
			postInit = "if (local (_this select 0)) then { [(_this select 0), """", [], false] call BIS_fnc_initVehicle; };";
		};

		/*
		// Must be kept as fail-safe in case of issue with the function
		hiddenSelectionsTextures[]={"\A3\Weapons_F\Data\placeholder_co.paa"};	 /// we could use any texture to cover the car

		// Definition of texture sources (skins), used for the VhC (Vehicle customization)
		// Also, because the Garage uses the VhC, it will make them available from the garage
		
		class textureSources
		{
			class red // Source class
			{
				displayName="Red"; // name displayed, among other, from the garage
				author=$STR_A3_Bohemia_Interactive; // Author of the skin
				textures[]=// List of textures, in the same order as the hiddenSelections definition
				{
					"braf\braf_soft\braf_land_rover\data\BRAF_LANDROVER_BASE_co.paa",
					"braf\braf_soft\braf_land_rover\data\BRAF_EB_landrover_co.paa", 
				};

			};				
		};
		// [_textureSourceClass1, _probability1, _textureSourceClass2, _probability2, ...]
		// Default behavior of the VhC is to select one of these sources, with a weighted random
		textureList[]=
		{
			"red", 1

			// You can noticed that the white source is missing, therefore, it won't be part of the random
		};*/
			
		
		class AnimationSources: AnimationSources
		{		
			class HideDoor1
			{
				scope = 0;
			};
			class HideDoor2: HideDoor1
			{
				scope = 0;
			};
			class HideGlass2
			{
				scope = 0;
			};
			class HideDoor3: HideDoor1
			{
				scope = 0;
			};
			class HideBackpacks
			{
				scope = 0;
			};			
			
			class HideBumper1
			{
				displayName = "Hide Bumper Brazilian Army";
				source = "user";
				initPhase = 1;
				animPeriod = 0.001;
				forceAnimatePhase = 0;
				forceAnimate[] = {"HideBumper2", 1};
				forceAnimate2[] = {"HideBumper2", 0};
				mass = -50;
			};
			class HideBumper2
			{
				displayName = "Hide Bumper Gendarmerie";
				source = "user";
				initPhase = 1;
				animPeriod = 0.001;
				forceAnimatePhase = 0;		
				forceAnimate[] = {"HideBumper1", 1};
				forceAnimate2[] = {"HideBumper1", 0};
				mass = -90;
			};
			
			class hidePolicelights
			{
				displayName = "Hide Policy Light";
				source = "Proxy";
				initPhase = 1;
				mass = -12;
			};
			
			class HideConstruction
			{
				scope = 0;
			};
			class hidePolice
			{
				scope = 0;
			};
			class HideServices
			{
				scope = 0;
			};
			class BeaconsStart
			{
				scope = 0;
			};
			class BeaconsServicesStart
			{
				scope = 0;
			};
			class Hide_Dashboard
			{
				scope = 0;
			};
			class Doors
			{
				scope = 0;
			};			
			/*
			class Proxy
			{
				source = "user";
				animPeriod = 0.001;
				initPhase = 1;
			};
			*/			
			class Beacons
			{
				scope = 0;
			};
			class Destruct
			{
				scope = 0;
			};
		};
		
		class HitPoints: HitPoints
		{
			class HitLFWheel: HitLFWheel	{armor=0.125; passThrough=0;}; /// it is easier to destroy wheels than hull of the vehicle
			class HitLF2Wheel: HitLF2Wheel	{armor=0.125; passThrough=0;};

			class HitRFWheel: HitRFWheel	{armor=0.125; passThrough=0;};
			class HitRF2Wheel: HitRF2Wheel 	{armor=0.125; passThrough=0;};

			class HitFuel 			{armor=0.50; material=-1; name="fueltank"; visual=""; passThrough=0.2;}; /// correct points for fuel tank, some of the damage is aFRLied to the whole
			class HitEngine 		{armor=0.50; material=-1; name="engine"; visual=""; passThrough=0.2;};
			class HitBody: HitBody 	{name = "body"; visual="camo1"; passThrough=1;}; /// all damage to the hull is aFRLied to total damage

			class HitGlass1: HitGlass1 {armor=0.25;}; /// it is pretty easy to puncture the glass but not so easy to remove it
			class HitGlass2: HitGlass2 {armor=0.25;};
			class HitGlass3: HitGlass3 {armor=0.25;};
			class HitGlass4: HitGlass4 {armor=0.25;};
		};

		class MFD /// Clocks on the car board
		{
			class ClockHUD
			{
				#include "cfgHUD.hpp"
			};
		};
	};
	
		/*class BRAF_LR_110_SW: BRAF_LR_Base {
			
		forceInGarage=1; 	// This will force the garage to display this vehicle, otherwise it won't because it shares the same p3d as the previous
		scopeCurator=2;			
		faction	= "BRAF_ARMY";	
		side = 2;
		scope = 2;
		typicalcargo[] = {};
		displayname = "Land Rover 110 SW";
		hiddenSelectionsTextures[] = {
			
			"braf\braf_soft\braf_land_rover\data\BRAF_LANDROVER_BASE_co.paa",
			"braf\braf_soft\braf_land_rover\data\BRAF_EB_landrover_co.paa",
			
		}; 
		class Turrets {
		};
		class HitPoints: HitPoints {
			class HitGlass1 {
				armor = 0.15;
			};
			class HitGlass2 {
				armor = 0.1;
			};
			class HitGlass3 {
				armor = 0.1;
			};
		};
		
		class TransportMagazines {
		};
		class TransportWeapons {
		};
		class NVGMarkers {
			class NVGMarker01 {
				ambient[] = {0.003, 0.0003, 0.0003, 1};
				blinking = 1;
				brightness = 0.001;
				color[] = {0.03, 0.003, 0.003, 1};
				name = "nvg_marker";
			};
		};*/
	
	
	
	// Derivate from the base class
	
	class BRAF_LR110_Hardtop: BRAF_LR_01_Base /// some class that is going to be visible in editor
	{
		scope = 2; 			/// makes the car visible in editor
		scopeCurator = 2;		// scope 2 means it's available in Zeus mode (0 means hidden)
		crew = "braf_soldier_light"; 	/// we need someone to fit into the car
		side = 2; 			/// civilian car should be on civilian side
		faction	= "BRAF_ARMY";		/// and with civilian faction
		displayName = "Land Rover 110 SW (Hard Top)";
		
		hiddenSelections[] = 
		{
			"camo1",
			"camo2"
		};
		hiddenSelectionsTextures[] = 
		{
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landroverout_co.paa",
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landroverin_co.paa"
		}; 
		hiddenSelectionsMaterials[] = 
		{
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landrover_out.rvmat",
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landrover_in.rvmat"
		}; 
		
		animationList[] = 
		{
			"HideBumper1", 0,
			"HideBumper2", 1
		};
		textureList[] =
		{
			"C_BRAF_LR110_SW", 1,
			"C_BRAF_LR_110_GEN", 0,
			"C_BRAF_LR_110_white", 0,
			"C_BRAF_LR_110_white", 0
		};
	};
	
	class BRAF_LR110_CIV: BRAF_LR_01_Base /// some class that is going to be visible in editor
	{
		scope = 2; 			/// makes the car visible in editor
		scopeCurator = 2;		// scope 2 means it's available in Zeus mode (0 means hidden)
		crew = "braf_soldier_light"; 	/// we need someone to fit into the car
		side = 3; 			/// civilian car should be on civilian side
		faction	= "BRAF_CIV";		/// and with civilian faction
		displayName = "Land Rover 110 SW (Hard Top)";

		animationList[] = 
		{
			"HideBumper1", 1,
			"HideBumper2", 1
		};
		
		textureList[] =
		{
			"C_BRAF_LR110_SW", 0,
			"C_BRAF_LR_110_GEN", 0,
			"C_BRAF_LR_110_white", 0,
			"C_BRAF_LR_110_white", 1
		};		
	};	
	
	
	class BRAF_LR110_gendarmerie: BRAF_LR_01_Base /// some class that is going to be visible in editor
	{
		scope = 2; 			/// makes the car visible in editor
		scopeCurator = 2;		// scope 2 means it's available in Zeus mode (0 means hidden)
		crew = "braf_soldier_light"; 	/// we need someone to fit into the car
		side = 1;
		faction = "BLU_GEN_F";
		displayName = "Land Rover 110 SW (Hard Top)";
				
		hiddenSelections[] = 
		{
			"camo1",
			"camo2"		
		};
		hiddenSelectionsTextures[] = 
		{
			"braf\braf_soft\braf_land_rover\data\Skins\GEN\braf_landrover_GENout_co.paa",
			"braf\braf_soft\braf_land_rover\data\Skins\GEN\braf_landrover_GENin_co.paa"
		}; 
		hiddenSelectionsMaterials[] = 
		{
			"braf\braf_soft\braf_land_rover\data\Skins\GEN\braf_GEN_landrover_out.rvmat",
			"braf\braf_soft\braf_land_rover\data\Skins\GEN\braf_GEN_landrover_in.rvmat"
		}; 
		
		animationList[] = 
		{
			"HideBumper1", 1,
			"HideBumper2", 0,
			"hidePolicelights", 1,
			
		};
		textureList[] =
		{
			"C_BRAF_LR110_SW", 0,
			"C_BRAF_LR_110_GEN", 1,
			"C_BRAF_LR_110_white", 0,
			"C_BRAF_LR_110_white", 0
		};		
	};
	
	class BRAF_LR110_UN: BRAF_LR_01_Base /// some class that is going to be visible in editor
	{
		scope = 2; 			/// makes the car visible in editor
		scopeCurator = 2;		// scope 2 means it's available in Zeus mode (0 means hidden)
		crew = "braf_soldier_light"; 	/// we need someone to fit into the car
		side = 1;
		faction = "UN";
		displayName = "Land Rover 110 SW (Hard Top)";
				
		hiddenSelections[] = 
		{
			"camo1",
			"camo2"		
		};
		hiddenSelectionsTextures[] = 
		{
			"braf\braf_soft\braf_land_rover\data\Skins\UN\braf_landrover_UN_out_co.paa",
			"braf\braf_soft\braf_land_rover\data\Skins\UN\braf_landrover_UN_in_co.paa"
		}; 
		hiddenSelectionsMaterials[] = 
		{
			"braf\braf_soft\braf_land_rover\data\Skins\UN\braf_landrover_un_out.rvmat",
			"braf\braf_soft\braf_land_rover\data\Skins\UN\braf_landrover_un_in.rvmat"
		}; 
		
		animationList[] = 
		{
			"HideBumper1", 1,
			"HideBumper2", 0
		};
		textureList[] =
		{
			"C_BRAF_LR110_SW", 0,
			"C_BRAF_LR_110_GEN", 0,
			"C_BRAF_LR_110_white", 1,
			"C_BRAF_LR_110_white", 0
		};		
	};
	
	class BRAF_LR_softtop_4d: BRAF_LR_01_Base /// some class that is going to be visible in editor
	{
		model = "braf\braf_soft\braf_land_rover\bRAF_LR_softtop_4d";  /// simple path to model
		scope	= 2; 			/// makes the car visible in editor
		displayname = "Land Rover 110 SW  (Soft Top)" ; /// displayed in Editor
		scopeCurator=2;			// scope 2 means it's available in Zeus mode (0 means hidden)
		crew = "braf_Soldier_light_naval"; 	/// we need someone to fit into the car
		side	= 2; 			
		faction	= "BRAF_ARMY";		
		hiddenSelections[] = {"camo1","camo2"}; ///we want to allow changing the color of this selection
		hiddenSelectionsTextures[] = {
			
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landroverout_co.paa",
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landroverin_co.paa",
			
		}; 
		hiddenSelectionsMaterials[] = {
			
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landrover_out.rvmat",
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landrover_in.rvmat",
			
		}; 
		
		animationList[] = 
		{
			"HideBumper1", 0,
			"HideBumper2", 1
		};
		
		textureList[] =
		{
			"C_BRAF_LR110_SW", 1,
			"C_BRAF_LR_110_GEN", 0,
			"C_BRAF_LR_110_white", 0
		};		
		
	};
	
	class BRAF_LR_softtop_4d_armed: BRAF_LR_01_Base /// some class that is going to be visible in editor
	{
		model = "braf\braf_soft\braf_land_rover\BRAF_LR_softtop_4d_armed";  /// simple path to model
		scope	= 2; 			/// makes the car visible in editor
		displayname = "Land Rover 110 (ARMED)" ; /// displayed in Editor
		scopeCurator=2;			// scope 2 means it's available in Zeus mode (0 means hidden)
		crew = "braf_Soldier_light_naval"; 	/// we need someone to fit into the car
		side	= 2; 			
		faction	= "BRAF_ARMY";		
		hiddenSelections[] = {"camo1","camo2"}; ///we want to allow changing the color of this selection
		hiddenSelectionsTextures[] = {
			
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landroverout_co.paa",
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landroverin_co.paa",
			
		}; 
		hiddenSelectionsMaterials[] = {
			
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landrover_out.rvmat",
			"braf\braf_soft\braf_land_rover\data\Skins\EB\braf_EB_landrover_in.rvmat",
			
		}; 
		
		animationList[] = 
		{
			"HideBumper1", 0,
			"HideBumper2", 1
		};
		
		textureList[] =
		{
			"C_BRAF_LR110_SW", 1,
			"C_BRAF_LR_110_GEN", 0,
			"C_BRAF_LR_110_white", 0
		};		
		
	};

	/*
	class BRAF_LR110_SW_01_Special_F: BRAF_LR_01_Base /// some class that is going to be visible in editor
	{
		model = "braf\braf_soft\braf_land_rover\bRAF_LR_navy.p3d";  /// simple path to model
		forceInGarage=1; 	// This will force the garage to display this vehicle, otherwise it won't because it shares the same p3d as the previous
		displayName="Defender 110 SW (Open)";
		scope=2; 			/// makes the car visible in editor
		crew = "braf_Soldier_light_naval";	/// we need someone to fit into the car
		side=2; 			/// civilian car should be on civilian side
		faction	= "braf_fn";	/// and with civilian faction
		// the texture source used will be the green one, whatever it probability because it's the only one defined here
		hiddenSelections[] = {"camo1","camo2"}; ///we want to allow changing the color of this selection
		hiddenSelectionsTextures[] = {
			
			"braf\braf_soft\braf_land_rover\data\Skins\BRAF_FN_landrover_co.paa",
			"braf\braf_soft\braf_land_rover\data\Skins\lr_special_FN_co.paa"
			
		}; 
	};*/
	
	};
	
	
	
	
