28 lines
602 B
C#
28 lines
602 B
C#
|
using UnityEngine;
|
||
|
|
||
|
public class WrapAroundOnEnable : MonoBehaviour
|
||
|
{
|
||
|
[SerializeField] private float xMin, xMax;
|
||
|
|
||
|
private void OnEnable()
|
||
|
{
|
||
|
WaitUtils.Wait(Time.deltaTime, true, () =>
|
||
|
{
|
||
|
|
||
|
var w = Mathf.Abs(xMax - xMin);
|
||
|
var x = transform.localPosition.x;
|
||
|
if (x > xMax)
|
||
|
{
|
||
|
x -= w;
|
||
|
}
|
||
|
else if (x < xMin)
|
||
|
{
|
||
|
x += w;
|
||
|
}
|
||
|
transform.localPosition = new Vector3(
|
||
|
x,
|
||
|
transform.localPosition.y,
|
||
|
transform.localPosition.z);
|
||
|
});
|
||
|
}
|
||
|
}
|