using GameWrapper.UI.Common; using Sirenix.OdinInspector; using UnityEngine; public class UI_CurrencyItem : MonoBehaviour { //[DelayedProperty] [SerializeField] [OnValueChanged("OnCurrencyIDChanged")] private int _currencyID; UI_CurrencyList.NumberType numberType = UI_CurrencyList.NumberType.Default; public UI_CurrencyList.NumberType NumberType { get { return numberType; } set { numberType = value; } } public int currencyID { get { return _currencyID; } set { _currencyID = value; logic.Refresh(); } } private ICurrencyItem _logic; public ICurrencyItem logic { get { return _logic; } set { _logic = value; _logic.FakeAwake(); } } void OnCurrencyIDChanged() { logic.OnCurrencyIDChanged(); } private void OnDestroy() { logic.FakeOnDestroy(); } }