wld427 1705 Posted February 8, 2009 Working on the project RACS Su24 fencer. I added the roundels, Proxies, etc to the dammage hide selection. Now unfortunately they do not move when the wings animate.... how do i fix this? model.cfg <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> class CfgSkeletons { class Default; class Plane; class PRACS_Su24FencerSkeleton: Plane { skeletonInherit=""; isDiscrete = 1; skeletonBones[]= { "fold_gear_F", "", "roll_wheel_F", "fold_gear_F", "fold_gear_R", "", "roll_wheel_R", "fold_gear_R", "fold_gear_L", "", "roll_wheel_L", "fold_gear_L", "horizont_4", "", "horizont_3", "", "compass", "", "compass2", "", "compass_3", "", "3dhud", "", "leva smerovka", "", "leva vejskovka", "", "prava vejskovka", "", "ndl","", "ndr","", "md1","", "fdl", "", "mdL","", "fdr", "", "mdR","", "canopy", "", "leftwing", "", "LeftPylon", "", "rightwing", "", "RightPylon", "", "damageHide","", "flarecount", "", "ABSwitch","" }; }; }; class Rotation; class CfgModels { class Plane; class PRACS_Su24Fencer: Plane { sectionsInherit=""; sections[]= { "zasleh","zbytek","vrtule blur", "vrtule" }; skeletonName="PRACS_Su24FencerSkeleton"; class Animations { class fold_gear_F { type = "rotation"; memory = 1; sourceAddress = "clamp"; source = "gear"; selection = "fold_gear_F"; axis = "axis_fold_gear_F"; minValue = 0; maxValue = 0.700000; angle0 =0; angle1 =1.745; }; class fold_gear_R : fold_gear_F { selection = "fold_gear_R"; axis = "axis_fold_gear_R"; angle0 =0; angle1 =-2.1; }; class fold_gear_L : fold_gear_F { selection = "fold_gear_L"; axis = "axis_fold_gear_L"; angle0 =0; angle1 =2.1; }; class NDL { type ="rotation";animPeriod =1; memory = 1; sourceAddress = "clamp"; source = "gear"; selection ="ndl";axis ="axis_ndl"; angle0 =-1.57;angle1 =0; }; class NDR { type ="rotation";animPeriod =1; memory = 1; sourceAddress = "clamp"; source = "gear"; selection ="ndr";axis ="axis_ndr"; angle0 =1.57;angle1 =0; }; class MD1 { type ="rotation";animPeriod =7; memory = 1; sourceAddress = "clamp"; source = "gear"; selection ="md1";axis ="axis_md1"; angle0 =-.6;angle1 =0; }; class MDL { type ="rotation";animPeriod =1; memory = 1; sourceAddress = "clamp"; source = "gear"; selection ="mdl";axis ="axis_mdl"; angle0 =1.57;angle1 =0; }; class MDR { type ="rotation";animPeriod =1; memory = 1; sourceAddress = "clamp"; source = "gear"; selection ="mdr";axis ="axis_mdr"; angle0 =1.57;angle1 =0; }; class FDL { type ="rotation";animPeriod =1; memory = 1; sourceAddress = "clamp"; source = "gear"; selection ="fdl";axis ="axis_fdl"; angle0 =0;angle1 =1.047; }; class FDR { type ="rotation";animPeriod =1; memory = 1; sourceAddress = "clamp"; source = "gear"; selection ="fdr";axis ="axis_fdr"; angle0 =0;angle1 =-1.047; }; class SWF { type ="rotation";animPeriod =.02; selection ="_swf";axis ="axis_swf"; angle0 =0;angle1 =6.283; }; class SWR { type ="rotation";animPeriod =.02; selection ="_swr";axis ="axis_swr"; angle0 =0;angle1 =6.283; }; class rightwing { type = "rotation"; source = "Speed"; selection = "rightwing"; axis = "axis_rightwing"; memory = 1; sourceAddress = "clamp"; minValue = 85; maxValue = 185; angle0 = "0"; angle1 = "rad -50"; }; class leftwing : rightwing { selection = "leftwing"; axis = "axis_leftwing"; angle1 = "rad +50"; }; class RightPylon { type = "rotation"; source = "Speed"; selection ="RightPylon"; axis ="axis_RightPylon"; angle0 =0; angle1 =-.0576; memory = 1; sourceAddress = "clamp"; minValue = 85; maxValue = 185; }; class leftPylon : RightPylon { selection ="LeftPylon"; axis ="axis_LeftPylon"; angle0 =0; angle1 =.0576; }; class Canopy { type="rotation"; source="cabin"; selection="canopy"; axis="axis_canopy"; memory=1; sourceAddress="clamp"; minValue=0.000000; maxValue=8.000000; angle0=-0.925025; angle1=0.000000; }; class roll_wheel_F { type = "rotationX"; memory = 1; sourceAddress = "loop"; source = "wheel"; selection = "roll_wheel_F"; axis = ""; minValue = 0; maxValue = 1; angle0 = 0; angle1 = "rad -360"; }; class roll_wheel_R : roll_wheel_F { selection = "roll_wheel_R"; }; class roll_wheel_L : roll_wheel_F { selection = "roll_wheel_L"; }; class IndicatorCompass: Rotation { type="rotation"; source="direction"; selection="kompas"; axis="osa_kompas"; memory="false"; minValue=-3.141593; maxValue=3.141593; angle0=-3.141593; angle1=3.141593; }; class IndicatorCompass2: IndicatorCompass { selection="kompas2"; axis="osa_kompas2"; }; class IndicatorCompass3: IndicatorCompass { selection="compass_3"; axis="compass_3_axis"; }; class HorizonBank { type="rotationZ"; source="horizonBank"; selection="horizont"; axis="osa_horizont"; memory="false"; minValue="rad -360"; maxValue="rad +360"; angle0="rad -360"; angle1="rad +360"; }; class Horizon2Bank: HorizonBank { selection="horizont2"; axis="osa_horizont2"; }; class Horizon3Bank: HorizonBank { selection="horizont_3"; axis="horizont_3_axis"; }; class HorizonDive { type="rotationX"; source="horizonDive"; selection="horizont"; axis="osa_horizont"; memory="false"; minValue="rad -360"; maxValue="rad +360"; angle0="rad -360"; angle1="rad +360"; }; class Horizon2Dive: HorizonDive { selection="horizont2"; axis="horizont2_axis"; }; class Horizon4Dive: HorizonDive { selection="horizont_4"; axis="horizont_4_axis"; minValue="rad -90"; maxValue="rad +90"; angle0="rad -6"; angle1="rad +6"; }; class LFlap { type="rotation"; source="flap"; selection="ls klapka"; axis="osa ls klapky"; angle0=0; angle1="rad -28.6"; }; class RFlap { type="rotation"; source="flap"; selection="ps klapka"; axis="osa ps klapky"; angle0=0; angle1="rad 28.6"; }; class LElevator { type="rotation"; source="elevator"; selection="leva vejskovka"; axis="osa leve vejskovky"; minValue=-1; maxValue=1; angle0="rad 20"; angle1="rad -20"; }; class RElevator: LElevator { selection="prava vejskovka"; axis="osa prave vejskovky"; }; class LAileronT { type="rotation"; source="aileronT"; selection="lkh klapka"; axis="osa lk klapky"; minValue=-0.500000; maxValue=1.400000; angle0=-0.500000; angle1=1.400000; }; class RAileronT { type="rotation"; source="aileronB"; selection="pkh klapka"; axis="osa pk klapky"; minValue=-1.400000; maxValue=0.500000; angle0=-1.400000; angle1=0.500000; }; class LAileronB { type="rotation"; source="aileronB"; selection="lkd klapka"; axis="osa lkd klapky"; minValue=-1.400000; maxValue=0.500000; angle0=-1.400000; angle1=0.500000; }; class RAileronB { type="rotation"; source="aileronT"; selection="pkd klapka"; axis="osa pkd klapky"; minValue=-0.500000; maxValue=1.400000; angle0=-0.500000; angle1=1.400000; }; class LRudder { type="rotation"; source="rudder"; selection="leva smerovka"; axis="osa leve smerovky"; minValue=-1; maxValue=1; angle0="rad 22.9"; angle1="rad -22.9"; }; class Rotor { type="rotation"; source="rotor"; selection="vrtule"; axis="osa vrtule"; sourceAddress="1"; angle0=0; angle1="rad 1440"; }; class Rotor2 { type="rotation"; source="rotor"; selection="vrtule 1"; axis="osa vrtule1"; sourceAddress="1"; angle0=0; angle1="rad 1440"; }; class ABSwitch { type = "rotation"; source ="ABSwitch"; sourceAddress = "clamp"; minValue=0; maxValue=1; animperiod= 1; selection ="ABSwitch"; axis = "axis_ABSwitch"; angle0="0"; angle1="0.00017"; }; class 3dhudOn1: Rotation { type="translation"; source="rpm"; selection="3dhud"; axis="3dhud_axis"; memory=1; minValue=0; maxValue=0.010000; offset0=15; offset1=0; }; class 3dhudOn2: 3dhudOn1 { selection="horizont_3"; }; class 3dhudOn3: 3dhudOn1 { selection="horizont_4"; }; class 3dhudOn4: 3dhudOn1 { selection="compass_3"; }; class damageHide { type="hide"; source="damage"; selection="damageHide"; }; class flarecount { type = "rotationX"; selection = "flarecount"; axis = "osa_flarecount"; memory = 1; minValue = 0; maxValue = 1; angle0 = "rad 0"; angle1 = "rad +180"; }; }; }; class PRACS_Su24Fencer_BMB : PRACS_Su24Fencer {}; class PRACS_Su24Fencer_ASW : PRACS_Su24Fencer {}; }; Share this post Link to post Share on other sites
[aps]gnat 28 Posted February 8, 2009 class damageHide { type="hide"; source="damage"; selection="damageHide"; }; You defined just 1 animation in which you are trying hide all bits of your plane via the damage source. Dont do this. Write a series of Damage animations, 1 each for each named section that moves. You can group name and mass hide named sections THAT DO NOT MOVE, but not sections that move, unless you use add bone to the top level of each moving bit, which is a pain. Easier to simply write a damage hide animation for each named bit that moves. Share this post Link to post Share on other sites
wld427 1705 Posted February 8, 2009 gnat, could you please provide a quick code example for say the left wing as to how i do this by the method you described? Share this post Link to post Share on other sites
[aps]gnat 28 Posted February 9, 2009 Sorry, traveling at the moment, no source files with me. But it should be really as simple as; class damageHideLeftWing { type="hide"; source="damage"; selection="leftwing"; }; class damageHideRightWing { type="hide"; source="damage"; selection="rightwing"; }; etc etc Put all these damage hide animations at the top of the definitions list to be safe. Share this post Link to post Share on other sites