Timeline won't play transition, snaps instead

I do actor class of door based on timeline, at first it was using single track to open and close door, but i want to play different tracks for opening and closing, i redone bp but it doesn’t work properly: open anim works just fine, but after closing attempt it won’t play transition, just snaps back and forth when press ‘use’ key. I wasn’t sure how to do it properly (I’m pretty new in blueprints, basically this is my first class that i do by myself), so i’ve done it this way:

And tracks

First to open (from 0 to 90 degrees) and second to close (same but reversed in different way)

Most Likely the problem your encountering is the with how the timeline is triggering. the timeline Play pin begins playing the timeline from the last point played meaning that the first time ever it will play from time = 0. but if it reaches the end of the timeline and you press play again, it will try to play from the end of the timeline and immediately stop. the play from start pin plays from time = 0 every time. while reverse will begin playing from the last point played backwards.

311775-timeline.png

Yes! That was it, thanks… but i actually need it to play from where it stopped because it stops whenever collides with something, so after stop it should play from where it stopped. Is there any way to reset timeline after it finishes track?

So a bit to unpack here. first to answer your question the play from start, or reverse from end will reset and begin playing the timeline. you can also use the set new time pin and give it a float ‘new time’ to indicate where the timeline should start/reverse from next time you use those pins. but based on your desire to have DIFFERENT rates of opening and closing a timeline solution alone is NOT going to be easily viable, specifically because you mention it will stop when it collides with something.

assuming it collides with something and you close, I assume you want it to use the different timeline curve. This hits a more fundamental math problem, namely equation equality. for you to see no snapping at all, the close curve, function g of time t [g(t)] needs to begin its function at the same place the open curve, function f of time t [f(t)] ended. the only way you can have this always happen is if f(t) = g(t). but if this is the case they will be the same curve . while you can have two functions intersect multiple points at the same time, such as in this example, if their unique equations then they can’t always be equal.

311951-graph3.gif

A solution you could explore for this would be to use a stand-in timeline that simply went from time 0 - x and its value was linearly 0 - 1. you would then use this timeline to drive an equation, there is a math node, that you would basically use to dynamically define a curve so it started where-ever the other curve left off, but this is a bit non-trivial and something that you would need to research a bit as its not something I can whip up quickly.