29 lines
649 B
C#
29 lines
649 B
C#
using UnityEngine;
|
|
|
|
public class ObjectLoop : MonoBehaviour
|
|
{
|
|
public AnimationCurve animCurve = AnimationCurve.Constant(0f, 1f, 0f);
|
|
public Vector3 endPos;
|
|
public float duration = 1f;
|
|
private float _startTime;
|
|
|
|
private Vector3 _startPos;
|
|
|
|
private void Awake()
|
|
{
|
|
_startPos = transform.localPosition;
|
|
}
|
|
|
|
private void OnEnable()
|
|
{
|
|
_startTime = Time.time;
|
|
Update();
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
var time = Time.time - _startTime;
|
|
var ratio = animCurve.Evaluate(time / duration);
|
|
transform.localPosition = Vector3.Lerp(_startPos, endPos, ratio);
|
|
}
|
|
} |