class CfgSkeletons { class Default { isDiscrete=1; skeletonInherit=""; skeletonBones[]={}; }; class MD97GL_Skel: Default { skeletonBones[]= { "magazine", "", "charging_handle", "", "bolt", "", "mira", "", "stock", "", "coronha_2", "", //"sling", "", "zeroing", "", "trigger_gl", "", "tubos", "", "gl_bullet", "", "gl_cartridge" , "", "mira_gl", "", "municao", "", "zasleh", "", "trigger", "", "optic_rail", "", "trilho_frontal", "", "safety", "" }; }; }; class Rotation { type="rotation"; memory=1; minValue=0; maxValue=1; angle0=0; angle1=1; }; class CfgModels { class Default { sectionsInherit=""; sections[]={}; skeletonName=""; }; class MD97LC: Default { sections[]= { "zasleh","camo","camo1","camo2","camo3" }; skeletonName="MD97GL_Skel"; class Animations { class BaseRotation { type="rotation"; source=""; selection=""; memory=1; begin = 0; end = 1; axis=""; minValue=0; maxValue=1; angle0=0; angle1=1; }; ///class Sling_hide //{ // type="hide"; // source="isSelected"; //bipod // selection="Sling"; // minValue=0; // maxValue=1; // hideValue=-1.0; // unhideValue = 0.5; //}; class trigger_move { type="rotation"; source="reload"; selection="trigger"; memory=1; sourceAddress="clamp"; axis="trigger_axis"; minValue=0; maxValue=0.30000001; minPhase=0; maxPhase=0.30000001; angle0=-0.21238901; angle1=0; }; class charge1 { type="translation"; source="reloadMagazine"; selection= "charging_handle"; axis="bolt_axis"; begin = "bolt_axis_end"; end = "bolt_axis_begin"; memory = 1; minValue=0.76875; maxValue=0.79375; offset0="0"; offset1="-1"; }; class charge2 { type="translation"; source="reloadMagazine"; selection= "charging_handle"; axis="bolt_axis"; begin = "bolt_axis_end"; end = "bolt_axis_begin"; memory = 1; minValue=0.80625; maxValue=0.825; offset0="0"; offset1="1"; }; class bolt_move { type="translation"; source="reload"; selection="bolt"; memory=1; sourceAddress="clamp"; axis="bolt_axis"; minValue=0; maxValue=1; minPhase=0; maxPhase=1; offset0=0; offset1=0.570000001; }; class bolt_empty { type="translation"; source="isEmptyNoReload"; selection="bolt"; axis="bolt_axis"; sourceAddress="clamp"; minValue=0; maxValue=1; offset0=0; offset1=0.570000001; animPeriod=0; initPhase=0; memory="true"; }; class reload_magazine_hide { type="hide"; source="reloadMagazine"; selection="magazine"; minValue=0; maxValue=1; hideValue = 0.126; unhidevalue = 0.6300; }; class unloaded_magazine_hide { type = "hide"; source = "hasMagazine"; selection = "magazine"; hideValue=0.100000; }; class magazine_reload_move_1 { type = "translation"; source = "reloadMagazine"; selection = "magazine"; axis = "magazine_axis"; minValue = 0.145; maxValue = 0.170; offset0 = 0.0; offset1 = 0.5; }; class magazine_reload_move_2: magazine_reload_move_1 { minValue = 0.573; maxValue = 0.602; offset0 = 0.0; offset1 = -0.5; }; class bolt_reload_move_1: bolt_move { source="reloadMagazine"; // z: should work like that only if weapon is empty minValue=-0.56; maxValue=-0.56; offset1 = 1; }; class bolt_reload_move_2: bolt_reload_move_1 { source="reloadMagazine"; // z: should work like that only if weapon is empty minValue=0; maxValue=0.00001; }; class no_magazine { type="hide"; source="hasMagazine"; selection="magazine"; sourceAddress="clamp"; minValue=0; maxValue=1; hideValue=0.5; unHideValue=-1; animPeriod=0; initPhase=0; }; class optic_rail { type="hide"; source="hasOptics"; selection="optic_rail"; minValue=0; maxValue=1; hideValue=-1.0; unhideValue = 0.5; }; class acessory_rail { type="hide"; source="hasAccessory"; selection="trilho_frontal"; minValue=0; maxValue=1; hideValue=-1.0; unhideValue = 0.5; }; //class backsight_rotate //{ //type="rotation"; //source="zeroing1"; //selection="mira"; //axis="back_sight_axis"; //minValue=0.333; //maxValue=0.334; //hideValue=1; //angle0=0; //angle1="-rad -90"; //}; class zeroing_rotate { type="rotation"; source="zeroing1"; selection="zeroing"; axis="zeroing_axis"; minValue=0; maxValue=1; angle0=0; angle1=-1; }; class frontsight_rotate { type="rotation"; source="hasOptics"; selection="front_sight"; axis="front_sight_axis"; minValue=0; maxValue=1; hideValue=1; angle0=0; angle1="rad 90"; }; class muzzleFlashROT { type="rotationX"; source="ammoRandom"; //use ammo count as phase for animation sourceAddress="loop"; //loop when phase out of bounds selection="zasleh"; //selection we want to rotate axis=""; //no own axis - center of rotation is computed from selection centerFirstVertex=true; //use first vertex of selection as center of rotation minValue=0; maxValue=4; //rotation angle will be 360/4 = 90 degrees angle0="rad 0"; angle1="rad 360"; }; class stock /// not in this model, but good to use { type = "rotation"; source = "isselected"; sourceAddress = "clamp"; selection = "stock"; axis = "stock_axis"; minValue = 0; maxValue = "1"; angle0 = "rad 180"; angle1 = "0"; }; // Rotation of fire mode switch class safety_mode_rot { type = "rotation"; source="weaponMode"; memory=1; selection="safety"; animPeriod=0; axis="safety_axis"; minValue=0.0; maxValue=1; minPhase=0.0; maxPhase=1; angle0= 0; angle1="rad 840"; }; }; }; };