/* For Testing purpose only */
#define BULDOZER_OE angle0 = "rad 45"; \
angle1 = "rad 85"

#define INGAME_OE angle0 = "rad -45"; \
angle1 = "rad -85"

#define BULDOZER_ME angle0 = "rad -45"; \
angle1 = "rad -85"

#define INGAME_ME angle0 = "rad 45"; \
angle1 = "rad 85"

class CfgSkeletons {
	class Default {
		isDiscrete = 1;
		skeletonInherit = "";
		skeletonBones[] = {};
	};
	class ace_mortar_2b14_skeleton: Default {
		isDiscrete = 1;
		skeletonInherit = "Default";
		skeletonBones[] = {
			"otocvez","",
			"otochlaven","otocvez",
			"SightUnit_Optic","otochlaven",
			"SightUnit_Dial","SightUnit_Optic",
			"gunnerview","SightUnit_Dial",
			"shift_left","otocvez",
			"shift_right","otocvez"
		};		
	};
	class ace_mortar_m224_skeleton: Default {
		skeletonBones[] = {
			"otocvez","",
			"otochlaven","otocvez",
			"SightUnit_Optic","otochlaven",
			"SightUnit_Dial","SightUnit_Optic",
			"gunnerview","SightUnit_Dial",
			"shift_left","otocvez",
			"shift_right","otocvez"			
		};	
	};	
	class ace_mortar_m252_skeleton: Default {
		skeletonBones[] = {
			"otocvez","",
			"otochlaven","otocvez",
			"SightUnit_Optic","otochlaven",
			"SightUnit_Dial","SightUnit_Optic",
			"gunnerview","SightUnit_Dial",
			"shift_left","otocvez",
			"shift_right","otocvez"			
		};	
	};
	class ace_mortar_tampella_skeleton: Default {
		skeletonBones[] = {
			"otocvez","",
			"otochlaven","otocvez",
			"SightUnit_Optic","otochlaven",
			"SightUnit_Dial","SightUnit_Optic",
			"gunnerview","SightUnit_Dial",
			"shift_left","otocvez",
			"shift_right","otocvez"			
		};		
	};	
};

class CfgModels {
	class Default {
		sectionsInherit = "";
		sections[] = {};
		skeletonName = "";
	};
	class ace_m224: Default {
		skeletonName="ace_mortar_m224_skeleton";
		sections[]= {};
		class animations {
			//0
			class MainTurret {
				type="rotationY";
				source="user";
                selection ="otocvez";
				sourceAddress = "loop";
				axis="osaveze";
				minValue="-6400";
				maxValue="6400";
				minPhase=-6.283185;
				maxPhase=6.283185;				
				angle0="rad +360";
				angle1="rad -360";
			};
			//0a
			class MainTurret_RotateFast: MainTurret {
			
			};
			// 1
			class OpticRevolve {
				type="rotation";
				source="user";
				selection="SightUnit_Dial";
                sourceAddress = "loop";
				axis="SightUnit_OpticAxis";
				memory = 1;
				animPeriod=0;
				minValue="-6400";
				maxValue="6400";
				angle0="rad -360";
				angle1="rad +360";
			};
			// 2
			class MainTurretTraverse {
				type="rotationY";
				source="user";
				selection="otocvez";
                sourceAddress = "clamp";
				axis="osaveze";
				animPeriod=0;
				minValue="-200";
				maxValue="200";
				angle0="rad 11.25";
				angle1="rad -11.25";
			};
			// 3
			class MainGun { // Barrel elevation between 45� and 85� 
				type="rotationX";
				selection= "otochlaven";
				sourceAddress = "clamp";
				source="user";
				axis="osahlavne";
				initPhase=1100;
				minValue=800;
				maxValue=1511;
				INGAME_ME;
				//angle0 = "rad -45"; //"rad 45"; // Negative value makes it look right in Buldozer, but mirrored ingame! (see Defines)
				//angle1 = "rad -85"; //"rad 85";
			};
			// 4
			class OpticElevate: MainGun {
				type="rotationX";
				selection= "SightUnit_Optic";
                sourceAddress = "clamp";
				source="user";
				axis="SightUnit_OpticElevateAxis";
				animPeriod=0;
				initPhase=1100;
				minValue=800;
				maxValue=1511;
				INGAME_OE;
				//angle0 = "rad 45"; //"rad -45"; // Positive value makes it look right in Buldozer, but mirrored ingame!
				//angle1 = "rad 85"; //"rad -85";
			};		
		};
	};
	class ace_m252: ace_m224 {
		skeletonName = "ace_mortar_m252_skeleton";
		class animations: animations {
			class MainTurret: MainTurret {};
			class MainTurret_RotateFast: MainTurret {};			
			class OpticRevolve: OpticRevolve {};
			class MainTurretTraverse: MainTurretTraverse {};
			class MainGun: MainGun {};
			class OpticElevate: OpticElevate {};
		};
	};
	class ace_2b14: ace_m224 {
		skeletonName="ace_mortar_2b14_skeleton";
		class animations: animations {
			class MainTurret: MainTurret {};
			class MainTurret_RotateFast: MainTurret {};
			class OpticRevolve: OpticRevolve {};
			class MainTurretTraverse: MainTurretTraverse {};
			class MainGun: MainGun {};
			class OpticElevate: OpticElevate {};
		};
	};
	class ace_120_tampella: ace_m224 {
		skeletonName="ace_mortar_tampella_skeleton";
		class animations: animations {
			class MainTurret: MainTurret {};
			class MainTurret_RotateFast: MainTurret {};
			class OpticRevolve: OpticRevolve {};
			class MainTurretTraverse: MainTurretTraverse {};
			class MainGun: MainGun {};
			class OpticElevate: OpticElevate {};
		};
	};
};