UIImageMoveDiffSpeed.cs 685 B

123456789101112131415161718192021222324252627282930313233
  1. using UnityEngine;
  2. using System.Collections;
  3. public class UIImageMoveDiffSpeed : MonoBehaviour
  4. {
  5. public int percent = 5;
  6. float lastPosX;
  7. Vector3 oriPos;
  8. Vector3 deltaVec = Vector3.zero;
  9. Vector2 borderLimit;
  10. RectTransform rectTrans;
  11. private void Start()
  12. {
  13. }
  14. public void Init()
  15. {
  16. rectTrans = GetComponent<RectTransform>();
  17. oriPos = rectTrans.anchoredPosition;
  18. }
  19. public void UpdatePos(float process, Vector2 limit)
  20. {
  21. borderLimit = limit * percent * 0.01f;
  22. deltaVec.x = Mathf.Lerp(borderLimit.x, borderLimit.y, process);
  23. transform.localPosition = oriPos + deltaVec;
  24. }
  25. }