///////////////////////////////Default stuff, No changes here ///////////////////////////////////
#define true 1
#define false 0

#define VSoft 0
#define VArmor 1
#define VAir 2

#define private 0
#define protected 1
#define public 2

#define TEast 0
#define TWest 1
#define TGuerrila 2
#define TCivilian 3
#define TSideUnknown 4
#define TEnemy 5
#define TFriendly 6
#define TLogic 7

#define ReadAndWrite 0
#define ReadAndCreate 1
#define ReadOnly 2
#define ReadOnlyVerified 3
/////////////////////////////// ^^ Default Stuff ^^ ///////////////////////////////

class CfgPatches
{
	class smurfc_m2a2_A2_repl
	{
		units[] = {};
		weapons[] = {};
		requiredVersion = 1.000000;
		requiredAddons[] = { "CATracked", "CAWeapons", "smurfc_m2a2"};
	};
};

class CfgFactionClasses {
    class smurfc_USAR {
        displayName = "USAC";
        priority = 1;
        side = TWest;
    };
};

class Turrets;
class MainTurret;
class CommanderOptics;
class ViewPilot;
class HitPoints;
class AnimationSources;

class CfgVehicles
{ 
	class Tank;
	class smurfc_m2a2 : Tank
	{
		scope = private;
		picture="\smurfc_m2a2_A2_repl\im2a2.paa";
		Icon="\smurfc_m2a2_A2_repl\icomap_m113_ca.paa";
		soundEnviron[]={"\smurfc_m2a2_A2_repl\m2treads.ogg",db17,0.8};
		soundEngine[]={"\smurfc_m2a2_A2_repl\m2engine.ogg",db18,1};
		driverOpticsModel = "\ca\Tracked\optika_tank_driver_west";
		driverForceOptics = 1; // comment this to enable internal view
		// weapons[] = {"FakeWeapon"}; // uncomment this to enable internal view
		// magazines[] = {"FakeWeapon"}; // uncomment this to enable internal view
		class Turrets: Turrets
		{
			class MainTurret: MainTurret
			{
				gunnerForceOptics = 1; // comment this to enable internal view
				weapons[] = {M242, M240_veh, TOWLauncher};
				magazines[] = {"210Rnd_25mm_M242_APDS", "210Rnd_25mm_M242_HEI", "210Rnd_25mm_M242_HEI", 1200Rnd_762x51_M240, 2Rnd_TOW2,2Rnd_TOW2,2Rnd_TOW2,2Rnd_TOW2};
				class Turrets  : Turrets {
					class CommanderOptics  : CommanderOptics {
						gunnerOpticsModel = "\ca\Tracked\optika_M1A1_commander";
						gunnerOpticsEffect[] = {"TankCommanderOptics1" };
						gunnerForceOptics = 1; // comment this to enable internal view
						// weapons[] = {"FakeWeapon", "SmokeLauncher"}; // uncomment this to enable internal view
						// magazines[] = {"FakeWeapon", "SmokeLauncherMag", "SmokeLauncherMag"}; // uncomment this to enable internal view
						weapons[] = {"SmokeLauncher"}; // comment this to enable internal view
						magazines[] = {"SmokeLauncherMag", "SmokeLauncherMag"}; // comment this to enable internal view
					};
				};
			};
		};
		class AnimationSources: AnimationSources {
			class smurfc_m2a2_MainGunReload {
	            source = "reload";
	            weapon = M2; // Workaround for incorrect recoil anim
			};
			class smurfc_m2a2_MainGunReload_A2 {
	            source = "reload";
	            weapon = M242;
			};
			class smurfc_m2a2_periscope_mirror
			{
				animPeriod=0;
				initPhase=1;
			};
		};		
		
		class HitHull   {}; class HitEngine {}; class HitLTrack {}; class HitRTrack {}; //disable old-style decl.
		
		class HitPoints  : HitPoints {
			class HitHull    { armor = 0.97;	material = -1; name = "telo";	visual = "telo";	passThrough = 1; };
			class HitEngine  { armor = 0.82;	material = -1; name = "motor";	visual = "motor";	passThrough = 0.200000; };
			class HitLTrack  { armor = 0.750000;material = -1; name = "pas_L";	visual = "pas_L";	passThrough = 0.300000; };
			class HitRTrack  { armor = 0.750000;material = -1; name = "pas_P";	visual = "pas_P";	passThrough = 0.300000; };
		};
		
		insideSoundCoef = 0.900000;
		soundGear[] = {"",0.000056,1 };
		soundGetIn[] = {"ca\SOUNDS\Vehicles\Tracked\Other\int\int-tracked-getin-01",0.562341,1 };
		soundGetOut[] = {"ca\SOUNDS\Vehicles\Tracked\Other\ext\ext-tracked-getout-01",0.562341,1,50 };
		soundEngineOnInt[] = {"ca\sounds\Vehicles\Tracked\Other\int\int-tracked-start-01",1.000000,1.000000 };
		soundEngineOnExt[] = {"ca\SOUNDS\Vehicles\Tracked\Other\ext\ext-tracked-start-01",2.511886,1.000000,400 };
		soundEngineOffInt[] = {"ca\sounds\vehicles\Tracked\Other\int\int-tracked-stop-02.wss",1.000000,1.000000 };
		soundEngineOffExt[] = {"ca\sounds\vehicles\Tracked\Other\ext\ext-tracked-stop-02.wss",1.258925,0.800000,400 };
		buildCrash0[] = {"Ca\sounds\Vehicles\Crash\tank_building_01",0.707946,1,150 };
		buildCrash1[] = {"Ca\sounds\Vehicles\Crash\tank_building_02",0.707946,1,150 };
		buildCrash2[] = {"Ca\sounds\Vehicles\Crash\tank_building_03",0.707946,1,150 };
		buildCrash3[] = {"Ca\sounds\Vehicles\Crash\tank_building_04",0.707946,1,150 };
		soundBuildingCrash[] = {"buildCrash0",0.250000,"buildCrash1",0.250000,"buildCrash2",0.250000,"buildCrash3",0.250000 };
		WoodCrash0[] = {"Ca\sounds\Vehicles\Crash\tank_wood_01",0.707946,1,150 };
		WoodCrash1[] = {"Ca\sounds\Vehicles\Crash\tank_wood_02",0.707946,1,150 };
		WoodCrash2[] = {"Ca\sounds\Vehicles\Crash\tank_wood_03",0.707946,1,150 };
		WoodCrash3[] = {"Ca\sounds\Vehicles\Crash\tank_wood_04",0.707946,1,150 };
		soundWoodCrash[] = {"woodCrash0",0.250000,"woodCrash1",0.250000,"woodCrash2",0.250000,"woodCrash3",0.250000 };
		ArmorCrash0[] = {"Ca\sounds\Vehicles\Crash\tank_vehicle_01",0.707946,1,150 };
		ArmorCrash1[] = {"Ca\sounds\Vehicles\Crash\tank_vehicle_02",0.707946,1,150 };
		ArmorCrash2[] = {"Ca\sounds\Vehicles\Crash\tank_vehicle_03",0.707946,1,150 };
		ArmorCrash3[] = {"Ca\sounds\Vehicles\Crash\tank_vehicle_04",0.707946,1,150 };
		soundArmorCrash[] = {"ArmorCrash0",0.250000,"ArmorCrash1",0.250000,"ArmorCrash2",0.250000,"ArmorCrash3",0.250000 };
		
		class SoundEvents  {
			class AccelerationIn  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int-tracked-acce-02",1.000000,1.000000 };
				limit = "0.15";
				expression = "engineOn*(1-camPos)*2*gmeterZ*((speed factor[1.5, 5]) min (speed factor[5, 1.5]))";
			};

			class AccelerationOut  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext-tracked-acce-02",1.000000,1.000000,700 };
				limit = "0.15";
				expression = "engineOn*camPos*2*gmeterZ*((speed factor[1.5, 5]) min (speed factor[5, 1.5]))";
			};
		};

		class Sounds  {

			class Engine  {
				sound[] = {"\smurfc_m2a2_A2_repl\m2engine.ogg",1.000000,1.000000,1000 };
				frequency = "(randomizer*0.05+0.8)*rpm";
				volume = "engineOn*camPos*(rpm factor[0.4, 0.9])";
			};

			class IdleOut  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext-tracked-idle-02",0.562341,1.000000,450 };
				frequency = "1";
				volume = "engineOn*camPos*(rpm factor[0.6, 0.2])";
			};

			class NoiseOut  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\noise2",1.000000,1.000000,100 };
				frequency = "1";
				volume = "camPos*(angVelocity max 0.04)*(speed factor[4, 15])";
			};

			class ThreadsOutH0  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_01",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[0.3, 0.6]) min (rpm factor[0.6, 0.3]))";
			};

			class ThreadsOutH1  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_02",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[0.5, 0.8]) min (rpm factor[0.8, 0.5]))";
			};

			class ThreadsOutH2  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_03",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[0.65, 0.9]) min (rpm factor[0.9, 0.65]))";
			};

			class ThreadsOutH3  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_04",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[0.8, 1.2]) min (rpm factor[1.2, 0.8]))";
			};

			class ThreadsOutH4  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_05",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[1, 2.0]) min (rpm factor[2.0, 1]))";
			};

			class ThreadsOutS0  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_01",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[0.3, 0.6]) min (rpm factor[0.6, 0.3]))";
			};

			class ThreadsOutS1  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_02",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[0.5, 0.8]) min (rpm factor[0.8, 0.5]))";
			};

			class ThreadsOutS2  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_03",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[0.65, 0.9]) min (rpm factor[0.9, 0.65]))";
			};

			class ThreadsOutS3  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_04",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[0.8, 1.2]) min (rpm factor[1.2, 0.8]))";
			};

			class ThreadsOutS4  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_05",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[1, 2.0]) min (rpm factor[2.0, 1]))";
			};

			class Movement  {
				sound[] = {"",1.000000,1.000000 };
				frequency = "0";
				volume = "0";
			};

			class EngineIn  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int-tracked-engine-02",1.000000,1.000000 };
				frequency = "(randomizer*0.05+0.8)*rpm";
				volume = "engineOn*(1-camPos)*(rpm factor[0.4, 1])";
			};

			class IdleIn  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int-tracked-idle-02",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(rpm factor[0.6, 0.15])";
			};

			class NoiseIn  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\noise2",0.199526,1.000000 };
				frequency = "1";
				volume = "(1-camPos)*(angVelocity max 0.04)*(speed factor[4, 15])";
			};

			class ThreadsInH0  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_01",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[0.3, 0.6]) min (rpm factor[0.6, 0.3]))";
			};

			class ThreadsInH1  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_02",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[0.5, 0.8]) min (rpm factor[0.8, 0.5]))";
			};

			class ThreadsInH2  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_03",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[0.65, 0.9]) min (rpm factor[0.9, 0.65]))";
			};

			class ThreadsInH3  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_04",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[0.8, 1.2]) min (rpm factor[1.2, 0.8]))";
			};

			class ThreadsInH4  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_05",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[1, 2.0]) min (rpm factor[2.0, 1]))";
			};

			class ThreadsInS0  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_01",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[0.3, 0.6]) min (rpm factor[0.6, 0.3]))";
			};

			class ThreadsInS1  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_02",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[0.5, 0.8]) min (rpm factor[0.8, 0.5]))";
			};

			class ThreadsInS2  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_03",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[0.65, 0.9]) min (rpm factor[0.9, 0.65]))";
			};

			class ThreadsInS3  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_04",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[0.8, 1.2]) min (rpm factor[1.2, 0.8]))";
			};

			class ThreadsInS4  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_05",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[1, 2.0]) min (rpm factor[2.0, 1]))";
			};
		};

		viewCargoShadow = 1;
		viewCargoShadowDiff = 0.050000;
		viewDriverShadowDiff = 0.050000;
		viewGunnerShadowDiff = 0.050000;
		transportAmmo = 0;
		supplyRadius = 1.700000;
		transportMaxMagazines = 100;
		transportMaxWeapons = 10;
		smokeLauncherGrenadeCount = 4;
		smokeLauncherVelocity = 14;
		smokeLauncherOnTurret = 1;
		smokeLauncherAngle = 90;
	};
	class smurfc_m2a2_o : smurfc_m2a2
	{
		displayName = "M2 Bradley (OFP)";
		scope = public;
		faction = "smurfc_USAR";
		crew = "USMC_Soldier_Crew";
		vehicleClass = "Armored";
		typicalCargo[] = {"USMC_Soldier_Crew","USMC_Soldier_Crew","USMC_Soldier_Crew" };
	};
	class smurfc_m2a2_b : smurfc_m2a2
	{
		scope = public;
		faction = "smurfc_USAR";
		crew = "USMC_Soldier_Crew";
		vehicleClass = "Armored";
		typicalCargo[] = {"USMC_Soldier_Crew","USMC_Soldier_Crew","USMC_Soldier_Crew" };
	};
	class smurfc_m2a2_g : smurfc_m2a2
	{
		scope = private;
		side=TGuerrila;
		vehicleClass = "Armored";
		displayName = "M2 Bradley (RACS)";
		crew = SoldierGCrew;
		typicalCargo[]={SoldierGCrew,SoldierGCrew,SoldierGCrew};
	};

	class smurfc_m2a2_stinger: smurfc_m2a2
	{
		scope = private;
		picture="\smurfc_m2a2_A2_repl\im2a2.paa";
		Icon="\smurfc_m2a2_A2_repl\icomap_m113_ca.paa";
		soundEnviron[]={"\smurfc_m2a2_A2_repl\m2treads.ogg",db17,0.8};
		soundEngine[]={"\smurfc_m2a2_A2_repl\m2engine.ogg",db18,1};
		driverOpticsModel = "\ca\Tracked\optika_tank_driver_west";
		driverForceOptics = 1; // GHQ
		weapons[] = {"FakeWeapon"};
		magazines[] = {"FakeWeapon"};
		class Turrets: Turrets
		{
			class MainTurret: MainTurret
			{
				gunnerForceOptics = 1; // GHQ
				weapons[] = {M242, M240_veh, StingerLauncher_twice};
				magazines[] = {"210Rnd_25mm_M242_APDS", "210Rnd_25mm_M242_HEI", "210Rnd_25mm_M242_HEI", 1200Rnd_762x51_M240, 2Rnd_Stinger,2Rnd_Stinger,2Rnd_Stinger,2Rnd_Stinger};
				class Turrets  : Turrets {
					class CommanderOptics  : CommanderOptics {
						gunnerOpticsModel = "\ca\Tracked\optika_M1A1_commander";
						gunnerOpticsEffect[] = {"TankCommanderOptics1" };
						gunnerForceOptics = 1; // GHQ
						weapons[] = {"FakeWeapon", "SmokeLauncher"};
						magazines[] = {"FakeWeapon", "SmokeLauncherMag", "SmokeLauncherMag"};
					};
				};
			};
		};
		class AnimationSources: AnimationSources {
			class smurfc_m2a2_MainGunReload {
	            source = "reload";
	            weapon = M2; // Workaround for incorrect recoil anim
			};
			class smurfc_m2a2_MainGunReload_A2 {
	            source = "reload";
	            weapon = M242;
			};
			class smurfc_m2a2_periscope_mirror
			{
				animPeriod=0;
				initPhase=1;
			};
		};		
		class HitPoints  : HitPoints {

			class HitLTrack  {
				armor = 0.300000;
				material = -1;
				name = "pas_L";
				visual = "pas_L";
				passThrough = 0.300000;
			};

			class HitRTrack  {
				armor = 0.300000;
				material = -1;
				name = "pas_P";
				visual = "pas_P";
				passThrough = 0.300000;
			};

			class HitEngine  {
				armor = 1;
				material = -1;
				name = "motor";
				visual = "motor";
				passThrough = 0.200000;
			};
		};
		
		insideSoundCoef = 0.900000;
		soundGear[] = {"",0.000056,1 };
		soundGetIn[] = {"ca\SOUNDS\Vehicles\Tracked\Other\int\int-tracked-getin-01",0.562341,1 };
		soundGetOut[] = {"ca\SOUNDS\Vehicles\Tracked\Other\ext\ext-tracked-getout-01",0.562341,1,50 };
		soundEngineOnInt[] = {"ca\sounds\Vehicles\Tracked\Other\int\int-tracked-start-01",1.000000,1.000000 };
		soundEngineOnExt[] = {"ca\SOUNDS\Vehicles\Tracked\Other\ext\ext-tracked-start-01",2.511886,1.000000,400 };
		soundEngineOffInt[] = {"ca\sounds\vehicles\Tracked\Other\int\int-tracked-stop-02.wss",1.000000,1.000000 };
		soundEngineOffExt[] = {"ca\sounds\vehicles\Tracked\Other\ext\ext-tracked-stop-02.wss",1.258925,0.800000,400 };
		buildCrash0[] = {"Ca\sounds\Vehicles\Crash\tank_building_01",0.707946,1,150 };
		buildCrash1[] = {"Ca\sounds\Vehicles\Crash\tank_building_02",0.707946,1,150 };
		buildCrash2[] = {"Ca\sounds\Vehicles\Crash\tank_building_03",0.707946,1,150 };
		buildCrash3[] = {"Ca\sounds\Vehicles\Crash\tank_building_04",0.707946,1,150 };
		soundBuildingCrash[] = {"buildCrash0",0.250000,"buildCrash1",0.250000,"buildCrash2",0.250000,"buildCrash3",0.250000 };
		WoodCrash0[] = {"Ca\sounds\Vehicles\Crash\tank_wood_01",0.707946,1,150 };
		WoodCrash1[] = {"Ca\sounds\Vehicles\Crash\tank_wood_02",0.707946,1,150 };
		WoodCrash2[] = {"Ca\sounds\Vehicles\Crash\tank_wood_03",0.707946,1,150 };
		WoodCrash3[] = {"Ca\sounds\Vehicles\Crash\tank_wood_04",0.707946,1,150 };
		soundWoodCrash[] = {"woodCrash0",0.250000,"woodCrash1",0.250000,"woodCrash2",0.250000,"woodCrash3",0.250000 };
		ArmorCrash0[] = {"Ca\sounds\Vehicles\Crash\tank_vehicle_01",0.707946,1,150 };
		ArmorCrash1[] = {"Ca\sounds\Vehicles\Crash\tank_vehicle_02",0.707946,1,150 };
		ArmorCrash2[] = {"Ca\sounds\Vehicles\Crash\tank_vehicle_03",0.707946,1,150 };
		ArmorCrash3[] = {"Ca\sounds\Vehicles\Crash\tank_vehicle_04",0.707946,1,150 };
		soundArmorCrash[] = {"ArmorCrash0",0.250000,"ArmorCrash1",0.250000,"ArmorCrash2",0.250000,"ArmorCrash3",0.250000 };
		
		class SoundEvents  {
			class AccelerationIn  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int-tracked-acce-02",1.000000,1.000000 };
				limit = "0.15";
				expression = "engineOn*(1-camPos)*2*gmeterZ*((speed factor[1.5, 5]) min (speed factor[5, 1.5]))";
			};

			class AccelerationOut  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext-tracked-acce-02",1.000000,1.000000,700 };
				limit = "0.15";
				expression = "engineOn*camPos*2*gmeterZ*((speed factor[1.5, 5]) min (speed factor[5, 1.5]))";
			};
		};

		class Sounds  {

			class Engine  {
				sound[] = {"\smurfc_m2a2_A2_repl\m2engine.ogg",1.000000,1.000000,1000 };
				frequency = "(randomizer*0.05+0.8)*rpm";
				volume = "engineOn*camPos*(rpm factor[0.4, 0.9])";
			};

			class IdleOut  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext-tracked-idle-02",0.562341,1.000000,450 };
				frequency = "1";
				volume = "engineOn*camPos*(rpm factor[0.6, 0.2])";
			};

			class NoiseOut  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\noise2",1.000000,1.000000,100 };
				frequency = "1";
				volume = "camPos*(angVelocity max 0.04)*(speed factor[4, 15])";
			};

			class ThreadsOutH0  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_01",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[0.3, 0.6]) min (rpm factor[0.6, 0.3]))";
			};

			class ThreadsOutH1  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_02",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[0.5, 0.8]) min (rpm factor[0.8, 0.5]))";
			};

			class ThreadsOutH2  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_03",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[0.65, 0.9]) min (rpm factor[0.9, 0.65]))";
			};

			class ThreadsOutH3  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_04",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[0.8, 1.2]) min (rpm factor[1.2, 0.8]))";
			};

			class ThreadsOutH4  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_hard_05",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*(1-grass)*((rpm factor[1, 2.0]) min (rpm factor[2.0, 1]))";
			};

			class ThreadsOutS0  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_01",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[0.3, 0.6]) min (rpm factor[0.6, 0.3]))";
			};

			class ThreadsOutS1  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_02",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[0.5, 0.8]) min (rpm factor[0.8, 0.5]))";
			};

			class ThreadsOutS2  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_03",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[0.65, 0.9]) min (rpm factor[0.9, 0.65]))";
			};

			class ThreadsOutS3  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_04",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[0.8, 1.2]) min (rpm factor[1.2, 0.8]))";
			};

			class ThreadsOutS4  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\ext\ext_diesel_treads_soft_05",1.000000,1.000000,200 };
				frequency = "1";
				volume = "engineOn*camPos*grass*((rpm factor[1, 2.0]) min (rpm factor[2.0, 1]))";
			};

			class Movement  {
				sound[] = {"",1.000000,1.000000 };
				frequency = "0";
				volume = "0";
			};

			class EngineIn  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int-tracked-engine-02",1.000000,1.000000 };
				frequency = "(randomizer*0.05+0.8)*rpm";
				volume = "engineOn*(1-camPos)*(rpm factor[0.4, 1])";
			};

			class IdleIn  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int-tracked-idle-02",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(rpm factor[0.6, 0.15])";
			};

			class NoiseIn  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\noise2",0.199526,1.000000 };
				frequency = "1";
				volume = "(1-camPos)*(angVelocity max 0.04)*(speed factor[4, 15])";
			};

			class ThreadsInH0  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_01",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[0.3, 0.6]) min (rpm factor[0.6, 0.3]))";
			};

			class ThreadsInH1  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_02",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[0.5, 0.8]) min (rpm factor[0.8, 0.5]))";
			};

			class ThreadsInH2  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_03",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[0.65, 0.9]) min (rpm factor[0.9, 0.65]))";
			};

			class ThreadsInH3  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_04",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[0.8, 1.2]) min (rpm factor[1.2, 0.8]))";
			};

			class ThreadsInH4  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_hard_05",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*(1-grass)*((rpm factor[1, 2.0]) min (rpm factor[2.0, 1]))";
			};

			class ThreadsInS0  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_01",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[0.3, 0.6]) min (rpm factor[0.6, 0.3]))";
			};

			class ThreadsInS1  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_02",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[0.5, 0.8]) min (rpm factor[0.8, 0.5]))";
			};

			class ThreadsInS2  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_03",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[0.65, 0.9]) min (rpm factor[0.9, 0.65]))";
			};

			class ThreadsInS3  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_04",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[0.8, 1.2]) min (rpm factor[1.2, 0.8]))";
			};

			class ThreadsInS4  {
				sound[] = {"ca\sounds\Vehicles\Tracked\Other\int\int_diesel_treads_soft_05",1.000000,1.000000 };
				frequency = "1";
				volume = "engineOn*(1-camPos)*grass*((rpm factor[1, 2.0]) min (rpm factor[2.0, 1]))";
			};
		};

		viewCargoShadow = 1;
		viewCargoShadowDiff = 0.050000;
		viewDriverShadowDiff = 0.050000;
		viewGunnerShadowDiff = 0.050000;
		transportAmmo = 0;
		supplyRadius = 1.700000;
		transportMaxMagazines = 100;
		transportMaxWeapons = 10;
		smokeLauncherGrenadeCount = 4;
		smokeLauncherVelocity = 14;
		smokeLauncherOnTurret = 1;
		smokeLauncherAngle = 90;
	};
	class smurfc_m2a2_stinger_o: smurfc_m2a2_stinger
	{
		displayName = "M6 Linebacker (OFP)";
		scope = public;
		faction = "smurfc_USAR";
		crew = "USMC_Soldier_Crew";
		vehicleClass = "Armored";
		typicalCargo[] = {"USMC_Soldier_Crew","USMC_Soldier_Crew","USMC_Soldier_Crew" };
	};
	class smurfc_m2a2_stinger_b: smurfc_m2a2_stinger
	{
		scope = public;
		faction = "smurfc_USAR";
		crew = "USMC_Soldier_Crew";
		vehicleClass = "Armored";
		typicalCargo[] = {"USMC_Soldier_Crew","USMC_Soldier_Crew","USMC_Soldier_Crew" };
	};
	class smurfc_m2a2_stinger_g: smurfc_m2a2_stinger
	{
		scope = private;
		side=TGuerrila;
		vehicleClass = "Armored";
		displayName = "M6 Linebacker (RACS)";
		crew = SoldierGCrew;
		typicalCargo[]={SoldierGCrew,SoldierGCrew,SoldierGCrew};
	};
};