Jump to content
🛡️FORUMS ARE IN READ-ONLY MODE Read more... ×
Sign in to follow this  
archbishop lazarus

Need help with user animated sections

Recommended Posts

Need help with animations :confused:

The problem is that if I link 2S3_travel_lock and 2S3_travel_lock_B with Hatch driver (Turn out) the animation works perfectly. (I included an image to see how it works) But If I dont link them with Hatch driver, and make an user animation, only 2S3_travel_lock moves. 2S3_travel_lock_A,B,C stays in place.

2s3.jpg

cfgskeletons, I think its OK

"2S3_travel_lock", "",

"2S3_travel_lock_A", "2S3_travel_lock",

"2S3_travel_lock_C", "2S3_travel_lock",

"2S3_travel_lock_B", "",

So it means that if "2S3_travel_lock", moves, the other parts (A,C) should move as well. But these doesnt move if I make an user action.

cfgmodels, class animations. When I tried to make user actions, I deleted ": RHS_GM12X_Hatch_driver" from these, and uncommented "source"

class RHS_GM12X_2S3_travel_lock : RHS_GM12X_Hatch_driver

{

selection = "2S3_travel_lock";

//source="2S3_travel_lock_mechanism";

sourceAddress = "clamp";

type = "rotation";

memory=1;

axis= "axis_2S3_travel_lock";

animPeriod=0;

minValue = 0;

maxValue = 1;

angle0 = 0;

angle1= rad -83;

};

class RHS_GM12X_2S3_travel_lock_A : RHS_GM12X_2S3_travel_lock

{

selection = "2S3_travel_lock_A";

//source="2S3_travel_lock_mechanism";

type = "rotation";

memory=1;

axis= "axis_2S3_travel_lock_A";

animPeriod=0;

minValue = 0;

maxValue = 1;

angle0 = 0;

angle1= rad 95;

};

class RHS_GM12X_2S3_travel_lock_B : RHS_GM12X_Hatch_driver

{

selection = "2S3_travel_lock_B";

//source="2S3_travel_lock_mechanism";

type = "rotation";

memory=1;

axis= "axis_2S3_travel_lock_B";

animPeriod=0;

minValue = 0;

maxValue = 1;

angle0 = 0;

angle1= rad 3;

};

class RHS_GM12X_2S3_travel_lock_C : RHS_GM12X_2S3_travel_lock

{

selection = "2S3_travel_lock_C";

//source="2S3_travel_lock_mechanism";

type = "rotation";

memory=1;

axis= "axis_2S3_travel_lock_C";

animPeriod=0;

minValue = 0;

maxValue = 1;

angle0 = 0;

angle1= rad -30;

};

I think the problem should be here. Unfortunately, I have no idea how the animation controller works, its black magic for me.

class Animationsources : Animationsources

{

class 2S3_travel_lock_mechanism

{

source = "user";

animPeriod = 2;

initPhase=0;

};

};

class UserActions

{

class 2S3_Deploy_1

{

displayName="Firing position";

position="MainTurret";

onlyforplayer=0;

radius=3.5;

condition="(this animationPhase ""RHS_GM12X_2S3_travel_lock"" == 0)";

statement="this animate [""RHS_GM12X_2S3_travel_lock"",1];";

};

class 2S3_Deploy_2

{

displayName="Running position";

position="MainTurret";

onlyforplayer=0;

radius=3.5;

condition="(this animationPhase ""RHS_GM12X_2S3_travel_lock"" == 1)";

statement="this animate [""RHS_GM12X_2S3_travel_lock"",0];";

};

};

Share this post


Link to post
Share on other sites

You need to activate the animations all individually in your UserActions section, not just one.

You're basically telling it to run only the animation named "RHS_GM12X_2S3_travel_lock", when you want it to do this instead:

this animate [""RHS_GM12X_2S3_travel_lock"",1]; this animate [""RHS_GM12X_2S3_travel_lock_A"",1]; this animate [""RHS_GM12X_2S3_travel_lock_B"",1]; this animate [""RHS_GM12X_2S3_travel_lock_C"",1];

When you use an existing source in class animations, the controller is basically working all the animations individually. When you switch to user controls, you have to run them all individually.

Share this post


Link to post
Share on other sites

Thanks! Now its working perfectly!:yay:

I have another problem, but it isnt related to user animations. On an another model, there is a telescopic antenna. (uses translation type animation) It is working, but, it extends out too much. How can I control it? I tried writing different values to "offset1", but no effect.

Share this post


Link to post
Share on other sites

You have to play with the translation values to find out what works.

What you can do is reverse the offset values - make offset0 the default position, and play with the numbers until you've got the appropriate length you want in Buldozer. When you've got the offset you want, put that number into offset1 and change offset0 to 0.

Share this post


Link to post
Share on other sites
Sign in to follow this  

×