I've just experimented with that Sine Reset function and noticed, that the period offset and period random offset were not considered. So here is an extended code (actually a copy-paste from the Sine initializing function), which considers those two:
runtime.js
Acts.prototype.ResetWave = function ()
{ if (this.period === 0) this.i = 0;
else { // if some period offset is given, it should reset to that offset
this.i = (this.properties[5] / this.period) * _2pi;
this.i += ((Math.random() * this.properties[6]) / this.period) * _2pi;
}
};
I've compiled an example with the extended Sine behavior, which can be seen here. The reset here demonstrates repeatable 0.25 to 0.75 sine cycle, instead of continually going back and fort.
(Of course in that particular case, there could be a workaround with an ABS() function for the falling (minus) sine function):
EXAMPLE / CAPX