UpdatableData.cs 438 B

123456789101112131415161718192021222324
  1. using UnityEngine;
  2. [CreateAssetMenu]
  3. public class UpdatableData : ScriptableObject
  4. {
  5. public event System.Action OnValuesUpdated;
  6. public bool autoUpdate;
  7. protected virtual void OnValidate()
  8. {
  9. if (autoUpdate)
  10. {
  11. NotifyOfUpdatedValues();
  12. }
  13. }
  14. public void NotifyOfUpdatedValues()
  15. {
  16. if(OnValuesUpdated != null)
  17. {
  18. OnValuesUpdated();
  19. }
  20. }
  21. }