Hi I think I might have found an odd little bug.
What I'm doing is moving a transform from one UIGrid to another UIGrid and I'm using the smooth tween option. When I move the first transform, it tweens into place correctly -- however, once it is in place, its spring position component is never activated again and it gets stuck in the 0,0,0 position.
The problematic code is this if statement:
if (animateSmoothly && Application.isPlaying && Vector3.SqrMagnitude(t.localPosition - pos) >= 0.0001f)
{
SpringPosition sp = SpringPosition.Begin(t.gameObject, pos, 15f);
sp.updateScrollView = true;
sp.ignoreTimeScale = true;
}
else t.localPosition = pos;
Specifically this little bit that doesn't turn on the spring position component when the distance needed to travel is very small:
Vector3.SqrMagnitude(t.localPosition - pos) >= 0.0001f
The result is that its position is always stuck at 0,0,0 -- because the x and y always start at 0,0 in the for loop and the second half of reset position (apply origin offset) will do its lerp on the spring position component (which never gets turned on)