X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fvaluenode_timeloop.cpp;h=8ed0fadd38e2333e3d7858a6e7ef470dc232a767;hb=792ed706efeef84c5b82abf982078daad15f5d6c;hp=913a4c6ab8ffe20112dab8cf08cad4b8fddabf62;hpb=e556a9e73eaf9af70f65f197de762d3b507f5d7e;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/valuenode_timeloop.cpp b/synfig-core/trunk/src/synfig/valuenode_timeloop.cpp index 913a4c6..8ed0fad 100644 --- a/synfig-core/trunk/src/synfig/valuenode_timeloop.cpp +++ b/synfig-core/trunk/src/synfig/valuenode_timeloop.cpp @@ -60,8 +60,8 @@ ValueNode_TimeLoop::ValueNode_TimeLoop(const ValueNode::Handle &x): { set_link("link", x); set_link("link_time", ValueNode_Const::create(Time(0))); - set_link("local_time", ValueNode_Const::create(Time(1))); - set_link("duration", ValueNode_Const::create(Time(0))); + set_link("local_time", ValueNode_Const::create(Time(0))); + set_link("duration", ValueNode_Const::create(Time(1))); } ValueNode_TimeLoop* @@ -163,13 +163,14 @@ ValueNode_TimeLoop::operator()(Time t)const { t -= local_time; t -= floor(t / duration) * duration; - t = link_time + t; + t = link_time + t; } else { + duration = -duration; t -= local_time; t -= floor(t / duration) * duration; - t = link_time + duration - t; + t = link_time - t; } return (*link_)(t);