using UnityEngine; namespace Stary.Evo.InformationSave { public class RectTransformInfo : AbstractInformation { public override void Save(int index) { var rectTransform = GetComponent(); _list[index].anchorPosition = rectTransform.anchoredPosition3D.GetVector3Data(); _list[index].sizeDelta = rectTransform.sizeDelta.GetVector2Data(); _list[index].eulerAngles = rectTransform.eulerAngles.GetVector3Data(); _list[index].localScale = rectTransform.localScale.GetVector3Data(); _list[index].anchorMin = rectTransform.anchorMin.GetVector2Data(); _list[index].anchorMax = rectTransform.anchorMax.GetVector2Data(); _list[index].pivot = rectTransform.pivot.GetVector2Data(); } public override void Switch(int index) { var rectTransform = GetComponent(); rectTransform.anchoredPosition3D =_list[index].anchorPosition.SetVector3Data(); rectTransform.sizeDelta = _list[index].sizeDelta.SetVector2Data(); rectTransform.eulerAngles =_list[index].eulerAngles.SetVector3Data(); rectTransform.localScale = _list[index].localScale.SetVector3Data(); rectTransform.anchorMin =_list[index].anchorMin.SetVector2Data(); rectTransform.anchorMax =_list[index].anchorMax.SetVector2Data(); rectTransform.pivot =_list[index].pivot.SetVector2Data(); } [System.Serializable] public sealed class Information : InformationBase { public Vector3Data anchorPosition; public Vector2Data sizeDelta; public Vector3Data eulerAngles; public Vector3Data localScale; public Vector2Data anchorMin; public Vector2Data anchorMax; public Vector2Data pivot; } } }